212 lines
7.4 KiB
Text
212 lines
7.4 KiB
Text
set number relativenumber
|
|
set ideajoin
|
|
set linenumber
|
|
set showmode
|
|
set showcmd
|
|
set incsearch
|
|
set hlsearch
|
|
set scrolloff=10
|
|
set visualbell
|
|
set ignorecase
|
|
set smartcase
|
|
set incsearch
|
|
set hlsearch
|
|
set notimeout
|
|
" set clipboard+=unnamedplus
|
|
set clipboard^=ideaput
|
|
|
|
" 3rd party
|
|
set which-key
|
|
set surround
|
|
set highlightedyank
|
|
|
|
" Which Key
|
|
let g:WhichKey_FontSize = 16
|
|
let g:WhichKey_CommandColor = "#41ead4"
|
|
let g:WhichKey_PrefixColor = "#f335b2"
|
|
let g:WhichKey_SortOrder = "by_key_prefix_first"
|
|
|
|
" NerdTree
|
|
Plug 'preservim/nerdtree'
|
|
nnoremap <C-n> :NERDTree<CR>
|
|
|
|
let g:NERDTreeWinSize=30
|
|
let g:NERDTreeMapPreview=0
|
|
let g:NERDTreeMapActivateNode='l'
|
|
let g:NERDTreeMapJumpParent='h'
|
|
|
|
|
|
let mapleader=" "
|
|
|
|
" Manage Projects
|
|
noremap <C-Space>s :action ManageRecentProjects<CR>
|
|
|
|
" Tab Navigation
|
|
noremap <S-l> :action NextTab<CR>
|
|
noremap <S-h> :action PreviousTab<CR>
|
|
|
|
" Pane Navigation
|
|
sethandler <c-j> a:vim
|
|
sethandler <c-k> a:vim
|
|
noremap <C-h> <C-w>h
|
|
noremap <C-l> <C-w>l
|
|
noremap <C-k> <C-w>k
|
|
noremap <C-j> <C-w>j
|
|
|
|
" Center Screen with Page up and down
|
|
nnoremap <C-d> <C-d>zz
|
|
nnoremap <C-u> <C-u>zz
|
|
|
|
" Navigation
|
|
let g:WhichKeyDesc_GoToFile = "<leader>ff Go to file"
|
|
let g:WhichKeyDesc_RecentFiles = "<leader><leader> Recent files"
|
|
let g:WhichKeyDesc_RecentLocations = "<leader>fl Recent locations"
|
|
let g:WhichKeyDesc_NewScratchFile = "<leader>fs New scratch file"
|
|
map <leader>ff <action>(GoToFile)
|
|
map <leader><leader> <action>(RecentFiles)
|
|
map <leader>fl <action>(RecentLocations)
|
|
|
|
|
|
" Window Management
|
|
let g:WhichKeyDesc_WindowManagement = "<leader>% Window management"
|
|
let g:WhichKeyDesc_SplitVertically = "<leader>% Split vertically"
|
|
let g:WhichKeyDesc_SplitHorizontally = "<leader>\" Split horizontally"
|
|
let g:WhichKeyDesc_CloseContent = "<leader>x Close content"
|
|
map <leader>% <action>(SplitVertically)
|
|
map <leader>" <action>(SplitHorizontally)
|
|
map <leader>x <action>(CloseContent)
|
|
|
|
" Popup Navigation
|
|
inoremap <C-j> <Action>(PopupMenu-selectNext)
|
|
inoremap <C-k> <Action>(PopupMenu-selectPrev)
|
|
|
|
" Debug options
|
|
let g:WhichKeyDesc_debug = "<leader>d Dubug"
|
|
let g:WhichKeyDesc_debug_menu = "<leader>dd Dubug menu"
|
|
let g:WhichKeyDesc_debug_run = "<leader>dr Dubug Run"
|
|
let g:WhichKeyDesc_debug_stop = "<leader>ds Dubug Stop"
|
|
let g:WhichKeyDesc_debug_breakpoint = "<leader>db Toggle Line Breakpoint"
|
|
map <leader>dd <Action>(Debug)
|
|
map <leader>dr <Action>(Run)
|
|
map <leader>ds <Action>(Stop)
|
|
map <leader>db <Action>(ToggleLineBreakpoint)
|
|
|
|
" Actions
|
|
let g:WhichKeyDesc_Actions = "<leader>a Actions"
|
|
let g:WhichKeyDesc_ShowIntentionActions = "<leader>am Show intention actions"
|
|
let g:WhichKeyDesc_SearchEverywhere = "<leader>as Search everywhere"
|
|
map <leader>am <action>(ShowIntentionActions)
|
|
map <leader>as <action>(SearchEverywhere)
|
|
|
|
" Refactoring
|
|
let g:WhichKeyDesc_Refactoring = "<leader>r Refactoring"
|
|
let g:WhichKeyDesc_RenameElement = "<leader>rn Rename element"
|
|
let g:WhichKeyDesc_ExtractMethod = "<leader>re Extract method"
|
|
let g:WhichKeyDesc_IntroduceVariable = "<leader>rv Introduce variable"
|
|
let g:WhichKeyDesc_IntroduceField = "<leader>rf Introduce field"
|
|
let g:WhichKeyDesc_ChangeSignature = "<leader>rs Change signature"
|
|
let g:WhichKeyDesc_QuickListPopupAction = "<leader>rr Quick list popup action"
|
|
map <leader>rn <action>(RenameElement)
|
|
map <leader>re <action>(ExtractMethod)
|
|
map <leader>rv <action>(IntroduceVariable)
|
|
map <leader>rf <action>(IntroduceField)
|
|
map <leader>rs <action>(ChangeSignature)
|
|
map <leader>rr <action>(Refactorings.QuickListPopupAction)
|
|
|
|
" Go To Code
|
|
let g:WhichKeyDesc_GoToCode = "<leader>g Go to code"
|
|
let g:WhichKeyDesc_GoToDeclaration = "<leader>gd Go to declaration"
|
|
let g:WhichKeyDesc_GotoTypeDeclaration = "<leader>gy Goto type declaration"
|
|
let g:WhichKeyDesc_GotoImplementation = "<leader>gi Goto implementation"
|
|
let g:WhichKeyDesc_ShowUsages = "<leader>gu Show usages"
|
|
let g:WhichKeyDesc_GotoTest = "<leader>gt Goto test"
|
|
let g:WhichKeyDesc_Back = "<leader>gb Back"
|
|
let g:WhichKeyDesc_Forward = "<leader>gf Forward"
|
|
map <leader>gd <action>(GoToDeclaration)
|
|
map <leader>gy <action>(GotoTypeDeclaraton)
|
|
map <leader>gi <action>(GotoImplementation)
|
|
map <leader>gu <action>(ShowUsages)
|
|
map <leader>gt <action>(GotoTest)
|
|
map <leader>gb <action>(Back)
|
|
map <leader>gf <action>(Forward)
|
|
|
|
" Go Tag
|
|
let g:WhichKeyDesc_GoTag_AddKey = "<leader>gt Add Tag"
|
|
map <leader>gt :action IntentionActionAsAction_com.goide.inspections.tag.GoTagAddKeyIntention<CR>
|
|
|
|
" Errors
|
|
let g:WhichKeyDesc_Errors = "<leader>e Errors"
|
|
let g:WhichKeyDesc_NextError = "<leader>en Next error in solution"
|
|
let g:WhichKeyDesc_PrevError = "<leader>ep Previous error in solution"
|
|
map <leader>en <action>(ReSharperGotoNextErrorInSolution)
|
|
map <leader>ep <action>(ReSharperGotoPrevErrorInSolution)
|
|
|
|
" Menu
|
|
let g:WhichKeyDesc_Menu = "<leader>m Menu"
|
|
let g:WhichKeyDesc_Menu_Main = "<leader>mm Main menu"
|
|
let g:WhichKeyDesc_AnalyzeMenu = "<leader>ma Analyze Menu"
|
|
let g:WhichKeyDesc_BuildMenu = "<leader>mb Build Menu"
|
|
let g:WhichKeyDesc_CodeMenu = "<leader>mc Code menu"
|
|
let g:WhichKeyDesc_FindMenuGroup = "<leader>mf Find menu group"
|
|
let g:WhichKeyDesc_GoToMenu = "<leader>mg Go to menu"
|
|
let g:WhichKeyDesc_ScopeViewPopupMenu = "<leader>ms Scope view popup menu"
|
|
let g:WhichKeyDesc_EditorTabPopupMenu = "<leader>mt Editor tab popup menu"
|
|
let g:WhichKeyDesc_ToolWindowsGroup = "<leader>mw Tool windows group"
|
|
map <leader>mm <action>(MainMenu)
|
|
map <leader>ma <action>(AnalyzeMenu)
|
|
map <leader>mb <action>(BuildMenu)
|
|
map <leader>mc <action>(CodeMenu)
|
|
map <leader>mf <action>(FindMenuGroup)
|
|
map <leader>mg <action>(GoToMenu)
|
|
map <leader>ms <action>(ScopeViewPopupMenu)
|
|
map <leader>mt <action>(EditorTabPopupMenu)
|
|
map <leader>mw <action>(ToolWindowsGroup)
|
|
|
|
" New files
|
|
let g:WhichKeyDesc_new_file = "<leader>n New Files"
|
|
let g:WhichKeyDesc_new_gofile = "<leader>ng New Go File"
|
|
let g:WhichKeyDesc_new_dir = "<leader>nD New Directory"
|
|
let g:WhichKeyDesc_new_html = "<leader>nh New HTML File"
|
|
let g:WhichKeyDesc_new_docker = "<leader>nd New Docker File"
|
|
let g:WhichKeyDesc_new_powershell = "<leader>np New Powershell File"
|
|
let g:WhichKeyDesc_new_file = "<leader>nf New File"
|
|
let g:WhichKeyDesc_new_scratch = "<leader>nf Scratch File"
|
|
map <leader>ng <Action>(Go.NewGoFile)
|
|
map <leader>nD <Action>(NewDir)
|
|
map <leader>nh <Action>(NewHtmlFile)
|
|
map <leader>nd <Action>(NewDockerfile)
|
|
map <leader>np <Action>(NewPowerShellFile)
|
|
map <leader>nf <Action>(NewFile)
|
|
map <leader>ns <action>(NewScratchFile)
|
|
|
|
" Git windows
|
|
let g:WhichKeyDesc_git = "<leader>G Git/Go Operations"
|
|
let g:WhichKeyDesc_git_commit = "<leader>Gc Open Git commit dialog"
|
|
let g:WhichKeyDesc_git_branches = "<leader>Gb Open Git branches list"
|
|
let g:WhichKeyDesc_git_pull = "<leader>Gp Open Git Pull"
|
|
map <leader>Gc <Action>(CheckinProject)
|
|
map <leader>Gb <Action>(Git.Branches)
|
|
map <leader>Gp <Action>(Git.Pull)
|
|
map <leader>GP <Action>(Vcs.Push)
|
|
|
|
" Tools
|
|
let g:WhichKeyDesc_Tools = "<leader>t Tools"
|
|
let g:WhichKeyDesc_git_Tools_Copilot = "<leader>tc Continue"
|
|
let g:WhichKeyDesc_git_Tools_Debug = "<leader>td Debug"
|
|
let g:WhichKeyDesc_git_Tools_Terminal = "<leader>tt Terminal"
|
|
let g:WhichKeyDesc_tools_mergerequest = "<leader>tm Merge Request"
|
|
let g:WhichKeyDesc_tools_services = "<leader>ts Services"
|
|
let g:WhichKeyDesc_tools_run = "<leader>tr Run"
|
|
map <leader>tc <Action>(continue.focusContinueInputWithoutClear)
|
|
map <leader>td <Action>(ActivateDebugToolWindow)
|
|
map <leader>tt <Action>(ActivateTerminalToolWindow)
|
|
map <leader>tm <Action>(ActivateMergeRequestsToolWindow)
|
|
map <leader>tr <Action>(ActivateRunToolWindow)
|
|
map <leader>ts <Action>(ActivateServicesToolWindow)
|
|
|
|
" Easy visual indentation
|
|
vnoremap < <gv
|
|
vnoremap > >gv
|
|
|
|
" Run
|
|
map <leader>rc <action>(RunClass)
|