上海網(wǎng)站建設(shè)升級(jí)開(kāi)發(fā)做一個(gè)網(wǎng)站需要多少錢(qián)
文章目錄
- 前言
- 一、vim的基本概念
- 二、vim模式命令解析
- 1. 命令模式
- 1)命令模式到其他模式的轉(zhuǎn)換:
- 2)光標(biāo)定位:
- 3)其他命令:
- 2. 插入模式
- 3. 底行模式
- 4. 替換模式
- 5. 視圖模式
- 6. 外部命令
- 三、vim環(huán)境的配置
- 1. 環(huán)境配置語(yǔ)法
- 2. vim完善的環(huán)境配置包
- 四、sudo添加信任用戶
- 總結(jié)
前言
vi/vim的區(qū)別簡(jiǎn)單點(diǎn)來(lái)說(shuō),它們都是多模式編輯器,不同的是vim是vi的升級(jí)版本,它不僅兼容vi的所有指令,而且還有一些新的特性在里面。例如語(yǔ)法加亮,可視化操作不僅可以在終端運(yùn)行,也可以運(yùn)行于x window、 mac os、
一、vim的基本概念
vim是一種多模式的純粹的編輯器,命令模式是vim的精華所在,熟練運(yùn)用命令會(huì)大幅度提高編輯速度。
vim的三種模式(其實(shí)有好多模式,目前掌握這3種即可),分別是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能區(qū)分如下:
- 正常/普通/命令模式(Normal mode)
控制屏幕光標(biāo)的移動(dòng),字符、字或行的刪除,移動(dòng)復(fù)制某區(qū)段及進(jìn)入Insert mode下,或者到 last line mode - 插入模式(Insert mode)
只有在Insert mode下,才可以做文字輸入,按「ESC」鍵可回到命令行模式。該模式是我們后面用的最頻繁的編輯模式。 - 末行模式(last line mode)
文件保存或退出,也可以進(jìn)行文件替換,找字符串,列出行號(hào)等操作。 在命令模式下,shift+: 即可進(jìn)入該模式。要查看你的所有模式:打開(kāi)vim,底行模式直接輸入:help vim-modes
二、vim模式命令解析
1. 命令模式
vim 默認(rèn)打開(kāi)就是命令模式,任何模式按Esc都會(huì)退回到命令模式,命令模式也可以到其他模式。
1)命令模式到其他模式的轉(zhuǎn)換:
(1)其余模式——>命令模式 :Eax
(2)命令模式——>插入模式 :a(光標(biāo)到下一個(gè)位置),i(光標(biāo)到當(dāng)前位置),o(光標(biāo)到下一行)
(3)命令模式——>替換模式 : Shift + r = R
(4)命令模式——>視圖模式 : Ctrl + v
2)光標(biāo)定位:
(1)gg 光標(biāo)定位到開(kāi)頭,n + gg 光標(biāo)定位到指定行開(kāi)頭
(2)Shift + G 光標(biāo)定位到結(jié)尾行,Shift + G 光標(biāo)定位到指定行開(kāi)頭
(3)Shift + ^ 光標(biāo)定位到行首
(4)Shift + $ 光標(biāo)定位到行尾
(5)h,j,k,l(左,下,上,右),也可以用↑↓←→
(6)w : 光標(biāo)以單詞為單位向前移動(dòng),n + w :移動(dòng) n 個(gè)
(7)b : 光標(biāo)以單詞為單位向后移動(dòng),n + b :移動(dòng) n 個(gè)
3)其他命令:
(1)yy : 復(fù)制當(dāng)前行,n + yy : 復(fù)制 n 行
(2)p : 粘貼到下一行,n + p : 粘貼 n 次
(3)dd : 剪切當(dāng)前行,n + dd :剪切n行
(4)x : 刪除當(dāng)前位置,n + x : 刪除 n 個(gè)
(5)Shift + ~ : 快速大小寫(xiě)轉(zhuǎn)化
(6)r : 小范圍文本替換,n + r : 替換 n 個(gè)
(7)u : 撤銷(xiāo)
(8)Ctrl + r : 撤銷(xiāo)撤銷(xiāo)
(9)Shift + zz : 保存并退出vim
2. 插入模式
a/i/o進(jìn)入:
就是正常的編譯,即可。
3. 底行模式
:進(jìn)入
(1)w : 保存
(2)q : 退出
(3)! : 強(qiáng)制
(4)wq 保存并退出,wq! 強(qiáng)制保存并退出了
(5)set nu : 調(diào)出行號(hào)
(6)set nonu : 取消行號(hào)
(7)/XXX : 查找XXX, n : 到下一個(gè)匹配項(xiàng)
(8)!command : 在底行模式下查看外部 shell 命令
(9)!命令 : 在底行模式下執(zhí)行外部命令
(10)vs other
(11)!命令 : 在底行模式下執(zhí)行外部命令
(12)vs other : 分屏打開(kāi)其他
(13)Ctrl + ww :光標(biāo)在分屏中切換
(14)%s/XXX/XXX/g :所有后者替換為前者
4. 替換模式
Shift + r = R 進(jìn)入:
進(jìn)入替換模式輸入就會(huì)替換光標(biāo)的東西。
5. 視圖模式
Ctrl + v 進(jìn)入:
批量化刪除 :
Ctrl -> v -> 選擇(hjkl或wb或gg或G) -> d
批量化插入 :
Ctrl -> v -> 選擇(hjkl或wb或gg或G) -> Shift + i = I ->插入內(nèi)容->Esc
6. 外部命令
vim XXX打開(kāi)
vim vim XXX +n打開(kāi)光標(biāo)定位到第n行
!命令,快速調(diào)出上次命令
三、vim環(huán)境的配置
1. 環(huán)境配置語(yǔ)法
首先進(jìn)入自己的家目錄,創(chuàng)建一個(gè)文件.vimrc
,vim打開(kāi)這個(gè)文件,然后利用問(wèn)文心一言或者chatgpt來(lái)生成配置,我們直接復(fù)制上去保存退出就行。
下面是我用chatgpt生成的結(jié)果:
以下是一個(gè)適用于 CentOS 的 vim
配置示例,可用于優(yōu)化編碼體驗(yàn),將其內(nèi)容保存為 ~/.vimrc
文件即可生效:
" 基礎(chǔ)設(shè)置
set number " 顯示行號(hào)
set relativenumber " 顯示相對(duì)行號(hào)
set cursorline " 高亮當(dāng)前行
set tabstop=4 " Tab 鍵寬度設(shè)為 4 個(gè)空格
set shiftwidth=4 " 縮進(jìn)寬度為 4 個(gè)空格
set expandtab " 用空格替代 Tab 鍵
set autoindent " 自動(dòng)縮進(jìn)
set smartindent " 智能縮進(jìn)
set wrap " 自動(dòng)換行
set showmatch " 高亮匹配的括號(hào)
set ignorecase " 搜索忽略大小寫(xiě)
set smartcase " 智能大小寫(xiě)匹配
set incsearch " 增量搜索
set hlsearch " 高亮搜索結(jié)果" 界面優(yōu)化
syntax on " 啟用語(yǔ)法高亮
set background=dark " 適合深色背景
set showcmd " 顯示命令輸入
set wildmenu " 自動(dòng)補(bǔ)全菜單
set laststatus=2 " 總是顯示狀態(tài)欄
set ruler " 顯示光標(biāo)位置
set scrolloff=8 " 光標(biāo)上方和下方留出 8 行
set cmdheight=2 " 命令行高度設(shè)為 2" 備份和撤銷(xiāo)
set backup " 啟用備份文件
set undofile " 啟用撤銷(xiāo)文件
set undodir=~/.vim/undo " 撤銷(xiāo)文件保存路徑
set backupdir=~/.vim/backup " 備份文件保存路徑" 可視化配置
set visualbell " 用視覺(jué)提示代替蜂鳴
set t_Co=256 " 啟用 256 色支持" 鍵位映射
nnoremap <C-s> :w<CR> " Ctrl+S 快捷鍵保存文件
inoremap <C-c> <Esc> " 使用 Ctrl+C 進(jìn)入普通模式
nnoremap <C-j> :cnext<CR> " 快速跳轉(zhuǎn)到下一個(gè)錯(cuò)誤
nnoremap <C-k> :cprev<CR> " 快速跳轉(zhuǎn)到上一個(gè)錯(cuò)誤" 插件管理(需要 vim-plug)
" if filereadable(expand("~/.vim/autoload/plug.vim"))
" call plug#begin('~/.vim/plugged')
" Plug 'scrooloose/nerdtree' " 文件瀏覽插件
" Plug 'junegunn/fzf', { 'do': './install --bin' } " 模糊搜索插件
" call plug#end()
" endif
2. vim完善的環(huán)境配置包
還有一種方法,可以用配置好的包:
首先保證在當(dāng)前自己家目錄下,
然后輸入:
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
然后輸入這個(gè)執(zhí)行:
source ~/.bashrc
最后,這里縮進(jìn)是兩格,要改縮進(jìn)就打開(kāi).vimrm,搜索2,全部改為4就可以了。
四、sudo添加信任用戶
一定要用root賬號(hào),vim /ect/sudoers。
來(lái)到這里:
root后面行,加入想要被信任的用戶,和上面一樣就行。
總結(jié)
到這里,vim的內(nèi)容就結(jié)束啦,熟練運(yùn)用命令可以明顯提高編輯速度~~~
如果感到有幫助的話,求求各位三連支持一波🥳🥳🥳