diff options
author | Hsieh Chin Fan <pham@topo.tw> | 2024-08-07 10:26:20 +0800 |
---|---|---|
committer | Hsieh Chin Fan <pham@topo.tw> | 2024-08-07 10:26:20 +0800 |
commit | a178d143fa3060822365665f15ad5b2d7950313c (patch) | |
tree | 7e477b7a70295943144821b3b70d5d441b02360d /vim/init/config.vim | |
parent | b57c461014f585655d897abf0e0ac982807396b7 (diff) |
Update
Diffstat (limited to 'vim/init/config.vim')
-rw-r--r-- | vim/init/config.vim | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/vim/init/config.vim b/vim/init/config.vim index 3870ac4..281caf5 100644 --- a/vim/init/config.vim +++ b/vim/init/config.vim | |||
@@ -137,7 +137,6 @@ augroup InitFileTypes | |||
137 | if has_key(shebangMatch, l:filetype) | 137 | if has_key(shebangMatch, l:filetype) |
138 | let l:filetype = shebangMatch[l:filetype] | 138 | let l:filetype = shebangMatch[l:filetype] |
139 | endif | 139 | endif |
140 | echo "filetype from shebang: ".l:filetype | ||
141 | execute "set filetype=".l:filetype | 140 | execute "set filetype=".l:filetype |
142 | endif | 141 | endif |
143 | endfunc | 142 | endfunc |
@@ -151,6 +150,8 @@ augroup InitFileTypes | |||
151 | au FileType markdown call InitMarkdownFile() | 150 | au FileType markdown call InitMarkdownFile() |
152 | function! InitMarkdownFile() | 151 | function! InitMarkdownFile() |
153 | setlocal wrap sw=2 ts=2 | 152 | setlocal wrap sw=2 ts=2 |
153 | let g:markdown_apply_heading_level = 0 | ||
154 | nnoremap \fl :let markdown_apply_heading_level = !markdown_apply_heading_level<CR>zX | ||
154 | 155 | ||
155 | let b:in_frontmatter = 0 | 156 | let b:in_frontmatter = 0 |
156 | setlocal foldexpr=MarkdownLevel() foldmethod=expr | 157 | setlocal foldexpr=MarkdownLevel() foldmethod=expr |
@@ -159,7 +160,7 @@ augroup InitFileTypes | |||
159 | call MarkdownHighlights() | 160 | call MarkdownHighlights() |
160 | endfunc | 161 | endfunc |
161 | 162 | ||
162 | function MarkdownHighlights() | 163 | function! MarkdownHighlights() |
163 | syn match MarkdownHtmlDetails '^<details>' conceal cchar=▶ | 164 | syn match MarkdownHtmlDetails '^<details>' conceal cchar=▶ |
164 | syn match MarkdownHtmlSummary '<summary>' conceal cchar= | 165 | syn match MarkdownHtmlSummary '<summary>' conceal cchar= |
165 | syn match MarkdownHtmlSummaryEnd '</summary>' conceal | 166 | syn match MarkdownHtmlSummaryEnd '</summary>' conceal |
@@ -184,8 +185,9 @@ augroup InitFileTypes | |||
184 | " Fold for heading and the following contents | 185 | " Fold for heading and the following contents |
185 | let hash_num = matchstr(getline(v:lnum), '^#\+') | 186 | let hash_num = matchstr(getline(v:lnum), '^#\+') |
186 | if !empty(hash_num) | 187 | if !empty(hash_num) |
188 | let foldlevel = g:markdown_apply_heading_level ? len(hash_num) - 1 : 1 | ||
187 | " HEADING | 189 | " HEADING |
188 | return len(hash_num) == 1 ? 0 : '>1' | 190 | return len(hash_num) == 1 ? 0 : '>'.foldlevel |
189 | else | 191 | else |
190 | " Contents | 192 | " Contents |
191 | return "=" | 193 | return "=" |
@@ -201,7 +203,7 @@ augroup InitFileTypes | |||
201 | " For heading, foltext() | 203 | " For heading, foltext() |
202 | let origin = split(MarkdownFoldText()[2:], ' ') | 204 | let origin = split(MarkdownFoldText()[2:], ' ') |
203 | let heading = substitute(join(origin[:-3], ' '), '\#', ' ', 'g') | 205 | let heading = substitute(join(origin[:-3], ' '), '\#', ' ', 'g') |
204 | let lines = join(origin[-2:], ' ')[1:-2] | 206 | let lines = origin[-2][1:] |
205 | let fills = repeat('.', 48 - strwidth(heading) - len(lines)) | 207 | let fills = repeat('.', 48 - strwidth(heading) - len(lines)) |
206 | return heading.." "..fills.." "..lines | 208 | return heading.." "..fills.." "..lines |
207 | endfunc | 209 | endfunc |