以下均为个人在编程时对vim编辑器的一些心得,大神请指点,新手可以看过来

1、多文本编辑

  vim -On/-on filename_1 … filename_n

  如上所示,在要编辑的文件名前加上“-On/-on”,其中‘O’表示左右分屏,‘o’表示上下分屏,‘n’则表示文件的个数,‘filename_1~n’ 表示这n个文件的文件名。其中文本切换使用如下命令

  Ctrl + w + w

  在命令行打开文件使用

  :vsp filename

2、文本设置

  刚开始使用vi/vim编辑器时,不知道怎么配置vim,你可以使用如下配置:

  :set nu          # 设置行号,取消使用 set nonu

  :set ai           # 设置自动换行对齐

  :set tabstop=4    # 设置tab大小为4(64位系统默认为8)

  :set mouse=a     #可以使用鼠标定位,翻阅文件(需要复制内容,建议暂时取消鼠标功能 :set mouse-=a)

  (这样设置是一次性的,重新打开文本需要再次设置,建议配置/root 下vimrc文件)

3、文本多行注释

  Ctrl + v  →  ↑↓(上下移动选中你要注释的行数)  →  I(输入大写,然后填写注释,如 ‘#’,‘//’ 等)  → 按 两次ESC (成功)

  上面操作也可命令行实现,如下:

  :%s/^/#/g    (表示所有内容注释)

  :n1,n2s/^/#/g (表示从n1行到n2行注释)

  取消注释: Ctrl + v  →  d

4、删除内容

  dd        # 当前位置删除单行

  ndd/dnd     # 当前位置删除n行

  di +“ ([{"' ”    # 删除‘()’ ‘[]’ ‘{}’ ‘""’ “''”中的内容

  dt + “任意字符”     # 删除当前位置到任意字符前的内容

  x         # 命令模式下,使用x删除当前光标的字符,也可以使用nx删除包括光标及之后共n个字符

  s         # 替换内容,或者使用ns(原理同x)

5、标记

  gd  →  n      # gd为选中当前单词,n下一次出现的地方

  Shift + */#    # ‘*’为跳转到当前位置单词出现的下一个地方,‘#’为上一个地方

6、其它常用的命令

  y      # 复制(nyy/yny),和删除同理

  Ctrl + y/e   # 单个复制上/下 一行对应的字符

  w      # 光标移动到下一个单词的首位 (以下可以在操作之前加上n,表示移动n个位置)

  e      # 光标移动到下一个单词的首位

  k      # 上移

  j      # 下移

  h      # 左移

  l      # 右移

7、就当是娱乐

  在命令行输入如下命令:

  :%!xxd    # 将文件转换为十六进制文件,取消命令为 :%!xxd -r

  :TOhtml    # 生成 *.html 文件

8、ctags的使用

  这个是最值得一说的,ctags操作简单,也很灵活,可以大大提高开发效率。

  这里介绍yum源安装,源码可以自行百度,很简单的。

    yum -y install ctags

  安装完成,可以在源码目录下使用如下操作:

  ctags -R     # 递归检索当前目录及子目录下文件(一般使用此操作)

  ctags filename*  # 对指定文件进行检索

  命令执行完,会在当前目录下产生tags文件,说明成功了

  然后你就可以使用如下操作,在代码里各种飞了!!!!!!

  Ctrl + ]

  Ctrl + t/o

  :ts + 函数名

相信新手操作过一遍,会更容易上手vim编程,,,写得有点仓促,事例图片后期补上...

Linux下vim操作的一些使用技巧的更多相关文章

  1. Linux下Vim常用操作

    linux下Vim的常用操作 linux ​ 首先\(ctrl+Alt+t\)打开小框框 ​ \(./\):相当于手机上的\(home\)键 ​ \(ls\):当前文件夹的东东 ​ \(mkdir\) ...

  2. 20145234黄斐《信息安全系统设计基础》第八周(Linux下vim相关命令)

    Linux下vim相关命令 在编辑程序时经常使用vim,所以记住一些常用的指令还是很有必要的 文件命令 vim file 打开单个文件vim file vim file1 file2 file3 .. ...

  3. Linux下vim文件未正常退出,修复文件

    Linux下vim文件未正常退出,会产生一个 .文件名.swp的文件 ls -al  ,rm   删掉.swp文件 之后就可以正常使用文件了

  4. linux 下vim文件乱码 cat文件正常处理方法

    linux 下vim文件乱码 cat文件正常处理方法 服务器支持中文字符集,cat和其他查看文件命令现在正常,vim还是出现了中文乱码问题, 1.查看文件编码格式 vim 文件 :set fileen ...

  5. 【Linux学习四】Linux下Vim命令操作

    1.Vim介绍 Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性. 第一阶段通过vimtutor的学习,加强vim的熟练度 1.1光标移动 hjkl左 ...

  6. Linux下Vim工具常用命令

    原文地址: http://www.cnblogs.com/lizhenghn/p/3675011.html 在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用.作为一个新手,我也是刚刚 ...

  7. linux下vim编辑器使用

    VIM - Vi IMproved: vim是vi编辑器的升级版,是linux下标准的编辑器,具有程序编写能力,可以根据字体颜色辨别语法的正确性,方便程序的设计. 使用: # vim [OPTION] ...

  8. linux 下svn操作

    * 前言: linux下的svn相比于gitlab,配置要求第一点:gitlab需要4G的内存,如果使用swap+内存的替代方案,理论上是可行的,但是实际操作中各种坑:     所以,由于条件限制,使 ...

  9. Nginx入门篇-基础知识与linux下安装操作

    我们要深刻理解学习NG的原理与安装方法,要切合实际结合业务需求,应用场景进行灵活使用. 一.Nginx知识简述Nginx是一个高性能的HTTP服务器和反向代理服务器,也是一个 IMAP/POP3/SM ...

随机推荐

  1. stm32 输入捕获学习(二)

    (本文参考STM32  开发指南 V1.3   -- ALIENTEK 战舰 STM32 开发板库函数教程 ) 1. 实验设计 我们用 TIM5 的通道 1(PA0)来做输入捕获,捕获 PA0 上高电 ...

  2. Entity Framework Many to Many Relation Mapping(Entity Framework多对多关系映射)

    通常我们在做数据库设计时都会有两张表是多对多关系的时候,在数据库做多对多关系时候我们通常通过中间关联表来处理,那我们现在在EF中是如何处理的呢? 假设我们有如下关系,用户(User)包含多个角色(Ro ...

  3. 让GIt忽略SSL证书错误的方法

    当你通过HTTPS访问Git远程仓库,如果服务器的SSL证书未经过第三方机构签署,那么Git就会报错.这是十分合理的设计,毕竟未知的没有签署过的证书意味着很大安全风险.但是,如果你正好在架设Git服务 ...

  4. .NET 后台动态添加GridView列

    BoundField bfColumn1 = new BoundField(); bfColumn1.DataField = "zbcompanyname"; bfColumn1. ...

  5. [Java][Servlet] Failed to destroy end point associated with ProtocolHandler ["http-nio-8080"]

    Background: Servlet version 3.1(3.0之后就有了@WebServlet注解) Error 严重: Failed to destroy end point associa ...

  6. Azure 媒体服务换新锁,更安全更方便,新钥匙请收好!

    不知道有多少人已经把家里的门锁换成了数字化的指纹锁?沿用了几百上千年的传统门锁,在技术的帮助下无疑变得更方便,不用带钥匙,还能远程控制和操作,最重要的是,终于不用担心「衣果(luǒ)着」出门扔垃圾,风 ...

  7. Spring配置文件详细分析

    XML Schema命名空间作用: 1.避免命名冲突,像Java中的package一样 2.将不同作用的标签分门别类(像Spring中的tx命名空间针对事务类的标签,context命名空间针对组件的标 ...

  8. Sundy_Android开发深入浅出和高级开发视频教程

    Sundy_Android开发深入浅出和高级开发视频教程 放于播音员的网盘中又名:android零基础到高级软件开发工程师培训课程全集(400多讲) 1.课程介绍 2.java重点难点 3.版本控制- ...

  9. ICCV 2017 Best Paper Awards

    [ICCV 2017 Best Paper Awards]今年的ICCV不久前公布了Best Paper得主,來自Facebook AI Research的Mask R-CNN[1],與RetineN ...

  10. jrtplib源码分析 第一篇 jthread的编译与分析

    第一篇 jthread的编译与分析 jrtplib代码依赖库jthread,因此先从jthread开始jrtplib的学习.首先从以下链接下载jthread的源代码http://research.ed ...