现在的位置: 首页 > 综合 > 正文

C语言编译

2014年12月05日 ⁄ 综合 ⁄ 共 1858字 ⁄ 字号 评论关闭

 

1.跳到本地变量

的定义处

 

gd

 

2.

跳到全局变量的定义处

 

   gD


 跳转到某个文件内   gf

 

3.

查询光标所在的词:

 

normal

模式下,用

*

#

可以在当前文件中查询光标所在的词,

*

表示从当前光标向后查,

#

表示向前查

 

insert

模式下,用

ctrl-p

或者

ctrl-n

可以实现自动补全,连续按可以循环补全为匹配的字符串,使用

ctrl-x ctrl-l

可以插入匹配的一整行

(:help ins-completion)

 

4.将下一行移动到当前行的末尾

normal

模式下,按

J

将下一行移动到当前行的末尾

 

 

5.跳转到某个

tag

Ctrl+],

再跳回来用


Ctrl+t
.

如果一次有可能有多个

tag

都匹配

(

例如

java

中的父子继承关系

)

则可以使用 

g]

 调出匹配列表,然后选择


r 替换当前字符;


8.    排版


==  排版当前行

=a{ 排版{}内的行

gg=G排版全文

g=12排版从当前行到以下12行


>3> 可以让光标下的三行右移一个缩进;

9.跳转:

跳到开关处的17行;

17gg 跳到第17行;





 

6.分隔窗口:




:split file.c




 

7.在窗口间切换




:ctrl + w




 

8.使用ctags



:ctags  *.c




为当前文件重头CTAGS标记




:tag 函数名




转到相应函数处




快捷键:CTRL + ] (光标放在相应的函数上),返回CTRL+ T










会话和VIMINFO的作用:

会话能保存很我信息,但是不包括标记,寄存器和命令历史记录。要用这些东西还得靠VIMINFO;


使用VIMINFO:

:wviminfo! ~/.vim/secret.viminfo    保存

:rviminfo! ~/.vim/secret.viminfo   再次启动会话时,载入这些配置

设置要保存的项目,格式:

:set viminfo=string

其中string指代你要保存的东西,语法是一个选项字符跟一个参数,每一对之间用逗号分开;

1.  ‘ 选项表示你要为多少文件保存标记信息,如下示例参数为1000

     :set viminfo='1000

 2. f选项表示是否保存全局的标记,以0 为参数 表示不保存,以1为参数表示保存

      :set viminfo=`1000, f1

  3. <选项表示要每个寄存器保存多少行

       :set viminfo='1000,f1,<500

      其它字符参考手册

 

使用会话:

:mksession vim.vim    保存保存会话

 :source  vim.vim               再次启用VIM时,加载会话




切换会话:




:wall                                     先保存




:mksession!  vim.vim        保存会话





:source   vim2.vim     加载新会话




设置会话选项:




:set sessionoptions += resize




 

自动补齐:





VIM, Insert
mode:
C-p
C-n

copy & cut

:n1,n2 co n3   将n1到n2行之间的内容拷贝到n3

:n1,n2 m n3    将n1到n2行之间的内容剪切到n3

 

  • 5dd 从当前行开始删除5行
  • 5yy 从当前行开始拷贝5行
  • 1,3d 删除1至3行
  • 1,3y 拷贝1至3行 (.代表当前行,$代表最后一行)

  d<motion>,y<motion>,c<motion>,v<motion>分别代表
删除/拷贝/修改/选择<motion>

  命令指定的范围,比如
  int main(void)
  {
  ......;
  }

  将光标放在{处,然后输入v%就可以把大括号中内容选定,然后按=就可以按照C语言格式缩排(:help
=可以看到=命令的描述),%命令的作用是跳到匹配处,比如括号之间,C的宏指令#if #else #endif之间。

  int some_ugly_modifier and some_ugly_name (void)
  如果光标放在第一个s上,想
删除到“(”为止,则输入dt(就可以了,t(的作用是跳到下一个
  "("前。

  dG可以从当前位置一直删除到文件末尾,因为G的作用是跳到文件最后一行。

 

Vim已
经映射了几个用于标签之间跳转的快捷键,我们可以使用这些快捷键在标签之间来回跳转。

 

Ctrl-] 跳转到当前光标所在的标签;

Ctrl-O 返回到跳转前的位置;

Ctrl-T 沿着经过的标签列表向回跳转,也可以在其前面输入一个数字,如N-Ctrl-T会向回跳转N步,相当于按了N下Ctrl-T;

 

:tags 显示所有经过的标签列表;

 







 


 

 

 

 

抱歉!评论已关闭.