| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 | " packadd quickscope" execute 'luafile ' . stdpath('config') . '/lua/settings.lua'function! s:manageEditorSize(...)    let count = a:1    let to = a:2    for i in range(1, count ? count : 1)        call VSCodeNotify(to == 'increase' ? 'workbench.action.increaseViewSize' : 'workbench.action.decreaseViewSize')    endforendfunctionfunction! s:vscodeCommentary(...) abort    if !a:0        let &operatorfunc = matchstr(expand('<sfile>'), '[^. ]*$')        return 'g@'    elseif a:0 > 1        let [line1, line2] = [a:1, a:2]    else        let [line1, line2] = [line("'["), line("']")]    endif    call VSCodeCallRange("editor.action.commentLine", line1, line2, 0)endfunctionfunction! s:openVSCodeCommandsInVisualMode()    normal! gv    let visualmode = visualmode()    if visualmode == "V"        let startLine = line("v")        let endLine = line(".")        call VSCodeNotifyRange("workbench.action.showCommands", startLine, endLine, 1)    else        let startPos = getpos("v")        let endPos = getpos(".")        call VSCodeNotifyRangePos("workbench.action.showCommands", startPos[1], endPos[1], startPos[2], endPos[2], 1)    endifendfunctionfunction! s:openWhichKeyInVisualMode()    normal! gv    let visualmode = visualmode()    if visualmode == "V"        let startLine = line("v")        let endLine = line(".")        call VSCodeNotifyRange("whichkey.show", startLine, endLine, 1)    else        let startPos = getpos("v")        let endPos = getpos(".")        call VSCodeNotifyRangePos("whichkey.show", startPos[1], endPos[1], startPos[2], endPos[2], 1)    endifendfunction" Better Navigationnnoremap <silent> <C-j> :call VSCodeNotify('workbench.action.navigateDown')<CR>xnoremap <silent> <C-j> :call VSCodeNotify('workbench.action.navigateDown')<CR>nnoremap <silent> <C-k> :call VSCodeNotify('workbench.action.navigateUp')<CR>xnoremap <silent> <C-k> :call VSCodeNotify('workbench.action.navigateUp')<CR>nnoremap <silent> <C-h> :call VSCodeNotify('workbench.action.navigateLeft')<CR>xnoremap <silent> <C-h> :call VSCodeNotify('workbench.action.navigateLeft')<CR>nnoremap <silent> <C-l> :call VSCodeNotify('workbench.action.navigateRight')<CR>xnoremap <silent> <C-l> :call VSCodeNotify('workbench.action.navigateRight')<CR>nnoremap gr <Cmd>call VSCodeNotify('editor.action.goToReferences')<CR>" Bind C-/ to vscode commentary since calling from vscode produces double comments due to multiple cursorsxnoremap <expr> <C-/> <SID>vscodeCommentary()nnoremap <expr> <C-/> <SID>vscodeCommentary() . '_'nnoremap <silent> <C-w>_ :<C-u>call VSCodeNotify('workbench.action.toggleEditorWidths')<CR>nnoremap <silent> <Space> :call VSCodeNotify('whichkey.show')<CR>xnoremap <silent> <Space> :<C-u>call <SID>openWhichKeyInVisualMode()<CR>xnoremap <silent> <C-P> :<C-u>call <SID>openVSCodeCommandsInVisualMode()<CR>xmap gc  <Plug>VSCodeCommentarynmap gc  <Plug>VSCodeCommentaryomap gc  <Plug>VSCodeCommentarynmap gcc <Plug>VSCodeCommentaryLine" Simulate same TAB behavior in VSCodenmap <Tab> :Tabnext<CR>nmap <S-Tab> :Tabprev<CR>
 |