Recent

Author Topic: How to set ESCAPE key to "Multi caret commands/clear all extra carets"  (Read 2687 times)

Pascal

  • Hero Member
  • *****
  • Posts: 932
Hello,

who can i set ESCAPE to "Multi caret commands/clear all extra carets"?
Options complains about ESCAPE key allready assigned to other funktion.
Indeed ESCAPE key is assigned to multiple commands. So why not add this too?

Dialog asks for deleting other key and brings buttons YES, NO, CANCEL. I would have
expected if i press NO the ESCAPE key would have been set without deleting
other assignments but nothing happened.

Regards
Pascal
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 12387
  • Debugger - SynEdit - and more
    • wiki
Sorry but it cant be assigned concurrently, despite looking otherwise.

Each key can only execute one action, at a time. This is true, even if currently escape is assigned to many actions.

The action depends on the context.

Currently there are
Designer / Template and Syncro mode assignments.

The former is active, if the designer has focus, the later is active if the editor has focus, and is in one of the given modes.
All those modes are mutually exlusive. So they all can have escape. But it is possible (despite utterly senseless)  to mix Syncro and multi caret. And then it would be unclear what to do on escape.

I admit it is still desirable as feature, and for the case of aborting something, it would be no issue to abort both with one keystroke. But that isnt possible yet. And if it is ever decided to make it possible, that needs to be done with create care. Only very few commands are desired to to several things at once.

----------------
There might be a workaround though.
Record a macro that does all of the 5 actions. (you may need to record 5 macros, and then copy and paste them into one). Remove escape from all of the action, and assign escape to the macro.

Macros do not play the keystrokes that where done. they play the commands that resulted, even if the keystrokes have changed. So that would work.

 

TinyPortal © 2005-2018