Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Shortcut auf Kleinbuchstaben (https://www.delphipraxis.net/171066-shortcut-auf-kleinbuchstaben.html)

MarioM. 18. Okt 2012 13:26

Shortcut auf Kleinbuchstaben
 
Hallo,

ich möchte gerne die Shortcuts der IDE überschreiben bzw. neue hinzufügen, um das Tastaturlayout von Vim nachzubilden.

Dort navigiert man mit den Tasten h, j, k und l anstelle der Pfeiltasten

Nun ist es aber so, dass ich mit der Funktion Shortcut() anscheinend nur Großbuchstaben zuweisen kann, als z.B. so:

Delphi-Quellcode:
AddKeyBinding([ShortCut(Ord('I'), [])], TuWas, Nil);


Die Routine TuWas würde also ausgeführt werden, wenn ich /Shift+i/ drücke. Ich möchte aber, dass sie bei /i/ ausgeführt wird.

Hat jemand eine Idee, wie ich das realisieren kann?

Mit

Delphi-Quellcode:
AddKeyBinding([ShortCut(Ord('i'), [])], TuWas, Nil);


funktioniert es jedenfalls nicht ;)

Vielen Dank.

himitsu 18. Okt 2012 13:48

AW: Shortcut auf Kleinbuchstaben
 
Nein, ShortCuts kennen garkeine Groß-/Kleinschreibung.

Oder hast du auf deiner Tastatur je eine Taste mit einem A und Nocheine mit einem a?

Tipp: der ShortCut arbeitet wie die VirtualKeyCodes und dort ist nunmal definiert, daß die Taste "A" den selben Ordinalwert besitzt, wie ein Ord('A').


Auf sowas wie Groß-/Kleinschreibung kann man reagieren, indem man zusätzlich die ensprechende Steuertaste mit auswertet, also im zweiten Parameter von Delphi-Referenz durchsuchenShortCut das Shift mit angibt oder eben nicht.



Aber mal so als Frage, wie soll das Programm auf "einzelne" Buchstaben reagieren, wenn die ansonsten zur Texteingabe bnutzt werden?
Kann gut sein, daß Delphi-Referenz durchsuchenAddKeyBinding implizit ein Shift hinzufügt, wenn man keine weitere Steuertaste angegeben hat. :gruebel:

Ich stell es mir ein bissl schwer vor, wenn ich "was" schreiben will, aber stattdessen nur der Cursor umherspringt.

Zitat:

Die Routine TuWas würde also ausgeführt werden,
Denkst du nur sie würde es, oder wird sie wirklich?

Klaus01 18. Okt 2012 14:02

AW: Shortcut auf Kleinbuchstaben
 
Zitat:

Zitat von himitsu (Beitrag 1187482)
Ich stell es mir ein bissl schwer vor, wenn ich "was" schreiben will, aber stattdessen nur der Cursor umherspringt.

Beim Vi wird zwischen Schreib- und Steuermodus unterschieden.
Vom Schreib- in den Steuermodus mit Esc.

Grüße
Klaus

MarioM. 18. Okt 2012 14:05

AW: Shortcut auf Kleinbuchstaben
 
Zitat:

Zitat von Klaus01 (Beitrag 1187483)
Zitat:

Zitat von himitsu (Beitrag 1187482)
Ich stell es mir ein bissl schwer vor, wenn ich "was" schreiben will, aber stattdessen nur der Cursor umherspringt.

Beim Vi wird zwischen Schreib- und Steuermodus unterschieden.
Vom Schreib- in den Steuermodus mit Esc.

Grüße
Klaus

Korrekt ;) Das mit den verschiedenen Modi habe ich bereits implementiert. Nur muss ich im Kommandomodus halt derzeit noch die Shift-Taste gedrückt halten, um das Kommando auszuführen...

Klaus01 18. Okt 2012 14:25

AW: Shortcut auf Kleinbuchstaben
 
.. warum musst Du dann mit Shortcuts arbeiten?
Geht es nicht, wenn Du die "normalen" Zeichen/Tasten benutzt.

Steuermodus: [A] rücke zum Zeilenende vor und gehe in den Einfügemodus
Steuermodus:[a] gehe in den Einfügemodus
Schreibmodus: [a] schreibe ein "a"

Zum Anfangen der "normalen" Zeichen solltest Du keyPreview der From auf true setzen.

Grüße
Klaus

MarioM. 18. Okt 2012 14:36

AW: Shortcut auf Kleinbuchstaben
 
Hallo Klaus,

ich glaube, Du verstehst mich falsch :)

Es geht mir nicht darum, eine Anwendung zu schreiben, die Vim simuliert - ich möchte die Delphi-IDE manipulieren um damit arbeiten zu können, wie mit Vim ;)

Das funktioniert auch soweit, mit der Ausnahme, dass ich, wenn ich im Kommandomodus bin, die Shift-Taste drücken muss, um die Funktionen (bspw. Cursor runter bei /j/) auszulösen.

Bin gerade dabei, Caps-Lock fest zu setzen, sobald ich in den Kommandomodus gehe. Da habe ich aber noch das Problem, dass ein Druck auf Shift dieses wieder aufhebt. Das kann ich auch irgendwie nicht umgehen...

Klaus01 18. Okt 2012 14:39

AW: Shortcut auf Kleinbuchstaben
 
Zitat:

Zitat von MarioM. (Beitrag 1187489)
Hallo Klaus,

ich glaube, Du verstehst mich falsch :)

Es geht mir nicht darum, eine Anwendung zu schreiben, die Vim simuliert - ich möchte die Delphi-IDE manipulieren um damit arbeiten zu können, wie mit Vim ;)

.. ja, da war ich wohl im falschen Film..
Grüße
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:20 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz