本系列文章由@超人爱因斯坦出品,转载请注明出处。  

        文章链接:

        
http://hpw123.net/a/Linux/Linuxjichu/2014/1026/93.html

         作者:超人爱因斯坦   个人站点:http://www.hpw123.net

        邮箱:424346976@qq.com

        CSDN:http://blog.csdn.net/u010283694

文本编辑器有非常多,比方图形模式的gedit、kwrite、OpenOffice,文本模式下的编辑器有vi、vim(vi的增强版本号)。vi和vim是我们在Linux中最经常使用的编辑器。vi或vim是Linux最主要的文本编辑工具,vi或vim尽管没有图形界面编辑器那样点鼠标的简单操作,但vi编辑器在系统管理server管理字符界面中,永远不是图形界面的编辑器能比的。

好了。让我们进入主题吧:

一.为何要学vi

  • 全部的UNIX Like系统都会内置vi文本编辑器。其它的文本编辑器则不一定会存在;
  • 非常多软件的编辑接口都会主动调用vi
  • vim具有程序编辑的能力,能够主动以字体颜色辨别语法的正确性,方便程序设计;
  • 程序简单。编辑数度相当快

二.vi的使用

基本上vi共分为3种模式,各自是一般模式。编辑模式与命令行模式

  • 一般模式

以vi打开一个文件就直接进入一般模式了(这是默认的模式),这个模式中,你能够使用上下左右按键来移动光标,你能够删除字符或删除整行。也能够复制,粘贴你的文件数据。

  • 编辑模式

在一般模式中能够进行删除,复制,粘贴等的操作。可是却无法编辑文件内容,要等到你按下“i。I,o,O,a。A,r,R”等不论什么一个字母之后才会进入编辑模式,通常在Linux中,按下这些按键时,在界面的左下方会出现INSERT或REPLACE的字样,此时才干够进行编辑。而假设要回到一般模式时。则必需要按下Esc这个按键就可以退出编辑模式。

  • 命令行模式

在一般模式其中。输入“: ? /”3个中的不论什么一个button。就能够将光标移动到最以下那一行,在这个模式其中。能够提供你查找数据的操作,而读取,保存。大量替换字符,离开vi,显示行号等的操作则是在此模式中完毕的。

按键说明

第一部份:一般模式可用的button说明,光标移动、复制粘贴、搜寻替换等

第二部份:一般模式切换到编辑模式可用按键说明

#p#分页标题#e#



第三部份:一般模式切换到指令列模式可用按键说明

三.vim的功能

块选择

呵呵,刚才提到的vi操作是行为单位的,那么怎样搞定的是一个块范围呢?



多文件编辑

额。vim里面能够同一时候打开几个文件一起编辑吗?答案当然是肯定的啦

使用vim [文件] [文件] 。。



多窗体功能

这个多窗体和多文件但是有差别的呢。自己细致想一下



vim经常使用命令示意图



四.其它vim使用注意事项

中文编码问题

大家应该遇到过乱码了吧。是不是快要疯了

在Linux下。vim的终端界面中你使用的是统一编码(utf8),因为编码不同,文件就会乱码了

1.你的Linux系统默认支持的语系数据:这与/etc/sysconfig/i18n有关

2.你的终端接口(bash)的语系:这个与LANG这个变量有关

3.你的文件原本的编码

4.打开终端机的软件,比如在GNOME以下的窗体界面

解决方法:

LANG=zh_CN.GB2312//详细看你文件编码
然后终端界面工具栏的"终端“->”设置字符编码“->”想要的编码“
ok,应该没问题了

配置自己的vim

vim配置好多好多的,很酷,网上有好多资料,能够配置一个适合自己的

想配置看这里哈哈

还能够看这里呢

 ——————————超人爱因斯坦于2014年10月26日更新

                                                                                                                           注:部分文字来自鸟哥的私房菜

ok,今天的内容大概就是这些。假设有什么写的不正确的。求大神指正,我们下篇文章见:)

呵呵。让我们轻松一下吧   轻松一刻2014合集



轻松学习之Linux教程四 神器vi程序编辑器攻略的更多相关文章

  1. 轻松学习之Linux教程二 一览纵山小:Linux操作系统具体解释

    本系列文章由@uid=hpw" style="padding:0px; margin:0px; color:rgb(255,0,0); text-decoration:none&q ...

  2. 轻松学习之Linux教程六 正則表達式具体解释

    本系列文章由@超人爱因斯坦出品.转载请注明出处. 作者:超人爱因斯坦    个人站点:http://www.hpw123.net          文章链接:http://hpw123.net/a/L ...

  3. CentOS学习笔记--vi程序编辑器

    vi程序编辑器 Linux里经常需要修改一些配置文件,这时就需要一个编辑器,几乎所有的Linux版本都提供了vi这个编辑器. 文件内容查阅cat命令 如果我们要查阅一个文件的内容时,该如何是好呢?这里 ...

  4. 10分钟 教你学会Linux/Unix下的vi文本编辑器

    10分钟 教你学会Linux/Unix下的vi文本编辑器 vi编辑器是Unix/Linux系统管理员必须学会使用的编辑器.看了不少关于vi的资料,终于得到这个总结.不敢独享,和你们共享. 首先,记住v ...

  5. linux终端文本编辑神器vi的使用

    vi —— 终端中的编辑器 目标 vi 简介 打开和新建文件 三种工作模式 常用命令 分屏命令 常用命令速查图 01. vi 简介 1.1 学习 vi 的目的 在工作中,要对 服务器 上的文件进行 简 ...

  6. 小白学Linux(五)--VI/VIM编辑器

    我们操作文件,终究离不开编辑文件,对文件内容的编辑,Linux系统下,我们通常使用VI/VIM来编辑文件.VI是每个Linux都会自带的文本编辑器,VIM是VI的增强版,可能有些发行版本没有自带,可以 ...

  7. 初识Linux(五)--VI/VIM编辑器

    我们操作文件,终究离不开编辑文件,对文件内容的编辑,Linux系统下,我们通常使用VI/VIM来编辑文件.VI是每个Linux都会自带的文本编辑器,VIM是VI的增强版,可能有些发行版本没有自带,可以 ...

  8. 教你学会Linux/Unix下的vi文本编辑器

    vi编辑器是Unix/Linux系统管理员必须学会使用的编辑器.看了不少关于vi的资料,终于得到这个总结. 首先,记住vi编辑器的两个模式:1.命令模式 2.编辑模式. 在一个UNIX/Linux的s ...

  9. 极客时间-左耳听风-程序员攻略-Linux系统、内存和网络

    程序员练级攻略:Linux系统.内存和网络 Linux 系统相关 Red Hat Enterprise Linux 文档 . Linux Insides ,GitHub 上的一个开源电子书,其中讲述了 ...

随机推荐

  1. mariadb数据库的链接查询和表格设计

    链接查询 练习准备: --创建学生表 create table students ( id int unsigned not null auto_increment primary key, name ...

  2. axios简单封装

    写在最前面 新手前端刚刚接触vue,感觉真的好用.项目中需要使用axios,然后学习了一下.借鉴网上一些大佬的经验,现在分享一下axios的简单封装,如果有什么错误的地方,请大家指出. axios安装 ...

  3. 洛谷 P1026 统计单词个数 (分组+子串预处理)(分组型dp再次总结)

    一看完这道题就知道是划分型dp 有两个点要注意 (1)怎么预处理子串. 表示以i为开头,结尾在j之前(含),有没有子串,有就1,没有就0 (2)dp的过程 这种分成k组最优的题目已经高度模板化了,我总 ...

  4. Qt之表单布局(QFormLayout)

    简述 QFormLayout管理输入型控件和关联的标签组成的那些Form表单. QFormLayout是一个方便的布局类,其中的控件以两列的形式被布局在表单中.左列包括标签,右列包含输入控件,例如:Q ...

  5. ListCtrl 控件数据动态改动

    參考文章:ListCtrl 控件数据动态改动 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDIzNjU1MA==/font/5a6L5L2T/f ...

  6. 在AutoLyout中动态获得cell的高度 和 autoLyout中的小随笔

    autoLyout中动态获得cell的高度和autoLyout小总结 一.在autoLyout中通过动态的方式来获取cell 的方式呢? 1.       在布局时候要有对于cell中contentV ...

  7. ubuntu 非长期支持版升级系统版本号(ssh登录情况适用)

    (1)当前系统为非长期支持版.而且已被废弃,仅仅能逐版本号升级 以当前系统版本号为11.10为例 改动source.list更新源为通用old源,由于原来的源已经不可用 deb http://old- ...

  8. NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(一)

     Precondition: hadoop 2.7.1 Nutch 2.3 hbase 1.0.1.1 / hbase 0.98.13 solr 4.8.1 Linux version 3.16. ...

  9. [Poj 1015] Jury Compromise 解题报告 (完全背包)

    题目链接:http://poj.org/problem?id=1015 题目: 题解: 我们考虑设计DP状态(因为这很显然是一个完全背包问题不是吗?) dp[j][k]表示在外层循环到i时,选了j个人 ...

  10. Leaflet学习笔记(一)

    一.简介 Leaflet是一个主要适用于移动端交互地图的领先的开源javascript库.虽然js库只有38KB左右,但是却能满足大部分开发者的所有功能需求. Leaflet拥有着简单,高效和实用的设 ...