1
0
mirror of https://github.com/chylex/dotfiles.git synced 2025-09-15 12:32:09 +02:00

Compare commits

...

108 Commits

Author SHA1 Message Date
d76b82721d Update .vimrc (disable bell sound) 2025-09-10 14:04:01 +02:00
580a47aa9b Update .ideavimrc (work around broken shortcuts in Rider) 2025-08-18 23:38:28 +02:00
946f464aca Update .vimrc (use Ctrl-S to save) 2025-08-17 10:01:24 +02:00
1e5c7a752e Update .vimrc (fix pasting via Ctrl-V in insert mode) 2025-08-17 09:51:13 +02:00
c1fac762be Update .ideavimrc (add bindings to move statement/element) 2025-08-15 18:45:41 +02:00
8cd0b37833 Update .ideavimrc (add bindings to extend/shrink selection) 2025-08-15 02:34:16 +02:00
5cbaf5587d Update .vimrc & .ideavimrc (indent current line with just '<' or '>') 2025-08-06 23:47:48 +02:00
7b5bbf7bb7 Update .vimrc & .ideavimrc (fix 'ů' mapping with matchit) 2025-07-28 02:01:32 +02:00
6d1840a48c Update .vimrc (always show leading and trailing spaces) 2025-07-22 13:34:25 +02:00
4a77b0588b Update .vimrc & .ideavimrc (move some commands closer on Czech keyboard layout) 2025-07-20 12:41:39 +02:00
a9bfe13277 Update .vimrc (fix Ctrl-A in visual mode) 2025-07-20 09:14:12 +02:00
be2bdafe78 Update .vimrc (selection & clipboard) 2025-07-08 16:25:26 +02:00
cda970bfc2 Update .vimrc (GUI configuration & consistency) 2025-07-08 16:25:26 +02:00
80e5b074c9 Update .ideavimrc (disable binding to negate code completion in Rider) 2025-06-17 07:37:53 +02:00
60cb335c9a Update .ideavimrc (add binding to negate code completion) 2025-06-11 19:27:53 +02:00
78866848be Update .vimrc & .ideavimrc (change bindings to create new lines) 2025-06-11 04:06:11 +02:00
f69bb44bfa Update .ideavimrc (remove custom increment/decrement binding) 2025-05-28 21:34:14 +02:00
6c4c99a98d Update .vimrc & .ideavimrc (use 'g' for navigating unmatched parentheses/brackets) 2025-05-28 21:32:04 +02:00
0023b10571 Update .ideavimrc (use Alt-J/K to navigate code completion popups) 2025-05-18 21:26:28 +02:00
4fa0da63e8 Update .vimrc & .ideavimrc (split line) 2025-05-16 16:59:12 +02:00
eb54e7d636 Update .vimrc & .ideavimrc (bind gj/gk to j/k) 2025-05-16 16:59:12 +02:00
2a8dbc57ec Update .ideavimrc (set handler for arrow shortcuts) 2025-04-25 12:58:11 +02:00
713fb10dab Update .ideavimrc (simplify navigating between methods) 2025-04-02 13:21:33 +02:00
ca8bc186b2 Update .bashrc (handle ANSI color codes in less/zless) 2025-02-20 07:03:05 +01:00
534ea4a4f1 Update Firefox userChrome.css 2024-11-22 08:04:46 +01:00
2aebc2deeb Update .vimrc and .ideavimrc (add bindings to create lines in normal mode) 2024-10-18 00:06:27 +02:00
c83891317f Update .ideavimrc (make more actions usable in visual mode) 2024-10-12 08:50:38 +02:00
5ce16f984f Update .ideavimrc (allow jumping to source even in visual mode) 2024-09-19 06:34:36 +02:00
83d12be425 Update .ideavimrc (enable search highlights) 2024-09-08 18:21:13 +02:00
c0c7eccc1d Update .ideavimrc (fix camel hump navigation) 2024-08-24 15:03:48 +02:00
abc7112e75 Update .ideavimrc (fix camel hump navigation) 2024-08-14 11:56:04 +02:00
21e38d0d08 Update .ideavimrc (disable ideaput) 2024-08-11 10:58:53 +02:00
a43aae61e8 Update .vimrc (fix searching special characters with n/N & make search independent of case sensitivity setting) 2024-07-14 14:57:13 +02:00
c9c9c0223e Update .vimrc (improve t/T behavior with n/N) 2024-07-08 04:56:54 +02:00
a3c4fe7259 Update .vimrc and .ideavimrc (fix inconsistency in capitalization) 2024-07-07 07:14:48 +02:00
67c485da65 Update .ideavimrc (add mapping for Compare with Clipboard) 2024-07-07 04:07:01 +02:00
62edd5222d Update .ideavimrc (remove bindings to Extend/Shrink selection) 2024-07-06 18:05:57 +02:00
1aa9bde933 Update .vimrc (update search register when using f/t) 2024-07-06 17:56:44 +02:00
0bcdaaa077 Update .vimrc (clear search highlights with Escape) 2024-07-06 16:01:44 +02:00
9fa73b1ba8 Update .ideavimrc (disable NERDTree) 2024-05-07 02:09:05 +02:00
e7dca24993 Update .ideavimrc (add call hierarchy support for Rider) 2024-03-30 13:35:57 +01:00
ac9b1d4248 Update .ideavimrc (use ShowHoverInfo instead of QuickJavaDoc) 2024-02-18 20:05:25 +01:00
41840c7b33 Update .ideavimrc (map +/- in visual mode to Extend/Shrink selection) 2024-02-18 18:46:48 +01:00
939134dc49 Update .ideavimrc (remap NERDTree bindings) 2024-02-15 07:55:27 +01:00
1bc97f78b6 Update .tmux.conf (add Ctrl-V / Alt-V to toggle block selection) 2024-01-25 15:08:20 +01:00
6681099e47 Update .ideavimrc (remove custom G bindings) 2024-01-24 02:15:23 +01:00
0903e926bb Update .vimrc & .ideavimrc (swap ů/§ and add matchit mapping) 2024-01-24 02:05:38 +01:00
14aa43ede4 Update .vimrc (fix Alt bindings and bring over several Alt mappings from .ideavimrc) 2023-12-05 05:01:08 +01:00
cab52d34b1 Update .ideavimrc (use Alt-V to enter visual block mode) 2023-12-05 04:57:08 +01:00
4203b6e583 Update .ideavimrc (fix comment breaking "gf" mapping) 2023-11-21 09:41:44 +01:00
af2f87c518 Update .vimrc (enable modeline) 2023-11-20 05:13:51 +01:00
daea01656e Update .ideavimrc (update mappings for type navigation & add mapping for String Manipulation) 2023-11-18 12:22:43 +01:00
35ba420d83 Update .bashrc (open multiple files in tabs in vim) 2023-11-18 07:13:22 +01:00
f66f0990ff Update .ideavimrc (remove bindings for navigating tabs) 2023-11-18 07:13:22 +01:00
96e832c9cc Update .ideavimrc (tweak mappings for tab management) 2023-11-18 07:13:22 +01:00
7ca80f443f Update .ideavimrc (add AceJump binding to jump to declaration) 2023-11-17 13:08:39 +01:00
19d10e7428 Update .ideavimrc (migrate from :raction to <Action>) 2023-11-17 13:08:19 +01:00
e0b0194256 Update .ideavimrc (use Ctrl instead of Alt for navigating editor tabs) 2023-11-17 07:18:29 +01:00
b739008bc5 Update .ideavimrc (fix action to "Jump to Source" using a custom IdeaVIM version) 2023-11-15 01:23:23 +01:00
3c66f4c85b Update .ideavimrc (update tab management) 2023-11-14 22:56:25 +01:00
bd5fb52aa7 Update .ideavimrc (add missing handler) 2023-11-14 21:21:42 +01:00
8a7a591d68 Update .ideavimrc (restore square bracket commands & re-add bindings for next/previous method using IDEA action) 2023-11-14 13:50:51 +01:00
7ebb930f0b Add paragraph-motion plugin for vim 2023-11-14 13:37:21 +01:00
61f69a7774 Update .ideavimrc (navigate paragraphs at indentation level) 2023-11-14 13:36:49 +01:00
6c62422353 Update .ideavimrc (remove vim-based bindings to toggle comments) 2023-11-14 13:36:49 +01:00
1d9efca953 Update .ideavimrc (add actions for local/git history) 2023-11-14 13:36:43 +01:00
6ac6c169fa Update .ideavimrc (rebind tab management) 2023-11-09 21:25:21 +01:00
dc68b2d2a0 Update .ideavimrc (migrate from :action to Action) 2023-11-09 21:06:10 +01:00
8dcd87f989 Update .ideavimrc (add new custom g/m bindings) 2023-11-09 20:35:30 +01:00
d1e531074c Update .ideavimrc (add binding to add/remove comment) 2023-11-09 20:03:17 +01:00
50312ccf3b Update .ideavimrc (replace custom binding for curly brackets) 2023-11-09 14:20:25 +01:00
28098843d2 Update .ideavimrc (improve shortcut for previous/next method) 2023-11-09 14:19:52 +01:00
01e92b8cb2 Update .ideavimrc (make increment/decrement rebinds work in other modes) 2023-11-09 13:38:01 +01:00
ea590d93c1 Update .vimrc & .ideavimrc (enter visual block mode by pressing v in visual mode) 2023-11-08 02:49:24 +01:00
3286d65e8d Update .vimrc & .ideavimrc (reduce mappings interfering with select mode) 2023-11-08 02:49:24 +01:00
f700848658 Update .vimrc & .ideavimrc (use Space<char> for easymotion) 2023-11-08 02:49:24 +01:00
adcaeb0403 Update .vimrc & .ideavimrc (use native way of putting without overwriting register) 2023-11-08 01:51:08 +01:00
54284be64b Update .vimrc & .ideavimrc (fix Alt-B mapping in visual mode) 2023-11-08 01:48:10 +01:00
f271ae0d8f Update .ideavimrc (navigate back/forward) 2023-11-08 01:48:10 +01:00
014763826f Update .ideavimrc (navigate to hump ends in visual mode) 2023-11-08 01:48:10 +01:00
40748c3c68 Update .bashrc (rename tmux window for ssh connections & script formatting) 2023-10-29 14:17:12 +01:00
2368dc86c4 Update .ideavimrc (remove workaround for statement completion) 2023-10-20 01:07:23 +02:00
3fe3a9a285 Update .ideavimrc (make tab switching work in insert mode) 2023-10-20 00:02:19 +02:00
14691e4ed9 Update .ideavimrc (disable global mode) 2023-10-20 00:01:57 +02:00
3b7145539e Update .ideavimrc (remove Alt-Shift-N binding for multiple-cursors plugin) 2023-10-19 10:18:13 +02:00
df3e108327 Update .ideavimrc (add new and improved actions) 2023-10-19 06:46:13 +02:00
db429b3b30 Update .vimrc (various options) 2023-10-19 06:34:04 +02:00
569dc0caad Update .vimrc & .ideavimrc (fix alternative way to enter visual block mode in operator-pending mode) 2023-10-19 06:32:56 +02:00
8a5da89d0f Update .vimrc & .ideavimrc (remove navigating to indents) 2023-10-19 06:30:55 +02:00
2bd9758639 Update .vimrc & .ideavimrc (increment/decrement numbers) 2023-10-19 06:30:48 +02:00
9efdf74626 Update .ideavimrc (fix camel humps) 2023-10-19 06:29:00 +02:00
c31dbc308a Update .ideavimrc (IDE keybindings, WSL, comments) 2023-10-19 06:28:58 +02:00
63cd476e43 Update .ideavimrc (maximize scrolloff, enable global mode, enable nerdtree) 2023-10-05 06:05:51 +02:00
309f33a2e3 Update .vimrc (maximize scrolloff) 2023-10-05 06:02:33 +02:00
d0081f9b33 Update .vimrc (navigate soft-wrapped lines) 2023-10-05 06:02:33 +02:00
fc96fddb47 Update .bashrc (add function to convert files to FLAC) 2023-09-11 02:01:52 +02:00
9c3436171e Update .bashrc (remove 'mc' alias & add 'less' alias) 2023-08-14 10:28:27 +02:00
02d4e45ed4 Update .tmux.conf (set escape-time to 0) 2023-08-11 14:58:13 +02:00
0d55252227 Update .vimrc (listchars) 2023-08-08 09:43:50 +02:00
e491daeaa1 Update AceJump mappings for IdeaVIM 2023-07-28 08:10:55 +02:00
f197f922c6 Update .tmux.conf (copy mode) 2023-06-29 18:56:02 +02:00
97a510183b Update Firefox CSS (addon bar button padding) 2023-05-15 06:38:59 +02:00
58ab227487 Update Firefox CSS 2023-05-14 22:35:39 +02:00
e50a78f38e Update .bashrc (fix mc mouse support in tmux) 2023-05-01 03:50:31 +02:00
2b7e748001 Update .bashrc (add borgsize) 2023-04-30 04:48:45 +02:00
f60e9d76fa Update .tmux.conf (set default terminal to screen-256color) 2023-04-08 00:19:45 +02:00
ecd3b7374d Update .vimrc & .ideavimrc (delete lines, remove edit from cursor to end of special characters) 2023-02-04 03:39:21 +01:00
cad038a9a8 Update .tmux.conf (add bindings to move panes) 2023-01-25 03:47:13 +01:00
6 changed files with 529 additions and 246 deletions

29
.bashrc
View File

@@ -4,8 +4,11 @@ bind "set show-all-if-ambiguous on"
bind '"\e[A": history-search-backward' bind '"\e[A": history-search-backward'
bind '"\e[B": history-search-forward' bind '"\e[B": history-search-forward'
alias lsa='ls -l -v --all --human-readable --group-directories-first --color=auto'
alias gh='history|grep' alias gh='history|grep'
alias less='less -R --mouse'
alias zless='zless -R --mouse'
alias lsa='ls -l -v --all --human-readable --group-directories-first --color=auto'
alias vim='vim -p'
alias d='docker' alias d='docker'
alias dc='docker compose' alias dc='docker compose'
@@ -26,6 +29,30 @@ function dtopall() { for c in $(docker ps -q); do docker inspect $c -f "{{ .Name
function dsubnets() { docker network inspect $(docker network ls | awk '$3 == "bridge" { print $1 }') | jq -r '.[] | .Name + " " + .IPAM.Config[0].Subnet' -; } function dsubnets() { docker network inspect $(docker network ls | awk '$3 == "bridge" { print $1 }') | jq -r '.[] | .Name + " " + .IPAM.Config[0].Subnet' -; }
function dmemlimit() { docker stats --no-stream --format "{{.MemUsage}}" | awk '{print $3}' | sort | sed 's/.$//' | numfmt --from=iec-i | awk '{s+=$1} END {printf "%.0f\n", s}' | numfmt --to=iec --format="%.3f"; } function dmemlimit() { docker stats --no-stream --format "{{.MemUsage}}" | awk '{print $3}' | sort | sed 's/.$//' | numfmt --from=iec-i | awk '{s+=$1} END {printf "%.0f\n", s}' | numfmt --to=iec --format="%.3f"; }
function ssh() {
if [ -n "${TMUX_PANE}" ]; then
tmux rename-window -t"${TMUX_PANE}" "$*"
command ssh "$@"
tmux set-window-option automatic-rename "on"
else
command ssh "$@"
fi
}
function borgsize() {
printf 'Archive\t\t\tOrig\tComp\tDedup\n'
printf '%-16.16s\t%s\t%s\t%s\n' $(borg info --json --sort-by name --glob-archives '*' "$1" | jq '.archives[] | "\(.name) \(.stats.original_size) \(.stats.compressed_size) \(.stats.deduplicated_size)"' | sed --expression='s/^"//;s/"$//' | numfmt --field='2-4' --to=iec)
}
function convflac() {(
set -e
for f in *."$1"; do
n="${f%.*}"
ffmpeg -i "$n.$1" -compression_level 12 "$n.flac"
exiftool -TagsFromFile "$n.$1" "-all:all>all:all" "$n.flac"
done
)}
export EDITOR=vim export EDITOR=vim
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then

View File

@@ -1,30 +1,99 @@
set idearefactormode=visual set clipboard-=ideaput
set hlsearch
set ignorecase set ignorecase
set incsearch set incsearch
set noerrorbells
set number set number
set nrformats-=octal
set relativenumber set relativenumber
set scrolloff=12 set scrolloff=999
set showcmd set showcmd
set showmode set showmode
set sidescrolloff=48 set sidescrolloff=999
set smartcase set smartcase
set virtualedit=onemore set virtualedit=onemore
set visualbell set visualbell
set acejump " Use WSL bash as shell
set argtextobj if has('win32')
set exchange set shell=bash.exe
set highlightedyank set shellcmdflag=-lic
set ideajoin set shellxquote=
set matchit endif
set multiple-cursors
set ReplaceWithRegister
set surround
set textobj-entire
set textobj-indent
" http://vimdoc.sourceforge.net/htmldoc/vimindex.html " Configure IDEA settings (https://github.com/JetBrains/ideavim/wiki/set-commands)
set ideajoin
set idearefactormode=visual
" Configure IDE keybindings (https://github.com/JetBrains/ideavim/wiki/sethandler)
sethandler <C-A> a:ide
sethandler <C-B> a:ide
sethandler <C-C> a:ide
sethandler <C-E> a:ide
sethandler <C-F> a:ide
sethandler <C-G> a:ide
sethandler <C-H> a:ide
sethandler <C-I> a:ide
sethandler <C-J> a:ide
sethandler <C-K> a:ide
sethandler <C-L> a:ide
sethandler <C-M> a:ide
sethandler <C-R> a:ide
sethandler <C-S> a:ide
sethandler <C-T> a:ide
sethandler <C-V> a:ide
sethandler <C-W> a:ide
sethandler <C-X> a:ide
sethandler <C-Y> a:ide
sethandler <C-\> a:ide
sethandler <A-B> a:vim
sethandler <A-H> a:vim
sethandler <A-J> a:vim
sethandler <A-K> a:vim
sethandler <A-L> a:vim
sethandler <A-N> a:vim
sethandler <A-O> a:vim
sethandler <A-P> a:vim
sethandler <A-S-B> a:vim
sethandler <A-S-H> a:vim
sethandler <A-S-J> a:vim
sethandler <A-S-K> a:vim
sethandler <A-S-L> a:vim
sethandler <A-S-O> a:vim
sethandler <A-V> a:vim
sethandler <A-X> a:vim
sethandler <C-D> a:vim
sethandler <C-I> a:vim
sethandler <C-N> a:vim
sethandler <C-O> a:vim
sethandler <C-P> a:vim
sethandler <C-S-W> a:vim
sethandler <C-U> a:vim
sethandler <S-BS> a:vim
sethandler <C-Left> a:vim
sethandler <C-Right> a:vim
sethandler <S-Left> a:vim
sethandler <S-Right> a:vim
if &ide =~? 'rider'
" These shortcuts are broken in Rider for some reason...
sethandler <A-S-H> a:ide
sethandler <A-S-L> a:ide
endif
" Enable plugins (https://github.com/JetBrains/ideavim/wiki/IdeaVim-Plugins)
Plug 'argtextobj.vim'
Plug 'vim-exchange'
Plug 'vim-highlightedyank'
Plug 'vim-indent-object'
Plug 'vim-matchit'
Plug 'vim-multiple-cursors'
Plug 'vim-paragraph-motion'
Plug 'vim-surround'
Plug 'vim-textobj-entire'
" https://vimhelp.org/index.txt.html
" Map top row on Czech keyboard layout to digits " Map top row on Czech keyboard layout to digits
map + 1 map + 1
@@ -39,186 +108,219 @@ map í 9
map é 0 map é 0
" Move some commands closer on Czech keyboard layout " Move some commands closer on Czech keyboard layout
map ů %
nnoremap ú @@ nnoremap ú @@
noremap ů ; noremap , +
map § %
" Navigate to end of previous word noremap § `
nnoremap <A-b> ge noremap §§ ``
nnoremap <A-S-b> gE nnoremap m§ m
" Navigate to indents sunmap ů
nnoremap J + sunmap §
vnoremap J +
nnoremap K - " Enter visual block mode
vnoremap K - map <A-v> <C-v>
" Navigate camel humps " Navigate camel humps
noremap L [w
noremap H [b
nnoremap L [w nnoremap L [w
vnoremap L [w
nnoremap H [b nnoremap H [b
vnoremap H [b
" Edit camel humps " Navigate to end of previous word
nnoremap dL :raction EditorDeleteToWordEndInDifferentHumpsMode<CR> noremap <A-b> ge
nnoremap dH :raction EditorDeleteToWordStartInDifferentHumpsMode<CR> noremap <A-S-b> gE
nmap dih dHdL " Only works in the middle of a hump
nmap cL dLi " Navigate unmatched parentheses/braces
nmap cH dHi noremap g( [(
nmap cih dihi noremap g) ])
noremap g{ [{
noremap g} ]}
" Edit from cursor to start/end of parenthesized block " Edit from cursor to start/end of parenthesized block
nnoremap c) c]) nnoremap c) c])
nnoremap d) d]) nnoremap d) d])
nnoremap c( c[(( nnoremap c( c[((
nnoremap d( c[((<ESC>l nnoremap d( c[((<Esc>l
" Edit from cursor to end of special characters " Create lines
nnoremap c" ct" nnoremap go o<Esc>$
nnoremap d" dt" nnoremap gO O<Esc>$
nnoremap c' ct' nnoremap g<CR> i<CR><Esc>l
nnoremap d' dt'
nnoremap c] ct]
nnoremap d] dt]
" Alternative way to enter visual block mode " Edit current line
nnoremap <Space>v <C-V> nnoremap C cc
xnoremap C cc
nnoremap D dd
xnoremap D dd
nnoremap < <<
nnoremap > >>
" Indent keeping selection " Indent keeping selection
vnoremap < <gv xnoremap < <gv
vnoremap > >gv xnoremap > >gv
vnoremap = =gv xnoremap = =gv
" Extend selection
xmap x <Action>(EditorSelectWord)
xmap X <Action>(EditorUnSelectWord)
" Turn capital letters into opposite actions " Turn capital letters into opposite actions
" nnoremap U :redo<CR> " Handled by custom version of IdeaVim " nnoremap U :redo<CR> " Handled by custom version of IdeaVIM
" Reselect pasted text " Reselect pasted text
nnoremap gp `[v`] nnoremap gp `[v`]
" Put without yank " Put without yank
xmap p gr xnoremap p P
xnoremap P p
" Clear search highlights
nnoremap <Esc> :nohlsearch<Return><Esc>
" Code completion
if &ide !~? 'rider'
imap <expr> ! pumvisible() ? '<Action>(EditorChooseLookupItem)<Esc>mzF.bi!<Esc>`zla' : '!'
endif
" Show parameter info
nmap <A-p> <Action>(ParameterInfo)
imap <A-p> <Action>(ParameterInfo)
" Navigate back/forward
map <BS> <Action>(Back)
map <S-BS> <Action>(Forward)
" Navigate inspection highlights
map ( <Action>(GotoPreviousError)
map ) <Action>(GotoNextError)
" Navigate to previous/next method
map [ <Action>(MethodUp)
map ] <Action>(MethodDown)
" Navigate paragraphs at indentation
map { <Plug>(ParagraphPrevMotion)$
map } <Plug>(ParagraphNextMotion)$
" Move statement/element
map <A-S-h> <Action>(MoveElementLeft)
map <A-S-l> <Action>(MoveElementRight)
map <A-S-j> <Action>(MoveStatementDown)
map <A-S-k> <Action>(MoveStatementUp)
" Multiple carets
map <expr> <A-j> pumvisible() ? '<Action>(EditorDown)' : '<Action>(EditorCloneCaretBelow)'
map <expr> <A-k> pumvisible() ? '<Action>(EditorUp)' : '<Action>(EditorCloneCaretAbove)'
imap <expr> <A-j> pumvisible() ? '<Action>(EditorDown)' : '<Action>(EditorCloneCaretBelow)'
imap <expr> <A-k> pumvisible() ? '<Action>(EditorUp)' : '<Action>(EditorCloneCaretAbove)'
" Manage editor tabs
map <C-w>m <Action>(MoveEditorToOppositeTabGroup)
map <C-w>s <Action>(MoveTabDown)
map <C-w>u <Action>(Unsplit)
map <C-w>U <Action>(UnsplitAll)
map <C-w>v <Action>(MoveTabRight)
noremap <C-w>S <C-w>s
noremap <C-w>V <C-w>v
map <C-w><C-w>a <Action>(CloseAllEditors)
map <C-w><C-w>h <Action>(CloseAllToTheLeft)
map <C-w><C-w>l <Action>(CloseAllToTheRight)
map <C-w><C-w>o <Action>(CloseAllEditorsButActive)
map \\ <C-w>
map \\\\ <C-w><C-w>
" Rebind repurposed commands
noremap g] ]
noremap g[ [
" Rebind commands that will be repurposed
nnoremap GG G
nnoremap dG dG
nnoremap cG cG
nnoremap M m nnoremap M m
nnoremap Z z nnoremap Z z
map <A-S-n> <A-p>
" Repurpose 'Enter' for statement completion (renaming function requires a custom version of IdeaVIM) " Repurpose 'Enter' for statement completion
function! CompleteStatement() nmap <Enter> <Action>(EditorCompleteStatement)
if (renaming())
" TODO https://github.com/JetBrains/ideavim/discussions/397#discussioncomment-1573048
" return "\<Enter>"
return "<Enter>"
else
action EditorCompleteStatement
return ""
endif
endfunction
nmap <expr> <Enter> CompleteStatement() " Repurpose 'g' for navigation (VimJumpToSource requires a custom version of IdeaVIM)
map gb <Action>(GotoNextBookmark)
map gB <Action>(GotoPreviousBookmark)
map gD <Action>(GotoTypeDeclaration)
map ge <Action>(VcsShowNextChangeMarker)
map gE <Action>(VcsShowPrevChangeMarker)
map gf <Action>(VimJumpToSource)<Action>(HideActiveWindow)
map gi <Action>(GotoImplementation)
map gr <Action>(RecentLocations)
map gR <Action>(RecentChangedFiles)
map gs <Action>(GotoSuperMethod)
map gS <Action>(ShowSiblings)
map gt gg<Action>(KM.GotoNextTypeInFile)
map gT <Action>(KM.GotoNextTypeInFile)
map gu <Action>(ShowUsages)
map gU <Action>(FindUsages)
" Repurpose special characters for navigation " Repurpose 'z' for view actions and debugger
nmap ( :raction GotoPreviousError<CR> map za <Action>(Annotate)
nmap ) :raction GotoNextError<CR> map zb <Action>(ViewBreakpoints)
nmap [ :raction MethodUp<CR> map zc <Action>(EditorContextInfo)
nmap ] :raction MethodDown<CR> map zd <Action>(CompareClipboardWithSelection)
nmap { :raction JumpToLastChange<CR> map ze <Action>(ShowErrorDescription)
nmap } :raction JumpToNextChange<CR> map zf <Action>(SelectInProjectView)
map zi <Action>(ShowHoverInfo)
map zm <Action>(ShowBookmarks)
map zp <Action>(QuickImplementations)
map zP <Action>(QuickTypeDefinition)
map zr <Action>(RunToCursor)
map zR <Action>(ForceRunToCursor)
map zs <Action>(osmedile.intellij.stringmanip.PopupChoiceAction)
map zt <Action>(ExpressionTypeInfo)
map zx <Action>(EvaluateExpression)
" Repurpose 'g' for navigation (:raction requires a custom version of IdeaVIM) map zht <Action>(TypeHierarchy)
nmap gb :raction GotoNextBookmark<CR> map zhm <Action>(MethodHierarchy)
nmap gB :raction GotoPreviousBookmark<CR>
nmap gd :action GotoDeclaration<CR>
nmap gD :action GotoTypeDeclaration<CR>
nmap ge :raction VcsShowNextChangeMarker<CR>
nmap gE :raction VcsShowPrevChangeMarker<CR>
map gi :action GotoImplementation<CR>
map gj :raction EditorCloneCaretBelow<CR>
map gk :raction EditorCloneCaretAbove<CR>
nmap go :raction GotoNextElementUnderCaretUsage<CR>
nmap gO :raction GotoPrevElementUnderCaretUsage<CR>
nmap gr :action RecentLocations<CR>
nmap gR :action RecentChangedFiles<CR>
map gs :action GotoSuperMethod<CR>
map gS :action ShowSiblings<CR>
nmap gT /\\<class\>\\\|\\<interface\>\\\|\\<enum\>\\\|\\<object\>\\\|\\<record\>\\\|\\<struct\>\\\|\\<trait\><CR>w:nohlsearch<CR>
nmap gt gggT
nmap gu :action ShowUsages<CR>
nmap gU :action FindUsages<CR>
map gz :action NextSplitter<CR>
map gZ :action PrevSplitter<CR>
" Make bidirectional 'g' commands work with 'G' too if &ide =~? 'rider'
nmap Gb gb map zhc <Action>(RiderShowIncomingCalls)
nmap GB gB else
nmap Ge ge map zhc <Action>(CallHierarchy)
nmap GE gE endif
map Gj gj
map Gk gk
nmap Go go
nmap GO gO
nmap Gt gt
nmap GT gT
map Gz gz
map GZ gZ
" Repurpose 'z' for view actions, debugger, and tab management nmap zhl <Action>(LocalHistory.ShowHistory)
map za :action Annotate<CR> xmap zhl <Action>(LocalHistory.ShowSelectionHistory)
map zb :action ViewBreakpoints<CR> nmap zhg <Action>(Vcs.ShowTabbedFileHistory)
map zc :action EditorContextInfo<CR> xmap zhg <Action>(Vcs.ShowHistoryForBlock)
map zd :action QuickJavaDoc<CR>
map ze :action ShowErrorDescription<CR>
map zf :action SelectInProjectView<CR>
map zht :action TypeHierarchy<CR>
map zhm :action MethodHierarchy<CR>
map zhc :action CallHierarchy<CR>
map zm :action ShowBookmarks<CR>
map zp :action QuickImplementations<CR>
map zP :action QuickTypeDefinition<CR>
map zr :action RunToCursor<CR>
map zR :action ForceRunToCursor<CR>
map zsd :action MoveTabDown<CR>
map zsr :action MoveTabRight<CR>
map zsu :action Unsplit<CR>
map zsU :action UnsplitAll<CR>
map zt :action ExpressionTypeInfo<CR>
map zx :action EvaluateExpression<CR>
" Repurpose 'm' for refactoring (normal mode) " Repurpose 'm' for refactoring
nmap mg :action Generate<CR> map mc <Action>(IntroduceConstant)
nmap mi :action Inline<CR> map md <Action>(SafeDelete)
nmap mn :action RenameElement<CR> map me <Action>(Move)
nmap mo :action OverrideMethods<CR> map mf <Action>(IntroduceField)
nmap ms :action ChangeSignature<CR> map mg <Action>(Generate)
nmap mS :action NewScratchFile<CR> map mi <Action>(Inline)
map mm <Action>(ExtractMethod)
map mM <Action>(ExtractFunction)
map mn <Action>(RenameElement)
map mo <Action>(OverrideMethods)
map mp <Action>(IntroduceParameter)
map mP <Action>(IntroduceProperty)
map mr <Action>(Refactorings.QuickListPopupAction)
map ms <Action>(ChangeSignature)
map mS <Action>(NewScratchFile)
map mt <Action>(InsertLiveTemplate)
map mv <Action>(IntroduceVariable)
map mw <Action>(SurroundWith)
" Repurpose 'm' for refactoring (normal / visual mode) " Remap NERDTree bindings
nmap mc :action IntroduceConstant<CR> let g:NERDTreeMapOpenVSplit = 'v'
vmap mc :action IntroduceConstant<CR> let g:NERDTreeMapPreviewVSplit = 'gv'
nmap mf :action IntroduceField<CR> let g:NERDTreeMapOpenSplit = 's'
vmap mf :action IntroduceField<CR> let g:NERDTreeMapPreviewSplit = 'gs'
nmap mm :action ExtractMethod<CR>
vmap mm :action ExtractMethod<CR>
nmap mM :action ExtractFunction<CR>
vmap mM :action ExtractFunction<CR>
nmap mp :action IntroduceParameter<CR>
vmap mp :action IntroduceParameter<CR>
nmap mP :action IntroduceProperty<CR>
vmap mP :action IntroduceProperty<CR>
nmap mr :action Refactorings.QuickListPopupAction<CR>
vmap mr :action Refactorings.QuickListPopupAction<CR>
nmap mv :action IntroduceVariable<CR>
vmap mv :action IntroduceVariable<CR>
" Actions for custom version of AceJump " Actions for custom version of AceJump
map <Space> <Plug>(acejump) set acejump
map <Space>d :action AceVimAction_GoToDeclaration<CR> map <Space> <Action>(AceVimAction_JumpAllEditors)
map <Space>D :action AceVimAction_GoToTypeDeclaration<CR> map g<Space> <Action>(AceVimAction_JumpAllEditors_GoToDeclaration)
map <Space>i :action AceVimAction_ShowIntentions<CR>
map <Space>u :action AceVimAction_ShowUsages<CR>
map <Space>U :action AceVimAction_FindUsages<CR>
map <Space>r :action AceVimAction_Refactor<CR>
map <Space>n :action AceVimAction_Rename<CR>

View File

@@ -1,10 +1,21 @@
set -g mouse on set -g default-terminal "screen-256color"
set -g escape-time 0
set -g history-limit 50000 set -g history-limit 50000
set -g mouse on
set-window-option -g mode-keys vi set-window-option -g mode-keys vi
bind -Tcopy-mode MouseDragEnd1Pane send -X copy-selection-no-clear bind -T copy-mode-vi v send -X begin-selection
bind -T copy-mode-vi C-v send -X rectangle-toggle
bind -T copy-mode-vi M-v send -X rectangle-toggle
bind -T copy-mode-vi Enter send -X copy-selection-and-cancel
unbind -T copy-mode-vi MouseDragEnd1Pane
bind '"' split-window -c "#{pane_current_path}" bind '"' split-window -c "#{pane_current_path}"
bind % split-window -hc "#{pane_current_path}" bind % split-window -hc "#{pane_current_path}"
bind c new-window -c "#{pane_current_path}" bind c new-window -c "#{pane_current_path}"
bind -n S-Up move-pane -ht ".{up-of}"
bind -n S-Right move-pane -t ".{right-of}"
bind -n S-Left move-pane -t ".{left-of}"
bind -n S-down move-pane -ht ".{down-of}"

211
.vimrc
View File

@@ -1,35 +1,83 @@
set autoindent set autoindent
set backspace=indent,eol,start
set encoding=utf-8 set encoding=utf-8
set guifont=Cascadia_Mono:h12:cANSI:qDRAFT
set guioptions-=t " Remove menu tearoff
set history=1024 set history=1024
set hlsearch set hlsearch
set ignorecase set ignorecase
set incsearch set incsearch
set infercase
set laststatus=2 set laststatus=2
set linebreak
set list
set listchars=lead,trail,tab:→\ ,extends:>,precedes:<
set modeline
set modelines=2
set mouse=a set mouse=a
set noerrorbells set noerrorbells
set noshowcmd set noshowcmd
set noshowmode set noshowmode
set nrformats-=octal
set number set number
set relativenumber set relativenumber
set scrolloff=12 set scrolloff=999
set shiftwidth=0 set shiftwidth=0
set shortmess-=S " Show search count
set shortmess-=l " Show full description for lines and bytes
set showbreak=↪\
set showmatch set showmatch
set sidescrolloff=48 set sidescrolloff=999
set smartcase set smartcase
set tabstop=4 set tabstop=4
set ttimeout
set ttimeoutlen=50
set ttymouse=xterm2
set virtualedit=onemore
set wildmenu set wildmenu
set winaltkeys=no
set wrap set wrap
" Color support " Windows paths
set t_Co=256 set packpath=$HOME/.vim,$VIM/vimfiles,$VIMRUNTIME
set runtimepath=$HOME/.vim,$VIM/vimfiles,$VIMRUNTIME
" Color scheme " Color scheme
syntax enable syntax enable
colorscheme custom
highlight LineNr ctermfg=244 if has("gui_running")
highlight IncSearch ctermfg=251 ctermbg=238 colorscheme retrobox
highlight Search ctermfg=251 ctermbg=238 highlight NonText ctermfg=14 guifg=#7c6f64
highlight Visual ctermfg=240 ctermbg=250 else
colorscheme custom
highlight LineNr ctermfg=244
highlight IncSearch ctermfg=251 ctermbg=238
highlight Search ctermfg=251 ctermbg=238
highlight Visual ctermfg=240 ctermbg=250
endif
highlight SpecialKey ctermfg=8 guifg=#584f46
" Windows GUI
if has("win32") && has("gui_running")
autocmd GUIEnter * simalt ~x " Maximize window
autocmd GUIEnter * set visualbell t_vb= " Disable bell sound
set listchars+=tab:▶\
set renderoptions=type:directx " Fix unicode rendering
set showbreak=→\
endif
" Fix Alt mappings (https://github.com/vim/vim/issues/2588#issuecomment-697959290)
for ord in range(65, 90) + range(97, 122)
let char = nr2char(ord)
exec printf("set <m-%s>=\<esc>%s", char, char)
exec printf("tnoremap <silent> <m-%s> <esc>%s", char, char)
endfor
" Navigate editor tabs
noremap <M-h> gT
noremap <M-l> gt
" Map top row on Czech keyboard layout to digits " Map top row on Czech keyboard layout to digits
map + 1 map + 1
@@ -44,51 +92,75 @@ map í 9
map é 0 map é 0
" Move some commands closer on Czech keyboard layout " Move some commands closer on Czech keyboard layout
map ů %
nnoremap ú @@ nnoremap ú @@
noremap ů ; noremap , +
map § %
" Navigate to end of previous word noremap § `
nnoremap <A-b> ge noremap §§ ``
nnoremap <A-S-b> gE nnoremap m§ m
" Navigate to indents sunmap ů
nnoremap J + sunmap §
vnoremap J +
nnoremap K - " Enter visual block mode
vnoremap K - noremap <M-v> <C-v>
" Navigate camel humps (https://github.com/vim-scripts/camelcasemotion) " Navigate camel humps (https://github.com/vim-scripts/camelcasemotion)
map L <Plug>CamelCaseMotion_w map L <Plug>CamelCaseMotion_w
map H <Plug>CamelCaseMotion_b map H <Plug>CamelCaseMotion_b
sunmap L
sunmap H
" Edit camel humps (https://github.com/vim-scripts/camelcasemotion)
omap iL <Plug>CamelCaseMotion_iw omap iL <Plug>CamelCaseMotion_iw
xmap iL <Plug>CamelCaseMotion_iw xmap iL <Plug>CamelCaseMotion_iw
omap iH <Plug>CamelCaseMotion_ib omap iH <Plug>CamelCaseMotion_ib
xmap iH <Plug>CamelCaseMotion_ib xmap iH <Plug>CamelCaseMotion_ib
" Navigate to end of previous word
noremap <M-b> ge
noremap <M-S-b> gE
" Navigate soft-wrapped lines
nnoremap <expr> j v:count ? 'j' : 'gj'
xnoremap <expr> j v:count ? 'j' : 'gj'
nnoremap <expr> k v:count ? 'k' : 'gk'
xnoremap <expr> k v:count ? 'k' : 'gk'
nnoremap gj j
xnoremap gj j
nnoremap gk k
xnoremap gk k
" Navigate unmatched parentheses/braces
noremap g( [(
noremap g) ])
noremap g{ [{
noremap g} ]}
" Edit from cursor to start/end of parenthesized block " Edit from cursor to start/end of parenthesized block
nnoremap c) c]) nnoremap c) c])
nnoremap d) d]) nnoremap d) d])
nnoremap c( c[(( nnoremap c( c[((
nnoremap d( c[((<ESC>l nnoremap d( c[((<Esc>l
" Edit from cursor to end of special characters " Create lines
nnoremap c" ct" nnoremap go o<Esc>$
nnoremap d" dt" nnoremap gO O<Esc>$
nnoremap c' ct' nnoremap g<CR> i<CR><Esc>l
nnoremap d' dt'
nnoremap c] ct]
nnoremap d] dt]
" Alternative way to enter visual block mode " Edit current line
nnoremap <Space>v <C-V> nnoremap C cc
xnoremap C cc
nnoremap D dd
xnoremap D dd
nnoremap < <<
nnoremap > >>
" Indent keeping selection " Indent keeping selection
vnoremap < <gv xnoremap < <gv
vnoremap > >gv xnoremap > >gv
vnoremap = =gv xnoremap = =gv
" Turn capital letters into opposite actions " Turn capital letters into opposite actions
nnoremap U :redo<CR> nnoremap U :redo<CR>
@@ -97,14 +169,81 @@ nnoremap U :redo<CR>
nnoremap gp `[v`] nnoremap gp `[v`]
" Put without yank " Put without yank
xmap p gr xnoremap p P
xnoremap P p
" Clear search highlights
nnoremap <Esc> :nohlsearch<Return><Esc>
" Use Ctrl for selection and clipboard
nnoremap <C-a> ggVG
xnoremap <C-a> ggoG
xnoremap <C-c> "+y
xnoremap <C-x> "+x
noremap <C-v> "+gP
inoremap <C-v> <C-o>:set paste<CR><C-r>+<C-o>:set nopaste<CR>
cnoremap <C-v> <C-r>+
nnoremap <C-s> :w<CR>
xnoremap <C-s> :<C-U>w<CR>gv
inoremap <C-s> <C-o>:w<CR>
" Update search register when using f/t
function FindChar(action, reverse, search_affix)
let t:reverse_search = a:reverse
let char = nr2char(getchar())
if char == '\'
let query = '\\'
else
let query = '\C\V'.char.'\v'
endif
if a:reverse
call setreg('/', query.a:search_affix)
else
call setreg('/', a:search_affix.query)
endif
nohlsearch
execute 'normal! '.a:action.char
endfunction
function FindCharVisual(action, reverse, search_affix)
normal gv
call FindChar(a:action, a:reverse, a:search_affix)
endfunction
function! ResetReverseSearchFlag()
if getcmdtype() =~ "[/?]"
let t:reverse_search = 0
endif
endfunction
nmap f :call FindChar('f', 0, '')<CR>
nmap F :call FindChar('F', 1, '')<CR>
nmap t :call FindChar('t', 0, '\zs.\ze')<CR>
nmap T :call FindChar('T', 1, '\zs.\ze')<CR>
xmap f :call FindCharVisual('f', 0, '')<CR>
xmap F :call FindCharVisual('F', 1, '')<CR>
xmap t :call FindCharVisual('t', 0, '\zs.\ze')<CR>
xmap T :call FindCharVisual('T', 1, '\zs.\ze')<CR>
noremap <expr> n 'nN'[t:reverse_search]
noremap <expr> N 'Nn'[t:reverse_search]
cnoremap <CR> <cmd>call ResetReverseSearchFlag()<CR><CR>
" Plugin: https://github.com/easymotion/vim-easymotion.git " Plugin: https://github.com/easymotion/vim-easymotion.git
map <Space> <Plug>(easymotion-prefix) nmap <Space> <Plug>(easymotion-overwin-f)
xmap <Space> <Plug>(easymotion-s)
omap <Space> <Plug>(easymotion-s)
" Plugin: https://github.com/machakann/vim-highlightedyank " Plugin: https://github.com/machakann/vim-highlightedyank
let g:highlightedyank_highlight_duration = 500 let g:highlightedyank_highlight_duration = 500
" Plugin: https://github.com/luochen1990/rainbow " Plugin: https://github.com/luochen1990/rainbow
let g:rainbow_active = 1 let g:rainbow_active = 1

View File

@@ -1,26 +1,5 @@
@-moz-document url(chrome://browser/content/browser.xul), url(chrome://browser/content/browser.xhtml) { @-moz-document url(chrome://browser/content/browser.xul), url(chrome://browser/content/browser.xhtml) {
/* Fix broken window colors */
#main-window {
background-color: #000c !important;
}
#toolbar-menubar, #main-menubar, #TabsToolbar {
background-color: #000 !important;
}
#main-menubar {
color: rgb(249, 249, 250) !important;
text-shadow: none !important;
border-radius: 0 !important;
}
#TabsToolbar {
color: rgb(249, 249, 250) !important;
background-image: none !important;
}
/* Menu bar */ /* Menu bar */
#main-menubar > menu { #main-menubar > menu {
@@ -37,7 +16,7 @@
/* Reload/stop buttons */ /* Reload/stop buttons */
#reload-button, #stop-button { #reload-button, #stop-button {
display: -moz-box !important; display: flex !important;
} }
#stop-reload-button .toolbarbutton-icon { #stop-reload-button .toolbarbutton-icon {
@@ -78,6 +57,10 @@
/* Tabs & toolbars */ /* Tabs & toolbars */
#navigator-toolbox {
border-bottom: none !important;
}
#toolbar-menubar { #toolbar-menubar {
min-height: 21px !important; min-height: 21px !important;
} }
@@ -86,6 +69,10 @@
height: 27px !important; height: 27px !important;
} }
.tab-label-container {
height: auto !important;
}
:root { :root {
--tab-min-height: 27px !important; --tab-min-height: 27px !important;
--tab-block-margin: 0 !important; --tab-block-margin: 0 !important;
@@ -102,17 +89,13 @@
.tabbrowser-tab { .tabbrowser-tab {
padding-inline: 0 !important; padding-inline: 0 !important;
border-right: 1px solid #484848 !important;
}
.tabbrowser-tab[first-visible-unpinned-tab] {
border-left: 1px solid #484848 !important; border-left: 1px solid #484848 !important;
} }
.tabbrowser-tab[first-visible-tab] {
border-inline-start: 1px solid #484848 !important;
}
.tabbrowser-tab[last-visible-tab] {
border-inline-end: 1px solid #484848 !important;
}
.tab-content { .tab-content {
padding-bottom: 2px !important; padding-bottom: 2px !important;
} }
@@ -125,23 +108,33 @@
padding: 0 1px !important; padding: 0 1px !important;
} }
/* Tab playback icons */
.tabbrowser-tab:not([pinned]) .tab-icon-stack:is([muted], [soundplaying], [activemedia-blocked]) {
grid-template-areas: "a s";
}
.tabbrowser-tab:not([pinned]) .tab-icon-overlay:is([muted], [soundplaying], [activemedia-blocked]) {
grid-area: a !important;
}
.tabbrowser-tab:not([pinned]) .tab-icon-stack[indicator-replaces-favicon] > :not(&) {
opacity: 1 !important;
grid-area: s;
}
/* Address bar */ /* Address bar */
#urlbar-container { #urlbar-container {
--urlbar-container-height: 34px !important; --urlbar-container-height: 34px !important;
margin-top: -2px !important;
margin-inline: 3px !important; margin-inline: 3px !important;
} }
#urlbar {
margin: 1px 0 !important;
}
#urlbar .urlbarView-row-inner { #urlbar .urlbarView-row-inner {
padding-block: 4px !important; padding-block: 4px !important;
} }
#urlbar .search-one-offs:not([hidden]){ #urlbar .search-one-offs:not([hidden]) {
padding-block: 4px !important; padding-block: 4px !important;
} }
@@ -153,7 +146,7 @@
#PersonalToolbar { #PersonalToolbar {
-moz-window-dragging: no-drag; -moz-window-dragging: no-drag;
display: -webkit-box !important; display: flex !important;
position: fixed !important; position: fixed !important;
bottom: 0 !important; bottom: 0 !important;
width: 100% !important; width: 100% !important;
@@ -161,7 +154,6 @@
padding: 0 !important; padding: 0 !important;
-moz-padding-start: 0 !important; -moz-padding-start: 0 !important;
-moz-padding-end: 0 !important; -moz-padding-end: 0 !important;
border-top: 1px solid var(--chrome-content-separator-color) !important;
background-color: #0E0E0E !important; background-color: #0E0E0E !important;
z-index: 1000 !important; z-index: 1000 !important;
} }
@@ -170,9 +162,14 @@
max-width: none !important; max-width: none !important;
} }
#PersonalToolbar .toolbaritem-combined-buttons {
margin-inline: 0 !important;
}
#PersonalToolbar .toolbarbutton-1 { #PersonalToolbar .toolbarbutton-1 {
margin: 0 !important; margin: 0 !important;
padding: 3px 4px !important; padding: 3px 0 !important;
--toolbarbutton-inner-padding: 6px !important;
} }
#PersonalToolbar .toolbarbutton-icon { #PersonalToolbar .toolbarbutton-icon {
@@ -180,8 +177,8 @@
height: 14px !important; height: 14px !important;
} }
#main-window:not([inFullscreen = "true"]) #browser-bottombox { #main-window:not([inFullscreen = "true"]) #browser {
height: 22px; margin-bottom: 22px;
} }
/* PDF.js */ /* PDF.js */

View File

@@ -12,12 +12,19 @@
- { name: "highlighted-yank" , repo: "https://github.com/machakann/vim-highlightedyank.git" } - { name: "highlighted-yank" , repo: "https://github.com/machakann/vim-highlightedyank.git" }
- { name: "indent-object" , repo: "https://github.com/michaeljsmith/vim-indent-object.git" } - { name: "indent-object" , repo: "https://github.com/michaeljsmith/vim-indent-object.git" }
- { name: "lightline" , repo: "https://github.com/itchyny/lightline.vim.git" } - { name: "lightline" , repo: "https://github.com/itchyny/lightline.vim.git" }
- { name: "paragraph-motion" , repo: "https://github.com/dbakker/vim-paragraph-motion.git" }
- { name: "rainbow" , repo: "https://github.com/luochen1990/rainbow.git" } - { name: "rainbow" , repo: "https://github.com/luochen1990/rainbow.git" }
- { name: "repeat" , repo: "https://github.com/tpope/vim-repeat.git" } - { name: "repeat" , repo: "https://github.com/tpope/vim-repeat.git" }
- { name: "replace-with-register" , repo: "https://github.com/vim-scripts/ReplaceWithRegister.git" }
- { name: "sleuth" , repo: "https://github.com/tpope/vim-sleuth.git" } - { name: "sleuth" , repo: "https://github.com/tpope/vim-sleuth.git" }
- { name: "surround" , repo: "https://github.com/tpope/vim-surround.git" } - { name: "surround" , repo: "https://github.com/tpope/vim-surround.git" }
- { name: "visual-multi" , repo: "https://github.com/mg979/vim-visual-multi.git" } - { name: "visual-multi" , repo: "https://github.com/mg979/vim-visual-multi.git" }
- { name: "visual-star-search" , repo: "https://github.com/nelstrom/vim-visual-star-search.git" } - { name: "visual-star-search" , repo: "https://github.com/nelstrom/vim-visual-star-search.git" }
loop_control: loop_control:
label: "{{ item.name }}" label: "{{ item.name }}"
- name: Delete unused vim plugins
file:
path: "~/.vim/pack/plugins/start/{{ item }}"
state: absent
loop:
- "replace-with-register"