diff options
-rw-r--r-- | Cheatsheet.md | 180 | ||||
-rw-r--r-- | Common/vimrc | 16 | ||||
-rw-r--r-- | Common/zshrc | 1 | ||||
-rwxr-xr-x | install/install_linux.sh | 2 | ||||
-rwxr-xr-x | install/install_mac.sh | 2 |
5 files changed, 199 insertions, 2 deletions
diff --git a/Cheatsheet.md b/Cheatsheet.md new file mode 100644 index 0000000..ae2cec1 --- /dev/null +++ b/Cheatsheet.md @@ -0,0 +1,180 @@ +# Cheatsheet +Cheatsheets for different terminal things. + +## Vim + +### General vim + +https://vim.rtorr.com + +### [jakobst1n's](https://github.com/jakobst1n/dotfiles) additional keymaps +- Leader key: `,` +- Fast save (`:w!`): `<leader>w` +- `:W` -> `sudo save` + +#### Search +- Visual mode `*` or `#` searches for current selection +- Space: `/` (search) +- C-space: `?` (backward search) + +#### Windows +- `<C-(j|k|h|l)>` move between windows + +#### Buffers +- `<leader>bd` Close current buffer. +- `<leader>ba` Close all buffers +- `<leader>l` next buffer +- `<leader>h` prev buffer + +#### tabs +- `<leader>tn` new tab +- `<leader>to` tabonly +- `<leader>tc` close tab +- `<leader>tm` move tab +- `<leader>t<leader>` next tab +- `<leader>tl` Last used tab +- `<leader>te` Open new tab with current buffers path. + +#### Working directory +- `<leader>cd` Set working directory to path of current buffer + +#### Line moving +You can move a line of text using `ALT+[jk]` or `CMD+[jk]` on mac. + +#### Spell checking +- `<leader>ss` Toggle spellcheck +- `<leader>sn` `]s` +- `<leader>sp` `[s` +- `<leader>sa` `zg` +- `<leader>s?` `z=` + +#### Clipboard +- `<leader>pp` Toggle paste mode + +#### NerdTree +- `<F3>` To toggle + +#### FuzzyFinder +- `;` To open + +#### CoC +- Use `<TAB>` for autocomplete +- `gd` Go to definition +- `gy` Go to type definition +- `gi` Go to implementation +- `gr` Go to references +- `K` To show documentation in preview window +- `<leader>rn` Rename symbol +- `<leader>f` format selected + +#### Multiple-cursors +- `<C-d>`->`start_word_key` +- `<A-d>`->`select_all_word_key` +- `g<C-d>`->`start_key` +- `g<A-D>`->`select_all_key` +- `<C-d>`->`next_key` +- `<C-p>`->`prev_key` +- `<C-x>`->`skip_key` +- `<ESC>`->`quit_key` + +#### NerdCommenter +- `<leader>cc` Comment out current line or lines in visual mode. +- `<leader>cn` Same as cc but forces nesting. +- `<leader>c<space>` Toggles the comment state of the selected line(s). If the topmost selected line is commented, all selected lines are uncommented and vice versa. +- `<leader>cm` Comments the given lines using only one set of multipart delimiters. +- `<leader>ci` Toggles the comment state of the selected line(s) individually. +- `<leader>cs` Comments out the selected lines with a pretty block formatted layout. +- `<leader>cy` Same as cc except that the commented line(s) are yanked first. +- `<leader>c$` Comments the current line from the cursor to the end of line. +- `<leader>cA` Adds comment delimiters to the end of line and goes into insert mode between them. +- `<leader>ca` Switches to the alternative set of delimiters. +- `<leader>cu` Uncomments the selected line(s). + + + + +## Tmux + +### General Tmux +- Prefix `Ctrl`+`a` + +#### Sessions +- `tmux`, `tmux new`, `tmux new-session`, `:new` new session. +- `tmux new -s <session-name>`, `:new -s <session-name>` new session with name. +- `tmux kill-ses -t <session-name>`, `tmux kill-session -t <session-name>` kill delete session with name. +- `tmux kill-session -a` kill/delete all sessions but the current. +- `tmux kill-session -a -t <session-name>` kill/delete all sessions but the named one. +- `prefix` `$` rename session. +- `prefix` `$`Detach from session. +- `:attach -d`Detach others on the session (Maximise window by detach other clients). +- `tmux ls`, `tmux list-sessions`, `prefix` `s` show all sessions. +- `tmux a`, `tmux at`, `tmux attach`, `tmux attach-session` attach to last session. +- `tmux a -t <session-name>`, `tmux at -t <session-name>`, `tmux attach -t <session-name>`, `tmux attach-session -t <session-name>` attach to a session with name. +- `prefix` `(` Move to previous session. +- `prefix` `)` Move to next session. + +#### Windows + +- `prefix` `c` Create window. +- `prefix` `,` Rename window. +- `prefix` `&` Close current window. +- `prefix` `p` Previous window. +- `prefix` `n` Next window. +- `prefix` `0`..`9` Switch/select window by number. +- `:swap-window -s 2 -t 1` Reorder window, swap window number 2(src) and 1(dst). +- `:swap-window -t -1` Move current window to the left by one position. + +#### Panes + +- `prefix` `;` Toggle last active pane. +- `prefix` `%` Split pane vertically. +- `prefix` `"` Split pane horizontally. +- `prefix` `{` Move the current pane left. +- `prefix` `}` Move the current pane right. +- `prefix` `up/down/right/left` swith to pane in direction. +- `:setw synchronize-panes` Toggle synchronized-panes. +- `prefix` `Space` Toggle between pane layouts. +- `prefix` `o` Switch to next pane. +- `prefix` `q` Show pane numbers. +- `prefix` `q` `0`..`9` Switch/select pane by number. +- `prefix` `z` Toggle pane zoom. +- `prefix` `!` Convert pane into a window. +- `prefix`+`arrow`, `prefix` `ctrl`+`arrow` resize current pane in direction. +- `prefix` `x` Close current pane. + +#### Copy Mode + +- `:setw -g mode-keys vi` use vi keys in buffer. +- `prefix` `[]` enter copy mode. +- `prefix` `PgUp` enter copy mode and scroll one page up. +- `q` Quit mode. +- `g` Go to top line. +- `G` Go to bottom line. +- `Up` Scroll up. +- `Down` Scroll down. +- `h/j/k/l` Move cursor. +- `w/b` Move cursor one word forward/back. +- `/`/`?` Search forward/backward. +- `n` next keyword occurrence. +- `N` Previous. occurrence. +- `Space` Start selection. +- `ESC` Clear selection. +- `Enter` Copy selection. +- `prefix` `]` Paste contents of buffer_0. +- `:show-buffer` Display buffer_0 contents. +- `:capture-pane` Copy entire visible contents of pane to a buffer. +- `:list-buffers` Show all buffers. +- `:choose-buffer` Show all buffers and paste selected. +- `:save-buffer <filename>` Save buffer contents to file. +- `:delete-buffer -b 1` Delete buffer 1. + +#### Misc + +- `prefix` `:` Enter command mode. +- `:set -g OPTION` Set OPTION for all sessions. +- `:setw -g OPTION` Set OPTION for all windows. + +#### Help + +- `tmux info` Show every session, window, pane, etc... +- `prefix` `?` Show shortcuts. diff --git a/Common/vimrc b/Common/vimrc index ddc2dba..6a18a3f 100644 --- a/Common/vimrc +++ b/Common/vimrc @@ -125,6 +125,9 @@ endif " Add a bit extra margin to the left set foldcolumn=1 +" Show leader commands +set showcmd + """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " => Colors and Fonts """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" @@ -508,3 +511,16 @@ nmap <leader>rn <Plug>(coc-rename) xmap <leader>f <Plug>(coc-format-selected) nmap <leader>f <Plug>(coc-format-selected) + +" vim-multiple-cursors +let g:multi_cursor_use_default_mapping=0 + +" Default mapping +let g:multi_cursor_start_word_key = '<C-d>' +let g:multi_cursor_select_all_word_key = '<A-d>' +let g:multi_cursor_start_key = 'g<C-d>' +let g:multi_cursor_select_all_key = 'g<A-d>' +let g:multi_cursor_next_key = '<C-d>' +let g:multi_cursor_prev_key = '<C-p>' +let g:multi_cursor_skip_key = '<C-x>' +let g:multi_cursor_quit_key = '<Esc>' diff --git a/Common/zshrc b/Common/zshrc index 523de78..356f69c 100644 --- a/Common/zshrc +++ b/Common/zshrc @@ -71,6 +71,7 @@ case "$OSTYPE" in path+=("$(readlink /Users/$DEFAULT_USER/bin)") path+=("/Library/TeX/texbin") path+=("/usr/local/share/dotnet") + path+=("/usr/local/sbin") export PATH alias krak='/Applications/GitKraken.app/Contents/MacOS/GitKraken -p "$(PWD)" &>> /dev/null &' diff --git a/install/install_linux.sh b/install/install_linux.sh index 6edefab..fffb066 100755 --- a/install/install_linux.sh +++ b/install/install_linux.sh @@ -25,7 +25,7 @@ function dlgYN() { dlgYN "> Install \"Highlight, atool, w3m, mediainfo, vim, git\"" res if [ $res -eq 1 ]; then tput sc - $INST_PM highlight atool w3m mediainfo curl zsh vim git python3-pip zsh tmux + $INST_PM highlight atool w3m mediainfo curl zsh vim git python3-pip zsh tmux nodejs tput rc; tput ed fi diff --git a/install/install_mac.sh b/install/install_mac.sh index 05a88b3..9b1af7b 100755 --- a/install/install_mac.sh +++ b/install/install_mac.sh @@ -32,7 +32,7 @@ fi dlgYN "> Install \"Highlight, atool, w3m, mediainfo, vim\"" res if [ $res -eq 1 ]; then tput sc - brew install highlight atool w3m mediainfo vim + brew install highlight atool w3m mediainfo vim nodejs tput rc; tput ed fi |