leap.nvim: Next-gen Motion Plugin for Neovim

TL;DR Use leap.nvim to jump to anywhere in the window with fewer than 4 keystrokes. Jumping order: AddWatchFlags (line 11) -> IntoApp (line 5) -> unix (line 17) -> InputDevice (line 8) Introduction leap.nvim is the next-gen motion plugin. I used vim-sneak and easymotion but leap.nvim is next-level smoothiness and intuitiveness. Vim/Neovim makes me wonder how I edited code with vscode before. leap.nvim makes me wonder why I spammed JJwww and kkkkbbb to move around the window. ...

August 31, 2022 · 1 min

The Comprehensive Guide to Typing Cangjie (倉頡三代) on Linux Using fcitx5 and rime

TL;DR Install the packages pacman -Syu fcitx5-im fcitx5-rime Copy cangjie-system/rime-cangjie-integrated to fcitx5’s location: git clone https://github.com/cangjie-system/rime-cangjie-integrated ~/.local/share/fcitx5/rime/rime-cangjie-integrated cp ~/.local/share/fcitx5/rime/rime-cangjie-integrated/*.yaml ~/.local/share/fcitx5/rime/ Create the following file: touch ~/.local/share/fcitx5/rime/default.custom.yaml Add the following to default.custom.yaml to tell fcitx5 to use cangjie: patch: schema_list: - schema: cangjie Set the following environment variables via /etc/environment: QT_IM_MODULE=fcitx QT_IM_MODULES="wayland;fcitx" XMODIFIERS="@im=fcitx" Log out and then log in ...

August 28, 2022 · 3 min

It's high time for Sway (Wayland)

TL;DR I think Wayland is ready for daily use if you don’t have a machine with Nvidia. Introduction I switched from Windows to Linux on 2021-10-06, so my Linux experience is < 1 year. Previous Linux experience WSL VirtualBox with Ubuntu 20.04.4 Linux journey Manjaro with Gnome Desktop since 2021-10-06: Manjaro with i3-gap since 2021-10-19: Switched to Sway since 2022-07-19. Current config: ...

August 27, 2022 · 2 min

Obsidian, Notion, Roam Research? Obsidian for the Vim Experience

TL;DR Use Obsidian instead of Notion or Roam Research if you want a Vim-like experience as much as possible. Introduction Obsidian, Notion and Roam Research are the three big players in Personal Knowledge Management system (PKM). I won’t bore you with the introduction because you can find plenty online. I’ve used Obsidian and Notion extensively, and finally settled down on Obsidian. Why Obsidian? I’m a (neo)vim die-hard user. With Obsidian it’s possible to emulate vim experience as much as possible with: ...

August 24, 2022 · 2 min

tmuxp - A session manager for tmux

TL;DR Use tmuxp so that you don’t have to re-create the same sessions, windows and panes every time you restart your machine. Introduction Previously I was using tmux-resurrect (persists tmux environment across system restarts) and tmux-continuum (continuous saving of tmux environment), but these lack finer control as to which sessions to restore. Getting Started pip install --user tmuxp Make sure tmuxp is installed: ❯ tmuxp --version tmuxp 1.13.0, libtmux 0.14.0 Create the following in ~/.config/tmuxp/main.yaml: session_name: main windows: - window_name: zsh panes: - shell_command: - neofetch - echo hello - window_name: nvim panes: - nvim tmuxp load main When I restart my machine, I do tmuxp load main misc nvim to restart all my sessions. ...

August 18, 2022 · 1 min