zoukankan      html  css  js  c++  java
  • 轻松学习之Linux教程四 神器vi程序编辑器攻略

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

            文章链接:

             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合集



  • 相关阅读:
    TreeSelect组件:vmodel语法糖进行父子组件传值案例
    带 icon 的输入框:slot方式。slot="prefix"和slot="suffix"
    双向绑定vmodel与单向绑定vbind:value
    使用Set集合对List集合去重
    前端报错: error in ./src/assets/fonts/iconfont.svg?t=1523541245904,Module parse failed: Unexpected token (1:0),vue.config.js中引入chainWebpack后报错
    当主键不是id时,而是其他字段,那么该字段要加上@Id注解(除了表中指定主键,实体类中也要用@Id指定主键)
    java将文件转为base64字符串和将base64字符串转为文件
    父组件向子组件传递getList方法:provide/inject
    带卡片的input输入框
    C#中使用#if DEBUG
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/6940070.html
Copyright © 2011-2022 走看看