Skip to content

Instantly share code, notes, and snippets.

@sudikonda
Created March 3, 2025 12:45
Show Gist options
  • Select an option

  • Save sudikonda/bfe91ad6d05817f44d2f1d89e869f2f4 to your computer and use it in GitHub Desktop.

Select an option

Save sudikonda/bfe91ad6d05817f44d2f1d89e869f2f4 to your computer and use it in GitHub Desktop.
idea vimrc file
let mapleader=" "
""" Plugins --------------------------------
set surround
set multiple-cursors
set commentary
set argtextobj
set easymotion
set textobj-entire
set ReplaceWithRegister
set exchange
" Trying the new syntax
Plug 'machakann/vim-highlightedyank'
""" Plugin settings -------------------------
let g:argtextobj_pairs="[:],(:),<:>"
" <C-n> seems to me as a better solution than <M-n>,
" but we should finally support vim-visual-multi because vim-multiple-cursors is deprecated now
map <C-n> <Plug>NextWholeOccurrence
""" Common settings -------------------------
set showmode
set so=5
set nu
set cursorline
set showmatch
" Search
set ignorecase
set smartcase
set incsearch
set hlsearch
""" Idea specific settings ------------------
set ideajoin
set ideastatusicon=gray
""" My Mappings -----------------------------
" easy-motion-s -> Search backward
" easy-motion-f -> Search forward
map <leader>e <Plug>(easymotion-s)
map <leader>f <Plug>(easymotion-f)
" Debug
map <leader>dd <Action>(Debug)
map <leader>ds <Action>(Stop)
map <leader>db <Action>(ToggleLineBreakpoint)
map <leader>do <Action>(StepOver)
" Code
map <leader>rn <Action>(RenameElement)
map <leader>z <Action>(ToggleDistractionFreeMode)
map <leader>oi <Action>(OptimizeImports)
map <leader>rf <Action>(ReformatCode)
map <leader>o <Action>(FileStructurePopup)
" Project
map <leader>pv <Action>(SelectInProjectView)
" Git
map <leader>h <Action>(Vcs.ShowTabbedFileHistory)
map <leader>a <Action>(Annotate)
map <leader>cm <Action>(copilot.git.commit.button)
" Search
map <leader>sc <Action>(GotoClass)
map <leader>sa <Action>(GotoAction)
map <leader>sf <Action>(GotoFile)
map <leader>gd <Action>(GotoDeclaration)
map <S-Space> <Action>(GotoNextError)
" Window
map <leader>hw <Action>(HideActiveWindow)
map <leader>hx <Action>(HideAllWindows)
map <leader>xx <Action>(CloseEditor)
map <leader>xa <Action>(CloseAllEditorsButActive)
map <leader>wv <Action>(SplitVertically)
map <leader>wm <Action>(MoveEditorToOppositeTabGroup)
" Navigation
map <leader><< <Action>(Back)
map <leader>>> <Action>(Forward)
map <leader>tab <Action>(RecentFiles)
" Terminal
map <leader>t <Action>(ActivateTerminalToolWindow)
map gc <Action>(ActivateGitHubCopilotChatToolWindow)
" Just makes me nervous
map H h
" Toggle case and start typing. E.g. `<leader>iget`: `property` -> `getProperty`
map <leader>i ~hi
" Remove selection and toggle case. E.g. `v2l<leader>u`: `getProperty` -> `property`
vmap <leader>u d~h
" I think it's a better solution
map U <C-R>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment