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. zsh的安装与配置

    参考: http://cnbin.github.io/blog/2015/06/01/mac-zsh-an-zhuang-he-shi-yong/ http://www.cnblogs.com/ios ...

  2. easyui dataBox 增加一天,减少一天

    <table> <tr> <td><a href="javascript:void(0)" class="easyui-link ...

  3. SSAS系列——【08】多维数据(程序展现Cube)

    原文:SSAS系列--[08]多维数据(程序展现Cube) 1.引用DLL? 按照之前安装的MS SQLServer的步骤安装完成后,发现在新建的项目中“Add Reference”时居然找不到Mic ...

  4. DataTable相关操作,筛选,取前N条数据,获取指定列数据

    DataTable相关操作,筛选,取前N条数据,获取指定列数据2013-03-12 14:50 by Miracle520, 2667 阅读, 0 评论, 收藏, 编辑 1 #region DataT ...

  5. Premiere Pro CC问题集,不断更新

    1.Premiere Pro CC不好用? 是的.原因如下: 1.1 Adobe公司不注重用户体验,不注重工作流程,导致这款软件的用户体验很差,设计也很烂.对比Adobe公司当年用户体验最好的软件 F ...

  6. C# 以嵌入到窗体的方式打开外部exe

    using System; using System.Collections.Generic; using System.Text; using System.Diagnostics; using S ...

  7. 在ubuntu下把php的网页调试功能打开

    我这儿的环境是 Ubuntu 14.04  + Lighttpd + PHP5.5 默认情况下php的网页调试功能是不打开的,当PHP解析到一个错误的语法时会直接输出为空白. 我在网上找一许多文章,说 ...

  8. HDU2093--考试排名

    考试排名 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submissi ...

  9. 【SSRS】入门篇(一) -- 创建SSRS项目

    原文:[SSRS]入门篇(一) -- 创建SSRS项目 在本篇中,您将学习如何在 SQL Server Data Tools (SSDT) 中创建报表服务器项目. 报表服务器项目用于创建在报表服务器中 ...

  10. leetcode[89] Merge Sorted Array

    合并两个有序数组,放在A中,A中的空间足够. Given two sorted integer arrays A and B, merge B into A as one sorted array. ...