1、常用命令

  /xxx     查找xxx
n 执行上一次查找 0 到行首
w 光标往后移动一个词
b 光标往前移动一个词 x 删除当前一个字符
dw 删除一个单词
D 删除到行尾
dd 删除整行 V 选中整行
y 将选中部分的内容复制到剪切板
p 在光标下方粘贴剪切板中的内容 u 撤销上一次修改 numG 移动光标到指定的行(num)。(比如 10G 就是到第 10 行)
gg 到文件开始
G 到文件末尾 :wq 保存退出
:q! 不保存退出,一旦修改错误,就放弃修改

2、状态模式

  1)编辑模式:

    可以进行正常的编辑操作
左下方显示 -- INSERT -- "在命令模式下输入 i 能够进入编辑模式" 2)命令模式: 可以输入操作命令
左下方什么也不显示 "在编辑模式下按 esc 能够返回到命令模式"

3、基本设置

  更改vi关键字颜色

    系统用户目录下输入  

      $ vi .vimrc

    输入以下内容保存

      syntax on                   "自动语法高亮
set tabstop=4 "设定tab长度为4
set softtabstop=4 "按退格键一次删掉4个空格
set ruler "打开状态栏标尺 set number "显示行号 set nocompatible "关闭 vi 兼容模式
colorscheme evening "设定配色方案
set shiftwidth=4 "设置《 和 》命令移动时的宽度为4
set nobackup "覆盖文件时不备份
set autochdir "自动切换当前目录为当前文件所在的目录
set backupcopy=yes "设置备份时的行为为覆盖 filetype plugin indent on "开启插件

4、文本编辑

  1)打开文件:

    vi 文件名  

  2)退出文件:

    按住 shift 连按两次 z 键( :q )退出 vim 编辑器

  3)保存文件:

    在命令模式下输入’:w’回车

  4)光标移动:

    命令模式下

      h   左移
j 下移
k 上移
l 右移
w 下一个单词的词首
$ 行尾
^ 行首
gg 文件第一行的头部
G (shift + g) 文件最后一行的头部 5)文件编辑: 命令模式下 yy 拷贝光标所在的行
nyy 从当前光标开始拷贝n行
p 将拷贝的内容粘贴在下一行
dd 删除(剪切)光标所在的行
ndd 从当前光标开始删除n行
u 撤销上一次指令
o 当前行下一行插入一行,并进入编辑模式
O (shift + o) 当前行上一行插入一行,并进入编辑模式
a 将光标移动到当前位置的下一个字符,并进入编辑模式
x 删除光标位置字符

5、编译运行

  1)编译器环境监测

    终端下输入
$ gcc 若显示如下表示机器上装有 gcc 编译环境
clang: error: no input files 2)编译链接 $ gcc -o hellotest hello.c 将 hello.c 文件编译生成目标文件 hellotest

$ gcc hello.c -o hellotest

$ clang -fobjc-arc hello.c -o hellotest 3)运行 $ ./hellotest 运行文件 hellotest

Mac Vim 编辑器的更多相关文章

  1. iOS - Mac Vim 编辑器

    Mac Vim 编辑器 1)vi 文本编辑器 1.打开一个文件:vi 文件名 按住 shift 连按两次 z 键( :q )退出 vi 编辑器 2.vi 两种模式:第一是命令模式(按 esc 进入命令 ...

  2. mac vim编辑器常用操作快捷方式

    0 行首$ (shift+6)行尾gg 文首G(shift+g) 文尾A(Shift+a)文尾,并编辑ctrl+f 向上翻页ctrl+b 向下翻页ctrl+u 向上翻半页ctrl+d 向下翻半页数字+ ...

  3. vim编辑器详解

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率. vi是“visual interface”的 ...

  4. mac vim shell配置

    一 : vim 配置 1 目录/usr/share/vim/vimrc 2 Python 自动缩进 http://blog.csdn.net/ikerpeng/article/details/1866 ...

  5. 【CNMP系列】VIM编辑器详解

    缘起 大学的时候做过Linux内核驱动程序研发,之前写C语言就是用的Vim编辑器,当年的Vim还不如今天之强大,当时的插件也没有现在这么多,只是觉得这个编辑器能满足我想要的所有,查看Linux内核代码 ...

  6. 零基础学习Vim编辑器

    **********************************************************************0.这篇教程的简介:Vim是Linux/Unix下的经典编辑 ...

  7. Vi编辑器和Vim编辑器的区别及联系

    Vi和Vim它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面,vi使用于文本编辑,但是vim更适用于coding.vim的这些优势主要体现在 ...

  8. Linux学习之十三-vi和vim编辑器及其快捷键

    vi和vim编辑器及其快捷键 1.vi与vim区别 它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面. vim的这些优势主要体现在以下几个方 ...

  9. linux vi/vim 编辑器学习总结

    linux vi/vim 编辑器学习总结 很多时候我们开发人员不可避免的会涉及到项目部署,这个时候使用的就不是我们所熟知的 Windows 和 Mac OS 操作系统了,而是类 Unix 系统.项目部 ...

随机推荐

  1. OpenGL ES 3.0之Texturing纹理详解(二)

    Texture Filtering and Mipmapping 纹理过滤与多级纹理 前面我们已经讲了单个2D图像的2D纹理的介绍,这篇文章主要讲解多级纹理.纹理坐标是用于生成一个2D索引,当放大和缩 ...

  2. Mockito各场景使用介绍

    场景1:某三方接口所有方法都需要Mock 实现方式1-配置configrution bean 实现方式2-在application context中配置mock bean 场景2:某三方接口部分方法m ...

  3. Android ListView 和 ***Adapter 从本地/网络获取歌曲列表

    本文内容 环境 项目结构 测试数据 演示 1:SimpleAdapter 演示 2:BaseAdapter 演示 3:CustomLazyList 演示 4:CustomLazyCompleteLis ...

  4. Windows 环境 cygwin 安装 SSH

    本文内容 安装环境 安装 cygwin 安装 SSH 服务 启动 sshd 服务 SSH 免密码登录 验证 SSH 是否已安装成功 验证 SSH 是否可以免密码登录本机 安装环境 Windows 20 ...

  5. 将/home空间从新挂载到/var/lib/docker

    [lxl@node1 ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 49G 34G 15G ...

  6. 在cmd中为命令设置别名以及启动cmd时自动执行bat

    http://www.cnblogs.com/fstang/archive/2013/04/06/3002006.html 简短步骤: 1.关闭所有在运行的CMD窗口 2.创建文件C:\cmd-ali ...

  7. NotesDocument 作为函数返回值的问题

    如下代码 Set recipientDoc = getDocInNAB(“search string”) If Not recipientDoc Is Nothing Then ‘In debug I ...

  8. 纪念品分组(NOIP2007)

    纪念品分组(NOIP2007)[题目描述] 元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作. 为使得参加晚会的同学所获得的纪念品价值相对均衡,他要把 购来的纪念品根据价格进行分组,但每组最多只 ...

  9. Linux开机启动时执行脚本的方法

    方法 1 – 使用 rc.local利用 /etc/ 中的 rc.local 文件在启动时执行脚本与命令.我们在文件中加上一行来执行脚本,这样每次启动系统时,都会执行该脚本.不过我们首先需要为 /et ...

  10. MessageListActivity has leaked IntentReceiver

    1. 在MessagelistActivity中出现has leaked IntentReceiver的异常.异常日志如下. 07-15 08:09:53.211: E/ActivityThread( ...