diff options
28 files changed, 98 insertions, 64 deletions
diff --git a/.gitmodules b/.gitmodules index c05f40d..f91af19 100644 --- a/.gitmodules +++ b/.gitmodules | |||
@@ -55,3 +55,6 @@ | |||
55 | [submodule "pack/_all/start/vim-operator-user"] | 55 | [submodule "pack/_all/start/vim-operator-user"] |
56 | path = pack/_all/start/vim-operator-user | 56 | path = pack/_all/start/vim-operator-user |
57 | url = https://github.com/kana/vim-operator-user.git | 57 | url = https://github.com/kana/vim-operator-user.git |
58 | [submodule "pack/_all/opt/zeavim.vim"] | ||
59 | path = pack/_all/opt/zeavim.vim | ||
60 | url = https://github.com/KabbAmine/zeavim.vim | ||
diff --git a/doc/git.txt b/doc/git.txt new file mode 100644 index 0000000..800210e --- /dev/null +++ b/doc/git.txt | |||
@@ -0,0 +1 @@ | |||
GIT_PAGER=less git config --list | awk 'match($0, "submodule.(.*).url=(.*)",q){ system("echo git submodule add " q[2] " " q[1]) }' | |||
diff --git a/pack/_all/opt/jedi-vim b/pack/_all/opt/jedi-vim new file mode 160000 | |||
Subproject b6dfc5fd49c26d4dbe9f54c814956567a7a9b3a | |||
diff --git a/pack/_all/opt/nerdtree b/pack/_all/opt/nerdtree new file mode 160000 | |||
Subproject 91e0f2253fbecefa7e14f095950341584877ef1 | |||
diff --git a/pack/_all/opt/tagbar b/pack/_all/opt/tagbar new file mode 160000 | |||
Subproject 387bbadda98e1376ff3871aa461b1f0abd4ece7 | |||
diff --git a/pack/_all/opt/ultisnips b/pack/_all/opt/ultisnips new file mode 160000 | |||
Subproject 6fdc3647f72e0a1f321ea6bd092ecd01f7c187b | |||
diff --git a/pack/_all/opt/vim-signify b/pack/_all/opt/vim-signify new file mode 160000 | |||
Subproject ce2dd937bf3a394ef2fbeda8ab56d2b4437be3c | |||
diff --git a/pack/_all/opt/vim-snippets b/pack/_all/opt/vim-snippets new file mode 160000 | |||
Subproject 06161e65cd238d5f462f21e3f549c61860db85d | |||
diff --git a/pack/_all/opt/zeavim.vim b/pack/_all/opt/zeavim.vim new file mode 160000 | |||
Subproject 6db8d84528d66ce6638db03c2864abfa8afa02a | |||
diff --git a/pack/_all/start/base16-vim b/pack/_all/start/base16-vim new file mode 160000 | |||
Subproject 7e9af12d680d81cc1277c07ef5acee8c83828f3 | |||
diff --git a/pack/_all/start/papercolor-theme b/pack/_all/start/papercolor-theme new file mode 160000 | |||
Subproject 5bd7d5b3f9dd0650e6bbd1756feebe1651fa6ba | |||
diff --git a/pack/_all/start/tabular b/pack/_all/start/tabular new file mode 160000 | |||
Subproject 00e1e7fcdbc6d753e0bc8043e0d2546fa81bf36 | |||
diff --git a/pack/_all/start/vim-fugitive b/pack/_all/start/vim-fugitive new file mode 160000 | |||
Subproject 6d497b0e63173f89cfabe12ea27a7a5a8b29ac8 | |||
diff --git a/pack/_all/start/vim-operator-user b/pack/_all/start/vim-operator-user new file mode 160000 | |||
Subproject c3dfd41c1ed516b4b901c97562e644de62c367a | |||
diff --git a/pack/_all/start/vim-remote-menu b/pack/_all/start/vim-remote-menu new file mode 160000 | |||
Subproject a839af9df2edf20cde7b0717ea5a50bde6a82b8 | |||
diff --git a/pack/_all/start/vim-surround b/pack/_all/start/vim-surround new file mode 160000 | |||
Subproject 597068870b8f093a8b2d11536c62ff31222ee8d | |||
diff --git a/pack/neovim/opt/LanguageClient-neovim b/pack/neovim/opt/LanguageClient-neovim new file mode 160000 | |||
Subproject dd45e31449511152f2127fe862d955237caa130 | |||
diff --git a/pack/neovim/opt/ale b/pack/neovim/opt/ale new file mode 160000 | |||
Subproject 2846e862178e9a16e078799c28aa9d9d4a2ea50 | |||
diff --git a/pack/neovim/opt/deoplete.nvim b/pack/neovim/opt/deoplete.nvim new file mode 160000 | |||
Subproject aa43a5f03b7b995841b416c40e8bbc8bcbf9b1a | |||
diff --git a/pack/neovim/opt/echodoc.vim b/pack/neovim/opt/echodoc.vim new file mode 160000 | |||
Subproject 3fa121e0a0abee0762867a01b25f4e891594da6 | |||
diff --git a/pack/vim/opt/YouCompleteMe b/pack/vim/opt/YouCompleteMe new file mode 160000 | |||
Subproject f67e5ff27b048d8c55a10ba6a27c6c5b16d0f6b | |||
diff --git a/pack/vim/opt/syntastic b/pack/vim/opt/syntastic new file mode 160000 | |||
Subproject 89e485c7f8b1f285b43bb397394f22b79021aac | |||
diff --git a/plugin/KarlMarks.vim b/plugin/KarlMarks.vim new file mode 100644 index 0000000..effb22b --- /dev/null +++ b/plugin/KarlMarks.vim | |||
@@ -0,0 +1,22 @@ | |||
1 | let g:markerbar_additional = '$^"^.`{}[]<>()' | ||
2 | |||
3 | function! KarlMarks() | ||
4 | for c in map(split(g:markerbar_additional, '\zs'), "char2nr(v:val)") + | ||
5 | \ range(char2nr('a'), char2nr('z')) + | ||
6 | \ range(char2nr('A'), char2nr('Z')) + | ||
7 | \ range(char2nr('0'), char2nr('9')) | ||
8 | |||
9 | let p = getpos("'".nr2char(c)) | ||
10 | |||
11 | if (p[0] == 0 || p[0] == winbufnr(0)) && p[1] > 0 | ||
12 | exec "sign unplace ".c | ||
13 | exec "sign define mark_".c." text=".nr2char(c)." texthl=linenr" | ||
14 | exec "sign place ".c." name=mark_".c." line=".p[1]." buffer=".winbufnr(0) | ||
15 | endif | ||
16 | endfor | ||
17 | endfunction | ||
18 | |||
19 | autocmd CursorHold * call KarlMarks() | ||
20 | |||
21 | " important for distraction free reading while changing windows | ||
22 | set signcolumn=yes | ||
diff --git a/plugin/max-fix-colorschemes.vim b/plugin/max-fix-colorschemes.vim index a6fe45e..1c2c674 100644 --- a/plugin/max-fix-colorschemes.vim +++ b/plugin/max-fix-colorschemes.vim | |||
@@ -2,54 +2,60 @@ | |||
2 | " COLOR SCHEME: | 2 | " COLOR SCHEME: |
3 | "======================================================================================================================= | 3 | "======================================================================================================================= |
4 | function! ExtendColorTheme() | 4 | function! ExtendColorTheme() |
5 | highlight! Bold cterm=bold gui=bold | 5 | highlight! Bold cterm=bold gui=bold |
6 | highlight! Italic cterm=italic gui=italic | 6 | highlight! Italic cterm=italic gui=italic |
7 | highlight! Underline cterm=underline gui=underline | 7 | highlight! Underline cterm=underline gui=underline |
8 | highlight! BoldUnderline cterm=bold,underline gui=bold,underline | 8 | highlight! BoldUnderline cterm=bold,underline gui=bold,underline |
9 | highlight! BoldItalic cterm=bold,Italic gui=Bold,Italic | 9 | highlight! BoldItalic cterm=bold,Italic gui=bold,italic |
10 | highlight! Todo cterm=bold gui=bold guibg=#ffffaa guifg=#000000 | 10 | highlight! Todo cterm=bold gui=bold guibg=#ffffaa guifg=#000000 |
11 | highlight! Error cterm=NONE ctermbg=NONE gui=NONE guibg=NONE | 11 | highlight! Error cterm=NONE ctermbg=NONE gui=NONE guibg=NONE |
12 | highlight! SpellBad cterm=NONE gui=undercurl guibg=NONE guifg=red | 12 | highlight! SpellBad cterm=NONE gui=undercurl guibg=NONE guifg=red |
13 | highlight! Ignore cterm=NONE ctermbg=NONE ctermfg=NONE gui=NONE guibg=NONE guifg=NONE | 13 | highlight! Ignore cterm=NONE ctermbg=NONE ctermfg=NONE gui=NONE guibg=NONE guifg=NONE |
14 | highlight! Folded cterm=NONE ctermbg=NONE | 14 | highlight! Folded cterm=NONE ctermbg=NONE |
15 | 15 | ||
16 | 16 | ||
17 | 17 | ||
18 | let w:color=synIDattr(hlID("Normal"), "bg#") | 18 | |
19 | silent! exec 'highlight invisible gui=NONE guifg='.w:color.'guibg='.w:color.' cterm=NONE ctermfg='.w:color.' ctermbg='.w:color | 19 | if has("gui_running") |
20 | highlight invisible gui=NONE guifg=background guibg=background | ||
21 | else | ||
22 | let w:color=synIDtrans(synIDattr(hlID("Normal"), "bg")) | ||
23 | silent! exec 'highlight invisible cterm=NONE ctermfg='.w:color.' ctermbg='.w:color | ||
24 | endif | ||
20 | 25 | ||
21 | highlight! link EndOfBuffer Invisible | 26 | highlight! link EndOfBuffer Invisible |
22 | highlight! link qfSeparator Normal | " reserve one space | ||
23 | highlight! link qfLineNr Normal | " informational line numbers should look different | ||
24 | 27 | ||
25 | highlight! link SpecialKey NonText | " makes tab stop (see listchars) less disturbing | 28 | highlight! link qfSeparator Normal | " reserve one space |
26 | highlight! link WildMenu Search | 29 | highlight! link qfLineNr Normal | " informational line numbers should look different |
27 | highlight! link Convention Error | ||
28 | 30 | ||
29 | highlight! link VertSplit LineNr | 31 | highlight! link SpecialKey NonText | " makes tab stop (see listchars) less disturbing |
30 | highlight! link SignColumn LineNr | 32 | highlight! link WildMenu Search |
31 | highlight! link FoldColumn LineNr | 33 | highlight! link Convention Error |
32 | 34 | ||
33 | highlight! link PmenuSbar Pmenu | 35 | highlight! link VertSplit LineNr |
34 | highlight! PmenuThumb cterm=inverse | 36 | highlight! link SignColumn LineNr |
35 | highlight! MoreMsg cterm=inverse | 37 | highlight! link FoldColumn LineNr |
38 | |||
39 | highlight! link PmenuSbar Pmenu | ||
40 | highlight! PmenuThumb cterm=inverse | ||
41 | highlight! MoreMsg cterm=inverse | ||
36 | 42 | ||
37 | endfunction | 43 | endfunction |
38 | autocmd ColorScheme * call ExtendColorTheme() | 44 | autocmd ColorScheme * call ExtendColorTheme() |
39 | 45 | ||
40 | 46 | ||
41 | set background=light | 47 | set background=dark |
42 | if filereadable(expand("~/.vimrc_background")) && filereadable(expand("~/.config/base16-shell/colortest")) | 48 | if filereadable(expand("~/.vimrc_background")) && filereadable(expand("~/.config/base16-shell/colortest")) |
43 | let g:base16_shell_path = "~/.config/base16-shell/scripts" | 49 | let g:base16_shell_path = "~/.config/base16-shell/scripts" |
44 | let base16colorspace = 256 | 50 | let base16colorspace = 256 |
45 | source ~/.vimrc_background | 51 | source ~/.vimrc_background |
46 | else | 52 | else |
47 | let g:PaperColor_Theme_Options = { | 53 | let g:PaperColor_Theme_Options = { |
48 | \ 'theme': { | 54 | \ 'theme': { |
49 | \ 'default': { | 55 | \ 'default': { |
50 | \ 'transparent_background': 0 | 56 | \ 'transparent_background': 1 |
51 | \ } | 57 | \ } |
52 | \ } | 58 | \ } |
53 | \ } | 59 | \ } |
54 | colorscheme PaperColor | 60 | colorscheme PaperColor |
55 | endif | 61 | endif |
diff --git a/plugin/max-splash.vim b/plugin/max-splash.vim index 5282679..6b5e70d 100644 --- a/plugin/max-splash.vim +++ b/plugin/max-splash.vim | |||
@@ -21,3 +21,9 @@ if empty(argv()) | |||
21 | \ {_, p->{'filename': fnamemodify(p, ':.')}}) | 21 | \ {_, p->{'filename': fnamemodify(p, ':.')}}) |
22 | \ }) | lopen | only | setfiletype qf | 22 | \ }) | lopen | only | setfiletype qf |
23 | endif | 23 | endif |
24 | |||
25 | " http://vimdoc.sourceforge.net/htmldoc/quickfix.html#:caddexpr | ||
26 | " for c in range(char2nr('a'), char2nr('z')) + range(char2nr('A'), char2nr('Z')) + range(0,9) | let p = getpos("'".nr2char(c)) | if (p[1] > 0) | exec "sign define mark_".nr2char(c)." text=".nr2char(c)." linehl=linenr" | exec "sign place ".c." name=mark_".nr2char(c)." line=".p[1] | endif | endfor | ||
27 | " for c in range(char2nr('a'), char2nr('z')) + range(char2nr('A'), char2nr('Z')) + range(0,9) | let p = line("'".nr2char(c)) | if (p > 0) | exec "sign define mark_".nr2char(c)." text=".nr2char(c)." linehl=linenr" | exec "sign place ".c." name=mark_".nr2char(c)." line=".p | endif | endfor | ||
28 | " call sign_unplace('marks') | for c in range(char2nr('a'), char2nr('z')) + range(char2nr('A'), char2nr('Z')) + range(0,9) | let p = line("'".nr2char(c)) | if (p > 0) | call sign_define("mark_".nr2char(c), { "text" : nr2char(c), "linehl": "linenr"}) | call sign_place(c, 'marks', "mark_".nr2char(c), '', {'lnum': p}) | endif | endfor | ||
29 | " call sign_unplace('marks') | for c in range(char2nr('a'), char2nr('z')) + range(char2nr('A'), char2nr('Z')) + range(char2nr('0'), char2nr('9')) | let p = line("'".nr2char(c)) | if (p > 0) | call sign_define("mark_".nr2char(c), { "text" : nr2char(c), "texthl": "linenr"}) | call sign_place(c, 'marks', "mark_".nr2char(c), '', {'lnum': p}) | endif | endfor | ||
diff --git a/plugin/statusline.vim b/plugin/statusline.vim index 7bcc963..0dc1040 100644 --- a/plugin/statusline.vim +++ b/plugin/statusline.vim | |||
@@ -42,6 +42,8 @@ augroup MAX_FANCYLINE | |||
42 | endfunction | 42 | endfunction |
43 | 43 | ||
44 | function! UpdateStatus(highlight_group) | 44 | function! UpdateStatus(highlight_group) |
45 | " TODO: make conditional (if devicons plugin is missing) | ||
46 | let l:webdev_ft_icon = WebDevIconsGetFileTypeSymbol('*.'.&filetype) | ||
45 | let l:invert_group = CreateInvertGroup(a:highlight_group) | 47 | let l:invert_group = CreateInvertGroup(a:highlight_group) |
46 | let l:mode = get({ | 48 | let l:mode = get({ |
47 | \ 'n' : 'normal', | 49 | \ 'n' : 'normal', |
@@ -76,7 +78,7 @@ augroup MAX_FANCYLINE | |||
76 | \ .g:status_sym_start | 78 | \ .g:status_sym_start |
77 | \ ."%#".a:highlight_group."#" | 79 | \ ."%#".a:highlight_group."#" |
78 | \ ."%{&buftype==''?'':' '.&buftype.' '.g:status_sym_sep_start.' '}" | 80 | \ ."%{&buftype==''?'':' '.&buftype.' '.g:status_sym_sep_start.' '}" |
79 | \ ."%{&filetype==''?'':' '.&filetype.' '.g:status_sym_sep_start.' '}" | 81 | \ .l:webdev_ft_icon." %{&filetype==''?'':&filetype.' '.g:status_sym_sep_start.' '}" |
80 | \ ."%{(&spell\ ?\ &spelllang.' '.g:status_sym_sep_end\ :\ '')}" | 82 | \ ."%{(&spell\ ?\ &spelllang.' '.g:status_sym_sep_end\ :\ '')}" |
81 | \ ."%{(&fileencoding=~'^$\\|^utf\-8$'?'':&fileencoding.' '.g:status_sym_sep_end.' ')}" | 83 | \ ."%{(&fileencoding=~'^$\\|^utf\-8$'?'':&fileencoding.' '.g:status_sym_sep_end.' ')}" |
82 | \ ."%{(&fileformat=~'^$\\|^unix$'?'':&fileformat.' '.g:status_sym_sep_end)}" | 84 | \ ."%{(&fileformat=~'^$\\|^unix$'?'':&fileformat.' '.g:status_sym_sep_end)}" |
diff --git a/utils/default-font.conf b/utils/default-font.conf index da115d4..32f2f0d 100644 --- a/utils/default-font.conf +++ b/utils/default-font.conf | |||
@@ -2,9 +2,10 @@ | |||
2 | <!-- this is a configuration file for fontconfig and should be copied or linked to ~/.config/fontconfig/conf.d/ --> | 2 | <!-- this is a configuration file for fontconfig and should be copied or linked to ~/.config/fontconfig/conf.d/ --> |
3 | <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> | 3 | <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> |
4 | <fontconfig> | 4 | <fontconfig> |
5 | <match> | 5 | <alias> |
6 | <edit mode="prepend" name="family"><string>NotoSans-Regular</string></edit> | 6 | <family>Hack</family> |
7 | </match> | 7 | <prefer><family>PowerlineSymbols</family></prefer> |
8 | </alias> | ||
8 | <match target="pattern"> | 9 | <match target="pattern"> |
9 | <test qual="any" name="family"><string>serif</string></test> | 10 | <test qual="any" name="family"><string>serif</string></test> |
10 | <edit name="family" mode="assign" binding="same"><string>Noto Serif</string></edit> | 11 | <edit name="family" mode="assign" binding="same"><string>Noto Serif</string></edit> |
@@ -14,30 +15,9 @@ | |||
14 | <edit name="family" mode="assign" binding="same"><string>Noto Sans</string></edit> | 15 | <edit name="family" mode="assign" binding="same"><string>Noto Sans</string></edit> |
15 | </match> | 16 | </match> |
16 | <match target="pattern"> | 17 | <match target="pattern"> |
17 | <test name="family" qual="any"> | 18 | <test qual="any" name="family"><string>monospace</string></test> |
18 | <string>monospace</string> | 19 | <edit mode="assign" name="family"><string>Hack</string></edit> |
19 | </test> | 20 | <edit mode="assign" name="style"><string>Bold</string></edit> |
20 | <edit binding="strong" mode="assign" name="family"> | ||
21 | <string>FuraCode Nerd Font</string> | ||
22 | </edit> | ||
23 | <edit binding="strong" mode="assign" name="style"> | ||
24 | <string>Retina</string> | ||
25 | </edit> | ||
26 | <edit binding="strong" name="weight" mode="assign"> | ||
27 | <int>120</int> | ||
28 | </edit> | ||
29 | <edit binding="strong" name="embolden" mode="assign"> | ||
30 | <bool>true</bool> | ||
31 | </edit> | ||
32 | <edit mode="assign" name="hinting"> | ||
33 | <bool>false</bool> | ||
34 | </edit> | ||
35 | <edit name="autohint" mode="assign"> | ||
36 | <bool>true</bool> | ||
37 | </edit> | ||
38 | <edit mode="assign" name="hintstyle"> | ||
39 | <const>hintmedium</const> | ||
40 | </edit> | ||
41 | </match> | 21 | </match> |
42 | </fontconfig> | 22 | </fontconfig> |
43 | 23 | ||
diff --git a/utils/locale.conf b/utils/locale.conf new file mode 100644 index 0000000..cd2bb00 --- /dev/null +++ b/utils/locale.conf | |||
@@ -0,0 +1,14 @@ | |||
1 | LANG=de_DE.utf8 | ||
2 | LC_CTYPE=de_DE.utf8 | ||
3 | LC_NUMERIC=de_DE.utf8 | ||
4 | LC_TIME=de_DE.utf8 | ||
5 | LC_COLLATE=C | ||
6 | LC_MONETARY=de_DE.utf8 | ||
7 | LC_MESSAGES=de_DE.utf8 | ||
8 | LC_PAPER=de_DE.utf8 | ||
9 | LC_NAME=de_DE.utf8 | ||
10 | LC_ADDRESS=de_DE.utf8 | ||
11 | LC_TELEPHONE=de_DE.utf8 | ||
12 | LC_MEASUREMENT=de_DE.utf8 | ||
13 | LC_IDENTIFICATION=de_DE.utf8 | ||
14 | LC_ALL=de_DE.utf8 | ||