VIM基础130命令
http://www.xprogrammer.com/909.html
基础
:e filename | Open filename for edition |
:w | Save file |
:q | Exit Vim |
:q! | Quit without saving |
:x | Write file (if changes has been made) and exit |
:sav filename | Saves file as filename |
. | Repeats the last change made in normal mode |
5. | Repeats 5 times the last change made in normal mode |
在文件中移动
k or Up Arrow | move the cursor up one line |
j or Down Arrow | move the cursor down one line |
e | move the cursor to the end of the word |
b | move the cursor to the begining of the word |
0 | move the cursor to the begining of the line |
G | move the cursor to the end of the line |
gg | move the cursor to the begining of the file |
L | move the cursor to the end of the file |
:59 | move cursor to line 59. Replace 59 by the desired line number. |
20| | move cursor to column 20. |
% | Move cursor to matching parenthesis |
[[ | Jump to function start |
[{ | Jump to block start |
剪切、复制和粘贴
y | Copy the selected text to clipboard |
p | Paste clipboard contents |
dd | Cut current line |
yy | Copy current line |
y$ | Copy to end of line |
D | Cut to end of line |
搜索
/word | Search word from top to bottom |
?word | Search word from bottom to top |
* | Search the word under cursor |
/\cstring | Search STRING or string, case insensitive |
/jo[ha]n | Search john or joan |
/\< the | Search the, theatre or then |
/the\> | Search the or breathe |
/\< the\> | Search the |
/\< ¦.\> | Search all words of 4 letters |
/\/ | Search fred but not alfred or frederick |
/fred\|joe | Search fred or joe |
/\<\d\d\d\d\> | Search exactly 4 digits |
/^\n\{3} | Find 3 empty lines |
:bufdo /searchstr/ | Search in all open files |
bufdo %s/something/somethingelse/g | Search something in all the open buffers and replace it withsomethingelse |
替换
:%s/old/new/g | Replace all occurences of old by new in file |
:%s/onward/forward/gi | Replace onward by forward, case unsensitive |
:%s/old/new/gc | Replace all occurences with confirmation |
:2,35s/old/new/g | Replace all occurences between lines 2 and 35 |
:5,$s/old/new/g | Replace all occurences from line 5 to EOF |
:%s/^/hello/g | Replace the begining of each line by hello |
:%s/$/Harry/g | Replace the end of each line by Harry |
:%s/onward/forward/gi | Replace onward by forward, case unsensitive |
:%s/ *$//g | Delete all white spaces |
:g/string/d | Delete all lines containing string |
:v/string/d | Delete all lines containing which didn’t contain string |
:s/Bill/Steve/ | Replace the first occurence of Bill by Steve in current line |
:s/Bill/Steve/g | Replace Bill by Steve in current line |
:%s/Bill/Steve/g | Replace Bill by Steve in all the file |
:%s/^M//g | Delete DOS carriage returns (^M) |
:%s/\r/\r/g | Transform DOS carriage returns in returns |
:%s#<[^>]\+>##g | Delete HTML tags but keeps text |
:%s/^\(.*\)\n\1$/\1/ | Delete lines which appears twice |
Ctrl+a | Increment number under the cursor |
Ctrl+x | Decrement number under cursor |
ggVGg? | Change text to Rot13 |
大小写
Vu | Lowercase line |
VU | Uppercase line |
g~~ | Invert case |
vEU | Switch word to uppercase |
vE~ | Modify word case |
ggguG | Set all text to lowercase |
gggUG | Set all text to uppercase |
:set ignorecase | Ignore case in searches |
:set smartcase | Ignore case in searches excepted if an uppercase letter is used |
:%s/\<./\u&/g | Sets first letter of each word to uppercase |
:%s/\<./\l&/g | Sets first letter of each word to lowercase |
:%s/.*/\u& | Sets first letter of each line to uppercase |
:%s/.*/\l& | Sets first letter of each line to lowercase |
读写文件
:1,10 w outfile | Saves lines 1 to 10 in outfile |
:1,10 w >> outfile | Appends lines 1 to 10 to outfile |
:r infile | Insert the content of infile |
:23r infile | Insert the content of infile under line 23 |
文件浏览器
:e . | Open integrated file explorer |
:Sex | Split window and open integrated file explorer |
:Sex! | Same as :Sex but split window vertically |
:browse e | Graphical file explorer |
:ls | List buffers |
:cd .. | Move to parent directory |
:args | List files |
:args *.php | Open file list |
:grep expression *.php | Returns a list of .php files contening expression |
gf | Open file name under cursor |
和 Unix 系统交互
:!pwd | Execute the pwd unix command, then returns to Vi |
!!pwd | Execute the pwd unix command and insert output in file |
:sh | Temporary returns to Unix |
$exit | Retourns to Vi |
对齐
:%!fmt | Align all lines |
!}fmt | Align all lines at the current position |
5!!fmt | Align the next 5 lines |
Tabs/Windows
:tabnew | Creates a new tab |
gt | Show next tab |
:tabfirst | Show first tab |
:tablast | Show last tab |
:tabm n(position) | Rearrange tabs |
:tabdo %s/foo/bar/g | Execute a command in all tabs |
:tab ball | Puts all open files in tabs |
:new abc.txt | Edit abc.txt in new window |
分屏显示
:e filename | Edit filename in current window |
:split filename | Split the window and open filename |
ctrl-w up arrow | Puts cursor in top window |
ctrl-w ctrl-w | Puts cursor in next window |
ctrl-w_ | Maximize current window vertically |
ctrl-w| | Maximize current window horizontally |
ctrl-w= | Gives the same size to all windows |
10 ctrl-w+ | Add 10 lines to current window |
:vsplit file | Split window vertically |
:sview file | Same as :split in readonly mode |
:hide | Close current window |
:nly | Close all windows, excepted current |
:b 2 | Open #2 in this window |
自动完成
Ctrl+n Ctrl+p (in insert mode) | Complete word |
Ctrl+x Ctrl+l | Complete line |
:set dictionary=dict | Define dict as a dictionnary |
Ctrl+x Ctrl+k | Complete with dictionnary |
Marks
m {a-z} | Marks current position as {a-z} |
‘ {a-z} | Move to position {a-z} |
” | Move to previous position |
缩写
:ab mail mail@provider.org | Define mail as abbreviation of mail@provider.org |
文本缩进
:set autoindent | Turn on auto-indent |
:set smartindent | Turn on intelligent auto-indent |
:set shiftwidth=4 | Defines 4 spaces as indent size |
ctrl-t, ctrl-d | Indent/un-indent in insert mode |
>> | Indent |
<< | Un-indent |
=% | Indent the code between parenthesis |
1GVG= | Indent the whole file |
语法高亮
:syntax on | Turn on syntax highlighting |
:syntax off | Turn off syntax highlighting |
:set syntax=perl | Force syntax highlighting |
VIM基础130命令相关推荐
- Vim实战指南(一):基础编辑命令
原文地址:Vim实战指南(一):基础编辑命令 Introduction Vim和Emacs作为两大神级文本编辑器各有利弊,本实战指南不加讨论的介绍Vim. 本实战指南不是教你按照Vim的键位图来编辑文 ...
- vim基础保存退出命令
vim基础保存退出命令 vim xxx.file 输入文件内容: ins 按键,切换插入和增加 按 ESC,左下角就可以进行输入 :w 保存但不退出 :wq 保存并退出 :q 退出 :q! 强制退出, ...
- Linux配置最基础的命令
Linux配置最基础的命令 Linux设置最基础的命令 切换用户 查看当前主机的完整名称 临时设置主机名 永久设置主机名 查看当前系统版本信息 查看当前内核版本 临时修改网卡IP 永久修改网卡IP 重 ...
- ubuntu vim保存退出命令_vim极为详细的教程(一)基本操作
vim的总体介绍 我以前是坚定的vim党,但后来用了一次vscode,便再也出不来了.vscode虽然功能强大,但本质上任然是个编译器,它强大的功能来自于对各种经典工具的灵活调用,vscode开发C+ ...
- linux vim tag,Vim基础知识之ctags 及 Taglist 插件
Vim基础知识之ctags 及 Taglist 插件 1. 我的界面 2. ctags exuberant ctags是一般Linux系统上缺省的ctags 我的ctags版本:Exuberant C ...
- Linux基础、命令及相关软件安装
文章目录 一.Linux的简介 1.Linux的概述 2.Linux的分类 3 . 文件系统结构 二.Linux的安装 1.虚拟机的安装 2.CentOS的安装 三.Linux的基本命令 1.目录切换 ...
- Vim 基础操作命令
Vim 操作基础 零.备注及说明 一.什么是 Vim? 二.Vim 模式介绍 三.Vim 快速入门 1. 三种常用模式切换 2. 进入Vim 3. 进入插入模式 4. 保存文件 5. 退出文件 6. ...
- Linux基础及命令大全(入门级教学基础命令)
Linux基础及命令大全(入门级教学基础命令) 一.什么是shell,Linux的格式 shell就是Linux系统中运行的一种程序,也是用户和内核之间的翻译官,Bash是Linux系统中默认使用的s ...
- 【从入门到进阶】vim基础配置+ 常用插件(NERDTree, cscope, rainbow等)
文章目录 前言 一.vim基础配置 二.常用插件 2.1 Vundle 2.1.1 Vundle安装 2.1.2 Vundle配置 2.1.3 安装插件 2.1.4 Vundle常用指令 2.2 NE ...
最新文章
- 将来自另一个分支的所有更改合并为单个提交
- [C++]Call virtual member function in constructor or destructor
- Boghe连接FreeSwitch的配置
- script到底应该放在哪里
- “25岁该有多少存款? ” 数据分析带你揭露中国打工人的工资真相
- 跟KingDZ学HTML5之九 HTML5新的 Input 种类
- vue脚手架项目中引入jquery
- Java架构师技术进阶路线图详解
- html字数统计,html页面字数统计
- 本科生如何快速发表期刊论文,如何选择普刊?
- json几种不同解析方式
- vue+websocket+nodejs实现聊天室 -一对多、一对一聊天
- 《哈佛通识教育红皮书》 哈佛委员会著
- 妙味课堂:JavaScript初级--第11课:字符串、查找高亮显示
- oracle php 教程 pdf,AJAX+PHP+Oracle数据库Web开发 ((美)Lee Barney) 中文PDF扫描版 37.5M
- linux 查询文件大小大于1g_必备linux命令有哪些?你了解多少
- 普元EOS中, 子系统和portal不在同一个域中,使用jquery的jsonp来解决portal跨域访问
- 一、JSX语法的基本使用
- 已开源!Flutter 流畅度优化组件 keframe
- 用计算机模拟股票大盘,股票模拟盘操作与实盘不同之处有哪些