【问题标题】:notepad++ How to assign two macro to same key?notepad++ 如何将两个宏分配给同一个键?
【发布时间】:2020-07-05 16:16:24
【问题描述】:

使用 GUI:我分配了一个宏来允许我选择光标所在的当前行。我将它分配给“ctrl+a”,并将“全选”重新分配给“ctrl+alt+a”。我现在希望,当我第二次按“ctrl+a”时,让它突出显示段落的其余部分。目前,这些命令可通过以下按键获得:

说明:
1. Home->shift+end --高亮一行
2. Home->shift+end->shift+end -- 高亮连接线

所以 1. 被分配给'ctrl+a',但我被困在这一点上。第二次点击时如何分配 ctrl+a 以突出显示连接的行/段落?外行人的细节/细节将不胜感激。同样,我只使用了 gui 选项,我不熟悉更多代码选项。请注意,它不允许我使用
ctrl+a->shift+end.

我对宏和热键绑定并不太熟悉,所以我不知道这是否是一种限制,或者是否有解决方法,除了编写一个程序来修复它。

不是程序员,但根据我对 Lua 的了解,我想到了:

is_press=假
如果 btn(ctrl+a) 和 !is_press 然后 btn(Home->shift+end) is_press=true end
if btn(ctrl+a) and is_press then btn(Home->shift+end->shift+end) is_press=false end

如果一切都失败了,我可以将 2. 分配给 ctrl+shift+a,作为一个单独的宏。

【问题讨论】:

    标签: macros notepad++


    【解决方案1】:

    简短的回答,我认为使用单个快捷方式/宏是不可能的。

    在幕后,Scintilla 正在做选择。完成选择后,第二次返回“主页”将重置自动换行扩展。

    【讨论】:

    • 像自动热键这样的外部程序可以工作吗?我不熟悉宏/热键等的一般规则。
    • 可能! AutoHotKey 非常漂亮。它具有可能能够执行此行为的条件。见A_PriorHotkey。但是搜索一下,我确定这是一个已解决的问题。
    猜你喜欢
    • 1970-01-01
    • 2017-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多