vim文本编辑器:
    可以直接在终端下采用纯键盘操作的一款文本编辑器,号称编辑器之神,可以二次升级、可以扩展
    基础用法:
        1、进入vim:
            输入 vim file.c 文件存在则打开,否则新建并打开
        2、输入i:
            进入编辑模式,编写代码
        3、保存退出:
            按Esc键,输入ZZ保存并退出
   
    vim的三大模式:
        正常模式:(打开文件时的默认模式)
            一般用于阅读文件,或者用于快捷键对文本快速修改
        编辑模式:
            一般用于输入内容、编辑文件
        行底模式:
            一般用于对vim的临时配置、或者执行一些高级操作
   
    模式之间的切换:
        正常  输入i ->  插入
        插入  按Esc ->  正常
        正常  输入: ->  行底
        行底  按Esc ->  正常
   
    正常模式下的常用操作:
        光标移动:
            h左 j下 k上 l右
            gg      光标跳转到第一行
            G       光标跳转到最后一行
            n加回车  光标向下跳转n行
            n-      光标向上跳转n行
            nG      直接跳转到第n行
            vim file.c +n   从第n行进入文件
        删除操作:
            dd  删除光标所在的一行代码
            ndd 删除n行
            x    删除一个字符
            nx   删除n个字符
            dw/de 删除一个连续的字符串(是否删空格)
            d^  从当前光标删除到行首
            d$  从当前光标删除到行尾
            dgg 从当前光标删除到第一行
            dG  从当前光标删除到最后一行
        复制代码:
            yy  复制一行代码
            nyy 复制n行代码
            p   粘贴到当前光标的下一行
            P   粘贴到当前光标的上方
        移动代码:
            删除的内容还存储在粘贴板上,使用p\P可以粘贴出来,从而达到移动代码的效果
            xp  交换两个字符
        替换代码:
            r   替换光标所在的一个字符
            cw  替换一个连续字符串
            R   进入替换模式
                (insert键切换替换和插入模式)
        撤销操作:
            u   撤销上一次操作
            Ctrl+r  取消上次的撤销操作
   
    进入插入模式的方式:
        i   在当前光标前面进入插入模式
        I   光标跳转到当前行首,进入插入模式
        a   在当前光标后面进入插入模式
        A   光标跳转到当前行尾,进入插入模式
        o   在当前行的下面插入一行空白行,进入插入模式
        O   在当前行的上面插入一行空白行,进入插入模式
    插入模式下的操作:
        Ctrl+p/n  自动补全,变量名\函数名\宏
        Ctrl+i     相当于Tab键
        Ctrl+j     相当于回车键
        Ctrl+c     相当于Esc键
        vim自定义功能:
        Ctrl+z     保存并退出
        Ctrl+x     保存并编译并运行
        Ctrl+p(正常) 自动添加头文件和main函数
   
    行底模式下的操作:
        :w  写入
        :q  退出
        :q! 强制退出
        :wq 保存退出
        :x  保存退出
        :X  加密码  
            :set key=(空格) 删除密码
            注意:必须:wq 才能生效
        :!cmd   在vim中执行cmd系统命令 !ls
        :/key   查找关键字key,n下一个,N上一个
        :%s/old/new 把old关键词替换为new
        :set nu     显示行号
        :set nonu   取消行号
        :>n    n行代码向右缩进一次
        :<n    n行代码向左缩进一次
        注意:在行底模式下对vim进行配置只能是临时有效,关闭后会失效,如果想长期有效需要对vim的配置文件(~/.vimrc)进行设置
   
    如何配置vim:
        1、vim ~/.vimrc 打开配置文件
        2、写完后,回到正常模式,ZZ退出
        3、下次打开vim就生效了
   
    学习使用vim的建议:
    1、大概两周的适应时间
    2、一招鲜吃遍天
    3、教程vimtutor

Linux & 标准C语言学习 <DAY2>的更多相关文章

  1. Unix和Linux下C语言学习指南

    转自:http://www.linuxdiyf.com/viewarticle.php?id=174074 Unix和Linux下C语言学习指南 引言 尽管 C 语言问世已近 30 年,但它的魅力仍未 ...

  2. linux 下C语言学习路线

    UNIX/Linux下C语言的学习路线.一.工具篇“公欲善其事,必先利其器”.编程是一门实践性很强的工作,在你以后的学习或工作中,你将常常会与以下工具打交道, 下面列出学习C语言编程常常用到的软件和工 ...

  3. UNIX/Linux下C语言的学习路线

    一.工具篇 “公欲善其事,必先利其器”.编程是一门实践性很强的工作,在你以后的学习或工作中,你将常常会与以下工具打交道, 下面列出学习C语言编程常常用到的软件和工具. 1.操作系统    在UNIX或 ...

  4. C语言学习008:标准错误

    在上一节中的数据文件中(C语言学习007:重定向标准输入和输出),如果文件中的数据包含非法数据,如何让程序显示一条错误的提示消息呢?就需要用到标准错误 #include <stdio.h> ...

  5. Linux下C语言编程基础学习记录

    VIM的基本使用  LINUX下C语言编程 用gcc命令编译运行C语言文件 预处理阶段:将*.c文件转化为*.i预处理过的C程序. 编译阶段:将*.i文件编译为汇编代码*.s文件. 汇编阶段:将*.s ...

  6. 实验四 Linux系统C语言开发环境学习

    项目 内容 这个作业属于哪个课程 Linux系统与应用 这个作业的要求在哪里 作业要求链接 学号-姓名 17041428-朱槐健 作业学习目标 1.Linux系统下C语言开发环境搭建 2.学习Linu ...

  7. 【C语言学习】《C Primer Plus》第1章 概览

    学习总结 1.C语言于1972年由贝尔实验室的Dennis Ritchie在与Ken Thompson一起设计UNIX操作系统的时候开发的.的的设计构想来源于Ken Thompson的B语言.Anyw ...

  8. LINUX下C语言编程基础

    实验二 Linux下C语言编程基础 一.实验目的 1. 熟悉Linux系统下的开发环境 2. 熟悉vi的基本操作 3. 熟悉gcc编译器的基本原理 4. 熟练使用gcc编译器的常用选项 5 .熟练使用 ...

  9. 郝斌老师C语言学习笔记(一)

    在给变量分配内存时,很可能这段内存存在以前其他程序使用留下的值.当使用VC编译器,若编译器发现没有给变量赋值而使用,就会返回一个以“85”开头的很大的数字(此时该段内存中为一个垃圾数,为了避免出现较常 ...

  10. 【转】朱兆祺教你如何攻破C语言学习、笔试与机试的难点(连载)

    原文网址:http://bbs.elecfans.com/jishu_354666_1_1.html 再过1个月又是一年应届毕业生应聘的高峰期了,为了方便应届毕业生应聘,笔者将大学四年C语言知识及去年 ...

随机推荐

  1. CSS3-animation实现走马灯效果

    动画animation 1.先定义动画: @keyframes 动画名称( from{} to{} ) 或者 @keyframes 动画名称( 0%{} 50%{} 100%{} ) 百分号指的是动画 ...

  2. select from 多表和inner join的区别

    其实两者是一样的,inner join 只是为了区分left join和right join整出来的,本质还是逐行比较

  3. [2009年NOIP普及组] 分数线划定

    世博会志愿者的选拔工作正在A市如火如荼的进行.为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根据计划录取人数的150%划定,即如果计划录取m ...

  4. JAVA第六七八次大作业

         21201411-李英涵            前言:这几次的作业较为简单,主要思路就是利用正则表达式来过滤掉不需要的信息.  题量设置较为合理,比之前的多边形好做一些,应该是老师为了捞起来 ...

  5. Windows+svn +Jenkins+发布NetCore/VUE项目

    1. NetCore环境下载,注意是下载SDK,不是Runtime:https://dotnet.microsoft.com/download/dotnet-core?utm_source=getdo ...

  6. c++ 在项目中创建DLL,并调用

    创建DLL分为两种方法,先介绍第一种 一.创建DLL (1) // dll.h #pragma once //dll.h #ifndef DLL_H_ #define DLL_H_ void prin ...

  7. ICMP-ping报错类型

    ICMP数据包的包头,两个重要字段Type和Code,如图所示 ICMP消息类型和编码类型 回显请求包,正常为80 回显回复包,正常为00 其余均为报错类型. 超时:对方主机不在线.屏蔽等 传输失败: ...

  8. react修改静态文件根目录

    .env(项目根目录环境变量文件) PUBLIC_URL:http://cdn.com/

  9. laravel5.5 数据查询记录

    laravel5.5版本数据查询 基于 prettus/l5-repository 插件 首先安装好 prettus/l5-repository插件 配置相关参数 1 根据条件查询数据总数 publi ...

  10. 联想lxh-ekb-10ya键盘拆机

    今天清理想清理一下键盘,键盘很多年了,没找到拆机教程,注意,如果没有配套螺丝可用拆手机的小螺丝刀,太次的螺丝刀容易弄坏螺丝 1.先上型号 2.第一步肯定是拆螺丝,要注意的是除了明确能看到的螺丝外,标签 ...