一个简单的容器加固,我喜欢它加固
condent的Python项目详细描述
condent是按照我喜欢的方式重新定义容器的快捷方法。
它主要(目前完全)用于python,但由于类似的对象文本 语法-它应该可以为其他语言工作,而且很容易 如果没有的话,可以和他们一起工作。我想结束了 我将添加对我半常规使用的其他语言的实际支持 basis(主要是ruby和js)。
- 它可以解决一些基本问题,如:
- 间距
- 将适合一行的东西移到一行上
- 将不在多行上的内容移动 LI>多行容器的压痕< /LI>
它不会(不应该)做的是更改代码的语义。如果是的话, 请开一张票。
安装
使用pip install condent安装,您将发现一个condent可执行文件 安装。
用法
调用和输出示例如下:
$ echo 'd = {"foo":"bar","baz":"quux"}' | condent d = {"foo" : "bar", "baz" : "quux"} $ condent <<EOF the_dict = { foo:bar, baz:quux, spam:eggs}' EOF the_dict = {foo : bar, baz : quux, spam : eggs} $ condent <<EOF an_already_indented_dict_that_does_not_fit_on_one_line = { foo:bar, baz:quux, spam:eggs} EOF an_already_indented_dict_that_does_not_fit_on_one_line = { foo : bar, baz : quux, spam : eggs, }
您可以使用condent -h查看完整的使用信息。
与VIM一起使用
<>这个主要原因是使用^ {tT5}$及其^ {tT6}$选项。为此,请放置类似^{tt7}的内容$ 在.vimrc或ftplugin文件中。然后可以与^{tt10}一起使用$ (详见:help =。
在过去的几年中,我尝试了很多vim缩进脚本,但从未 找到一个有效的。也许它存在,它是我的(设置)故障, 但与其弄清楚是不是这样,倒是很容易 一个下午在一起。
你也可能对我的ftplugin文件感兴趣Python 还有一些我要做的,比如在 正在插入结束字符。
样式
它应该符合pep8,只有一个例外。
我喜欢我的dict键和值围绕:对称。取决于 解释这可能违反了pep8建议避免 额外的空白,但我一直在做,我喜欢它的样子, 更不用说我已经看到很多这样做的代码了。到 举例来说,这将产生{"foo" : "bar"},而不是产生 {"foo": "bar"}。如果你真的不喜欢,你可以用 命令行标志--no-symmetric-colon。还有很多其他的 可以使用命令行标志切换的主观样式选择。
添加功能
像许多类似的事情一样,这可能是一个持续的在制品。像我一样 说,我每天都用这样的东西,所以当我发现bug或想要的特性时,我会 可能是修复或添加它们。
我有一些具体的想法,可能会加上 在接下来的几天里。如果你还有其他人,请随意拉一下 请求。即使我不喜欢或使用你想要的风格,如果它足够理智 ;)无论如何,它可能被合并为一个选项。