在vim中复制文本并粘贴到不同窗口的脚本

3
我曾尝试编写一个脚本,可以复制vim中的一行文本,然后删除该行,并将该行粘贴到另一个窗口。目前我已经尝试使用Autohotkey(在Windows 8上)和Autokey(在我运行的Ubuntu虚拟机上)实现了该脚本。以下是我编写的代码:

使用Autohotkey:

!^p::
SendRaw "*yydd
SendEvent !{tab}
SendPlay ^v

在Autokey(链接为Ctrl+Alt+p)中:
keyboard.send_keys("\"*yydd")
keyboard.send_keys("%{TAB}")
keyboard.send_keys("^v")

在这两种情况下,Vim的命令(复制当前行到系统剪贴板,删除当前行)可以正常工作,但脚本未能切换窗口以进行粘贴,而是在vim中执行了Ctrl-v操作。是否有人知道我需要更改什么才能使Alt-Tab功能正常工作?

2
我对autokey和autohotkey都没有任何经验,但是在vim方面,你可以简单地使用“*dd”。 - romainl
1个回答

3
发送原始的Alt+Tab键无效,因为应用程序切换是Windows的核心功能。在AutoHotKey中,有一个特殊命令AltTab(在帮助中查找),或者更好地使用WinActivate命令,因为AutoHotKey似乎在Windows 8上仍存在Alt-Tab问题

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接