- zsh
- Git -- Apple Git does NOT support XDG Base Directory, so you should use ordinary Git.
- tmux
- Neovim
- Node.js -- required by coc.nvim
- npm -- required by coc.nvim
- fzf
- bat -- colorized
cat.alias cat=batwill be defined ifbatexists - GNU
lsin Coreutils --lsusing$LS_COLORS(BSDlsuses$LSCOLORS, not$LS_COLORS).alias ls=glswill be defined ifglsexists - The Fuck -- command correction tool.
fuckfunction will be defined ifthefuckexists
- LightDM -- Display manager
- light-locker -- Screen locker
- i3 -- Tiling window manager
- i3blocks -- Status bar
- Alacritty -- Terminal emulator
- rofi -- Launcher
$ curl -fsSL r.livewing.net/dot | shIf you want to clone the repository using SSH, run below instead:
$ curl -fsSL r.livewing.net/dot | sh -s -- --sshNOTE: r.livewing.net/dot will redirect to the bootstrap script.
$ cd
$ git clone https://github.com/livewing/dotfiles.git
$ ./dotfiles/bin/install-dotfilesChange home directory by exporting $HOME, then install dotfiles.
$ export HOME="/path/to/temporary/home"
$ curl -fsSL r.livewing.net/dot | shGit configuration is stored in $XDG_CONFIG_HOME/git/config, except for the user identity. You should configure it by following commands:
$ git config --global user.name 'Your Name'
$ git config --global user.email 'you@example.com'If you want to sign the commits, run below:
$ git config --global commit.gpgsign trueNOTE: git config --global command tries to write configurations to existing $HOME/.gitconfig rather than $XDG_CONFIG_HOME/git/config.
Some configurations can be written outside of version control:
$HOME/.gitconfig$HOME/.tmux.conf.local$HOME/.vimrc.local$HOME/.xprofile.local$HOME/.zshenv.local$HOME/.zshrc.local
- Control+b: Prefix (default)
- Meta+hjkl: Select pane
- Meta+m: Maximize/Restore pane
- Shift+Meta+hjkl: Resize pane
- Meta+12345: Select layout
- Meta+1: Even-horizontal
- Meta+2: Even-vertical
- Meta+3: Main-horizontal
- Meta+4: Main-vertical
- Meta+5: Tiled
- Meta+|-: Split window
- Meta+[]: Swap pane
- Meta+np: Switch window
- Shift+Meta+np: Switch session
- Meta+c: New window
- Meta+d: Detach session
- Meta+q: Kill pane
- Shift+Meta+q: Kill window
- Meta+r: Rename window
- Shift+Meta+r: Rename session
- Meta+w: Show switcher
- Meta+s: Enter copy mode
- Space: Begin selection
- Return: Copy selection
- Meta+v: Paste buffer
- Control+[ (Esc): Enter normal mode (vicmd)
- Control+f: Complete suggestion
- Control+r: Show history finder
Leader is Space.
- Control+np: Switch buffer
- Control+hjkl: Select pane
- Leadera:
:CocAction(Show coc.nvim actions) - Leaderb:
:Buffers(Show buffer list) - Leaderf:
:FZF(Show file finder) - Leaderga:
:Gwrite(git add) - Leadergb:
:Gblame(git blame) - Leadergc:
:Gcommit(git commit) - Leadergd:
:Gdiff(git diff) - Leaderge:
:GFiles?(Show modified file finder) - Leadergf:
:GFiles(Show Git file finder) - Leadergg:
:GitGutterToggle(Toggle Git diff sign) - Leadergi:
:Git(Invoke git command) - Leadergs:
:Gstatus(git status) - Leaderr:
:QuickRun(Run buffer) - Leaders:
:Startify(Show start page)
- Control+Space: Show completion popup
$mod is Super (Windows).
- $mod+Return: Launch Alacritty
- $mod+Space: Launch rofi
- $mod+Shift+x: Lock screen
- $mod+q: Close window
- $mod+hjkl: Change focus
- $mod+Shift+hjkl: Move focused window
- $mod+a: Split horizontally
- $mod+o: Split vertically
- $mod+f: Toggle fullscreen
- $mod+c: Stacked layout
- $mod+t: Tabbed layout
- $mod+s: Toggle split
- $mod+d: Toggle floating
- $mod+Shift+d: Change focus between tiling / floating
- $mod+p: Focus parent
- $mod+i: Focus child
- $mod+1234567890: Switch to workspace
- $mod+Shift+1234567890: Move focused container to workspace
- $mod+Shift+c: Reload i3 configurations
- $mod+Shift+r: Restart i3
- $mod+Shift+q: Logout
- $mod+r: Enter resize mode
- hjkl: Resize window
- Return: Back to normal mode
- Esc: Back to normal mode
- $mod+r: Back to normal mode
