1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
" Allgemeine Einstellungen
set number
set cursorline
set shortmess+=I
set nowrap
set nocompatible
set ruler
set wildmenu
set noshowcmd
set splitright
set splitbelow
set hidden
set signcolumn=no
" Rechtsschreibprüfung
set spell
set spelllang=de,en
" Optionen für ^n-Vervollständigung
set complete=.,w,b,u,t,i
" bessere Suche
set hlsearch
set incsearch
set ignorecase
set smartcase
" Sonderzeichen anzeigen
set list
set listchars=tab:>\ ,trail:-,extends:>,precedes:<,nbsp:+
set matchpairs+=<:>
" automatisches Einlesen geänderter Dateien
set autoread
" Suche rekursiv
set path+=**
" Tabs
set noexpandtab
set tabstop=4
set shiftwidth=4
set softtabstop=0
" Einrückungen
set smartindent
set autoindent
set cindent
" Faltungen
set foldlevel=1000
set foldcolumn=0
" Autovervollständigung
set completeopt=longest,menuone
" externe Programme
set makeprg=gmake
" Guifont
set guifont=JetBrains\ Mono\ Semibold:h12
" provider
let g:python3_host_prog='/usr/local/bin/python'
let g:loaded_node_provider=0
let g:loaded_ruby_provider=0
let g:loaded_perl_provider=0
" Swap files und UnDo
set noswapfile
set undofile
set undolevels=10000
set undoreload=10000
" Statusline
function! GitBranch()
return system("git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n'")
endfunction
function! StatuslineGit()
let l:branchname = GitBranch()
return strlen(l:branchname) > 0?' '.l:branchname.' ':''
endfunction
let g:currentmode={
\ 'n' : 'n',
\ 'v' : 'v',
\ 'V' : 'vl',
\ '' : 'vb',
\ 'i' : 'i',
\ 'R' : 'r',
\ 'Rv' : 'rv',
\ 'c' : 'c',
\ 't' : 'f',
\}
highlight NormalColor ctermbg=black ctermfg=white
highlight InsertColor ctermbg=darkgreen ctermfg=black
highlight ReplaceColor ctermbg=darkred ctermfg=black
highlight VisualColor ctermbg=darkblue ctermfg=black
set laststatus=2
set statusline=
set statusline+=%#NormalColor#%{(g:currentmode[mode()]=='n')?'\ \ normal\ ':''}
set statusline+=%#InsertColor#%{(g:currentmode[mode()]=='i')?'\ \ insert\ ':''}
set statusline+=%#ReplaceColor#%{(g:currentmode[mode()]=='r')?'\ \ replace\ ':''}
set statusline+=%#ReplaceColor#%{(g:currentmode[mode()]=='rv')?'\ \ v-replace\ ':''}
set statusline+=%#VisualColor#%{(g:currentmode[mode()]=='v')?'\ \ visual\ ':''}
set statusline+=%#VisualColor#%{(g:currentmode[mode()]=='vl')?'\ \ v-line\ ':''}
set statusline+=%#VisualColor#%{(g:currentmode[mode()]=='vb')?'\ \ v-block\ ':''}
set statusline+=%#NormalColor#%{(g:currentmode[mode()]=='c')?'\ \ command\ ':''}
set statusline+=%#NormalColor#%{(g:currentmode[mode()]=='f')?'\ \ finder\ ':''}
set statusline+=%#PmenuSel#
set statusline+=%{StatuslineGit()}
set statusline+=%#Statusline#
set statusline+=\ %f
set statusline+=%m
set statusline+=%=
set statusline+=%#StatusLineNc#
set statusline+=\ %y
set statusline+=\ %{&fileencoding?&fileencoding:&encoding}
set statusline+=\ %p%%
set statusline+=\ %l:%c
" weitere Einstellungen
syntax enable
filetype plugin indent on
" Farbschema
set termguicolors
colorscheme habamax
highlight MatchParen gui=bold,underline cterm=bold,underline
|