如何在 Visual Studio 代码中使用 Autohotkey 热字符串?

问题描述 投票:0回答:4

我可以在记事本等其他应用程序中使用它,但它无法与 vs code 一起使用。似乎有错误或者我做错了什么? 例如

::td::TODO

每次我都会得到不同的结果:

AHK BUG

如何解决这个问题?

visual-studio-code autohotkey
4个回答
3
投票

这是扩展程序的错误 Markdown All in One 我禁用它后就很好了。


1
投票

自动热键解决方法:

::td::{Sleep 100}TODO

随着(要删除的)热字符串变大,增加 100ms。在我的机器上,我可以在 250 毫秒内扩展长度为 25 的热字符串。您的里程可能会有所不同。

相关Github问题

我用以下正则表达式集体替换了我的热字符串:

搜索:

::[a-z0-9_-]+::(?!\{)

替换:
$0{Sleep 250}


在 Github 问题中,Mehul 有另一个解决方法:

:SE, K1:td::TODO

这不需要可变的毫秒量,因为无论热字符串长度如何,它总是有效,但打印替换文本花了很长时间,我发现它无法工作。


0
投票

我真的不想禁用

Markdown all in one
扩展。

摆脱@Laoujin的解决方法,这对我来说非常有效。

当输入 qcd (非终止符)时,下面的热字符串将输出当前日期。如果 VSCode 处于活动状态,它将等待 100 毫秒。

:*:qcd::
FormatTime, timeString, , MM/dd/yyyy
typeText(timeString)
return


typeText(text) {
  IfWinActive, Visual Studio Code
    Sleep, 100

  SendInput, %text%
}

0
投票

这是 VS Code 扩展的一个已知问题

Markdown all in one
,请参阅 issue 200

您不必禁用

Markdown all in one
扩展。只需删除 VS Code 中的按键绑定
markdown.extension.onBackspaceKey
即可解决此问题,但代价是失去
Markdown all in one
扩展的一些列表编辑功能(我没有感觉到)。

请参阅已知问题了解更多详细信息。

© www.soinside.com 2019 - 2024. All rights reserved.