aboutsummaryrefslogtreecommitdiff
path: root/content/2023-05-22-crafting-stories-in-zed-editor.md
diff options
context:
space:
mode:
authorMitja Felicijan <m@mitjafelicijan.com>2023-07-08 23:25:41 +0200
committerMitja Felicijan <m@mitjafelicijan.com>2023-07-08 23:25:41 +0200
commitcd6644ea4ddc78597934ab0ef5ba50e3c3daa927 (patch)
tree03de331a8db6386dfd6fa75155bfbcea6b4feaf3 /content/2023-05-22-crafting-stories-in-zed-editor.md
parent84ed124529ffeee1590295b8de3a8faf51848680 (diff)
downloadmitjafelicijan.com-cd6644ea4ddc78597934ab0ef5ba50e3c3daa927.tar.gz
Moved to a simpler SSG
Diffstat (limited to 'content/2023-05-22-crafting-stories-in-zed-editor.md')
-rw-r--r--content/2023-05-22-crafting-stories-in-zed-editor.md88
1 files changed, 88 insertions, 0 deletions
diff --git a/content/2023-05-22-crafting-stories-in-zed-editor.md b/content/2023-05-22-crafting-stories-in-zed-editor.md
new file mode 100644
index 0000000..dc22e95
--- /dev/null
+++ b/content/2023-05-22-crafting-stories-in-zed-editor.md
@@ -0,0 +1,88 @@
1---
2title: From General Zod to Superman - Crafting Stories in Zed Editor
3url: crafting-stories-in-zed-editor.html
4date: 2023-05-22T12:00:00+02:00
5type: post
6draft: false
7---
8
9Pretentious title! Good start! I have nothing to add to this discussion. I just
10like this editor and wanted to write something here that will remind me to use
11it again in a while when/if it becomes available for Linux.
12
13**TLDR:** I think this code editor is very cool and has a massive potential. I
14hope they don’t mess up with adding a plugin ecosystem to it!
15
16Out of morbid curiosity, I started using the [Zed editor](https://zed.dev/) on
17my Mac. Zed is a high-performance, multiplayer code editor developed by the
18creators of Atom and Tree-sitter. Written in Rust so it has to be blazingly
19fast! 😊 It's a joke, calm down.
20
21Over the past year, I have switched between [Helix
22editor](https://helix-editor.com/) and [VS
23Code](https://code.visualstudio.com/), but for the last couple of months, I have
24been using Helix exclusively.
25
26I've been genuinely impressed by Zed. When you open a file, it automatically
27detects its type and downloads the corresponding [LSP (language
28server)](https://en.wikipedia.org/wiki/Language_Server_Protocol). The list of
29supported languages is not extensive, but it's still impressive. It's a great
30example of how to create a product that stays out of your way.
31
32![Zed editor](/assets/zed/zed-1.png?style=bigimg)
33
34For C development it downloaded [clangd](https://clangd.llvm.org/) and setting
35up missing dependencies in code was rather easy. For this project I use
36[SDL2](https://www.libsdl.org/) for rendering terminal emulator. It’s a hobby
37project, don’t worry about it.
38
39If you are going to give this a try and you are using C, I suggest checking two
40files in the root of your project folder. If you don't have them, create them.
41
42**compile_flags.txt**
43
44```
45-I/opt/homebrew/include
46-I/opt/homebrew/include/SDL2
47```
48
49Easy way of checking what the appropriate includes for a specific library is to
50use `pkg-config` and in my case `pkg-config SDL2 --cflags-only-I`. But this is
51nothing new to C/C++ devs. Just a noter for people who are using Visual Studio.
52
53**.clang-format**
54
55```
56ColumnLimit: 220
57BasedOnStyle: Mozilla
58```
59
60I prefer Mozilla coding style for C so you can set that up.
61
62They really have something special here. Although there is no version available
63for Linux yet, I will stick to Helix. This impressive piece of engineering is,
64above all, an amazing example of craftsmanship.
65
66They have a bunch of amazing integrated functionalities like live desktop
67sharing, code sharing in a live coding session. There is a lot of pretentious
68marketing speak there but the product is still amazing!
69
70For me the speed and the simplicity of the product was the most impressive
71thing. You get that: it just works feeling. A rare thing in 2023.
72
73![Zed editor](/assets/zed/zed-2.png?style=bigimg)
74
75They also managed to add [Github Copilot](https://github.com/features/copilot)
76in a non obtrusive way. To me, everything feels very intentional and
77specifically selected. It's minimal yet maximally effective.
78
79<video src="https://zed.dev/img/post/copilot/copilot-demo.webm" autoplay loop></video>
80
81It is a perfect balance between VS Code, Jetbrains IDE’s and something like VIM
82or Helix.
83
84I just hope they **DON’T** add plugin support and keep it like it is. They as a
85vendor should add stuff to it with great deliberation and thought. And this way
86the product will stay fast and focused. That’s my two cents.
87
88Amazing job!