婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 如何讓 vim 成為我們的神器(小結)

如何讓 vim 成為我們的神器(小結)

熱門標簽:地圖標注項目幾個月 400電話辦理費用低 聯通外呼系統電腦app軟件 400電話申請到底哪家好 蘇州呼叫中心外呼系統哪家強 宿遷怎么辦理400電話 鶴壁高頻外呼系統多少錢一個月 外呼系統怎么群發短信 谷歌地圖標注日期

Vim 是一個上古神器,剛剛接觸的同學可能很難駕馭,本篇文章主要帶領大家快速入門,并持續分享當前流行的一些 vim-plugin,有興趣的同學還可以參考 to-vim-tmux-zsh 倉庫繼續研究 Tmux 和 Zsh。

Vim 的優勢

  • Vim 是一個完全 跨平臺 的編輯器;
  • Vim 是一個高度 可定制、可擴展 的編輯器;
  • Vim 有著 良好的生態 環境;

新手指南

$ vimtutor // vim 教程

Vim 模式

  • 普通模式: 默認模式,可用于文本刪除、替換,恢復、粘貼等操作;
  • 插入模式: 輸入 i 進入插入模式,相當于普通編輯器的編輯模式;
  • 可視模式: 輸入 v 進入可視模式,選擇文本,進行復制等操作;
  • 命令模式: 輸入 : 進入命令模式,可執行執行內部和外部命令;

移動光標

  • hjkl: 上下左右;
  • 2w:向前移動兩個單詞;
  • 3e:向前移動到第 3 個單詞的末尾;
  • 0:移動到行首;
  • \$:當前行的末尾;
  • H:光標移動到頂部;
  • M:光標移動到中間;
  • L:光標移動到底部;
  • gf:根據 path 跳轉到指定文件;
  • gg:第一行;
  • G:最后一行;
  • 行號 + G:指定行;
  • ( ): 移到上一句和下一句;
  • { }: 移到上一段和下一段;
  • ctrl + o:跳轉回之前的位置;
  • ctrl + i:返回跳轉之前的位置;
  • ctrl + d:向下移動半頁;
  • ctrl + u:向上移動半頁;
  • ctrl + f:向下移動整頁;
  • ctrl + b:向上移動整頁;

退出

  • esc:進入普通模式;
  • :q!:不保存退出;
  • :wq:保存后退出;

刪除

  • x:刪除當前字符;
  • dw:刪除至當前單詞末尾;
  • de:刪除至當前單詞末尾,包括當前字符;
  • d\$:刪除至當前行尾;
  • dd:刪除整行;
  • 2dd:刪除兩行;

修改

  • i:插入文本;
  • a:在當前字符后面進入插入模式;
  • A:當前行末尾添加;
  • r:替換當前字符;
  • o: 打開新的一行進入插入模式;
  • s:刪除一個字符然后進入插入模式;
  • cc:修改整行;

撤銷

  • u:撤銷
  • ctrl + r: 取消撤銷

復制粘貼剪切

  • y:復制
  • p:粘貼
  • yy:復制當前行
  • dd:剪切當前行

文件

  • :e! 強制刷新該文件
  • ctrl + g 顯示當前行以及文件信息

查找

  • /:正向查找(n:繼續查找,N:相反方向繼續查找)
  • ?:逆向查找
  • %:查找配對的 {,[,(

替換

  • :s/old/new:替換該行第一個匹配串
  • :s/old/new/g:替換全行的匹配串
  • :%s/old/new/g:替換整個文件的匹配串

基本配置

創建 Vim 的配置文件 .vimrc

touch ~/.vimrc

文件編碼

set enc=utf-8

不和 vi 兼容

set noswapfile

備份和撤銷文件

set nobackup
set noswapfile

if has('persistent_undo')
 set undofile
 set undodir=~/.vim/undodir
 if !isdirectory(undodir)
  call mkdir(undodir, 'p', 0700)
 endif
endif

中文

set fileencodings=ucs-bom,utf-8,gb18030,latin1

鼠標支持

if has('mouse')
 if has('gui_running') || (term =~ 'xterm'  !has('mac'))
  set mouse=a
 else
  set mouse=nvi
 endif
endif

set clipboard=unnamed

設置文本菜單

if has('gui_running')
 let do_syntax_sel_menu = 1
 let do_no_lazyload_menus = 1
endif

if !has('gui_running')
 if has('wildmenu')
  set wildmenu
  set cpoptions-=
  set wildcharm=C-Z>
  nnoremap F10>   :emenu C-Z>
  inoremap F10> C-O>:emenu C-Z>
 endif
endif

查找

set ignorecase
set smartcase
set hlsearch
set incsearch

nnoremap silent> F2>   :nohlsearchCR>
inoremap silent> F2> C-O>:nohlsearchCR>

顯示行號

set number

設置縮進

set shiftwidth=2
set tabstop=2

突出顯示當前行

set cursorline

啟動 vim 時關閉折疊代碼

set nofoldenable

主題

syntax enable
colorscheme one
set background=dark

背景透明

hi Normal ctermfg=252 ctermbg=none

插件配置

使用 vim-plug 管理插件

樹形目錄

Plug 'scrooloose/nerdtree'              " https://github.com/preservim/nerdtree
Plug 'jistr/vim-nerdtree-tabs'            " https://github.com/jistr/vim-nerdtree-tabs
Plug 'Xuyuanp/nerdtree-git-plugin'          " https://github.com/Xuyuanp/nerdtree-git-plugin
Plug 'ryanoasis/vim-devicons'             " https://github.com/ryanoasis/vim-devicons
Plug 'tiagofumo/vim-nerdtree-syntax-highlight'    " https://github.com/tiagofumo/vim-nerdtree-syntax-highlight
Plug 'tpope/vim-eunuch'                " https://github.com/tpope/vim-eunuch

map C-n> :NERDTreeToggleCR>

let NERDTreeMinimalUI = 1
let NERDTreeShowHidden = 1

let g:nerdtree_tabs_open_on_console_startup = 1

nnoremap F5> :UndotreeTogglecr>

" i 在新的水平分割的窗口中打開
" s 在新的豎直分割的窗口中打開
" t 在標簽頁中打開
" go 預覽文件
" r 刷新光標所在的目錄
" R 刷新當前根路徑
" I 顯示隱藏文件
" m 顯示文件操作菜單
" C 將根路徑設置為光標所在的目錄
" u 設置上級目錄為根路徑
" gT 前一個 tab
" gt 后一個 tab
" C-W> 加方向鍵(h、j、k、l、Left> 等)可以在窗口之間跳轉
" C-W> + w 跳轉到下一個窗口
" C-W> + s 和 :split 作用相同,把當前窗口橫向一分為二
" C-W> + v 和 :vsplit 作用相同,把當前窗口縱向一分為二
" C-W> + o 或 :only 只保留當前窗口,關閉其他所有窗口

標簽

Plug 'majutsushi/tagbar'             " https://github.com/majutsushi/tagbar

nnoremap F9>   :TagbarToggleCR>
inoremap F9> C-O>:TagbarToggleCR>

自動補全

Plug 'Valloric/YouCompleteMe'             " https://github.com/ycm-core/YouCompleteMe
Plug 'Raimondi/delimitMate'              " https://github.com/Raimondi/delimitMate

nnoremap Leader>fi :YcmCompleter FixItCR>
nnoremap Leader>gd :YcmCompleter GoToDefinitionCR>

語法高亮,檢查

Plug 'sheerun/vim-polyglot'              " https://github.com/sheerun/vim-polyglot
Plug 'w0rp/ale'                    " https://github.com/w0rp/ale

let g:ale_fix_on_save = 1
let g:ale_sign_column_always = 1
let g:ale_sign_error = '●'
let g:ale_sign_warning = '▶'

nmap silent> C-k> Plug>(ale_previous_wrap)
nmap silent> C-j> Plug>(ale_next_wrap)

全局搜索,快速打開文件

Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }  " https://github.com/junegunn/fzf
Plug 'junegunn/fzf.vim'                " https://github.com/junegunn/fzf.vim
Plug 'ctrlpvim/ctrlp.vim'               " https://github.com/ctrlpvim/ctrlp.vim

let g:ctrlp_user_command = ['.git', 'cd %s  git ls-files -co --exclude-standard']
let g:ctrlp_regexp = 1

" c-r>: 切換匹配模式
" c-t>:在新的 tab 中打開
" :Rg

狀態條

Plug 'vim-airline/vim-airline'            " https://github.com/vim-airline/vim-airline
Plug 'vim-airline/vim-airline-themes'         " https://github.com/vim-airline/vim-airline-themes

let g:airline_theme='onedark'
let g:airline_powerline_fonts = 1

let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#formatter = 'unique_tail'
let g:airline#extensions#ale#enabled = 1
let g:airline#extensions#tabline#buffer_nr_show = 1
let g:airline#extensions#nerdtree_statusline = 0
let g:airline_section_c = ''

注釋

Plug 'scrooloose/nerdcommenter'            " https://github.com/preservim/nerdcommenter

let g:NERDSpaceDelims = 1
let g:NERDDefaultAlign = 'left'

" leader>cspace> 注釋/取消注釋
" leader>ca 切換 // 和 /* */
" leader>cs /* 塊注釋 */
" leader>cm 只用一組符號注釋
" leader>cA 在行尾添加注釋

git

Plug 'airblade/vim-gitgutter'             " https://github.com/airblade/vim-gitgutter
Plug 'tpope/vim-fugitive'               " https://github.com/tpope/vim-fugitive
Plug 'tpope/vim-rhubarb'               " https://github.com/tpope/vim-rhubarb

set updatetime=100
let g:gitgutter_max_signs = -1

" jump to next hunk: ]c
" jump to previous hunk: [c
" stage the hunk: Leader>hs
" undo the hunk: Leader>hu
" preview the hunk: Leader>hp

" :G
" :Gvdiffsplit
" :GBrowse
"
" s: 加到暫存區中
" u: 重置加入暫存區的修改
" =: 切換 diff 顯示
" cc: 提交當前暫存區中的文件

Markdown

Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app  yarn install' }   " https://github.com/iamcco/markdown-preview.nvim

" :MarkdownPreview
" :MarkdownPreviewStop

Emmet

Plug 'mattn/emmet-vim'                " https://github.com/mattn/emmet-vim

let g:user_emmet_leader_key='C-Z>'

" C-Z>,

Prettier

Plug 'prettier/vim-prettier', { 'do': 'npm install' }   " https://github.com/prettier/vim-prettier

autocmd BufWritePre *.js,*.jsx,*.mjs,*.ts,*.tsx,*.css,*.less,*.scss,*.json,*.graphql,*.md,*.vue,*.yaml,*.html PrettierAsync

" :PrettierAsync

Wakatime

Plug 'wakatime/vim-wakatime'               " https://github.com/wakatime/vim-wakatime "

Whitespace

Plug 'ntpeters/vim-better-whitespace'           " https://github.com/ntpeters/vim-better-whitespace

let g:better_whitespace_enabled=1

" :StripWhitespace


總結

最后,呈上 to-vim-tmux-zsh 倉庫可供參考,顧名思義,除了 vim,還有 tmux 和 zsh 的相關內容。

到此這篇關于如何讓 vim 成為我們的神器(小結)的文章就介紹到這了,更多相關vim 使用入門 內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Vim 強制保存只讀類型文件的方法
  • vi與vim如何修改tab為4個空格方法示例
  • Vim 多行剪切、復制和刪除功能
  • Vim進行文件目錄操作小結
  • 解決vim語法高亮不起作用的方法
  • vim配置顯示行號和語法高亮 即.vimrc文件的配置
  • Vim中查找替換及正則表達式的使用詳解
  • Vim中特殊字符的讀寫詳解

標簽:莆田 遵義 雙鴨山 錫林郭勒盟 丹東 鄂爾多斯 哈爾濱 襄陽

巨人網絡通訊聲明:本文標題《如何讓 vim 成為我們的神器(小結)》,本文關鍵詞  如何,讓,vim,成為,我們,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《如何讓 vim 成為我們的神器(小結)》相關的同類信息!
  • 本頁收集關于如何讓 vim 成為我們的神器(小結)的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美日韩精品欧美日韩精品一 | 亚洲国产精品视频| 日本道在线观看一区二区| 国产福利91精品一区二区三区| 亚洲一区二区三区四区五区中文| 亚洲小说欧美激情另类| 久久久无码精品亚洲日韩按摩| 欧美三级电影在线观看| 色综合久久久久久久久久久| www.亚洲在线| 成人午夜电影小说| 久久国产生活片100| 日产精品久久久久久久性色| 亚洲影视在线播放| 国产精品久久久久影视| 精品国产伦一区二区三区免费| 欧美日韩一级片在线观看| a级精品国产片在线观看| 国产精品一级在线| 懂色中文一区二区在线播放| 国产自产2019最新不卡| 国产馆精品极品| 中文字幕一区不卡| 欧美日韩综合在线| 国产精品一区二区91| 亚洲欧美日韩国产一区二区三区 | 成人精品小蝌蚪| 亚洲乱码中文字幕| 91精品久久久久久久99蜜桃| 国产一区二区三区综合| 久久亚洲精品国产精品紫薇| 日本韩国视频一区二区| 午夜国产精品一区| 久久精品一区二区三区四区| 成人毛片在线观看| 亚洲123区在线观看| 欧美日韩dvd在线观看| 成人av电影免费观看| 一区二区三国产精华液| 色美美综合视频| 日本vs亚洲vs韩国一区三区二区| 精品久久久三级丝袜| 国产成人精品免费在线| 亚洲综合免费观看高清在线观看| 欧美日韩午夜影院| 成人美女视频在线观看| 午夜精品福利一区二区三区av| 久久久久国产精品厨房| 一本色道久久综合亚洲精品按摩| 热久久一区二区| 亚洲午夜一二三区视频| 日本一区二区三区国色天香| 欧美理论电影在线| 成人一道本在线| 国产一区二区三区不卡在线观看| 天天av天天翘天天综合网色鬼国产| 26uuu亚洲综合色欧美| 欧美日韩一区在线观看| 国产一区二区伦理| 九九久久精品视频 | 久久久国际精品| 在线播放视频一区| 欧美性感一区二区三区| 美腿丝袜一区二区三区| 亚洲国产日韩av| 1024精品合集| 中文字幕国产一区| 国产亚洲va综合人人澡精品 | 91麻豆蜜桃一区二区三区| 久久精品国产一区二区三区免费看| 日韩制服丝袜先锋影音| 亚洲图片欧美激情| 久久精品免视看| 2014亚洲片线观看视频免费| 欧美日韩国产在线播放网站| 色综合久久中文综合久久牛| 国产精品一区二区男女羞羞无遮挡| 激情五月婷婷综合| 亚洲aaa精品| 水蜜桃久久夜色精品一区的特点| 亚洲一区影音先锋| 亚洲国产视频网站| 亚洲电影视频在线| 亚洲蜜桃精久久久久久久| 亚洲一区二区中文在线| 亚洲精品国产a| 亚洲国产精品久久久男人的天堂| 亚洲综合久久久| 蜜臀久久99精品久久久久久9| 日本色综合中文字幕| 人妖欧美一区二区| 日韩**一区毛片| 国产成人av电影在线观看| 一本大道久久a久久综合| 91最新地址在线播放| 欧美日产国产精品| 久久精品欧美一区二区三区麻豆| 久久婷婷成人综合色| 欧美激情在线看| 亚洲综合在线观看视频| 性欧美大战久久久久久久久| 午夜视频在线观看一区二区| 国产成人在线看| 国产成人精品免费| 欧美日韩精品一区二区三区四区| 欧美日本一道本在线视频| 久久人人超碰精品| 午夜精品久久久久久| 成人av在线一区二区| 精品毛片乱码1区2区3区| 亚洲v中文字幕| www.亚洲色图| www久久精品| 亚洲国产精品一区二区尤物区| 麻豆精品在线观看| 在线一区二区观看| 国产三级三级三级精品8ⅰ区| 亚洲图片有声小说| 色中色一区二区| 欧美国产成人精品| 国产 欧美在线| 久久天天做天天爱综合色| 视频一区视频二区中文字幕| 欧美在线小视频| 亚洲精品视频在线观看网站| 国产成人免费视| 精品99久久久久久| 黑人巨大精品欧美黑白配亚洲| 欧美美女一区二区三区| 亚洲一区二区精品视频| 91麻豆免费在线观看| 国产精品无人区| 成人影视亚洲图片在线| 国产日韩综合av| 国产成人h网站| 久久久久亚洲蜜桃| 久久99国产精品免费网站| 欧美一区二区三区四区视频| 日韩**一区毛片| 欧美色图天堂网| 亚洲午夜久久久久久久久电影院 | 欧美在线观看你懂的| 亚洲国产综合视频在线观看| 欧美制服丝袜第一页| 夜夜嗨av一区二区三区网页| 色婷婷久久久久swag精品| 一区二区视频在线| 欧美午夜一区二区| 日韩精品五月天| 日韩一区二区免费高清| 丝袜美腿亚洲一区二区图片| 91精品国产一区二区三区蜜臀| 秋霞电影网一区二区| 精品88久久久久88久久久| 成人午夜免费视频| 亚洲色图另类专区| 欧美日韩在线综合| 国产自产v一区二区三区c| 亚洲国产高清在线观看视频| 91欧美一区二区| 蜜桃久久久久久久| 国产精品国产精品国产专区不片| 91女神在线视频| 免费高清在线一区| 国产精品美女久久久久久| 欧美午夜精品电影| 国产一区二区精品在线观看| 亚洲女同ⅹxx女同tv| 欧美一区二视频| 91在线免费视频观看| 午夜激情综合网| 中文字幕在线一区二区三区| 欧美日韩一本到| 成人精品国产一区二区4080| 亚洲国产一二三| 国产精品美女久久久久久久久| 欧美性生活影院| va亚洲va日韩不卡在线观看| 日本不卡免费在线视频| 中文字幕视频一区| 精品国产一区二区亚洲人成毛片| 91小视频在线免费看| 麻豆91在线看| 亚洲国产欧美在线| 国产精品素人一区二区| 制服.丝袜.亚洲.另类.中文| 一本一本大道香蕉久在线精品| 国产精品综合久久| 日韩成人av影视| 亚洲视频免费观看| 国产日韩欧美高清| 欧美一卡二卡在线观看| 欧美亚洲国产一区二区三区va| 成人黄色软件下载| 美美哒免费高清在线观看视频一区二区 | 中文字幕在线不卡一区| 欧美本精品男人aⅴ天堂| 欧美日韩国产综合视频在线观看| av午夜一区麻豆| 国产99精品在线观看|