This is my dotfiles repo. There are many others, but this one is mine.
The dotfiles here are managed with Thoughtbot's rcm.
Prerequisites:
- Xcode Command Line Tools
- Homebrew
Setup:
xcode-select --install
mkdir -p ~/src/github.com/andremedeiros
git -C ~/src/github.com/andremedeiros clone https://github.com/andremedeiros/dotfiles.git
cd ~/src/github.com/andremedeiros/dotfiles
script/bootstrap
git remote set-url origin git@github.com:andremedeiros/dotfiles.gitYou can also add secret/proprietary dotfiles on your iCloud drive. Anything inside iCloud Drive/dotfiles will also be symlinked with the same rules as here.
rcm is a dotfiles manager from thoughtbot. It creates symlinks from this repository to your home directory, making it easy to keep your configuration under version control.
How it works:
- Files are symlinked from this repo to your home directory
- The
config/directory is symlinked to~/.config/(XDG standard) - Hooks in
hooks/post-up/run automatically after eachrcup
Key commands:
rcup- Install/update symlinkslsrc- List what will be symlinkedrcdn- Remove symlinks
See the rcm documentation for more details.
This configuration uses LazyVim, a Neovim configuration framework built on lazy.nvim.
First-time setup:
- Ensure Neovim >= 0.11.2 is installed (via
brew install neovim) - Run
nvim- plugins will install automatically on first launch - Wait for installation to complete
- Run
:checkhealthto verify everything is working
Configuration files:
config/nvim/init.lua- Entry pointconfig/nvim/lua/config/keymaps.lua- Custom keybindingsconfig/nvim/lua/plugins/- Custom plugin configurations
Leader key is Space. Press Space in normal mode to see all available commands via which-key.
These are custom additions to LazyVim's defaults:
| Key | Mode | Action |
|---|---|---|
| H | Normal | Go to first non-whitespace character |
| L | Normal | Go to end of line |
| // | Normal | Clear search highlight |
| < / > | Visual | Indent without losing selection |
| Leader + p | Normal | Find files |
| Leader + Tab | Normal | Switch to alternate buffer |
| Leader + z | Normal | Toggle window zoom |
For LazyVim's built-in keybindings, see the official keymaps documentation.
Leader is bound to Ctrl+Space
- [leader]-| Split vertically
- [leader]-- Split horizontally
- [leader]-h Navigate to left pane
- [leader]-l Navigate to right pane
- [leader]-k Navigate to pane above
- [leader]-j Navigate to pane below
- [leader]-w Navigate windows
- [leader]-s Navigate sessions
- [leader]-[ Enter scroll mode (q quits)
- [leader]-c New window
- [leader]-z Zoom on current pane