Share your stats!

This can be found by running atuin stats.

Here’s mine!

Screenshot 2023-11-26 at 16.50.56

1 Like




1 Like


  • hx is helix (helix), my text editor of choice.
  • l as in ls, using exa (exa).
  • j for just (just, just a better make).
  • g for git, although I do everything Git-related through Lazygit, running constantly in one terminal window.
  • zi for zoxide (zoxide).

Funny to see that my second most run command in the short time I am using Atuin is updating packages on my distro… Rolling release distro truly shines here :grin:

Out of curiosity, what does the k and k get stay for? Is it the same command/program?

48k runs of k means one has to use it regularly and every few commands if git status is only at 12k. I thought it might be k as in make, but then there would not be 5k of normal make… The same goes for basic commands such as cd… Interesting.

hx is helix

Seems like more people use Helix than I thought :thinking: maybeeee I’ll give it a go at some point

Out of curiosity, what does the k and k get stay for? Is it the same command/program?

I have it aliased to kubectl, and I know many many people do the same. k get pods/services/deployments... would therefore be very commonly ran

I’ve set

common_subcommands = [

in my config though, which is why it’s not all just grouped under k

Seems like more people use Helix than I thought

I got used to it. I previously used Doom Emacs, but Helix workflow suits me better. And I fell in love with its auto-selection of last word when jumping around using b, w, e etc. as in Vim. It is so comfy to modify the existing code now.

I have it aliased to kubectl

Ah, thank you. That makes sense. I never had to work with Kubernetes so far, so I am not privy to its idiomatic aliases. If I were to run these commands so often, however, I would personally want some TUI to save my fingers some typing. But then again, I want TUIs for everything. Hence, no git commands in my history.

Or at least used to want TUIs for everything: This was greatly improved with Atuin, where I now basically only press up arrow (bound to space + k shortcut) and type directly into Atuin. This covers most of the commands I run regularly. Getting used to Atuin is so easy.

1 Like

That’s great to hear! Do you ever use it to type new commands that aren’t purely from your history?

I do. Of course, entirely new commands (new program/command) that I know are new need to be typed completely manually, but if I need to run a command that I have already run in the past, only with different arguments, I usually just find the command in the history and with Tab paste the command to the command line and modify the command as necessary (thanks to a Vim mode on the command line, modifying existing commands is easy).

I use fuzzy search by default in Atuin, meaning that typing entirely new commands in Atuin from scratch would be difficult, as I would often get some results even if the results do not match perfectly (have the same prefix). And switching the search mode to prefix (to force Atuin to show me an empty list of past commands), for example, to fall back to the command line with the newly typed command is too much work, in my opinion.

It would be an interesting idea for Atuin to provide better support for writing entirely new commands. However, I think that is unnecessary since the workflow as it is now of writing some initial part of a new command, checking the Atuin list for past uses (with prefix search presumably) of that command (which there are none), and finishing the command in Atuin or falling back to command line again to finish the command is intuitive enough, fast, and pleasant to use.

1 Like

Totally makes sense! Thanks for sharing. Glad to hear you’re happy with the workflow as-is :grin:

And switching the search mode to prefix [snip] … is too much work, in my opinion.

Just an FYI if you weren’t aware, but you can either prefix the fuzzy query with ^, or hit ctrl-s to cycle search modes! Might make it easier to get to prefix querying.

Thank you. I am aware of both options. I usually type something, look for the results and if they are not satisfactory, switch to different search mode with Ctrl+s (or different filter mode with Ctrl+r since I am using worskspace filter by default). Typing ^ at the start is less useful to me, as I am typically not totally sure I need to search for exactly that prefix.

My workflow often looks something like: ma (for make) written on the command line followed by up arrow (or starting directly in Atuin, I will end up there anyway), adding run for make run, and appending some arguments such as spec (for --directory=special_directory).

What I want to find is a match for

make run -- --first-arg=something --directory=~/documents/work/myproject

If I were to start with ^, I would have to know that --first-arg precedes the --directory one etc. Fuzzy search is a better default for my use cases. But maybe I might try harder to remember using ^ when I know the prefix by heart.

Personally, ^ feels much more pleasant to use than cycling through the results afterwards if I have the exact prefix (I can interpret what I am seeing in the terminal significantly faster, for some reason).

1 Like

Screenshot from 2024-01-29 12-28-56

k is an alias for kubectl
this history is only from October :sweat:

1 Like
[▮▮▮▮▮▮▮▮▮▮] 2176 cd
[▮▮▮▮▮▮    ] 1386 vim
[▮▮▮▮▮     ] 1193 ls
[▮▮▮▮      ]  900 lazygit
[▮▮▮▮      ]  899 just
[▮▮        ]  616 cargo run
[▮▮        ]  521 help
[          ]  209 cargo install
[          ]  201 atuin
[          ]  189 source
Total commands:   14825
Unique commands:  4118

cd is aliased to z for zoxide
source is a nu thing

1 Like
[▮▮▮▮▮▮▮▮▮▮] 1454 cd
[▮▮▮▮▮▮▮   ] 1116 lt
[▮▮▮▮▮▮    ]  877 vim
[▮▮▮       ]  502 brew
[▮▮        ]  434 git checkout
[▮▮        ]  346 ssh
[▮▮        ]  318 chezmoi
[▮         ]  289 git push
[▮         ]  287 ml
[▮         ]  266 git add
Total commands:   10567
Unique commands:  3640

I run chezmoi a lot it seems :slight_smile:

oh and lt is an alias for eza --classify --icons --color=automatic --color-scale=all --header --git --group --long --sort=modified --time-style=long-iso. It long ago meant ls -ltr but then moved to lsd then exa and now eza.

1 Like

I’m still using lsd! Is there any compelling reason to switch to one of the others?

I think that both lsd and eza are great. Basically, you can do everything reasonable in both and achieve sensible results. Therefore, the difference is only individual preference, in my opinion. exa is no longer maintained. Its fork eza is the successor of exa.

1 Like

1 Like

I am surprised that nix is so high up. Do you use nix for nix develop, for example?

I don’t know if using direnv with use flake counts. I have a bunch of them.

But I also use nix run nixpkgs#some_pkg and nix shell a lot.

Oh and I use nix build a lot for personal and work projects.

1 Like

Ahh, true. nix build will be run a lot. And I think that all of these will increment the counter. Makes sense, then.

1 Like

Indeed. There are times I decided to fall back to lsd but I do like some of the unique bits of eza that maybe I just never figured out how to do with lsd. Things like gradient coloring and grid view.

But I think lsd might be faster since it’s more streamlined.