命令模式

  • 保存退出:ZZ 若果文件不存在,退出时不会创建新的文件
  • 代码格式化:gg=G
  • 光标移动
    • 上下左右:hjkl
    • 光标移动到行首:0
    • 光标移动到行尾:$
    • 光标移动到文件开头:gg
    • 光标移动到文件末尾:G
    • 光标跳转到某行:行号+G
    • 行号回车:当前行向下跳转行号数行
  • 删除命令
    • 删除字符:x:删除光标后面的字符;X:删除光标前面的字符
    • 删除单词(删除光标后面到单词尾):dw
    • 删除某行光标前字符串:d0
    • 删除某行光标后字符串:d$
    • 删除/剪切行:dd
    • 删除/剪切多行:数字+dd
  • 撤销反撤销
    • 撤销:u
    • 反撤销:ctrl+r
  • 复制粘贴
    • 复制:yy
    • 多行复制:数字+yy
    • 粘贴(光标下一行):p
  • 查找
    • /+查找内容 :当前行向下查找:n向下跳转,N向上跳转
    • ?+查找内容 :全局查找:n向下跳转,N向上跳转
    • 光标放到指定字符串+#:指定字符串查找,不需要输入
  • 替换
    • 光标盖住的字符+r:输入想要改写的字符
  • 查看man内容
    • 光标放到指定字符串:章节号+K

可视模式:命令模式+v

命令模式复制粘贴剪切等,只能行处理。进入可视模式,可进行任意范围内内容的复制粘贴,命令模式按v进入可视模式,移动光标,可选择文本操作范围,也就是可操作范围

  • 复制:y
  • 删除/剪切:d
  • 粘贴:p光标后、P光标前

命令模式进入编辑模式:

a:在光标后插入
A:在行末添加文本
i:当前字符之前的插入
I:行首插入
o:实现在光标所在行的上方插入新行
O:是现在光标坐在行的下方插入新行


末行模式:

  • 保存退出

    • 保存退出:wq/x
    • 退出不保存:q!
    • 保存不退出:w
    • 退出:q
  • 替换
    • 替换光标所在字符串:s/旧的字符串/新的字符串
    • 替换光标所在字符串所在行所有字符串:s/旧的字符串/新的字符串/g
    • 替换一个范围:起始行号,结尾行号s/旧的字符串/新的字符串/g行数范围内所有的旧字符替换为新的字符
    • 全局替换:%s/旧的字符串/新的/g
    • 所有替换命令后加c,添加提示
  • 分屏
    • 水平分屏:sp
    • 垂直分屏:vsp
    • 屏幕切换:ctrl+ww
    • 退出光标所在屏:q
    • 退出所有屏:qall
    • 保存所有屏:wall
    • 保存退出所有屏:wqall
    • 垂直分屏打开不同的文件:vsp+文件名
    • 打开多个文件并水平分屏显示:vim -o +文件集合
    • 打开多个文件并垂直分屏显示:vim -O +文件集合
    • 分屏显示打开其它文件但并不确定是否有没有:!ls
    • 查看当前路径:!pwd
    • 查看文件详尽信息:!ls -l

vim 配置文件

  • 用户级别:当前用户可用

    • ~/.vimrc
  • 系统级别:所用用户打开都可用
    • etc/vim/vimrc

基本配置

显示行号
set nu"启动时隐去援助提示
set shortmess=atI"语法高亮
syntax on"使用vim的键盘模式
"set nocompatible"不需要备份
set nobackup"没有保存或文件只读时弹出确认
set confirm"鼠标可用
set mouse=a"tab缩进
set tabstop=4
set shiftwidth=4
set expandtab
set smarttab"文件自动检测外部更改
set autoread"c文件自动缩进
set cindent"自动对齐
set autoindent"智能缩进
set smartindent"高亮查找匹配
set hlsearch"背景色
set background=dark"显示匹配
set showmatch"显示标尺,就是在右下角显示光标位置
set ruler"去除vi的一致性
set nocompatible"允许折叠
set foldenable
"""""""""""""""""设置折叠"""""""""""""""""""""
"
"根据语法折叠
set fdm=syntax"手动折叠
"set fdm=manual"设置键盘映射,通过空格设置折叠
nnoremap <space> @=((foldclosed(line('.')<0)?'zc':'zo'))<CR>
""""""""""""""""""""""""""""""""""""""""""""""
"不要闪烁
set novisualbell"启动显示状态行
set laststatus=2"浅色显示当前行
autocmd InsertLeave * se nocul"用浅色高亮当前行
autocmd InsertEnter * se cul"显示输入的命令
set showcmd"被分割窗口之间显示空白
set fillchars=vert:/set fillchars=stl:/set fillchars=stlnc:/

vim关键配置

vim中配置常常把tab键为四个空格,对于我们编写程序方便很多,但是在编写makefile时,就会出现问题,tab键会被空格替换掉,导致我们执行make时,识别不到tab,系统会报错,怎样避免这个问题呢?需要在vim配置文件中添加下面这条命令即可

 autocmd FileType make set noexpandtab

vim 基本够用的操作命令相关推荐

  1. 神级编辑器 Vim 使用-插件篇

    在这篇中, 会列举各种实用的插件, 包括他们的安装, 配置及使用方法 注意: 不是本部分的所有插件都是你需要装的, 如果盲目安装插件只会导致你 vim 功能混乱, 速度底下, 所以适时整理真正需要的插 ...

  2. Linux 下 vi/vim 文本编辑器超详细使用指南(转载)

    转载于 https://blog.csdn.net/kingmax54212008/article/details/54142633 Linux下的编辑器最常用的就是vim或者vi文本编辑.vi 和v ...

  3. linux vim编辑文本是 m,Linux编辑器之VIM

    VIM是Linux功能最为强大的编辑器,它是由Unix下传统的文本编辑器VI发展而来的,VI M- Vi IMproved,VI的增强版,有彩色和高亮等特性,VIM和VI的区别可参看vi_diff.t ...

  4. linux vim命令编辑文件

    注:Vim 是从 vi 发展出来的一个文本编辑器.宏.跳转.代码补全.编译及错误跳转等方便纯文本编辑和编程的功能特别丰富,也支持使用不少的脚本语言进行功能定制和扩充,可以说是程序开发者的一项很好用的工 ...

  5. Linux文本编辑器——vim编译器的全面讲解

    前言 这是我听老师讲课做的笔记,考试要看的. 这是视频地址 作者:RodmaChen 关注我的csdn博客,更多Linux笔记知识还在更新 vim编译器 一 概述 二 vim 编译器常用的操作命令 2 ...

  6. 《Linux命令行与shell脚本大全》笔记

    初识Linux Shell 什么是Linux Linux可划分为以下四部分: Linux内核 GNU工具 图形化桌面环境 应用软件 深入探究Linux内核 内核主要负责以下四种功能: 系统内存管理 软 ...

  7. 《Linux命令行与shell脚本编程大全》(第三版)读书笔记

    第一部分 Linux命令行 第三章.基本的bash shell命令 bash手册 man 命令 例子: man cat 空格翻页.回车下一行.左右键看右侧(左侧)内容.q退出 info info in ...

  8. linux命令与编程笔记

    本文章内容来自与"的Linux的命令行与外壳脚本编程大全.第3版" 目录 Linux命令. 1 进程相关. 5 Ps命令. 5 TOP命令. 6 Kill命令. 6 Type(查看 ...

  9. HIT-大数据分析Lab1:数据预处理-实验记录

    本文是哈工大大数据分析实验1的完整实验记录,包含环境配置,相关知识介绍以及实验解析.希望对后来人有帮助(新手小白没什么头绪,走一步查一步对应的博客o(╥﹏╥)o),博客链接之间会穿插一些我自己的理解, ...

最新文章

  1. 文本框自动提示_Excel办公小技巧,使用艺术字与文本框,就是那么的简单
  2. 首发 | 旷视14篇CVPR 2019论文,都有哪些亮点?
  3. 字节终面:CPU 是如何读写内存的?
  4. sdh管理单元指针_C语言学习|指针的介绍
  5. react native 报错:cannot read property 'length' of undefined
  6. 颠覆认知!关于c²= b² + a²,你不知道的N个事实
  7. es集群节点数和分片数关系_ES数据插入和查询流程是怎么样的?
  8. .git目录文件过大
  9. 介绍一个小工具 Linqer
  10. com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field FileSize
  11. 一个Bug你改了两天,真有这么难吗?
  12. 基于JQUERY的WEB在线流程图设计器GOOFLOW 0.5版
  13. x10I pC套件 官方网站下载
  14. WebSocket 实现聊天室业务
  15. 抖音网上如何赚钱变现,有哪些具体的方法
  16. java操作zip压缩文件加密码和解密工具类
  17. 个人的工作总结(和工作规划)
  18. MATLAB字母识别
  19. esp8266_arduino源码
  20. 002 fidder中 Customize Rules打不开却无法下载问题

热门文章

  1. stm32芯片休眠模式_STM32睡眠模式低功耗(停止模式)
  2. 开源:MIS金质打印通原理及实现 Step by step (1)
  3. Web前端-html页面-01(锚点、表单、个人简历)
  4. Android开发需要学什么,技术实现
  5. Linux-京东字节百度提前批,一面二面都被问到了awk——实例篇(4)ip地址相关
  6. 简述3D角色动画的应用及三大类型
  7. 【AVS】AVS2编码器开源啦:xAVS2
  8. C#图片压缩,等比例缩小
  9. addon游戏_我的世界多人addon地图
  10. CAD - 直线、构造线、修建工具