From 0cc4a179cfed5c2be516186dd134c6d208b7f2a9 Mon Sep 17 00:00:00 2001 From: Hsieh Chin Fan Date: Fri, 25 Oct 2024 11:58:32 +0800 Subject: Update --- X11/openbox/rc.xml | 7 +-- alias | 16 +++---- gitconfig | 1 + snippets/javascript_mutationoberserver | 26 ++++++----- vim/init.vim | 3 ++ vim/init/basic.vim | 2 +- vim/init/config.vim | 45 ++++++++++++++----- vim/mini.lua | 79 +++++++++++++++++---------------- vim/spell/en.utf-8.add | 24 ++++++++++ vim/spell/en.utf-8.add.spl | Bin 307 -> 932 bytes 10 files changed, 127 insertions(+), 76 deletions(-) diff --git a/X11/openbox/rc.xml b/X11/openbox/rc.xml index 2626285..b1736b8 100644 --- a/X11/openbox/rc.xml +++ b/X11/openbox/rc.xml @@ -541,7 +541,7 @@ - alacritty -e nvim -c 'r !xsel -ob' -c 'normal A' -c 'startinsert' -c 'nmap <C-c> :w !xsel -ib<CR>:qa!<CR>' + alacritty -o 'env.fullrc="false"' -e nvim -c 'r !xsel -ob' -c 'normal A' -c 'startinsert' -c 'nmap <C-c> :w !xsel -ib<CR>:qa!<CR>' @@ -575,10 +575,7 @@ - sh -c ' - zenity --entry --text "Window title" | \ - xargs -i xdotool set_window --name @{} `xdotool getactivewindow` - ' + sh -c 'yad --entry | xargs -i xdotool set_window --name @{} `xdotool getactivewindow`' diff --git a/alias b/alias index 5d9fad9..7b1825f 100644 --- a/alias +++ b/alias @@ -22,16 +22,16 @@ eval "${shell}rc(){ }" alias vimrc='vim ~/.vimrc' alias tigrc="$EDITOR ~/.tigrc" -alias muttrc="$EDITOR ~/.config/mutt/muttrc" -alias alarc="$EDITOR ~/.config/alacritty/alacritty.toml" +alias mutt.rc="$EDITOR ~/.config/mutt/muttrc" +alias ala.rc="$EDITOR ~/.config/alacritty/alacritty.toml" alias alacritty.rc="$EDITOR ~/.config/alacritty/alacritty.toml" -alias gitconfig="$EDITOR ~/.gitconfig" -alias gpgconfig="$EDITOR ~/.gnupg/gpg-agent.conf" -alias sshconfig="$EDITOR ~/.ssh/config" -alias sshauth="$EDITOR ~/.ssh/authorized_keys" -alias sshknown="$EDITOR ~/.ssh/known_hosts" +alias git.config="$EDITOR ~/.gitconfig" +alias gpg.config="$EDITOR ~/.gnupg/gpg-agent.conf" +alias ssh.config="$EDITOR ~/.ssh/config" +alias ssh.auth="$EDITOR ~/.ssh/authorized_keys" +alias ssh.known="$EDITOR ~/.ssh/known_hosts" config(){ cd ~/.config/$1; } -alias tmuxconfig="$EDITOR ~/.tmux.conf" +alias tmux.config="$EDITOR ~/.tmux.conf" cde() { cd /etc/$@; } alias cdetc='cde' diff --git a/gitconfig b/gitconfig index 1700dfb..a006560 100644 --- a/gitconfig +++ b/gitconfig @@ -20,6 +20,7 @@ git stash show -p | git apply -R && \ git stash drop stash@{1} swapprotocol = !swap-protocol.bash + mergethis = "!f() { git commit-tree HEAD: -p $1 -p HEAD -m \"Merge branch $(git branch --show-current)\" | xargs git branch --force $1; }; f" [merge] tool = vimdiff diff --git a/snippets/javascript_mutationoberserver b/snippets/javascript_mutationoberserver index 48f17af..9962aac 100644 --- a/snippets/javascript_mutationoberserver +++ b/snippets/javascript_mutationoberserver @@ -1,12 +1,14 @@ - new window.MutationObserver((ms) => { - for (const m of ms) { - console.log(m) - console.log('m', m.target.innerHTML) - console.log('m', m.target.classList) - } - }).observe(item, { - attributes: true, - attributeFilter: ['class'], - attributeOldValue: true, - characterDataOldValue: true - }) +new window.MutationObserver((mutations) => { + for (const mutation of mutations) { + console.log(mutation) + console.log('mutation', mutation.target.innerHTML) + console.log('mutation', mutation.target.classList) + } +}).observe(item, { + attributes: true, + attributeFilter: ['class'], + attributeOldValue: true, + characterDataOldValue: true, + childList: true, + subtree: true, +}) 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 " Load scripts in home command! -nargs=1 LoadScript exec 'source '.s:home.'/'.'' +if $fullrc == 'false' + finish +endif " Gerneral scripts LoadScript 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 set splitright " Set signcolumn -set signcolumn="yes:3" +set signcolumn=yes:3 " Custom sign from help page :h sign sign define piet text=>> texthl=Search 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 au FileType javascript call InitJavascriptFile() function! InitJavascriptFile() setlocal wrap sw=2 ts=2 - - setlocal foldexpr=JsdocLevel() foldmethod=expr - - let l:jsdocPrefix = "JSDOC: " - setlocal foldtext=JSdocFoldText() + setlocal foldexpr=JsdocLevel() foldmethod=expr foldtext=JSdocFoldText() endfunc function! JsdocLevel() - let jsdoc = matchstr(getline(v:lnum), '^\zs\s*\/\*\*\ze') + let line = getline(v:lnum) + let jsdoc = matchstr(line, '^\zs[ \/]*\/\*\*\ze') + let indent = len(matchstr(line, '^\zs\s*\ze')) / 2 + if !empty(jsdoc) - let foldlevel = len(matchstr(jsdoc, '^\zs\s*\ze')) + 1 + let foldlevel = indent + 1 return '>'.foldlevel else - " Contents - return "=" + let foldlevel = foldlevel(v:lnum - 1) + " let lastIndent = len(matchstr(getline(v:lnum - 1), '^\zs\s*\ze')) / 2 + " let pattern = matchstr(line, '^\s*\zs[})]\+;*\ze$') + " if !empty(line) && len(pattern) > 0 && indent + 1 == foldlevel && indent < lastIndent + " return "<".foldlevel + if empty(line) && empty(getline(v:lnum - 1)) + return "<".foldlevel + else + return "=" + endif endif endfunc function! JSdocFoldText() - return "JSDOC: ".matchstr(getline(v:foldstart + 1), '^[\* ]*\zs.*\ze') + let line = getline(v:foldstart) + let message = matchstr(line, '\*\s\zs.*\ze\s\*\+/$') + let lines = v:foldend - v:foldstart + + if empty(message) + let line = getline(v:foldstart + 1) + let message = "@ ".matchstr(line, '^[\* ]*\zs.*\ze') + endif + + let comment = matchstr(line, '^\s*\zs//\ze') + if !empty(comment) + let message = '/** '.message.' */' + endif + + return repeat(" ", v:foldlevel - 1).repeat(" ", 4 - len(lines)).lines." lines -- ".message endfunc " }}} @@ -265,8 +286,8 @@ augroup InitFileTypes endfunc autocmd FileType html,markdown,javascript nnoremap cl :call ChangeAttr("class") autocmd FileType html,markdown,javascript nnoremap id :call ChangeAttr("id") - autocmd FileType css,javascript nnoremap :let LINE=line("."):silent! %!npx standard --stdin --fix 2>/dev/null:exe LINE - autocmd FileType css,javascript nmap cdg:let LINE=line("."):%!stylelint --fix --stdin 2>/dev/null:exe LINE + autocmd FileType css,javascript nnoremap :let LINE=line("."):silent! %!standard --stdin --fix 2>/dev/null:exe LINE + autocmd FileType css,javascript nmap cdg:let LINE=line("."):%!stylelint -c scripts/stylelintrc.json --fix --stdin 2>/dev/null:exe LINE autocmd FileType css,javascript set formatprg=prettier " 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({ }, -- }}} - -- lspsaga {{{ - { - 'nvimdev/lspsaga.nvim', - dependencies = { - 'nvim-treesitter/nvim-treesitter', -- optional - 'nvim-tree/nvim-web-devicons', -- optional - }, - config = function() - require('lspsaga').setup({ - autochdir = true, - lightbulb = { - sign = false, - virtual_text = true, - }, - }) - vim.api.nvim_create_autocmd("LspAttach", { - group = custom_autocommands, - pattern = "*", - callback = function(args) - local map = vim.api.nvim_buf_set_keymap - map(0, "n", "gd", "Lspsaga goto_definition", { silent = true, noremap = true }) - map(0, "n", "gR", "Lspsaga rename", { silent = true, noremap = true }) - map(0, "n", "gx", "Lspsaga code_action", { silent = true, noremap = true }) - map(0, "x", "gx", ":Lspsaga range_code_action", { silent = true, noremap = true }) - map(0, "n", "K", "Lspsaga hover_doc", { silent = true, noremap = true }) - map(0, "n", "go", "Lspsaga show_line_diagnostics", { silent = true, noremap = true }) - map(0, "n", "gj", "Lspsaga diagnostic_jump_next", { silent = true, noremap = true }) - map(0, "n", "gk", "Lspsaga diagnostic_jump_prev", { silent = true, noremap = true }) - - -- Don't know why... Everytime when modeline is set and insert a single char - -- while inside a fold, the fold closes. - vim.opt_local.modeline = false - end, - }) - end - }, - -- }}} + -- -- lspsaga {{{ + -- { + -- 'nvimdev/lspsaga.nvim', + -- dependencies = { + -- 'nvim-treesitter/nvim-treesitter', -- optional + -- 'nvim-tree/nvim-web-devicons', -- optional + -- }, + -- config = function() + -- require('lspsaga').setup({ + -- autochdir = true, + -- lightbulb = { + -- sign = false, + -- virtual_text = true, + -- }, + -- }) + -- vim.api.nvim_create_autocmd("LspAttach", { + -- group = custom_autocommands, + -- pattern = "*", + -- callback = function(args) + -- local map = vim.api.nvim_buf_set_keymap + -- map(0, "n", "gd", "Lspsaga goto_definition", { silent = true, noremap = true }) + -- map(0, "n", "gR", "Lspsaga rename", { silent = true, noremap = true }) + -- map(0, "n", "gx", "Lspsaga code_action", { silent = true, noremap = true }) + -- map(0, "x", "gx", ":Lspsaga range_code_action", { silent = true, noremap = true }) + -- map(0, "n", "K", "Lspsaga hover_doc", { silent = true, noremap = true }) + -- map(0, "n", "go", "Lspsaga show_line_diagnostics", { silent = true, noremap = true }) + -- map(0, "n", "gj", "Lspsaga diagnostic_jump_next", { silent = true, noremap = true }) + -- map(0, "n", "gk", "Lspsaga diagnostic_jump_prev", { silent = true, noremap = true }) + -- + -- -- Don't know why... Everytime when modeline is set and insert a single char + -- -- while inside a fold, the fold closes. + -- vim.opt_local.modeline = false + -- end, + -- }) + -- end + -- }, + -- -- }}} -- -- conform {{{ -- { -- "stevearc/conform.nvim", @@ -1488,9 +1488,12 @@ require("lazy").setup({ g.ale_ruby_rubocop_auto_correct_all = 1 g.ale_linters = { - ruby = { 'javascript', 'standard' }, + javascript = { 'javascript', 'standard' }, lua = { 'lua_language_server' } } + g.ale_fixers = {javascript = {'standard'}} + g.ale_lint_on_save = 1 + g.ale_fix_on_save = 1 vim.keymap.set("n", "\a", vim.cmd("ALEDisable")) 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 DocLink StoryMapJS afterMapRendered +DumbyMap +YAML +param +anchorName +CodeMirror +RefLink +refLink +getRefLinks +refLinks +initialValue +MarkdownIt +linkify +GeoLinks +li +HTMLElement +crs +EPSG +ESRI +epsg +io +mdContent +updateAttributeByStep +MutationObserver +mapCallback diff --git a/vim/spell/en.utf-8.add.spl b/vim/spell/en.utf-8.add.spl index a9f1927..afae2c5 100644 Binary files a/vim/spell/en.utf-8.add.spl and b/vim/spell/en.utf-8.add.spl differ -- cgit v1.2.3-70-g09d2