blob: f84cc488604334461ea44565ce76356b4043ba9c (
plain) (
blame)
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
|
" Configuration for writing text in vim
" Grammer checker
let g:grammarous#languagetool_cmd = 'languagetool'
" Minimal UX for concentration
let g:goyo_width = 120
let g:goyo_height = 90
let g:goyo_linenr = 0
nmap <F0> :Goyo<CR>
let g:limelight_conceal_ctermfg = 'gray'
let g:limelight_conceal_ctermbg = 'none'
let g:limelight_conceal_guifg = 'gray'
let g:limelight_conceal_guibg = 'none'
let g:limelight_default_coefficient = 0.5
let g:limelight_paragraph_span = 1
let g:limelight_priority = -1
" goyo enter/leave funcs {{{
function! s:goyo_enter()
if has('gui_running') || has('gui_vimr')
" set linespace = 7
end
if executable('tmux') && strlen($TMUX)
silent !tmux set status off
silent !tmux list-panes -F '\#F' | grep -q Z || tmux resize-pane -Z
endif
" set noshowmode
" set noshowcmd
set scrolloff=999
Limelight
" make sure :q in the last buffer, in Goyo also quits vim
" let b:quitting = 0
" let b:quitting_bang = 0
" autocmd QuitPre <buffer> let b:quitting = 1
" cabbrev <buffer> q! let b:quitting_bang = 1 <bar> q!
endfunction
function! s:goyo_leave()
if has('gui_running') || has('gui_vimr')
" set linespace = 0
endif
if executable('tmux') && strlen($TMUX)
silent !tmux set status on
silent !tmux list-panes -F '\#F' | grep -q Z || tmux resize-pane -Z
endif
" set showmode
" set showcmd
set scrolloff=5
Limelight!
" make sure :q in the last buffer, in Goyo also quits vim
" if b:quitting && len(filter(range(1, bufnr('$')), 'buflisted(v:val)')) == 1
" if b:quitting_bang
" qa!
" else
" qa
" endif
" endif
hi SignColumn guibg=none ctermbg=none
endfunction
" }}}
" writing autocommands
function! s:writing_mode_enter()
set textwidth=120
" ALEToggle
" Grammarous keymaps
if exists('g:loaded_grammarous')
nmap <leader>l :GrammarousCheck --lang=de
nmap <leader>gi <Plug>(grammarous-move-to-info-window)
nmap <leader>gr <Plug>(grammarous-remove-error)
nmap <leader>gd <Plug>(grammarous-disable-rule)
nmap <leader>gf <Plug>(grammarous-fixit)
nmap <leader>gn <Plug>(grammarous-move-to-next-error)
nmap <leader>gp <Plug>(grammarous-move-to-previous-error)
endif
endfunction
augroup Writing
au!
au FileType markdown,tex call <SID>writing_mode_enter()
" goyo autocommands
au User GoyoEnter nested call <SID>goyo_enter()
au User GoyoLeave nested call <SID>goyo_leave()
augroup END
|