当我用VIM编写python脚本时,我想直接将它们测试到VIM中,我知道我可以使用:
w !python -
但是这会执行脚本并突然关闭shell,所以如果我想测试一个函数,我就不能用各种参数调用它!例如,如果我有以下代码:
print "How can I test the following function in Vim?"
def testfunc(test):
print test*2
当我在VIM w !python -中运行时,它会打印出print语句,但我不能尝试使用一些任意参数来测试函数。如何在python shell中运行脚本以进行进一步测试?
我已经使用VI和VIM多年了(30或更多年)(在xterms中,不是它自己的窗口,gvim),我有一个巨大的vim命令库,我使用鼠标中间按钮作为选择提供给vim。
例如,我经常做这样的事情.
vi {many_hundreds_of_files}
paste vim commands using mouse - one paste per file.
所选内容将包括大量的VIM命令,用于替换测试、格式化、移动行等,并且通常以:w和:next VIM命令结尾,因此vim已准备好再粘贴到下一个文件中。这允许我以非常复杂的方式更新大量的文件,而不需要特殊的脚本(例如perl就地编辑)来完成。
在我使用Ubuntu的笔记本电脑上,我只能有一个vim实例,它是用
vim --servername VIM
之后,我可以从控制台打开文件
vim --remote-silent filename
我两个人都用短化名。
另外,我在另一台计算机上做一些计算(我将称之为工作马)。它安装了Debian x64 (没有gui)。我通常使用Windows中的多个Putty实例来访问它。实际上,工作马是一台虚拟机,我为资源的使用付费,所以我不想让它超载太多。但是,在通常安装vim (apt-get install vim)之后,我无法使用--servername选项运行vim。上面写着
Unknown o
当我将代码粘贴到Mac终端窗口的vim中时,它会缩进每一行。对于每一行,它添加一个缩进,所以文本看起来像这样...
"ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
reprehenderit in voluptate velit esse cillum dolore eu fugiat nu
我使用VIM 7.4,在我的.vimrc,imap jk <ESC>中有这个映射,可以使用jk脱离insert模式,但问题是,在设置paste选项时,在insert模式下,它不能工作。
根据这个wiki
如果设置了“粘贴”选项,则禁用插入模式映射。
是否有一种方法/映射可以使imap jk <ESC>工作,即使设置了paste?
prt path <mru>={ files }=<buf> <-> /home/....
Error detected while processing function <SNR>48_NormalPasta:
line 13:
E21: Cannot make changes, 'modifiable' is off
Press ENTER