2017-04-21 141 views
0

我在运行python单元测试文件后遇到问题。一旦文件退出,我只能按“i”并使用其他vim键绑定后才能与控制台交互。我还注意到,使用箭头键遍历我输入的内容将删除行尾的随机数字。运行python文件后,运行在bash中的Vim命令

EX:

$ ./tests.py -v 
<output> 
$ <cannot type> 
<press "i"> 
$ I can now type 
<press <- > 
$ I can no 

我使用RHEL 7和bash。我尝试过使用Google搜索这个问题,但我要么不好的格式化这个问题,要么这是一个不常见的问题。

谢谢你的帮助。

编辑:

实际test.py包含私有代码,但是这是示例包含相同的基本代码。

test.py

#!/usr/bin/env python 

import unittest 

class TestUtil(unittest.TestCase): 
    def test_hello_world(self): 
     text = "Hello World!" 
     self.assertEqual("Hello World!", text) 
     print(text) 
     pass 
if __name__ == '__main__': 
    unittest.main() 
+0

什么呢tests.py样子 – depperm

+0

上面添加,我真的不能显示真正的test.py但本质上我将创建变量,运行命令与ansible接口,打印输出并通过。 –

+0

@DanLowe这是我的问题!如果您想将您的评论置于答案中,我会将其标记为正确! –

回答

0

听起来好像你的shell被放入vi-mode。这是一个readline模式,您可以使用vi编辑键代替更常用的emacs键。

我知道这可能发生的两种方式。

set -o vi 

bindkey -v 

从技术上讲,把它关掉你使用set +o vi。但是,这将禁用所有内联编辑。您希望回到emacs模式(通常是默认模式)的可能性更大。要做到这一点,做到这一点,而不是:

set -o emacs