22 Stimmen

Wie kann man die Verwendung der Pfeiltasten bei der Eingabe von Code minimieren?

Bei der Eingabe von Code schließe ich normalerweise die Klammern, gehe zurück nach innen, gehe nach außen, gebe ein Semikolon ein, usw:

Ich könnte mit (| ist das Caret) beginnen:

System.out.println()|

Dann nach links gehen:

System.out.println(|)

Dann dies:

System.out.println(foo()|)

Wieder ein Stück zurückgehen:

System.out.println(foo(|))

Ähnlich verhält es sich mit der Eingabe von Zitaten:

System.out.println(foo(""|))

... usw.

Meine rechte Hand wechselt ständig zwischen der Startzeile und den Pfeiltasten. Ich habe vim ausprobiert, und obwohl ich die Grundlagen kenne, fühlt es sich für mich immer noch sehr unbeholfen an.

Wie soll ich das machen? Soll ich einfach von links nach rechts tippen (öffnende Klammer, dann Inhalt, dann schließende Klammer, dann Semikolon)?

Danke.

2 Stimmen

Vim kann durch ständige Benutzung gezähmt werden.

0 Stimmen

Eine Sache, die mir beim Erlernen von vim geholfen hat, war die Deaktivierung der Maus und die Beibehaltung der vimsheet.de zur Hand, um mich an die Navigationstasten zu erinnern. Ich denke, das Erlernen der Navigation in vim ist der schwierigste Teil, aber man gewöhnt sich schnell daran. Stellen Sie nur sicher, dass Sie früher als ich herausfinden, dass Alt + Befehlstaste gleichbedeutend mit <esc> + dieser Taste ist. Du musst nicht immer zu <esc> greifen, nur um ein Zeichen zu verschieben oder so. Außerdem kann man eine neue Tastenkombination für <esc> erstellen, um seinen kleinen Finger und sein Handgelenk zu schonen. Ich habe zum Beispiel <esc> auf doppeltes Tippen von "j" umgestellt.

10voto

Marius Andersen Punkte 882

Zuallererst kann man in Vim viel Geschwindigkeit gewinnen, indem man h , j , k et l anstelle der Pfeiltasten. Siehe Vim auf pragmatische Weise lernen für eine Übersicht über die Tasten.

Was Sie jedoch in diesem Fall wahrscheinlich wollen, ist die AutoClose Plugin. Es fügt automatisch die schließende Klammer (oder das Anführungszeichen) zusammen mit der öffnenden ein und setzt das Caret dazwischen. Sie gehen also von

System.out.println(|)

a

System.out.println(foo(|))

a

System.out.println(foo("|"))

Wenn Sie dann eingeben ")) wird der Cursor über die abschließenden Zeichen "wandern", anstatt neue Zeichen einzufügen. Ein schnellerer Weg, um zum Zeilenende zu gelangen, ist jedoch wahrscheinlich <Esc>A .

System.out.println(foo(""));

Zusammenfassend lässt sich also sagen, dass die obigen Angaben durch folgende Eingaben erzeugt werden können System.out.println(foo("<Esc>A; .

Pour Bearbeitung gepaarte Zeichen, anstatt sie einzufügen, siehe umgeben.vim .

0 Stimmen

+1. Wenn Sie mit Vim bleiben wollen, denke ich, dass dies eine gute Option ist (Danke für das Plugin Marius!)

6voto

Eliseo Ocampos Punkte 2382

Nun, das ist Java, wenn Sie eine mehr oder weniger gute IDE verwenden, sollten Sie in der Lage sein, automatisch zu vervollständigen, so dass, wenn Sie "System.out.println" eingeben und Enter drücken, um die automatische Vervollständigung zu akzeptieren, werden die Klammern angezeigt und das Caret wird in der Mitte sein (oh, und es wird auch die Anführungszeichen geben!)

5voto

John Slavick Punkte 9613

Sie können Tastenanschläge sparen, indem Sie die Strg-Taste gedrückt halten und die Pfeiltasten verwenden. Anstatt ein Zeichen zu verschieben, wird ein Wort nach dem anderen verschoben. Dies funktioniert auch beim Rückwärtsschreiben. Mit der Tastenkombination Strg-Rückschritt wird also das gesamte Wort gelöscht und nicht nur das letzte Zeichen.

5voto

Ben Hughes Punkte 13721

Wenn Sie bereits in vim sind, versuchen Sie, mit den Tasten h, j, k und l herumzuspielen. Sie tun das Gleiche wie die Pfeiltasten, sind aber viel praktischer. Der Versuch, sich anzugewöhnen, in der richtigen Reihenfolge zu tippen, würde wahrscheinlich auch helfen, aber das ist etwas, das einige Mühe kostet.

0 Stimmen

Das wollte ich auch gerade vorschlagen :-)

1 Stimmen

Das ist richtig, aber was man mit der rechten Hand gewinnt, verliert man vielleicht mit der anderen Hand, indem man die Modi wechselt und ändert.

1 Stimmen

Wenigstens muss man nur den Modus wechseln und nicht die Hand verrenken, um Tasten wie die Escape-Metataste oder die Umschalttaste zu drücken, um etwas zu tun.

4voto

Zato-One Punkte 31

Versuchen Sie AutoHotKey und mein Skript:

*!I::SendInput, % (GetKeyState("Shift", "P") ? "+" : "") (GetKeyState("Ctrl", "P") ? "^" : "") "{Up}"
*!K::SendInput, % (GetKeyState("Shift", "P") ? "+" : "") (GetKeyState("Ctrl", "P") ? "^" : "") "{Down}"
*!J::SendInput, % (GetKeyState("Shift", "P") ? "+" : "") (GetKeyState("Ctrl", "P") ? "^" : "") "{Left}"
*!L::SendInput, % (GetKeyState("Shift", "P") ? "+" : "") (GetKeyState("Ctrl", "P") ? "^" : "") "{Right}"
*!U::SendInput, % (GetKeyState("Shift", "P") ? "+" : "") (GetKeyState("Ctrl", "P") ? "^" : "") "{Home}"
*!O::SendInput, % (GetKeyState("Shift", "P") ? "+" : "") (GetKeyState("Ctrl", "P") ? "^" : "") "{End}"
*!h::SendInput, % (GetKeyState("Shift", "P") ? "+" : "") (GetKeyState("Ctrl", "P") ? "^" : "") "{Del}"

LAlt & Shift:: ('optionale Zeile')

Es geht darum, LAlt zu halten und etwas zu drücken: i, k,j, l (Pfeiltasten), u, o (Start, Ende) oder h (Löschen). Die letzte Zeile ist optional, wenn Sie die Tastaturbelegung nicht durch LAlt +Shift ändern wollen.

Sie können es sogar in Kombination mit Modifikatoren wie Shift und Strg verwenden.

viel Spaß ;)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X