this post was submitted on 10 Jul 2024
395 points (95.0% liked)

Linux

48214 readers
1085 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
395
submitted 4 months ago* (last edited 4 months ago) by [email protected] to c/[email protected]
 

Zed is a modern open-source code editor, built from the ground up in Rust with a GPU-accelerated renderer.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 17 points 4 months ago (18 children)

Anyone care to compare this with Helix?

[–] [email protected] 19 points 4 months ago (2 children)

Very first impressions since I literally just downloaded before writing this, and haven't read the manual, I may change my mind with more experience.

  • It's incredibly snappy, to my eyes as fast as Helix.
  • A lot of stuff that took me a while to figure out in VS Code was immediately obvious. How to toggle inlay hints for Rust? Parameter Icon > Inlay Hints (with the keyboard shortcut there for easy toggling).
  • Interactive is generally intuitive because it seems pretty permissive. Tab vs Enter to autocomplete? Either! ctrl-shift-Z vs ctrl-Y to redo? Same thing!
  • After being so used to Helix I often reach for keybinds that don't exist. I might have to learn Vim keybinds because I'm definitely going to keep trying Zed.
  • Not sure how I feel about what seems to be an inline discord-like chat/voice-call feature.

Going to check out if there's git integration, because I couldn't easily find it.

[–] [email protected] 11 points 4 months ago* (last edited 4 months ago) (5 children)

Going to check out if there's git integration, because I couldn't easily find it.

Asking this because I'm noob, not elitist ass: Why a git integration in ide instead of using the cli? I've been working only on few projects where git is used, but the cli seems to be a ton easier to understand how to work with than the git integration in vscode which I discarded after few attempts to use

[–] [email protected] 15 points 4 months ago (1 children)

Depends on the features.

Git has some counterintuitive commands for some commands you may want to do when you want to quickly do something. Being able to click a button and have the IDE remember the syntax for you is nice.

Some IDEs have extra non-native Git features like have inlined "git blame" outputs as you edit (easily see a commit message per-line, see who changed what, etc.), better diff/merge tooling (JetBrain's merge tool comes to mind), being able to revert parts of the file instead of the whole file, etc.

the git integration in vscode which I discarded after few attempts to use

I'm going to be honest, I don't really like VS Code's Git integration either. I find it clunky and opinionated with shitty opinions.

[–] [email protected] 6 points 4 months ago

Git has some counterintuitive commands

Yeah... 'git merge main' weirds me out because my brain likes to think the command is merging current branch TO main instead of other way around

Some IDEs have extra non-native Git features like have inlined "git blame" outputs as you edit (easily see a commit message per-line, see who changed what, etc.), better diff/merge tooling (JetBrain's merge tool comes to mind), being able to revert parts of the file instead of the whole file, etc.

Okay this sounds very good, so they actually improve git cli feature wise in addition to implementing GUI for it.

Thanks for the reply!

[–] [email protected] 4 points 4 months ago (1 children)

I'm probably more of a git noob than you, but I do usually use the cli. I figured if I'm going to give a gui editor an honest shake I should try to do things the inbuilt, gui, way. And more to the point, I do appreciate a good user interface with information at a glance or click instead of having to type out a command each time.

[–] [email protected] 3 points 4 months ago

I'm probably more of a git noob than you

Doubt =D

And more to the point, I do appreciate a good user interface with information at a glance or click instead of having to type out a command each time.

Agreed with good user interface, my criticism was specifically for the vscode default git plugin which I was not compatible with at all but it could be just a me-problem

[–] [email protected] 3 points 4 months ago

This video using emacs magit git porcelain might help you see why:

https://m.youtube.com/watch?v=qPfJoeQCIvA&feature=youtu.be

Basically you can go quickly from the log to viewing diffs or any other action on commits or groups of commits and more.

I used to only use git from CLI for 10+ years but mostly only use magit now.

[–] [email protected] 3 points 4 months ago* (last edited 4 months ago)

A great git integration can work well in an editor. I use Magit in Emacs, which is probably as full-featured Git-client as there can be. Granted, for operations such as cherry-picking or rebasing on top of a branch or git reset I most often use the command line (but Magit for interactive rebase).

But editor support for version management can give other benefits as well, for example visually showing which lines are different from the latest version, easy access to file history, easy access to line-based history data (blame), jumping to versions based on that data, etc.

As I understand it vscode support for Git is so basic that it's easy to understand why one would not see any benefits in it.

[–] [email protected] 2 points 4 months ago (1 children)

I mainly use git with cli, the one thing that's been super helpful in vscode is gitlens, which shows you who last updated the line you're on, and lets you look at the commit

[–] [email protected] 2 points 4 months ago

Oh that sounds very sweet!

[–] [email protected] 7 points 4 months ago (1 children)

Git integration seems to be so embedded that it's easy to miss. Open a git repository folder and you can switch branches and whatnot. But, like, in the command palette, there's no Git > Pull or Git > Clone as in vscode. (I have barely scratched the surface so it might be there hiding in plain sight.)

[–] [email protected] 1 points 4 months ago

What other VCSs are supported?

load more comments (15 replies)