考虑以下 python 代码行:
columns = ["registered","casual","counts", "workingday", "month", "dteday"]
我经常需要从这样的列表中删除一个或多个字符串。做到这一点最有效的方法是什么?我通常将光标移动到第一个单词的开头,然后使用视觉模式突出显示然后删除相关字符串。这是相当低效的,因为引号使e
命令的效率降低;有一个更好的方法吗?
答案1
根据编辑器的设置方式,您可以使用dw
或dW
。如果每个逗号后面都有空格,则第二个方法始终有效。
小写字母w
代表一个单词,与标点符号不同。大写字母W
表示直到空格为止的字符序列。
您还可以使用诸如d/
后跟逗号和回车之类的结构,这将从光标到第一个匹配点进行删除。
答案2
对于像您的示例这样的简单内容,您可以使用整个参数(包括尾随逗号)是单个参数的事实:help WORD
。对于复杂的论点,这种方法很快就会崩溃,而诸如f{char}
或 之类的替代方案/{pattern}
也很麻烦。视觉模式是内置答案,用于迭代细化文本。如果您想要更好的东西,您需要一个可以理解参数语法的插件。我可以推荐侧身.vim作为一种强大且通用的参数,它既提供(内部/外部)参数的选择,也提供对它们重新排序的能力。