[问题]Vim在普通模式中如何断行

Vim、Emacs配置和使用
回复
头像
FFFrog
帖子: 621
注册时间: 2006-05-12 23:28
来自: 江西乐平
送出感谢: 0
接收感谢: 1 次
联系:

[问题]Vim在普通模式中如何断行

#1

帖子 FFFrog » 2008-05-01 18:01

普通模式中,用 Shift - J 可以将当前行和下一行合并成一行。但是在浏览代码的时候,怎么做才能在光标处插入一个换行符,实现断行呢?不是非得要进入插入模式输入回车吧?
头像
Strange
帖子: 1823
注册时间: 2006-05-19 9:54
来自: Shanghai
送出感谢: 2 次
接收感谢: 10 次

#2

帖子 Strange » 2008-05-01 18:55

貌似没办法
ニンニク入れますか?
x60 with gentoo
头像
muzuiget
帖子: 1097
注册时间: 2007-12-31 14:57
送出感谢: 0
接收感谢: 1 次

#3

帖子 muzuiget » 2008-05-01 19:27

代码: 全选

:nmap <A-j> i<CR><Esc>k$

然后按ALT+j(小写)
poet
帖子: 2841
注册时间: 2006-09-11 22:47
送出感谢: 0
接收感谢: 4 次

Re: [问题]Vim在普通模式中如何断行

#4

帖子 poet » 2008-05-01 21:39

FFFrog 写了:普通模式中,用 Shift - J 可以将当前行和下一行合并成一行。但是在浏览代码的时候,怎么做才能在光标处插入一个换行符,实现断行呢?不是非得要进入插入模式输入回车吧?


直接实现你说的问题:
在.vimrc中定义下列宏
nnoremap \j i<cr><esc>
然后按 \j 可以断行

实际上一般不需要这么做,如果对C语言来说,平时定义一套好的 .indent.pro 文件放在 家 目录,以后可以用 indent 程序方便的进行全文排版:

ggVG!indent

这个就是全文排版,实际上对于一个函数可以进行v选择,然后 !indent 排版。
头像
FFFrog
帖子: 621
注册时间: 2006-05-12 23:28
来自: 江西乐平
送出感谢: 0
接收感谢: 1 次
联系:

#5

帖子 FFFrog » 2008-05-02 9:24

谢谢各位!看来只能用键盘映射来实现了。

PS:我是想要在看代码的时候随时插入换行符,方便对代码作小修改;并不是要实现代码格式化的工作。 :)
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#6

帖子 eexpress » 2008-05-02 9:46

小修改啊。基本没碰到过需要断行的情况呢。
你的文件,估计特殊。。或者bt
● 鸣学
回复

回到 “Vim和Emacs”