日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Vim【学习笔记】

發布時間:2025/7/25 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Vim【学习笔记】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【2017-02-04】

先放幾個比較好的資料,看這些資料就好了:

1.Vim入門基礎?http://www.jianshu.com/p/bcbe916f97e1

2.vim配置?http://blog.csdn.net/g_brightboy/article/details/14229139

3.簡明Vim練級攻略?http://coolshell.cn/articles/5426.html

4.http://blog.csdn.net/mu_zhou233/article/details/53045831

【update:2017-02-18】學會了替換,注意[需要轉義


?

吐槽:在Mac OS上安裝Vim好麻煩啊.........,并且mvim不支持shift選擇了嗚嗚并且ctrl和command建都不知道按哪個,還是gvim好


?

我的配置文件

" Candy? MacOSset number set ruler set tabstop=4 set shiftwidth=4 set autoindent set smartindent filetype on syntax on colorscheme solarized set showmatch set guifont=Monaco:h20 set mouse=a set selection=exclusive set selectmode=mouse,key nnoremap <F7> <Esc>:w<CR>:!g++ % -Wall -o nnoremap <F8> <Esc>:!./ nnoremap <F9> <Esc>:w<CR>:!g++ % -Wall -o a<CR> nnoremap <F10> <Esc>:!./a<CR>

?

" Candy? Windowsset number set ruler set tabstop=4 set shiftwidth=4 set autoindent set smartindent filetype on syntax on colorscheme solarized set showmatch set guifont=monaco:h16 set mouse=a set selection=exclusive set selectmode=mouse,key nnoremap <F7> <Esc>:w<CR>:!g++ % -Wall -o nnoremap <F8> <Esc>:! nnoremap <F9> <Esc>:w<CR>:!g++ % -Wall -o a<CR> nnoremap <F10> <Esc>:!a<CR> set nohlsearch

?

后幾個是為了方便編譯(然而并不如直接在終端編譯)

字體 Mac上用Monaco 20號(Monaco字體太漂亮了太可愛了),Windows上用16號

機房電腦的環境變量Path設置:

C:\Program Files (x86)\Vim\vim80;C:\Program Files (x86)\Dev-Cpp\MinGW64\bin;


?命令概覽:

命令前加數字N可以重復命令(通常是接下來N行/N個字符進行命令)

通常小寫字母與下有關,大寫字母與上有關

?


?

[附錄]一些命令:

k 上移; j 下移; h 左移; l 右移。
gg 將光標定位到文件第一行起始位置;
G 將光標定位到文件最后一行起始位置;
0 數字0,左移光標到本行的開始;
$ 右移光標,到本行的末尾;
^       移動光標,到本行的第一個非空字符。

 fc

 Fc

<C+u>
<C+d>
Ctrl+e 往后滾動一行 Ctrl+y 往前滾動一行 //windows不行? ?
* 當光標停留在一個單詞上,* 鍵會在文件內搜索該單詞,并跳轉到下一處; /str1 正向搜索字符串 str1; n 繼續搜索,找出 str1 字符串下次出現的位置; N 繼續搜索,找出 str1 字符串上一次出現的位置; ?str2 反向搜索字符串 str2 。

?

x 刪除光標所指向的當前字符; nx 刪除光標所指向的前 n 個字符;
dd 刪除光標所在行,并去除空隙; ndd 刪除(剪切) n 行內容,并去除空隙;
d$ 從當前光標起刪除字符直到行的結束; d0 從當前光標起刪除字符直到行的開始;

dt"?→ 刪除所有的內容,直到遇到雙引號——?"

?d和y都可以當成兩邊加上范圍用....(默認第一個范圍是當前位置)

p 小寫字母 p,將緩沖區的內容粘貼到光標的后面; P 大寫字母 P,將緩沖區的內容粘貼到光標的前面。 yy 復制當前行到內存緩沖區; nyy 復制 n 行內容到內存緩沖區;
“+y 復制 1 行到操作系統的粘貼板; “+nyy 復制 n 行到操作系統的粘貼板。

?

u 撤消前一條命令的結果;
<C+r>      恢復命令 . 重復最后一條修改正文的命令。

?


?

i 在光標左側插入正文 a 在光標右側插入正文 o 在光標所在行的下一行增添新行 O 在光標所在行的上一行增添新行 I 在光標所在行的開頭插入 A 在光標所在行的末尾插入
:n 將光標移到第 n 行

正則表達式 替換:

?

:s/str1/str2/ 用字符串 str2 替換當前行中首次出現的字符串 str1 :s/str1/str2/g 用字符串 str2 替換當前行中所有出現的字符串 str1
:%s 所有行 :.,$ s/str1/str2/g 用字符串 str2 替換當前行到末尾所有出現的字符串 str1 :1,$ s/str1/str2/g 用字符串 str2 替換正文中所有出現的字符串 str1
:m,ns/str1/str2/g 將從m行到n行的str1替換成str2

?


?

:split(可用縮寫 :sp) 上下分屏; :vsplit(可用縮寫 :vsp) 左右分屏。
<C+w+w> 切換
:res 大小

:tabnew 新標簽
gt gT    標簽切換

<< >> 縮進?

?


?

可視 塊

<C+v> <C+q>

?

轉載于:https://www.cnblogs.com/candy99/p/vim.html

總結

以上是生活随笔為你收集整理的Vim【学习笔记】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。