[英]A list of useful Python commands for Vim?
前几天我正在寻找一种在 Vim 中自动格式化/漂亮打印 JSON 的快速方法,并在 Stack Overflow 上找到了这个很棒的小命令:%.python -m json.tool
这让我开始搜索其他 Python 工具的列表,以漂亮地打印常见的 web 文件,但我找不到太多。 Is there a good resource/list of Python tools that they find particularly useful for cleaning up poorly formatted web stuff inside Vim (eg HTML, XML, JavaScript, etc.)?
对于 XHTML 和 XML 文件,您可以使用 tidy。
:%!tidy -i -asxhtml -utf8
:`<,`>!tidy -i -xml -utf8
最后一个适用于视觉选择。
Python
您是否只是在寻找 Python 单线的资源? 您可以浏览Python 标准库文档以找到更多灵感。
或者简单地谷歌“python one-liners json.tool”来查找其他资源。 例如,这个 Reddit 帖子: Python 博主的建议:弄清楚 stdlib 的所有主要功能是什么,并记录下来
命令行
Vim 支持的不仅仅是 Python(例如,Keith 建议的HTML Tidy )。 任何可以接受管道/标准输入的工具都可以与 Vim 很好地集成。
%
命令只选择一个包含整个文件的范围,并且!
过滤范围通过外部程序。
请参阅:help:%
和:help:!
Vim 有一个命令, =
(等于),就像在ggvG=
中一样,将重新缩进整个文件。 尝试:help =
以获取有关如何使用=
的函数和外部程序的更多信息。 默认配置使用适用于大多数文件类型的内部缩进规则。
!autopep8 -i %
似乎在vim
中工作正常。 -i
开关用于覆盖现有文件。 使用more @ autopep8 --help
。
如果您真的想成为高级用户,那么有一个vim
插件。 在vim
之外,您可以使用autopep8 -diff {filename} or autopep8 {filename}
进行测试。
有很多很好的工具可以在两种格式之间转换文本:
autopep8:用于将 Python 代码解析为AST并将其吐出为符合 pep8 标准。
...
Vim 旨在通过强大的formatprg
设置利用此类实用程序。 默认情况下,它映射到 gq 运算符。 它适用于 Vim 动作、Vim 文本对象、选择等。
例如,我对我的 Python 文件使用以下设置
au FileType python setlocal formatprg=autopep8\ --indent-size\ 0\ -
John MacFarlne 有一篇关于使用 pandoc 创建专门脚本的好文章,您可以将其粘贴在 vimrc 中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.