A streamlined dotfiles management system, currently focused on Neovim configuration management with room for future expansion.
# Clone the repository
git clone https://github.com/YOUR_USERNAME/dotfiles.git ~/.dotfiles
# Install the dot command
~/.dotfiles/install.sh
# Initialize your dotfiles
dot init
- 🚀 Single command interface for dotfiles management
- 📦 Comprehensive Neovim configuration with LSP support
- 🔄 Easy synchronization across machines
- 🛠 Extensible framework for future tools
- Git
- Neovim (>= 0.9.0)
- Node.js (for LSP servers)
- Python3 + pip
- GCC/Clang (for Treesitter)
- ripgrep (for telescope search)
- fd-find (for better file finding)
- A Nerd Font (for icons)
- Clone the repository:
git clone https://github.com/YOUR_USERNAME/dotfiles.git ~/.dotfiles
- Run the installation script:
~/.dotfiles/install.sh
- Initialize dotfiles:
dot init
- Install Neovim configuration:
dot install nvim
# Install Neovim configuration
dot install nvim
# Edit Neovim configuration
dot config edit nvim
# Show current configuration
dot config show nvim
# Update configuration
dot update nvim
# Sync across machines
dot sync
To sync changes across machines:
- Push changes from source machine:
cd ~/.dotfiles
git add .
git commit -m "Update configuration"
git push
- Sync on target machine:
dot sync
- 🌟 Modern LSP support
- 🔍 Fuzzy finding with Telescope
- 📝 Intelligent code completion
- 🎨 Syntax highlighting via Treesitter
- 🔧 Built-in terminal support
- 📁 File explorer with neo-tree
- 🎯 Git integration with gitsigns
- 📊 Status line with lualine
<Space>
- Leader key<Leader>w
- Save file<Leader>q
- Close window<Leader>Q
- Quit all
<Leader>ff
- Find files<Leader>fg
- Live grep<Leader>fb
- Browse buffers<Leader>e
- Toggle file explorer
gd
- Go to definitiongr
- Find referencesK
- Show hover<Leader>rn
- Rename<Leader>ca
- Code action<Leader>f
- Format file
<C-h/j/k/l>
- Navigate windows<Leader>v
- Vertical split<Leader>h
- Horizontal split
Machine-specific configurations can be added in:
~/.config/nvim/local.lua
This file is automatically loaded if it exists but is not tracked in git.
Run the doctor command to check for common issues:
dot doctor
This will:
- Verify all required dependencies
- Check Neovim health
- Validate configuration files
- Add support for tmux configuration
- Integrate zsh configuration
- Add support for more development tools
- Enhanced multi-machine synchronization
- Fork the repository
- Create your feature branch
- Make your changes
- Submit a pull request
MIT License - see LICENSE for details