没有插件可以吗? 或者什么是编辑python文件的最佳插件?
答案 0 :(得分:6)
尝试vis
直观地选择和o
跳转壁架
答案 1 :(得分:2)
使用此插件https://github.com/bps/vim-textobj-python 您可以选择,删除,更改等:
af: a function
if: inner function
ac: a class
ic: inner class
答案 2 :(得分:0)
你必须使用omnicompletion for vim7,但它只适用于vim-nox,vim-gtk,vim-gnome o vim-athen
还通过this page读取了使用python配置vim(自动提交,语法高亮和自动完成)
答案 3 :(得分:0)
我认为你的意思是在视觉上快速选择整个功能。一种方法是使用Indent text object。您可以使用vai
选择整个函数,前提是光标位于函数内且只有1个缩进级别。
如果你真的想要选择函数而不考虑缩进级别,我建议你阅读this并编写自己的文本对象。我想这很容易,因为Python有def关键字来定义函数。
答案 4 :(得分:0)
我这样做的方式并不特定于功能。它将选择一个连续的Python代码:
v]]
(如果要选择的内容位于光标下方)
v[[
(如果它在光标上方)。
如果光标位于您要选择的代码块的第一行,只需移除一个括号即可。
答案 5 :(得分:0)
我通常根据需要使用vip
或以上任何一种方法,请不要忘记,您始终可以使用v/match
选择(例如down =)到下一次出现(随后输入进行确认,下一个可能输入n。对于python,您可以寻找下一个def
或return
(通常足够ret)。
这在一开始并不是最快的,但是它非常通用,可以在任何语言中使用,也可以在外部编码(md,乳胶等)中使用。
答案 6 :(得分:0)
我会尽量避免视觉化,因此对于诸如yank之类的操作,我倾向于转到段落[[
的开头,然后猛拉至结尾y]]
,然后返回^o
。
总而言之,它是[[y]]^o
(^
代表控制权。)
对于视觉,您可以使用[[v]]
或[[v][
,[[v]m
或[[v]M
之类的一些变体。
答案 7 :(得分:0)
如果您的函数很长或有很多空行,使用 v}}...}}d
会很慢。
我发现的最快方法(没有插件)是 zc2dd
。命令 zc
关闭光标下的折叠,因此如果您在函数声明或最外层缩进级别的任何行,整个函数将折叠。然后 2dd
(或 3dd
,如果您在函数之前/之后有两个空行)将删除整个内容。