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. 转载Worktile 技术架构概要

    Worktile 技术架构概要 其实早就该写这篇博客了,一直说忙于工作没有时间,其实时间挤挤总会有的,可能就是因为懒吧!从2013年11月一直拖到现在,今天就简单谈谈 Worktile 的技术架构吧 ...

  2. android屏蔽home键的实现

    Android中,网上很多屏蔽Home键都智能在4.0以下运行,在4.0以及以上运行直接崩溃. 需要这样更改(来源:http://androidmaster.iteye.com/): @Overrid ...

  3. vb.net窗口继承(房重建知识汇总)

    在项目的开发,我们经常会遇到特殊的相界面似窗户,然后,我们将能够使用继承的窗口.透过窗户下面简单的例子来实现继承. 1.创建父窗口Form1 2.把须要重写的事件改为Overridable,将priv ...

  4. 通讯录C++console application

    #include<iostream> #include<fstream> #include<string> #include<cstring> #inc ...

  5. AngularJS之使用服务封装

    AngularJS之使用服务封装可复用代码   创建服务组件 在AngularJS中创建一个服务组件很简单,只需要定义一个具有$get方法的构造函数, 然后使用模块的provider方法进行登记: / ...

  6. 使用flex和bison实现的sql引擎解析

    因为老师要求,近期在做oceanbase存储过程的实现,在oceanbase 0.4曾经是不支持存储过程的.实现的主要步骤主要包含 1.语法解析 2.词法解析 3.详细运行语法树的步骤 如今先来说说语 ...

  7. MySQL引擎介绍ISAM,MyISAM,HEAP,InnoDB

    MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL. 在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HEAP.另外两种类型IN ...

  8. 编程算法 - 二叉树的深度 代码(C)

    二叉树的深度 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 输入一棵二叉树的根节点, 求该树的深度. 依次选择最深的左右子树, 然后递归加1. ...

  9. 进击的Android注入术《二》

    继续 在<一>里,我把基本思路描写叙述了一遍,接下为我们先从注入開始入手. 注入 分类 我们平时所说的代码注入,主要静态和动态两种方式 静态注入,针对是可运行文件,比方平时我们改动ELF, ...

  10. JSON解析之Gson

    1.Gson简介 Gson是一个将Java对象转为JSON表示的开源类库,由Google提供,并且也可以讲JSON字符串转为对应的Java对象.虽然有一些其他的开源项目也支持将Java对象转为JSON ...