微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Vim:重新格式化和重新评论的自动化方式?

我在代码中有一些文档,我想要很好地格式化:

# book_id - integer
# chapter_id - integer (Optional)
# relative_url - Text: the url of the screencast file on S3,relative to the book's url
# view_count - integer

我安装了Tabular.vim,这让我走得很远:

# book_id      - integer
# chapter_id   - integer (Optional)
# relative_url - Text: the url of the screencast file on S3,relative to the book's url
# view_count   - integer

我想要一些自动生成这样的代码方法.也就是说,包裹到79个字符,如果从前一个注释继续一行,则缩进.我得到的是这个:

# book_id      - integer
# chapter_id   - integer (Optional)
# relative_url - Text: the url of the screencast file on S3,relative to the
# book's url
# view_count   - integer

我正在寻找的是:

# book_id      - integer
# chapter_id   - integer (Optional)
# relative_url - Text: the url of the screencast file on S3,relative to the
#                book's url
# view_count   - integer

是否可以在现有的插件或热键序列中执行此操作?我知道gq,它会将文本重新格式化为在vim中设置的字符宽度,但它不会在注释等内容添加缩进.

解决方法

您可以使用formatlistpat选项(:set fo = n需要工作):

删除#

:%s/^# //

2.设置flp选项

:setl flp=^[^-]*-\\s

3.做格式化

gggqG

4.前置#

:%s/^/# /

您还可以使用indentexpr选项:

2A.设置inde选项

:setl inde=15

2B.插入空行

:g/^/pu_

5.删除空注释

:g/^# $/d

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐