Programming Setup what Tools do you use daily?

I forgot to mention:

vcs: jujutsu (using it to interface to git repositories, recently converted my personal repositories from mercurial)
dotfiles: chezmoi (moved from stow)

Command line utilities I am using the most—in order—are:

  • eza (as ls alias),
  • zoxide (as cd alias),
  • ripgrep,
  • fd
  • OS:

    • Desktop and work laptop: Gentoo (systemd) with some FreeBSD VMs
    • Travel laptop (GPD Pocket 3): Alpine
  • Editor: neovim + lsp

  • Terminal: ghostty

  • Shell: bash. I used to use fish, but need to SSH into systems running bash constantly, it’s easier not to deal with do sets of shell muscle memory.

  • Desktop: KDE Plasma. I used to use Sway/i3 but realised that I rarely tile more than two windows on a display, so this means one less config to deal with.

  • VCS: Primarily git, but experimenting with fossil for a few small projects

  • Blog generator: posix shell and pandoc

  • Languages:

    • Work: C++, Zig, Go, Python
    • Fun: Zig, Go, Python, Raku, C, Assembly (x86 and arm primarily, but I’m learning 6502 and Z80)
1 Like

Update: borked my system lol, spent today fixing it. will not try again for now

5 Likes

Snapper + btrfs on my work laptop has saved me a few times. It’s hooked up to portage so that every time a package is installed, updated, or removed a snapshot of the rootfs subvolume gets taken (as well as hourly/daily/weekly/monthly snapshots). My home directory is on a separate subvolume so rollbacks to the rootfs subvolume don’t affect it.

OS: Fedora (Kinoite)
Window Manager: River Classic, KDE
Terminal: Ghostty
Shell: Fish
Editor: Neovim + Kickstart.nvim, sometimes Zed
VCS: Learning JJ, mostly git
Browser: Zen or Qutebrowser

Keyboard: Handwired Dactyl Manuform, working on building a Skeletyl right now.

1 Like

I try to have a consistent workflow across Windows, Linux and macOS since I need to switch between those all the time, but this also limits the set of tools.

Everything starts with scoop (https://scoop.sh/) on Windows and homebrew (https://brew.sh/) on macOS (for Linux Kubuntu’s apt).

On Windows: busybox for Unix-like cmdline tools that also work in a regular cmd.exe or powershell.

Then for all platforms:

  • cmake
  • deno
  • fd (find files)
  • git
  • neovim (for quick edits in the terminal)
  • ninja
  • node(js)
  • python
  • ripgrep (find in files)
  • vscode (for dev work in all sorts of languages)
  • chrome and/or firefox

(unfortunately zvm isn’t on homebrew, it is on scoop though, and occassionally I need Xcode and Visual Studio which are also installed outside package managers)

That’s pretty much it. I like to keep customization to a minimum (e.g. no fancy window managers or vim plugins)

2 Likes

I have multicursor at home! [furiously types n.n.n.n.n.]

Nah, I do miss it sometimes. But much less than I did at first. The grammar just fits how my mind works: “delete in word”, done. “in word, delete”? I’m ok with having to say v first.

Someone will add multi-cursors to Neovim, someday. That’s what I keep telling myself anyway.

3 Likes

Justin demoed his multi-cursor branch in an interview about Neovim 0.12, so it could be a thing at some point: https://youtu.be/EiBg91LTOYk?si=H2vSlUkdf6Jf_flu

2 Likes

Alacritty!

Its vim mode is amazing. Makes me not able to switch to Ghostty.

fyi using vim bindings in ghostty is pretty doable now, if you’re willing to do some config. For example this

2 Likes

Interesting, will check it out.

I just tried it but it still not possible to move the cursor around? It’s just for navigation or did I miss something?

no judgement, but always being in select just make sense, you are already moving, might as well be selecting :slight_smile: and maybe one day I’ll go back to nvim, if they get multicursor

2 Likes

Not yet builtin and they keep pushing it to future releases but it’s still planned :slight_smile:
In the mean time there is this plugin that works like a charm

1 Like

I already tried it and I couldn’t explain but it’s really not as good as the one in helix or Zed, it really boils down to that, the multicursor, and speed because one thing I don’t like about nvim is that everything you need is a slow plugin away and all of them together can create a slow editor, which I don’t like, and I don’t want to spend time fixing the editor, but Helix is definitely barebone compared to the amazing setup and workflows people are able to implement in nvim

tbf i haven’t used nvim for about 2/3y maybe it’s better now

1 Like
  • OS: Linux, Arch
  • Window manager: Niri. Was on KDE, but Niri gives me +50% battery life vs KDE.
  • Terminal: foot - Alacritty and Kitty seemed to have divas writing them. Foot’s author seemed to prioritise the same things as me, and hadn’t gone feature crazy.
  • Shell: zsh - modernish but bash-compatible. I can live with bash too.
  • Editor: Emacs (am I alone?)
  • VC: git, but I really want to use mercurial… I miss it.
1 Like

Yeah, foot is great but kind of underestimated because its not fancy or something. But it just works and needs almost no config. Btw all Wayland applications of foots author are great for usage with niri: fuzzel, fnott, fyi, yambar (before it was archived) imho.

1 Like

Yes, I found foot through his other projects.

1 Like

This is either obviously true, or obviously not, depending on some mysterious and personal quality of the psyche. For me, not.

I’d say that the gap between not using a command language, and using one, is immense. Once crossed, the dialect itself is more a matter of taste or personality.

I remember this when kakoune came out, and was discussed on the Orange Website (which was tolerable in those days, kinda). The author (authors?) were sure they had fixed a fundamental flaw in Vim motions, and there were those who vigorously agreed, and those who adamantly reject the idea that this was a flaw in need of remedy, rather than a deliberate and correct design choice.

My synthesis being, those who perceive this flaw will find that kak mode fixes it. The rest of us are going to stick with the OG.

Slow? Your picker is going to use ripgrep no matter the editor I’m sure? You have the same language server? Complaining about shooting yourself in the foot with bad plugins, you may as well say the same about Linux, but for a lot of people the customizability is great. And you can just run a very slim, super fast neovim no problem.

I just tested blink auto complete vs. helix auto complete, and there is no doubt helix is slower to load the completion menu.

I also found that you need more key presses to achieve the common actions in helix? Like what is your equivalent of: ci” ? f”lmi”c?

Vim’s key re-mapping system is God tier.

2 Likes