AutoHotkey hotstrings在eclipse中无法正常工作
对于我经常使用的各种文本,我使用AutoHotkey,所以在签名或经常使用的邮件文本中,我还存储了一些代码片段以供快速使用。AutoHotkey hotstrings在eclipse中无法正常工作
其中一些热点字串在编辑器(如wordpad或ultraedit)中正常工作,但在eclipse中(我的版本是3.6.1),它们不能正确删除热点字符串。
很简单的例子:
- 我输入#echo
- 我得到一个变量的提示
- 我提供
- 的字符串插入到当前文件中的字符串$ myVar的
如上所述,这在很多编辑器中都可以正常工作,但不能在日食中使用热点字符串的部分 - 例如#ec - 保留在输出之前,热点不会完全删除。奇怪的是,有时它会留下一个字母,有时候会是3,而没有任何明显的逻辑。
在我AutoHotkey的文件foo.ahk我有一些像这样的代码:
::#echo::
InputBox, VAR, User input, Please enter the variable VAR., , 320, 130
SendInput,
(
<?php echo(%VAR%); ?>
)
Return
与AutoHotkey的一个新手我之前有一些其他的问题,我可以解决,所以他们不应该是源所描述的问题。
- 脚本使用特殊字符,如德语变音已经在UTF8编码
- 脚本或编译的脚本必须以管理员身份运行
我不知道什么日食问题的原因可能是的,任何暗示是赞赏。
我刚刚尝试过自己,看到了相同的行为。对我而言,切换到SendPlay模式而非固定SendInput使事情完美。只是你发布的代码之前
#Hotstring SP
,看看是否能解决问题:
添加行。
查看文档中的'#Hotstring'命令以获取更多信息以及'Hotstrings和Auto-replace'选项部分。
UPDATE
好吧,试试这个:
#Hotstring B0
::#echo::
SendInput, {Control Down}{Shift Down}{Left 2}{Control Up}{Shift Up}
InputBox, VAR, User input, Please enter the variable VAR., , 320, 130
SendInput,
(
<?php echo(%VAR%); ?>
)
Return
的 '#Hotstring B0' 线将防止从的AutoHotkey本身做退格。第一个SendInput行将发送Ctrl-Shift-Left两次以选择键入的'#echo'文本,然后它将被InputBox后面的第二个SendInput替换。
这是一个多一点hacky,你可能需要改变'{左2}'的数字取决于你如何使用它的东西,但这也适用于我。
为什么坚持热点? 您可以使用一个奇怪的热键而不是(像Alt键 + 的Windows + V)
!#v::
InputBox, VAR, User input, Please enter the variable VAR., , 320, 130
SendInput,
(
<?php echo(%VAR%); ?>
)
Return
感谢,但它并没有为我工作:-(像以前还是一样的行为。 – stefax 2011-03-15 13:39:14
奇怪。我已经更新了我的答案,包括应该工作的另一种方法。 – 2011-03-15 14:13:11
再次感谢...我喜欢这个想法,尽管它很黑,并且在记事本中它不会像在eclipse或ultraedit中那样工作,因为逻辑使用Ctrl-Shift进行跳转选择是不同的,但eclipse在这方面一直没有成功,对于像ultraedit这样的其他程序来说,这种方式很好。 – stefax 2011-03-16 08:34:40