linux学习心得之vim/Cvim篇

linux 下,vim 时一种最常见的编辑器,很多linux的发行版就自带了。我的是CentOS 6.3.

基本上Vim共分为3种模式,分别是一般模式,编辑模式和命令行模式,这三种模式的作用分别如下简述:

  1. 一般模式:默认模式。打开vim直接进入的是一般模式,在这个模式下,可以进行的操作有:移动光标,复制,粘贴,删除。
  2. 编辑模式:编辑文件内容,在界面左下方会出现INSERT的字样。
  3. 命令行模式:查找、读取、保存、替换字符、显示行号、离开vim等等操作。

一:Vim 下的常用命令:

j 向下   k 向上   l 向右   h 向左

:w                               (小写)保存文件

​:wq                             (小写)保存并退出vim

:w 文件名name            将文件另存为文件名name

:ZZ                             (大写)保存文件并退出,相当于:wq

:wq!                           (小写)文件所有者强制保存只读文件,如果不是文件所有者进行此操作,不能成功

:q!                              退出不保存文件

复制(yank)
yy或 Y                     复制光标所在整行
y^                         复制到光标所在行行首,不包括光标位置字符
y$                         复制到光标所在行行尾,包括光标位置字符
yw                         复制一个单词,光标必须在单词首部
yG                         复制到文件尾
y1G                        复制到文件首
nyy                        复制光标所在行开始的n行

粘贴
p                   (小写)粘贴到光标后
P                (大写)粘贴到光标前
删除
x                       (小写)删除光标前一个字符
X                        (大写)删除光标后一个字符
dd                      (小写)删除光标所在整行
dw                       (小写)删除光标所在处一个单词
dG                       删除光标所在整行到文件尾
dgg                        删除光标所在整行到文件首
D                   (大写)删除到行尾,包含光标处的字符
d0                     删除到行首,不包含光标处的字符

:n1,n2d                编辑模式下,删除n1-n2行

撤销

u               (小写)无限次保存前撤销(大概500多次)

ctrl+r             redo重做

查找

/string          相当于find,  从光标处开始向下开始查找字符串string
/查找模式下按n(小写)查找下一个,按N(大写)查找上一个
?string        从光标处开始向上开始查找字符从string
?查找模式下按n(小写)查找上一个,按N(大写)查找下一个

:set nu(mber)                显示行号

:n                        指定移动到第n行

多窗口功能:

:r file       读入文件 file 内容,并插在当前行后

:new      新建一栏空白窗口

:split     将当前文件分两栏显示

<C-]>   在 :help 中,遇到超连接可以按 Ctrl+] 跳转

<C-T>   在 :help 中,按 Ctrl+T 往回跳转

块选择: ctrl+v

二:Vim环境设置

在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名 为:“.vimrc”

打开.vimrc,添加以下语句来使得语法高亮显示:  syntax on

设置自动缩进 :即每行的缩进值与上一行相等;使用 noautoindent 取消设置:

set autoindent

设置使用 C/C++ 语言的自动缩进方式:   set cindent

filetype plugin on是使用插件语句

三:c-support.vim插件

推荐c-support.vim这款插件,可以用来编译c/c++,很不错哦!~

c-support.vim下载地址

http://www.vim.org/scripts/script.php?script_id=213

安装很简单

Copy the zip archive  cvim.zip to $HOME/.vim/ (Linux/Unix) or $HOME/vimfiles (Windows) and run   unzip cvim.zip

安装到$HOME/.vim/

可以使用命令查看$HOME:

cd ~/.vim
unzip cvim.zip

在/etc/vim/vimrc中添加 filetype plugin on 即可使用该插件。

它的热键说明:

http://lug.fh-swf.de/vim/vim-c/c-hotkeys.pdf

\if    插入一般函数

\im    插入主函数

\cfu    插入函数头,即函数说明

\cfr    插入一个frame comment,可以用来写变量说明

\rc    保存并编译

\rr   运行

\nr    可以在~/.vim/c-support/codesnippets中编写一些预编译代码或者代码块,通过此命令使用

 
 
 
标签: c-supportvim

linux学习心得之vim/Cvim篇的更多相关文章

  1. Linux学习心得之 Linux下命令行Android开发环境的搭建

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...

  2. Linux学习心得之 Linux下ant安装与使用

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下ant安装与使用 1. 前言2. ant安装3. 简单的a ...

  3. Linux学习心得之 双显卡、中文输入法及svn初步使用

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 双显卡.中文输入法及svn初步使用 1.前言 2.Linux双显卡解决 ...

  4. linux学习心得之目录树开端与/etc(图文)

    linux学习心得之目录树开端与/etc(图文) linux中“一切皆文件”,学习linux一年了,在学习过程中对目录树的一点心得,分享给大家,有不对的地方敬请斧正. 不多说了,先上图: 根目录: / ...

  5. linux学习:【第3篇】远程连接及软件安装

    狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! linux学习:[第3篇]远程连接及软件安装 远程连接 xshell , xftp软件官网 : ...

  6. linux学习:【第2篇】常用命令

    狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! linux学习:[第2篇]常用命令 基本命令 //打开终端: CentOS:在任何地方,右键-- ...

  7. linux学习:【第1篇】初识Linux及安装

    狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! linux学习:[第1篇]初识Linux及安装 写在前面 学习之初看了一段文章,很有感触,所以也 ...

  8. Linux学习心得之 LVM管理与Linux系统安装

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 LVM管理与Linux系统安装 1.前言 2.LVM 简介与术语 3.LVM 使用 4.Li ...

  9. Linux学习心得之 linux命令

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 前言 本篇博客是对 每日一linux命令(http://www.cnblogs.com/pe ...

随机推荐

  1. 【转】Appium基于安卓的各种FindElement的控件定位方法实践

    原文地址:http://blog.csdn.net/zhubaitian/article/details/39754041#t11 AppiumDriver的各种findElement方法的尝试,尝试 ...

  2. WebBrowser控件的简单应用2

    原文:WebBrowser控件的简单应用2 第一个简单应用里面讲述的是如何模拟调用当前网页的元素的事件或者赋值/取值.这次的应用讲述的是1:如何处理弹出新页面的事件(总是在我的浏览器里面现实新页面)2 ...

  3. IIS7伪静态化URL Rewrite模块

    原文 IIS7伪静态化URL Rewrite模块 在Win7安装了IIS7.5之后,搭建一些网站或者博客,但是IIS7.5本身没有URL Rewrite功能,也就是无法实现网址的伪静态化. 从网上找了 ...

  4. GCD &amp;&amp; Run Loops学习笔记

    1.GCD 使用不同优先级的若干个队列乍听起来非常直接,只是,我们强烈建议,在绝大多数情况下使用默认的优先级队列就能够了.假设运行的任务须要訪问一些共享的资源,那么在不同优先级的队列中调度这些任务非常 ...

  5. 深入Objective-C的动态特性 Runtime

    Objective-C具有相当多的动态特性,基本的,也是经常被提到和用到的有动态类型(Dynamic typing),动态绑定(Dynamic binding)和动态加载(Dynamic loadin ...

  6. EasyUI基础知识Draggable(拖累)

    学习前easyui基于解析器,装载机.对他们来说,入门阶段,我们只需要在一个简单的理解.第一阶段,不宜过深后,.接着,根据easyui订购的文件正在研究安排官方网站Draggable插入. Dragg ...

  7. 多线程之线程池Executor应用

    JDK1.5之后,提供了自带的线程池,以便我们更好的处理线程并发问题. Executor类给我提供了多个线程池创建的方式: 创建固定的线程池 Executors.newFixedThreadPool( ...

  8. awk的实施例

    1.使用split功能 name.url内容: 上海    http://trip.elong.com/shanghai/jingdian elong   destination 云南    http ...

  9. 原生态纯JavaScript 100大技巧大收集---你值得拥有

    1.原生JavaScript实现字符串长度截取 function cutstr(str, len) { var temp; var icount = 0; var patrn = /[^\x00-\x ...

  10. UiAutomator源码分析之获取控件信息

    根据上一篇文章<UiAutomator源码分析之注入事件>开始时提到的计划,这一篇文章我们要分析的是第二点: 如何获取控件信息 我们在测试脚本中初始化一个UiObject的时候通常是像以下 ...