my personal dotfiles managed by dotbot, zinit
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

111 lines
3.7 KiB

This is my personal dotfiles which contain config for vim, zsh, tmux, git, fzf etc;
10 years ago
## macOS setup
Set up by using [dotbot](https://blog.einverne.info/post/2020/08/use-dotbot-dotfiles-management.html):
cd ~
git clone [email protected]:einverne/dotfiles.git
cd dotfiles
# to bootstrap config for vim, zsh, tmux, git, fzf, etc
3 years ago
make bootstrap
# under Linux desktop, install essential packages
3 years ago
make linux
# under macOS, install applications by brew
make mac
Log out and log in again, zinit will install all plugins automatically. If you use vi to edit file at first time, the vim-plug will install all vim plugins automatically.
## Termux setup
Install dependency first:
pkg install make python vim git
then:
git clone [email protected]:einverne/dotfiles.git
cd dotfiles
make termux
## Overview
- using [dotbot](https://github.com/anishathalye/dotbot/) to manage dotfiles, [read more](https://blog.einverne.info/post/2020/08/use-dotbot-dotfiles-management.html)
3 years ago
- zsh, using [zinit](https://blog.einverne.info/post/2020/10/use-zinit-to-manage-zsh-plugins.html) as zsh plugin management
4 years ago
- vim, using [vim-plug](https://github.com/junegunn/vim-plug) to manage vim plugins, vim-plug relate configuration is under `vim-plug_vimrc`. In Vim, `:PlugInstall` to install all vim plugins.
- tmux, using [tpm](https://blog.einverne.info/post/2017/12/tmux-plugins.html) to manage tmux plugins, in tmux, press `Ctrl +B` + `I` to install all tmux plugins.
- other useful tools, like [fzf](https://blog.einverne.info/post/2019/08/fzf-usage.html) to fuzzy search, ripgrep for recursively searching directories, zoxide to replace cd, exa to replace ls.
GUI applications:
- Kitty
- Karabiner-Elements
- Hammerspoon
5 years ago
5 years ago
### zsh config
to see `.zshrc` file.
5 years ago
### Vim config
vim-plug related configuration is under `vim-plug_vimrc`, to show all plugins list, use `:PluginList` in vim.
5 years ago
python related configurations is under `python_vimrc`.
## Components
- bin/: executable shell scripts, Anything in bin/ will get added to your $PATH and be made available everywhere.
- conf/: configuration file of zsh etc
## Instruction for vim
Enter the vim and then run `:PlugInstall` to install all plugins.
### install manually
Or, you can do it manually follow the step:
Enter vim, run `:PlugInstall`, after install all plugin, you will meet an error,
> Taglist: Exuberant ctags (http://ctags.sf.net) not found in PATH. Plugin is not loaded.
For Ubuntu and derivatives:
sudo apt-get install exuberant-ctags
with yum:
sudo yum install ctags-etags
## Tmux config
I take some Tmux config from [gpakosz](https://github.com/gpakosz/.tmux). If you want to learn more about tmux, you can check [this article](http://einverne.github.io/post/2017/07/tmux-introduction.html).
You can manually install tmux plugins by `prefix + I`.
Tmux need:
- `tmux >= 2.1`
- You should set `$TERM` environment for `xterm-256color`
Tmux config:
- You can use `C-b` as prefix, and use `C-a` as second choice
- `prefix + |` to split panel vertically, `prefix + -` split panel horizontally
- `C-hjkl` to switch pane
- `prefix + Shift + HJKL` to adjust pane size
I use Tmux Plugin Manager to manage tmux plugins, and by default I use following plugins:
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-yank'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @plugin 'tmux-plugins/tmux-open'
set -g @plugin 'tmux-plugins/tmux-copycat'
## fzf config
There are following alias in `.zshrc` :
- fe : open file using $EDITOR
- fo : open file Ctrl-o using open, Ctrl-e use $EDITOR
- fcd : cd path (fd to replace find)
- fkill : kill process
- tm : tm new tmux session
- fs : tmux attach tmux session