https://download.csdn.net/download/qccz123456/10567716

vim三种模式:命令模式、插入模式、底行模式。使用ESC、i、:切换模式。

vim [路径/]目标文件名:若存在则打开,不存在则新建并打开。

基本步骤:1. vim hello.c    2. 键入i    3. 编辑    4. 键入[ESC]    5. 键入:wq保存退出

命令模式:用于复制、粘贴、删除、插入、撤销、移动等命令

移动:  h、j、k、l--移动左、下、上、右光标(j比较像↓)

数字0--到本行行头                     $--到本行行尾

^--到本行第一个非空格字符     g_--带本行最后非空格字符

gg--到文件第一行                       G--到文件最后一行(注意是大写)

数字nG--到第n行(冒号:数字n--也可以到指定n行)

w--到下一个单词开头                 e--到下一个单词结尾

W--到下一个空格前                    E--到下一个空格后

%--匹配括号移动(包括()、[ ]、{ },需要先移动到某个括号上)

*/#--移动到与当前光标所在单词相匹配的下一个/上一个单词

插入:  i--在光标前插入文本                a--在光标后插入文本

o--在当前行后插入新行           O--在当前行前插入新行(大写)

删除:  x--删除当前光标所在字符

dd--删除当前光标所在行,删除的内容在剪切板中

[n]dd--删除当前光标所在行开始的n行

复制:  yy--复制当前光标所在行

[n]yy--n为数字,复制当前光标开始的n行

粘贴:  p--粘贴剪切板到光标所在行

搜索:  /name<enter>--查找光标之后的名为“name”的字符串,后按n,字符间跳转

撤销:  u--撤销(注意是小写)                       Ctrl+r--回退

替代:  r--替代当前光标处的字符                     cw--替代从光标处所在位置后到一个单词结尾的字符

:%s/foo/bar/g  将文中所有foo替换成bar

其他:gU--单词变大写gu--单词变小写

剪切==删除+粘贴

底行模式:

:w 保存(后跟文件名,可文件另存为)

:q 退出vi(系统会提示保存修改)

:q! 强行退出(对修改不做保存)

:wq 保存后退出

:set number 显示行号   :set nonumber 取消行号

:!<系统命令>     执行一个系统命令并显示结果,按<enter>返回

:!sh        切换到命令行,按Ctrl+d返回vim

:help <command>  显示vim相关命令帮助

:e <path/file>打开一个文件      :bn和:bp上下文件之间切换(:n到下一个文件)

更好更快更强

数字n<command>:重复command命令数字n次,3dd、2p

.(小数点):重复上一次命令

v:可视化操作(输入命令前先输入v)

块操作:Ctrl+v,移动光标选择对象,大写的 I,<command>,如#或//,esc两次,生效

自动缩进:Ctrl+v,移动光标选择行,=

左右缩进:Ctrl+v,移动光标选择行,</>

多行注释:Ctrl+v,选择多行,大写的 I,输入#,esc两次

多行取消注释:Ctrl+v,选择多行需要删除的部分,d

自动提示:Ctrl+n

设置tab缩进为4个空格:vim /home/hostname/.vimrc

set ts=4
set expand tab
set smart indent
set tabstop=4
set shiftwidth=4
set softtabstop=4

在vim内打开新的文件输入  :e  myFile.c

分屏显示:    上下分  :split    简写  :sp      左右分  :vsplit  简写  :vsp

Ctrl+ww——依次向后切换到下一个窗格中

vim简明教程--半小时从入门到精通的更多相关文章

  1. Vim简明教程【CoolShell】

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progress ...

  2. Vim简明教程【CoolShell】(转)

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progress ...

  3. 转: vim简明教程

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progress ...

  4. Vim 简明教程【转载】

    简明 Vim 练级攻略 第一级 – 存活 安装 vim 启动 vim 什么也别干!请先阅读 当你安装好一个编辑器后,你一定会想在其中输入点什么东西,然后看看这个编辑器是什么样子.但vim不是这样的,请 ...

  5. Vim简明教程【CoolShell】(转)

    m的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progressiv ...

  6. vim 简明教程(转自飘过的小牛)

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progress ...

  7. vim简明教程

    在shell中新建一个文件 # vim a.txt vim有三种模式:一般模式.插入模式.底行模式 三种工作模式 1.命令模式 移动光标 hjkl yy 复制 nyy 从光标向下复制n行 0 移动光标 ...

  8. linux学习之——vim简明教程

    摘自  http://blog.csdn.net/niushuai666/article/details/7275406 ——————————正文开始—————————— 你想以最快的速度学习人类史上 ...

  9. vim简明教程(附快速记忆方法)

    vim分为四种模式: 普通模式(normal mode) 插入模式(insert mode) 可视模式(visual mode) 命令模式(excute mode) 下面整理了常用的快捷键和记忆方法( ...

随机推荐

  1. log4j日志配置文件

    log4j.properties: ### 设置### log4j.rootLogger = debug,stdout,D,E ### 输出信息到控制抬 ### log4j.appender.stdo ...

  2. SQL学习(八)日期处理

    不同数据库中,针对日期处理的函数不同 Oracle中常用日期函数 (1.sysdate: 获取当前系统时间 如: select sysdate() ----返回当前时间,包括年月日 时分秒 (2.to ...

  3. Gradle DSL method not found: 'compile()'

    问题描述: 今天在导入第三方库的时候报错:Gradle DSL method not found: 'compile()' 通过网上查询发现是自己导包路径错误:应该导入app下面的build.grad ...

  4. Spark3.0 preview预览版尝试GPU调用(本地模式不支持GPU)

    Spark3.0 preview预览版可以下载使用,地址:https://archive.apache.org/dist/spark/spark-3.0.0-preview/,pom.xml也可以进行 ...

  5. Linux crontab 每5秒钟执行一次 shell 脚本 的方法

    Linux crontab 每5秒钟执行一次 shell 脚本 的方法 由于 Linux 的 crontab 的定时命令格式如下: minute hour day-of-month month-of- ...

  6. HBase 参考信息

    Apache HBase Region Splitting and Merging  https://blog.cloudera.com/apache-hbase-region-splitting-a ...

  7. 记:倍福(CP2611 Control Panel)了解

    型号:CP2611 Control Panel Multitouch 11 为啥选型?嗯!因为不了解,了解了,作为只运行.net客户端窗体程序,谁会选用他,不是说他不好,反而相反,他是很优秀的嵌入式集 ...

  8. 【HANA系列】SAP HANA LEFT/RIGHT字符串截取

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA LEFT/RI ...

  9. Java生成二维码连接

    本文使用的是Goodge的zxing 添加maven依赖 <dependency> <groupId>com.google.zxing</groupId> < ...

  10. 再谈Java数据结构—分析底层实现与应用注意事项

    在回顾js数据结构,写<再谈js对象数据结构底层实现原理-object array map set>系列的时候,在来整理下java的数据结构. java把内存分两种:一种是栈内存,另一种是 ...