【发布时间】:2020-03-09 23:52:05
【问题描述】:
我不知道如何将我在 Vim 模式下在 IPython 中选择/突出显示的行复制到普通剪贴板(粘贴到 IPython shell 之外)。通常,在 vim 中,我可以使用 "+y 拉出文本并将其粘贴到其他地方,但在 IPython Vim 模式下按这些键似乎不起作用。所以我最终不得不使用鼠标突出显示所需的文本并使用 Command-C 复制它。
这很烦人,因为如果我在 IPython 中有多行,那么我必须过滤掉许多垃圾字符,如下所示:
In [8]: import numpy as np
...: import math
...:
...: print("hi")
...: while(True):
...: break
...:
...: x = 3
...: y = 4
...:
...:
在这里,我必须过滤掉每一行的In [8] 和...:。但是选择使用v 或V 会适当地忽略这些垃圾字符。
This answer 没有说明如何在 Vi 模式下执行此操作,也没有提及任何关于拉到系统剪贴板的内容。
【问题讨论】:
-
你可以通过Opt+drag(在终端)或Cmd+Opt+drag(在iTerm2)选择一个矩形块,这样你就可以选择没有前导标记的代码。
-
谢谢,这有帮助。最好的情况是,如果有办法直接在 vim 模式下进行。
-
One of the answers 确实提到了从 vi 模式复制,但由于某种原因没有提到如何进行,也没有谈到复制到系统剪贴板。
"+y命令不适用于我的 IPython 7.10.1 -
我编辑了问题以反映该答案。