" vim:ft=vim:fenc=utf-8:fdm=marker "" Difference between all the different maps: "" https://stackoverflow.com/questions/3776117/what-is-the-difference-between-the-remap-noremap-nnoremap-and-vnoremap-mapping "" Ideavim actionlist: "" https://gist.github.com/zchee/9c78f91cc5ad771c1f5d "" List of supported plugins: "" https://github.com/JetBrains/ideavim/wiki/Emulated-plugins "" https://betterprogramming.pub/the-essential-ideavim-plugins-f939b4325180 "" Good Keyboard Shortcut Rebinds: "" -> "" -> "" -> "" --- "" Manage Projects -> "" ActivateTerminalToolWindow -> "" Hide Active Window -> Alt + Shift + h "" --- "" UNBIND default "" Set Handlers sethandler a:vim sethandler a:ide sethandler a:ide sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:vim sethandler a:ide let mapleader = " " "" Emulated plugins " use 'c|d|yia' to c|d|y inner arguments set argtextobj let g:argtextobj_pairs="(:),{:},<:>,[:]" set commentary set highlightedyank set NERDTree set surround set textobj-entire set which-key set quickscope let g:qs_highlight_on_keys = ['f', 'F', 't', 'T'] let g:qs_primary_color = '#e64553' let g:qs_secondary_color = '#fe640b' let g:qs_accepted_chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '{', '}', '[', ']', '<', '>'] "" Options set notimeout set smartcase set incsearch set relativenumber set number set ideajoin set showcmd set showmode " Stay in the mode in which the editing started set idearefactormode=keep " No annoying sound on errors set visualbell set tm=500 " Set scrolloff set scrolloff=8 " Center buffer when navigating nmap zz nmap zz nmap n nzzzv nmap N Nzzzv " Workaround for unifying navigation history: " https://youtrack.jetbrains.com/issue/VIM-44/Unify-navigation-history-between-ideavim-and-idea" nmap (Back) nmap (Forward) " Navigate project errors map [d (GotoPreviousError) map ]d (GotoNextError) " Navigate git changes map [c (VcsShowPrevChangeMarker) map ]c (VcsShowNextChangeMarker) " Navigate methods map [m (MethodUp) map ]m (MethodDown) " Show hoverdoc map H (ShowErrorDescription) " Shortcutting split navigation map h map j map k map l " Bye bye map q (CloseContent) map Q (CloseAllEditors) map x (CloseAllEditorsButActive) map h (HideAllWindows) " Focus project window map e :NERDTreeFocus " File navigation map ff (GotoFile) map fg (FindInPath) map fm (MainMenu) map fr (RecentFiles) map fp (ManageRecentProjects) map (SearchEverywhere) " Tab navigation map (NextTab) map (PreviousTab) " Keep visual selection vnoremap < >gv " LSP stuffs map lo (OptimizeImports) map lf (ReformatCode) map lr (RenameElement) map la (ShowIntentionActions) map gt (GotoTest) map gs (GotoSuperMethod) map gI (GotoImplementation) " Debugging stuffs map dt (ToggleLineBreakpoint) map db (ViewBreakpoints) map ds (ContextDebug) map df (ChooseDebugConfiguration) map rs (ContextRun) map rc (RunClass) map rf (ChooseRunConfiguration) " Git stuffs map gg (ActivateCommitToolWindow) map gr (Vcs.RollbackChangedLines) " Hello terminal :D map t (ActivateTerminalToolWindow) " Open ideavimrc map ; :e ~/.config/ideavim/ideavimrc " Alt+j/k for autocompletion popup inoremap inoremap " Shhhhhhhhhhhhhhhhhhhhhhhhhhhhhh " https://youtrack.jetbrains.com/issue/VIM-1341/gx-should-open-selection-in-browser nnoremap gx gd " Zen mode map zz (TogglePresentationMode) " Vim search is simply outclassed here map / (Find)