Vim是Linux自带的编辑器,是Vi的高级版,刚开始使用我是一脸懵逼的,跟普通的编辑器完全不同,基本全靠键盘,写完之后也不知道怎么保存,特地花了点时间了解了一下,还是挺简单的。其中,主要包含三种模式,分别是普通模式,插入模式,命令行模式,每种模式都有各自的可进行的操作。

进入vim

vim是在终端上运行的,在进入时只需要输入 vi 就可以运行了。但是也有其他的自定义的方式打开vim,这些方式都是对具体的文件和打开后光标置于文件的位置做的自定义。以下是简单的总结

  • vi 直接进入
  • vi filename 打开或者新建文件,光标置于首行
  • vi +n filename 打开文件,光标置于n行首
  • vi + filename 打开文件,光标置于最后一行首
  • vi +/pattern filename 打开文件,光标置于第一个匹配处

模式切换

刚开始打开vim的时候是进入的普通模式,普通模式是可以进行查看和删除等操作,插入模式只能够插入字符,命令行模式能够进行查找,保存等操作。

普通模式

普通模式可以进行查看等操作

  • 方向键或者hjkl移动游标,w下一个单词开头,b前一个单词结尾,e当前单词结尾
  • gg 光标到文档第一行行首
  • G 光标到文档最后一行行首
  • nG 跳转至n行
  • $ 光标到本行尾
  • 0 光标到本行首
  • x 删除光标所在的字符
  • dd 删除本行
  • u 撤销操作
  • ZZ 保存并退出(shift+zz)
  • ZQ 不保存并退出
  • 快速查找:/向下查找字符串,?向上查找字符串,回车进入查找后,n继续查找,N反向查找。

命令行模式

主要是对文件进行一些保存,退出等操作。

  • :w 保存文件,但不退出
  • :w newfile 另存为
  • :wq 保存并退出
  • :q! 不保存强制退出
  • :q 未作修改的情况下直接退出
  • :e 打开新的文件
  • !命令 执行外部shell命令

vim设置

最后vim本身还有一些实用的设置,也可以了解一下,当然,这是在命令行模式下进行的,也是以冒号开头。

  • set nu 显示行号
  • :set autoindent 缩进,常用于程序的编写
  • :set noautoindent 取消缩进
  • :set number 在编辑文件时显示行号
  • :set nonumber 不显示行号
  • :set tabstop=value 设置显示制表符的空格字符个数
  • :set 显示设置的所有选项
  • :set all 显示所有可以设置的选项

基本大部分常用的vim操作都在这了,忘了的时候多回顾回顾,代码写的不管好坏,但是操作一定要酷炫。

VIM全总结的更多相关文章

  1. vim全选,全部复制,全部删除

    全选(高亮显示):按esc后,然后ggvG或者ggVG 全部复制:按esc后,然后ggyG 全部删除:按esc后,然后dG 解析: gg:是让光标移到首行,在vim才有效,vi中无效 v : 是进入V ...

  2. vim全选复制

    网上一堆答案全是ggyG,根本不行, 正确答案应该是 gg"*yG 或者 gg"*+yG 下面是在stack overflow 上找到的答案,亲测有效,在此记录下 stackove ...

  3. vscode + vim 全键盘操作高效搭配方案

    基础知识 vscode-vim vscode-vim是一款vim模拟器,它将vim的大部分功能都集成在了vscode中,你可以将它理解为一个嵌套在vscode中的vim. 由于该vim是被模拟的的非真 ...

  4. 【Linux学习三】VI/VIM全屏文本编辑器

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 一.打开关闭文件打开文件:vim /path/to/somefilev ...

  5. vim全选复制粘贴

    感谢来源:http://blog.sina.com.cn/s/blog_6e70abbd0100zbk9.html ggVG #gg: 光标跳转到首行,在vim才有效,vi中无效 #V 是进入Visu ...

  6. [转帖]Vim全键盘操作

    https://www.cnblogs.com/pzqu/p/11416436.html Vim脱离鼠标第一步 平时不可缺少的会用到vim,但是避免不了鼠标,事实上,省略鼠标是完全可以的,没有想像中那 ...

  7. Vim 全选命令

    ggVG稍微解释一下上面的命令gg 让光标移到首行,在vim才有效,vi中无效V   是进入Visual(可视)模式G  光标移到最后一行选中内容以后就可以其他的操作了,比如:d  删除选中内容y   ...

  8. 1.vim常用方法

    vim编辑器 ASCII   vi: vim:   全屏,模式化   vim模式: 编辑模式(命令模式) 输入模式 末行模式   模式转换: 编辑-->输入 i,a,o (o:在当前光标所在行的 ...

  9. vim使用札记

    最近开始用vim编辑器了,从最开始的配置到现在慢慢使用,我在这儿会贴出一些我的使用上遇到过的问题和如何解决的方案,留给自己和一些会用到的人看看 1.vim怎么使汇编语法高亮 开始不知道,然后把文件的后 ...

随机推荐

  1. Vue习题作业练习

    作业一: 用table表格标签渲染以上数据,表格第一列是学生总分排名,最后一列是学生总分 <!DOCTYPE html> <html lang="en"> ...

  2. SpringBoot项目 设置全局跨域

    package com.nf147.policy_project; import org.springframework.stereotype.Component; import javax.serv ...

  3. Win7 右键 新建图标消失的解决办法

    方法一: 把下面一段代码存在一个记事本上,再选择另存为1.cmd,最后运行! regsvr32 /u /s igfxpph.dll reg delete HKEY_CLASSES_ROOT\Direc ...

  4. zookeeper 客户端 zkCli 命令详解

    该文写的比较详细 https://blog.csdn.net/feixiang2039/article/details/79810102

  5. CodeFroces 758C - Unfair Poll

    题意: 老师点名,顺序是1 -- n -- 1 排为一个循环,每列为1 -- m的顺序, 问点到最多次数和最少次数的人的次数以及(x,y)被点的次数. 分析: 由于点名有循环,故可先判断出每一个循环每 ...

  6. Codeforces 838E Convex Countour

    题 OvO http://codeforces.com/contest/838/problem/E (IndiaHacks 2nd Elimination 2017 (unofficial, unra ...

  7. vue-cli3项目中引入jquery 以及如何引进bootstrap

    1.安装jquery npm install jquery --save 2.或则在package.json中指定版本号,然后运行npm install命令 "dependencies&qu ...

  8. php phpexcel 读取excel文件数据

    public function readExcel(){ $allPath = '/home/examine\video/list.xls'; \think\Loader::import('exten ...

  9. State Threads之Co-routine的调度

    1. 相关结构体 1.1 _st_epoll_data static struct _st_epolldata { _epoll_fd_data_t *fd_data; /* 调用 epoll_wai ...

  10. 读取天气信息,并通过QQ邮箱发送至指定邮箱

    from email.mime.text import MIMEText from email.header import Header from smtplib import SMTP_SSL im ...