Move to internal Vim package manager

Author Mitja Felicijan <mitja.felicijan@gmail.com> 2026-05-23 13:31:13 +0200
Committer Mitja Felicijan <mitja.felicijan@gmail.com> 2026-05-23 13:37:13 +0200
Commit 7d14421b9472443d366fa6d59fc38f80a5b0b3a5 (patch)
-rw-r--r-- .config/nvim/init.lua 30
-rw-r--r-- .gitmodules 12
-rwxr-xr-x .shenanigans.sh 5
bin 0 B -> 0 B
bin 0 B -> 0 B
bin 0 B -> 0 B
bin 0 B -> 0 B
-rw-r--r-- .vim/vimrc 24
-rw-r--r-- .vimrc 58
-rw-r--r-- README.md 43
10 files changed, 70 insertions, 102 deletions
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua
...
19
vim.opt.wildignore:append({ "node_modules", ".git" })
19
vim.opt.wildignore:append({ "node_modules", ".git" })
20
vim.opt.completeopt = { "menu", "menuone", "popup", "noselect", "noinsert" }
20
vim.opt.completeopt = { "menu", "menuone", "popup", "noselect", "noinsert" }
21
  
21
  
  
22
vim.pack.add({
  
23
	{ src = "https://github.com/nvim-mini/mini.pick" },
  
24
})
  
25
  
  
26
local mini = require('mini.pick')
  
27
mini.setup({
  
28
	source = {
  
29
		show = mini.default_show,
  
30
	},
  
31
	window = {
  
32
		prompt_prefix = " ",
  
33
		config = function()
  
34
			return {
  
35
				border = "single",
  
36
				anchor = "SW",
  
37
				height = 15,
  
38
				width = vim.o.columns,
  
39
				row = vim.o.lines - vim.o.cmdheight - 1,
  
40
				col = 0,
  
41
			}
  
42
		end,
  
43
	},
  
44
})
  
45
  
22
vim.keymap.set("n", "<C-Left>",  ":bprevious<CR>")
46
vim.keymap.set("n", "<C-Left>",  ":bprevious<CR>")
23
vim.keymap.set("n", "<C-Right>", ":bnext<CR>")
47
vim.keymap.set("n", "<C-Right>", ":bnext<CR>")
24
vim.keymap.set("n", "<Leader>d", ":bd!<CR>")
48
vim.keymap.set("n", "<Leader>d", ":bd!<CR>")
25
vim.keymap.set("n", "<Leader>x", ":Ex .<CR>")
  
26
vim.keymap.set("n", "<Leader>f", ":find ")
  
27
vim.keymap.set("n", "<Leader>b", ":b ")
  
28
vim.keymap.set("n", "<Leader>q", ":nohlsearch<CR>")
49
vim.keymap.set("n", "<Leader>q", ":nohlsearch<CR>")
29
vim.keymap.set("n", "<leader>w", ":silent! grep! <cword> | cwindow | redraw!<CR>")
50
vim.keymap.set("n", "<leader>w", ":silent! grep! <cword> | cwindow | redraw!<CR>")
  
51
vim.keymap.set("n", "<Leader>p", ":Pick files<CR>")
  
52
vim.keymap.set("n", "<Leader>b", ":Pick buffers<CR>")
  
53
vim.keymap.set("n", "<Leader>g", ":Pick grep_live<CR>")
30
  
54
  
31
vim.api.nvim_set_hl(0, "Normal", { bg = "#000000" })
55
vim.api.nvim_set_hl(0, "Normal", { bg = "#000000" })
32
vim.api.nvim_set_hl(0, "CursorLine", { bg = "#222222" })
56
vim.api.nvim_set_hl(0, "CursorLine", { bg = "#222222" })
...
diff --git a/.gitmodules b/.gitmodules
  
1
[submodule ".vim/pack/plugins/start/vim-commentary"]
  
2
	path = .vim/pack/plugins/start/vim-commentary
  
3
	url = git@github.com:tpope/vim-commentary.git
  
4
[submodule ".vim/pack/plugins/start/ctrlp.vim"]
  
5
	path = .vim/pack/plugins/start/ctrlp.vim
  
6
	url = git@github.com:ctrlpvim/ctrlp.vim.git
  
7
[submodule ".vim/pack/plugins/start/vim-gitgutter"]
  
8
	path = .vim/pack/plugins/start/vim-gitgutter
  
9
	url = git@github.com:airblade/vim-gitgutter.git
  
10
[submodule ".vim/pack/plugins/start/sniper.vim"]
  
11
	path = .vim/pack/plugins/start/sniper.vim
  
12
	url = git@github.com:mitjafelicijan/sniper.vim.git
diff --git a/.shenanigans.sh b/.shenanigans.sh
...
10
	export LC_ALL=en_US.UTF-8
10
	export LC_ALL=en_US.UTF-8
11
	export COLORTERM=truecolor
11
	export COLORTERM=truecolor
12
	export TERM=xterm-256color
12
	export TERM=xterm-256color
13
	export VISUAL=nvim
13
	export VISUAL=vim
14
	export EDITOR=nvim
14
	export EDITOR=vim
15
  
15
  
16
	# Customized Bash prompt.
16
	# Customized Bash prompt.
17
	SYMBOL='\[\e[38;5;214m\]\$\[\e[0m\]'
17
	SYMBOL='\[\e[38;5;214m\]\$\[\e[0m\]'
...
26
	alias gg='lazygit'
26
	alias gg='lazygit'
27
	alias less='less -R'
27
	alias less='less -R'
28
	alias tmux='tmux -T 256 -u'
28
	alias tmux='tmux -T 256 -u'
29
	alias vim='nvim'
  
30
	alias server='python3 -m http.server 6969'
29
	alias server='python3 -m http.server 6969'
31
	alias newsboat='newsboat -r -u ~/.feeds.txt'
30
	alias newsboat='newsboat -r -u ~/.feeds.txt'
32
	alias emptytrash='gio trash --empty'
31
	alias emptytrash='gio trash --empty'
...
diff --git a/ b/
diff --git a/ b/
diff --git a/ b/
diff --git a/ b/
diff --git a/.vim/vimrc b/.vim/vimrc
  
1
set nocompatible exrc secure
  
2
filetype plugin on
  
3
  
  
4
set encoding=utf8 spelllang=en_us laststatus=2 tabstop=4 shiftwidth=4
  
5
set number autoindent cursorline ignorecase hlsearch incsearch signcolumn=yes
  
6
set hidden nowrap nobackup noswapfile noundofile autoread updatetime=100
  
7
set backspace=indent,eol,start completeopt=menuone path+=**
  
8
set foldmethod=syntax foldlevel=99 foldopen= lazyredraw scrolloff=10
  
9
set wildignore+=*/.git/*,*/.hg/*,*/.svn/*,*/vendor,tags,*.o,*.a,*.so
  
10
set completeopt=menu,menuone,popup,noselect,noinsert
  
11
set background=dark
  
12
colorscheme wildcharm
  
13
  
  
14
nnoremap <C-Right>  :bnext<CR>
  
15
nnoremap <C-Left>   :bprevious<CR>
  
16
nnoremap <C-q>      :copen<CR>
  
17
nnoremap <C-b>      :CtrlPBuffer<CR>
  
18
nnoremap <Leader>d  :bd!<CR>
  
19
nnoremap <Leader>q  :nohlsearch<CR>
  
20
nnoremap <leader>w  :silent! grep! <cword> \| cwindow \| redraw!<CR>
  
21
  
  
22
let g:ctrlp_use_caching = 0
  
23
let g:ctrlp_show_hidden = 1
  
24
let g:ctrlp_working_path_mode = 'ra'
diff --git a/.vimrc b/.vimrc
1
set nocompatible exrc secure
  
2
filetype plugin on
  
3
  
  
4
call plug#begin()
  
5
	Plug 'tpope/vim-commentary'
  
6
	Plug 'ctrlpvim/ctrlp.vim'
  
7
	Plug 'dense-analysis/ale'
  
8
	Plug 'airblade/vim-gitgutter'
  
9
	Plug 'mitjafelicijan/sniper.vim'
  
10
call plug#end()
  
11
  
  
12
set encoding=utf8 spelllang=en_us laststatus=2 tabstop=4 shiftwidth=4
  
13
set number autoindent cursorline ignorecase hlsearch incsearch signcolumn=yes
  
14
set hidden nowrap nobackup noswapfile noundofile autoread updatetime=300
  
15
set backspace=indent,eol,start completeopt=menuone path+=**
  
16
set foldmethod=syntax foldlevel=99 foldopen= lazyredraw scrolloff=10
  
17
set wildignore+=*/.git/*,*/.hg/*,*/.svn/*,*/vendor,tags,*.o,*.a,*.so
  
18
set completeopt=menu,menuone,popup,noselect,noinsert
  
19
set omnifunc=ale#completion#OmniFunc
  
20
set background=dark
  
21
colorscheme wildcharm
  
22
  
  
23
if executable('rg')
  
24
	set grepprg=rg\ --vimgrep\ --no-heading\ --smart-case
  
25
	set grepformat=%f:%l:%c:%m
  
26
endif
  
27
  
  
28
nnoremap <C-Right>  :bnext<CR>
  
29
nnoremap <C-Left>   :bprevious<CR>
  
30
nnoremap <C-q>      :copen<CR>
  
31
nnoremap <C-b>      :CtrlPBuffer<CR>
  
32
nnoremap <C-k>      :ALEHover<CR>
  
33
nnoremap <C-j>      :ALEDetail<CR>
  
34
nnoremap <Leader>d  :bd!<CR>
  
35
nnoremap <Leader>q  :nohlsearch<CR>
  
36
nnoremap <Leader>e  :ALEPopulateQuickfix<CR>:sleep 100m<CR>:copen<CR>
  
37
nnoremap <leader>w  :silent! grep! <cword> \| cwindow \| redraw!<CR>
  
38
nnoremap <A-Down>   :m .+1<CR>==
  
39
nnoremap <A-Up>     :m .-2<CR>==
  
40
nnoremap <A-Right>  >>
  
41
nnoremap <A-Left>   <<
  
42
vnoremap <A-Down>   :m '>+1<CR>gv=gv
  
43
vnoremap <A-Up>     :m '<-2<CR>gv=gv
  
44
vnoremap <A-Right>  >gv
  
45
vnoremap <A-Left>   <gv
  
46
nmap <silent> gr    :ALEFindReferences -quickfix<CR>:sleep 100m<CR>:copen<CR>
  
47
nmap <silent> gd    :ALEGoToDefinition<CR>
  
48
nmap <silent> re    :ALERename<CR>
  
49
imap <C-n>          <Plug>(ale_complete)
  
50
  
  
51
let g:ctrlp_use_caching = 0
  
52
let g:ctrlp_show_hidden = 1
  
53
let g:ctrlp_working_path_mode = 'ra'
  
54
let g:ale_hover_to_floating_preview = 1
  
55
let g:ale_detail_to_floating_preview = 1
  
56
let g:ale_floating_window_border = 0
  
57
let g:ale_virtualtext_cursor = 0
  
58
let g:ale_set_quickf = 1
  
diff --git a/README.md b/README.md
1
![Unga Bunga](https://github.com/mitjafelicijan/dotfiles/assets/296714/2ea7852a-8297-40c4-a9b1-0f6cba6c701f)
1
![Unga Bunga](https://github.com/mitjafelicijan/dotfiles/assets/296714/2ea7852a-8297-40c4-a9b1-0f6cba6c701f)
2
  
2
  
3
```sh
3
```sh
4
git clone git@github.com:mitjafelicijan/dotfiles.git ~/.dotfiles
4
# Install
  
5
git clone --recursive git@github.com:mitjafelicijan/dotfiles.git ~/.dotfiles
5
cd ~/.dotfiles && stow .
6
cd ~/.dotfiles && stow .
6
```
  
7
  
  
8
Unga Bunga woke up before the sun, as he always did, scratching his head with a
  
9
stick he was fairly sure used to be someone else’s idea.
  
10
  
  
11
The cave was quiet. Too quiet.
  
12
  
  
13
“Hmm,” said Unga Bunga, a man of deep and thoughtful vocabulary.
  
14
  
7
  
15
He stepped outside and immediately noticed something was wrong. The big rock he
8
# Update all submodules
16
liked to sit on… was gone.
9
git submodule update --remote --recursive
17
  
10
```
18
“Bunga?” he called.
  
19
  
  
20
From behind a bush, his friend Bunga appeared, holding the rock.
  
21
  
  
22
“I move rock,” said Bunga proudly.
  
23
  
  
24
“Why move rock?” Unga Bunga asked.
  
25
  
  
26
“Feel like it.”
  
27
  
  
28
Unga Bunga considered this. It was, unfortunately, a very strong argument.
  
29
  
  
30
He nodded. “Good reason.”
  
31
  
  
32
They both stood there for a moment, staring at the rock in its new, objectively
  
33
worse location.
  
34
  
  
35
“Now what?” asked Bunga.
  
36
  
  
37
Unga Bunga picked up a slightly smaller rock.
  
38
  
  
39
“We move this one too.”
  
40
  
  
41
Bunga grinned. “Unga bunga.”
  
42
  
  
43
And so, civilization began.