aboutsummaryrefslogtreecommitdiffhomepage
path: root/vim
diff options
context:
space:
mode:
authorHsieh Chin Fan <pham@topo.tw>2024-10-25 11:58:32 +0800
committerHsieh Chin Fan <pham@topo.tw>2024-10-25 11:58:32 +0800
commit0cc4a179cfed5c2be516186dd134c6d208b7f2a9 (patch)
tree47eb657e7f3a84e95e55b6560d63ac07cbe3878f /vim
parent544734673b2235fc9d011f740118fb56f21bf0ff (diff)
Update
Diffstat (limited to 'vim')
-rw-r--r--vim/init.vim3
-rw-r--r--vim/init/basic.vim2
-rw-r--r--vim/init/config.vim45
-rw-r--r--vim/mini.lua79
-rw-r--r--vim/spell/en.utf-8.add24
-rw-r--r--vim/spell/en.utf-8.add.splbin307 -> 932 bytes
6 files changed, 102 insertions, 51 deletions
diff --git a/vim/init.vim b/vim/init.vim
index 8ac92e0..aed0c41 100644
--- a/vim/init.vim
+++ b/vim/init.vim
@@ -15,6 +15,9 @@ execute 'set runtimepath+='.s:home
15" Load scripts in home 15" Load scripts in home
16command! -nargs=1 LoadScript exec 'source '.s:home.'/'.'<args>' 16command! -nargs=1 LoadScript exec 'source '.s:home.'/'.'<args>'
17 17
18if $fullrc == 'false'
19 finish
20endif
18 21
19" Gerneral scripts 22" Gerneral scripts
20LoadScript init/basic.vim " Basic configuration 23LoadScript init/basic.vim " Basic configuration
diff --git a/vim/init/basic.vim b/vim/init/basic.vim
index c4c62e7..4a49f39 100644
--- a/vim/init/basic.vim
+++ b/vim/init/basic.vim
@@ -119,7 +119,7 @@ set errorformat+=[%f:%l]\ ->\ %m,[%f:%l]:%m
119set splitright 119set splitright
120 120
121" Set signcolumn 121" Set signcolumn
122set signcolumn="yes:3" 122set signcolumn=yes:3
123" Custom sign from help page :h sign 123" Custom sign from help page :h sign
124sign define piet text=>> texthl=Search 124sign define piet text=>> texthl=Search
125 125
diff --git a/vim/init/config.vim b/vim/init/config.vim
index 5c53728..ce81f8a 100644
--- a/vim/init/config.vim
+++ b/vim/init/config.vim
@@ -221,26 +221,47 @@ augroup InitFileTypes
221 au FileType javascript call InitJavascriptFile() 221 au FileType javascript call InitJavascriptFile()
222 function! InitJavascriptFile() 222 function! InitJavascriptFile()
223 setlocal wrap sw=2 ts=2 223 setlocal wrap sw=2 ts=2
224 224 setlocal foldexpr=JsdocLevel() foldmethod=expr foldtext=JSdocFoldText()
225 setlocal foldexpr=JsdocLevel() foldmethod=expr
226
227 let l:jsdocPrefix = "JSDOC: "
228 setlocal foldtext=JSdocFoldText()
229 endfunc 225 endfunc
230 226
231 function! JsdocLevel() 227 function! JsdocLevel()
232 let jsdoc = matchstr(getline(v:lnum), '^\zs\s*\/\*\*\ze') 228 let line = getline(v:lnum)
229 let jsdoc = matchstr(line, '^\zs[ \/]*\/\*\*\ze')
230 let indent = len(matchstr(line, '^\zs\s*\ze')) / 2
231
233 if !empty(jsdoc) 232 if !empty(jsdoc)
234 let foldlevel = len(matchstr(jsdoc, '^\zs\s*\ze')) + 1 233 let foldlevel = indent + 1
235 return '>'.foldlevel 234 return '>'.foldlevel
236 else 235 else
237 " Contents 236 let foldlevel = foldlevel(v:lnum - 1)
238 return "=" 237 " let lastIndent = len(matchstr(getline(v:lnum - 1), '^\zs\s*\ze')) / 2
238 " let pattern = matchstr(line, '^\s*\zs[})]\+;*\ze$')
239 " if !empty(line) && len(pattern) > 0 && indent + 1 == foldlevel && indent < lastIndent
240 " return "<".foldlevel
241 if empty(line) && empty(getline(v:lnum - 1))
242 return "<".foldlevel
243 else
244 return "="
245 endif
239 endif 246 endif
240 endfunc 247 endfunc
241 248
242 function! JSdocFoldText() 249 function! JSdocFoldText()
243 return "JSDOC: ".matchstr(getline(v:foldstart + 1), '^[\* ]*\zs.*\ze') 250 let line = getline(v:foldstart)
251 let message = matchstr(line, '\*\s\zs.*\ze\s\*\+/$')
252 let lines = v:foldend - v:foldstart
253
254 if empty(message)
255 let line = getline(v:foldstart + 1)
256 let message = "@ ".matchstr(line, '^[\* ]*\zs.*\ze')
257 endif
258
259 let comment = matchstr(line, '^\s*\zs//\ze')
260 if !empty(comment)
261 let message = '/** '.message.' */'
262 endif
263
264 return repeat(" ", v:foldlevel - 1).repeat(" ", 4 - len(lines)).lines." lines -- ".message
244 endfunc 265 endfunc
245 266
246 " }}} 267 " }}}
@@ -265,8 +286,8 @@ augroup InitFileTypes
265 endfunc 286 endfunc
266 autocmd FileType html,markdown,javascript nnoremap <buffer> <leader>cl :call <SID>ChangeAttr("class")<CR> 287 autocmd FileType html,markdown,javascript nnoremap <buffer> <leader>cl :call <SID>ChangeAttr("class")<CR>
267 autocmd FileType html,markdown,javascript nnoremap <buffer> <leader>id :call <SID>ChangeAttr("id")<CR> 288 autocmd FileType html,markdown,javascript nnoremap <buffer> <leader>id :call <SID>ChangeAttr("id")<CR>
268 autocmd FileType css,javascript nnoremap <buffer> <F9> :let LINE=line(".")<CR>:silent! %!npx standard --stdin --fix 2>/dev/null<CR>:exe LINE<CR> 289 autocmd FileType css,javascript nnoremap <buffer> <F9> :let LINE=line(".")<CR>:silent! %!standard --stdin --fix 2>/dev/null<CR>:exe LINE<CR>
269 autocmd FileType css,javascript nmap <buffer> <F8> cdg:let LINE=line(".")<CR>:%!stylelint --fix --stdin 2>/dev/null<CR>:exe LINE<CR> 290 autocmd FileType css,javascript nmap <buffer> <F8> cdg:let LINE=line(".")<CR>:%!stylelint -c scripts/stylelintrc.json --fix --stdin 2>/dev/null<CR>:exe LINE<CR>
270 autocmd FileType css,javascript set formatprg=prettier 291 autocmd FileType css,javascript set formatprg=prettier
271 292
272 " Reload preview server 293 " Reload preview server
diff --git a/vim/mini.lua b/vim/mini.lua
index 7451258..6c81d8f 100644
--- a/vim/mini.lua
+++ b/vim/mini.lua
@@ -1420,43 +1420,43 @@ require("lazy").setup({
1420 }, 1420 },
1421 1421
1422 -- }}} 1422 -- }}}
1423 -- lspsaga {{{ 1423 -- -- lspsaga {{{
1424 { 1424 -- {
1425 'nvimdev/lspsaga.nvim', 1425 -- 'nvimdev/lspsaga.nvim',
1426 dependencies = { 1426 -- dependencies = {
1427 'nvim-treesitter/nvim-treesitter', -- optional 1427 -- 'nvim-treesitter/nvim-treesitter', -- optional
1428 'nvim-tree/nvim-web-devicons', -- optional 1428 -- 'nvim-tree/nvim-web-devicons', -- optional
1429 }, 1429 -- },
1430 config = function() 1430 -- config = function()
1431 require('lspsaga').setup({ 1431 -- require('lspsaga').setup({
1432 autochdir = true, 1432 -- autochdir = true,
1433 lightbulb = { 1433 -- lightbulb = {
1434 sign = false, 1434 -- sign = false,
1435 virtual_text = true, 1435 -- virtual_text = true,
1436 }, 1436 -- },
1437 }) 1437 -- })
1438 vim.api.nvim_create_autocmd("LspAttach", { 1438 -- vim.api.nvim_create_autocmd("LspAttach", {
1439 group = custom_autocommands, 1439 -- group = custom_autocommands,
1440 pattern = "*", 1440 -- pattern = "*",
1441 callback = function(args) 1441 -- callback = function(args)
1442 local map = vim.api.nvim_buf_set_keymap 1442 -- local map = vim.api.nvim_buf_set_keymap
1443 map(0, "n", "gd", "<cmd>Lspsaga goto_definition<cr>", { silent = true, noremap = true }) 1443 -- map(0, "n", "gd", "<cmd>Lspsaga goto_definition<cr>", { silent = true, noremap = true })
1444 map(0, "n", "gR", "<cmd>Lspsaga rename<cr>", { silent = true, noremap = true }) 1444 -- map(0, "n", "gR", "<cmd>Lspsaga rename<cr>", { silent = true, noremap = true })
1445 map(0, "n", "gx", "<cmd>Lspsaga code_action<cr>", { silent = true, noremap = true }) 1445 -- map(0, "n", "gx", "<cmd>Lspsaga code_action<cr>", { silent = true, noremap = true })
1446 map(0, "x", "gx", ":<c-u>Lspsaga range_code_action<cr>", { silent = true, noremap = true }) 1446 -- map(0, "x", "gx", ":<c-u>Lspsaga range_code_action<cr>", { silent = true, noremap = true })
1447 map(0, "n", "K", "<cmd>Lspsaga hover_doc<cr>", { silent = true, noremap = true }) 1447 -- map(0, "n", "K", "<cmd>Lspsaga hover_doc<cr>", { silent = true, noremap = true })
1448 map(0, "n", "go", "<cmd>Lspsaga show_line_diagnostics<cr>", { silent = true, noremap = true }) 1448 -- map(0, "n", "go", "<cmd>Lspsaga show_line_diagnostics<cr>", { silent = true, noremap = true })
1449 map(0, "n", "gj", "<cmd>Lspsaga diagnostic_jump_next<cr>", { silent = true, noremap = true }) 1449 -- map(0, "n", "gj", "<cmd>Lspsaga diagnostic_jump_next<cr>", { silent = true, noremap = true })
1450 map(0, "n", "gk", "<cmd>Lspsaga diagnostic_jump_prev<cr>", { silent = true, noremap = true }) 1450 -- map(0, "n", "gk", "<cmd>Lspsaga diagnostic_jump_prev<cr>", { silent = true, noremap = true })
1451 1451 --
1452 -- Don't know why... Everytime when modeline is set and insert a single char 1452 -- -- Don't know why... Everytime when modeline is set and insert a single char
1453 -- while inside a fold, the fold closes. 1453 -- -- while inside a fold, the fold closes.
1454 vim.opt_local.modeline = false 1454 -- vim.opt_local.modeline = false
1455 end, 1455 -- end,
1456 }) 1456 -- })
1457 end 1457 -- end
1458 }, 1458 -- },
1459 -- }}} 1459 -- -- }}}
1460 -- -- conform {{{ 1460 -- -- conform {{{
1461 -- { 1461 -- {
1462 -- "stevearc/conform.nvim", 1462 -- "stevearc/conform.nvim",
@@ -1488,9 +1488,12 @@ require("lazy").setup({
1488 g.ale_ruby_rubocop_auto_correct_all = 1 1488 g.ale_ruby_rubocop_auto_correct_all = 1
1489 1489
1490 g.ale_linters = { 1490 g.ale_linters = {
1491 ruby = { 'javascript', 'standard' }, 1491 javascript = { 'javascript', 'standard' },
1492 lua = { 'lua_language_server' } 1492 lua = { 'lua_language_server' }
1493 } 1493 }
1494 g.ale_fixers = {javascript = {'standard'}}
1495 g.ale_lint_on_save = 1
1496 g.ale_fix_on_save = 1
1494 1497
1495 vim.keymap.set("n", "\a", vim.cmd("ALEDisable")) 1498 vim.keymap.set("n", "\a", vim.cmd("ALEDisable"))
1496 end 1499 end
diff --git a/vim/spell/en.utf-8.add b/vim/spell/en.utf-8.add
index d4297c4..a943ffe 100644
--- a/vim/spell/en.utf-8.add
+++ b/vim/spell/en.utf-8.add
@@ -14,3 +14,27 @@ mjs
14DocLink 14DocLink
15StoryMapJS 15StoryMapJS
16afterMapRendered 16afterMapRendered
17DumbyMap
18YAML
19param
20anchorName
21CodeMirror
22RefLink
23refLink
24getRefLinks
25refLinks
26initialValue
27MarkdownIt
28linkify
29GeoLinks
30li
31HTMLElement
32crs
33EPSG
34ESRI
35epsg
36io
37mdContent
38updateAttributeByStep
39MutationObserver
40mapCallback
diff --git a/vim/spell/en.utf-8.add.spl b/vim/spell/en.utf-8.add.spl
index a9f1927..afae2c5 100644
--- a/vim/spell/en.utf-8.add.spl
+++ b/vim/spell/en.utf-8.add.spl
Binary files differ