För att få överblick över alla Vims kommandon: :help quickref.txt
-
<c-d>betyderctrl-d -
<m-d>betyderalt-d(mläses "meta") -
<c-w>wbetyder tryckctrl-w, senw -
<cr>är samma sak som<enter> -
För att kolla upp vad exempelvis
<c-w>wså använder du:help CTRL-W_w -
Använd
<Tab>i menyn då den ger förslag utifrån det du skrivit. Exmpelvis om du skriver:help ctrl-och sen trycker<Tab>istället för<Enter>så får du upp massa olika förslag som du kan navigera genom medctrl-n/ctrl-p(next/previous) eller<Down>/<Up>. Funkar även när du skriver början på mapp-/filnamn efter exempelvis:e.
<c-w>v- splittarvertikalt skärmen i två fönster<c-w>s- splittar horisontellt skärmen i två fönster<c-w>c- stänger det aktiva fönstret<c-w>o- stänger alla fönster förutom det aktiva fönstret<c-w>h/<c-w>j/<c-w>k/<c-w>l- för att hoppa till vänstra/undre/övre/högra fönfönstret<c-w>w- för att hoppa tillbaka till tidigare fönster- Alla ovan nämnda kommandon förutom
<c-w>cgår att göra och hålla inctrlhela tiden, dvs<c-w><c-v>är samma sak som<c-w>v- Om du lägger till
nmap <C-c> <Nop>tillinit.vimså funkar även<c-w><c-c>istället för<c-w>c
- Om du lägger till
- För fler kommandon, se
:help windows
.- repeterar senaste kommandos- "sentence" text object, t.ex.dis/das- "delete in sentence"/"delete around sentence". För definition av sentence::help sentence.)/(hoppar till starten av nästa/tidigare sentence
gx- öppnar webbadress under cursor i din webbläsare, testa på https://www.google.com/I/Aför att börja redigera längst fram/längst bak på raden du står på>>/<<- indenterar raden till höger/vänster, går också att göra i visual mode med>/<<C-o>/<C-i>- hoppar till tidigare/senare ställe som du varit på med din cursor<C-6>- hoppar till tidigare filen (buffer) du varit i - för att hoppa mellan två filerg;/g,- hoppar till tidigare/senare ställe där du gjort en ändring<c-v>- för att markera text i visual mode som ett blockI- För att redigera på alla rader i början av blocketA- För att redigera på alla rader i början av blocket
gv- återställer senaste markering i visual modee/ge- för att ställa dig med din cursor på sista karaktären ordet du står på/det tidigare ordet. Användbart tillsammans meda:- Av någon anledning har pluginet
vim-markdownhijackatgei markdown-filer för att öppna länkar, har inte hunnit kolla upp hur man stänger av det ea/gea- för att börja skriva i slutet på ordet du står på / det tidigare ordet
- Av någon anledning har pluginet
<c-a>/<c-x>- ökar/minskar värdet på siffra under din cursor- Kolla även på
:help v_g_CTRL-A(ascoolt)
- Kolla även på
~- För att toggla uppercase/lowercase på karaktären under din cursor, eller hela markeringen i visual modegU/gu- för att ändra till uppercase/lowercase på nästa motion/text object, typgUw, eller på markeringen i visual modet/T/f/Ftar counts, t.ex.c2t.ändrar till näst-nästa.- Det är generellt bättre att lära sig att använda
_istället för0för att gå till början av raden, då_skippar whitespace i början av raden (bra för indenterade listor mm) =- indenterar automatiskt text object eller markering i visul mode==- indenterar automatiskt raden din cursor är på
*/#- söker nedåt/uppåt efter ordet under din cursorgj/gk- för att hoppa ner/upp i "displayed line", användbart om raden är längre än fönstrets bredd så att en rad tar upp två "displayed lines"<c-l>- Tömmer eventuell text som printats längst ned till vänster- Om du lägger till
vnoremap // y/<C-R>"<CR>iinit.vimså kan du med//söka i visual mode efter det du markerat - Om du lägger till
map g/ /\<\><Left><Left>- iinit.vimså kan du medg/söka bara efter hela ord (dvs ignorera träffar på delar av ord) - För att hoppa till exempelvis rad 42 kan du använda
:42eller42G - För att hoppa till nästa eller tidigare rubrik i markdown:
[[och]]
-
För att få en indikator efter att du kopierat text med
y. Sätt350till hur länge texten ska vara highlightad i millisekunder:augroup highlight_yank autocmd! autocmd TextYankPost * silent! lua require'vim.highlight'.on_yank("IncSearch", 350) augroup END
-
För att appenda
.till raden med<leader>.utan att pekaren flyttas, och samma sak för,och?:map <leader>, :call VisualAppend(",")<CR> map <leader>. :call VisualAppend(".")<CR> map <leader>? :call VisualAppend("?")<CR> " Appends `char` to current line or visual selection function! VisualAppend(char) exe "normal! m0" exe "normal! A" . a:char exe "normal! `0" endfunction
-
För att tvinga
:help-pages i vertikala fönster istället för horisontellaaugroup vertical_help " Open :help in 85 character wide vertical instead of horizontal split autocmd! autocmd BufEnter *.txt if &buftype == 'help' | wincmd L | vertical resize 85 | endif augroup END
-
För att tillåta musklick i vim (avstängt by default hehe):
set mouse=a -
För att alltid highlighta raden du står på
set cursorline -
För att göra tab-karaktärer 4 spaces breda istället för 8
set tabstop=4 -
För att snygga till några färger:
highlight CursorLineNr term=bold gui=bold highlight! link Search Visual highlight! link SpecialKey Directory
-
För att automatiskt upptäcka externa ändringar i fil du har öppen
set autoread " Automatically read in the file when changed externally augroup filechanged " Check if any file has changed autocmd! autocmd FocusGained * silent! checktime augroup end -
Make
;/,always seach forward/backward, respectivelynnoremap <expr> ; getcharsearch().forward ? ';' : ',' nnoremap <expr> , getcharsearch().forward ? ',' : ';'
- Om du markerat text i visual mode kan du trycka
p/<leader>pför att ersätta det med det något som du kopierat - Macros - för att spela in och spela upp många kommandon
- Sessions - för att spara en session, dvs filer och fönster öppna i vim och återställa nästa gång du öppnar vim
- Folds - för att gömma (fold) delar av dokumentet som du inte jobbar på
- Tryck
<Up>/<Down>eller<C-p>/<C-n>('previous'/'next') i command-line-menyn (:) eller search (/) för att stega igenom historik av kommandon/sökningar - Lägg till
set nomagictillinit.vimså tolkas dina sökningar bokstavligen, och inte med regex (annars matchar exempelvis en sökning efter.alla tecken i filen)- Dock för att söka efter tecknet
/måste du alltid sätta ett\framför, dvs\/, förutom om du söker bakåt med?
- Dock för att söka efter tecknet
- Vimium - Google Chrome extension som ger dig Vim-bindings
- För att se vad ett custom commando gör, exempelvis
<leader>V, använd:map <leader>V- Du kan även söka efter delar av kommandon, typ
:help <leader>för att se alla kommandon som börjar med<leader> - För att se vad vanilla-kommandon gör, typ
~använd:help ~
- Du kan även söka efter delar av kommandon, typ