与两行代码的冲突使得代码无法按照我的意思工作(?)
Collision with two lines of code makes code does not work the way it is meant by me(?)
自己尝试运行下面的代码,你会注意到“/hello”变成了“/HELLO”,但我想让它变成"hi"。另一方面,我想保留 1.st 行代码,它将 "hello" 更改为 "HELLO"。我怎样才能做到这一点(?)
这个代码问题和我上一个问题很相关:
我上一个问题的解决方案对那个问题很好,但对上面提到的新问题不起作用。
::hello::HELLO
::/hello::hi
这很有趣。我真的希望它能通过从 EndChars
中删除 /
来工作。但是在观察了一段时间之后,它为什么会这样表现就很明显了。当您键入“/hello”时,它实际上匹配两个热字串,因此 AHK 选择定义的第一个。无论如何,我知道有两种解决方案:
- 重新排序您的热字串。将
::/hello::hi
置于另一个之上,您将始终获得所需的结果。此外,您不需要更改 EndChars
,因为 /
是第一个字符。
- 在第二个热字串上使用 asterisk option。这将使它立即更新,这可能是可取的,也可能不是可取的(我更喜欢它)。
自己尝试运行下面的代码,你会注意到“/hello”变成了“/HELLO”,但我想让它变成"hi"。另一方面,我想保留 1.st 行代码,它将 "hello" 更改为 "HELLO"。我怎样才能做到这一点(?)
这个代码问题和我上一个问题很相关:
我上一个问题的解决方案对那个问题很好,但对上面提到的新问题不起作用。
::hello::HELLO
::/hello::hi
这很有趣。我真的希望它能通过从 EndChars
中删除 /
来工作。但是在观察了一段时间之后,它为什么会这样表现就很明显了。当您键入“/hello”时,它实际上匹配两个热字串,因此 AHK 选择定义的第一个。无论如何,我知道有两种解决方案:
- 重新排序您的热字串。将
::/hello::hi
置于另一个之上,您将始终获得所需的结果。此外,您不需要更改EndChars
,因为/
是第一个字符。 - 在第二个热字串上使用 asterisk option。这将使它立即更新,这可能是可取的,也可能不是可取的(我更喜欢它)。