Skip to content

Latest commit

 

History

History
106 lines (97 loc) · 6.7 KB

File metadata and controls

106 lines (97 loc) · 6.7 KB

Motivations

Your dotfiles will most likely be the longest project you ever worked on.

Managing dotfiles without a version control system is a chore. That's why I created this GitHub repo :)

Structure of my dotfiles

.
├── flake.lock
├── flake.nix
├── hammerspoon         # hammerspoon configurations
├── hosts               # hosts (aka. machines) configurations
├── ghostty             # ghostty configurations
├── opencode            # opencode configurations
├── lib                 # utils for Nix
├── users               # user-level configurations
├── nvim                # neovim configurations
├── Rime                # Rime configurations
├── tmux                # tmux configurations
├── README.md
└── windows-only        # Windows configurations

What is inside?

Ghostty

The configurations for Ghostty Terminal.

Hammerspoon

Tip

Install the Fennel and run make to get the corresponding *.lua files.

I use Hammerspoon to manage windows. The available key mappings are:

  • Full screen - ⌘ Command + ⌥ Option + f
  • Center - ⌘ Command + ⌥ Option + c
  • Left half - ⌘ Command + ⌥ Option +
  • Right half - ⌘ Command + ⌥ Option +
  • Top half - ⌘ Command + ⌥ Option +
  • Bottom half - ⌘ Command + ⌥ Option +
  • Top left - ⌘ Command + ⌥ Option + ⌃ Control + u
  • Top right - ⌘ Command + ⌥ Option + ⌃ Control + i
  • Bottom left - ⌘ Command + ⌥ Option + ⌃ Control + j
  • Bottom right - ⌘ Command + ⌥ Option + ⌃ Control + k
  • Hold to quit any app - ⌘ Command + q

Neovim

My Go-to text editor with the following plugins:

Windows-only

I use Mac for personal business but use a Windows PC at work, so I wrote the keymappings.ahk to map keys between Mac and Windows to keep a consistent muscle memory. To use this .ahk script, you need to install the AutoHotKey tool and run keymappings.ahk as administrator. Besides that, you should install a third-party Chinese IME and delete the built-in Microsoft Pinyin IME if you are also a Chinese user because there is an unfixed issue.

nix-darwin

I have been gradually migrating to Nix flakes because I really appreciate the reproducibility they offer. My Nix configuration structure is largely inspired by mitchellh' nixos-config.

Rime

Note

The .lua files under lua/ are generated by the Fennel.

The configuration files for RIME input method in the MacOS.

Appendix