aliquote.org

Latest micro-posts

You can also also view the full archives of micro-posts. Longer blog posts are available in the Articles section.

2025-08-02 19:06 #

I just noticed that Neovim now allow for full case-insensitive tab completion in command mode, which means I can now enter path as I do in Zsh. #vim

2025-07-26 20:33 #

6 Techniques Hacker News Uses to Create Great Shell Scripts: Some good advices here and there. #unix

2025-07-26 20:32 #

I didn’t even know that Apple dropped rsync and replaced it with openrsync.

» rsync --version
openrsync: protocol version 29
rsync version 2.6.9 compatible
2025-07-26 20:31 #
2025-07-26 20:26 #

I ran into this issue when reinstating Cmus on my MacBook. The locale fix works for me. I also had to set softvol=true to change volume (don’t know why but I didn’t need this on Mojave, IIRC).

2025-07-26 10:20 #

It’s 2025, and here’s the state of Python on macOS. I only use virtual environments and uv, but I wish we could go all uv tool install. #apple #python

2025-07-26 10:19 #

Yatoro: VIM-like Apple Music Player in Terminal. #apple #unix

2025-07-26 10:18 #

TIL about macOS / binaries, to look up macOS binaries lying all around System Monitor. #apple

2025-07-21 10:25 #

Still wasting time looking at possible micro-optimizations on the CLI side. The MacBook M4 Pro is a beast, and I found it reduced by a fair amount (~ 40%) Neovim startup time. Digging into how fast it starts now (using vim-startuptime and hyperfine), I found the following:

scratch master* 2m44s
» hyperfine "nvim --headless +qa" --warmup 5

Benchmark 1: nvim --headless +qa
  Time (mean ± σ):      32.5 ms ±   0.4 ms    [User: 19.0 ms, System: 7.1 ms]
  Range (min … max):    31.4 ms …  33.7 ms    85 runs

scratch master*
» vim-startuptime --vimpath nvim
Extra options: []
Measured: 10 times

Total Average: 22.782900 msec
Total Max:     28.338000 msec
Total Min:     21.359000 msec

  AVERAGE       MAX       MIN
------------------------------
14.312000 18.240000 13.348000: /Users/chl/.config/nvim/init.lua
 5.226100  6.687000  4.827000: require('fzf-lua')
 2.576100  3.206000  2.425000: require('nvim-treesitter.configs')
 2.393600  2.972000  2.255000: require('nvim-treesitter.query')
 2.110400  2.705000  1.979000: require('vim.lsp')
 1.709600  2.168000  1.511000: require('fzf-lua.config')
 1.443200  1.824000  1.330000: require('fzf-lua.path')
 1.227300  1.388000  1.181000: loading rtp plugins
 1.133800  1.385000  1.052000: require('nvim-treesitter.tsrange')
 1.064300  1.333000  1.004000: require('nvim-treesitter.compat')
 1.053900  1.290000  0.977000: require('nvim-treesitter.ts_utils')
 1.016600  1.270000  0.961000: require('vim.treesitter')
 0.990800  1.184000  0.943000: /Users/chl/.config/nvim/plugin/lisp.lua
 0.973200  1.165000  0.927000: nvim_exec2() called at /Users/chl/.config/nvim/plugin/lisp.lua:0

The lisp.lua custom plugin is just here to load slimv which sits as an optional plugin, and so I realized that there was no gain in this case. Better to leave it as a start plugin and remove the custom plugin itself. It makes no difference whatsoever. It’s still much higher than three years ago when I was using a proper package manager and much less Lua code in my init.lua. However, I found that using vim.loader.enable() introduced in Neovim 0.9 resulted in a slight improvement:

~/.config/nvim
» hyperfine "nvim --headless +qa" --warmup 5
Benchmark 1: nvim --headless +qa
  Time (mean ± σ):      25.7 ms ±   0.5 ms    [User: 12.8 ms, System: 6.7 ms]
  Range (min … max):    24.3 ms …  26.9 ms    112 runs

Loading my init.lua is now two times faster as reported by vim-startuptime. #vim