Ich höre oft Beschwerden, dass Programmiersprachen, die der Kürze halber häufig Symbole verwenden, insbesondere C und C ++ (ich werde APL nicht berühren), schwierig zu tippen sind, da sie häufig die Umschalttaste verwenden müssen. Vor ein oder zwei Jahren hatte ich es selbst satt, lud den Keyboard Layout Creator von Microsoft herunter , nahm einige Änderungen an meinem Layout vor und habe kein einziges Mal zurückgeschaut. Der Geschwindigkeitsunterschied ist erstaunlich; Mit diesen wenigen einfachen Änderungen kann ich C ++ - Code etwa 30% schneller eingeben, je nachdem, wie haarig er ist. Das Beste ist, dass meine Schreibgeschwindigkeit in normalem Text nicht beeinträchtigt wird.
Meine Fragen lauten wie folgt: Welche alternativen Tastaturlayouts gibt es für die Programmierung, die an Beliebtheit gewonnen haben, werden sie noch immer modern verwendet, verwenden Sie persönlich ein geändertes Layout und wie kann mein Layout weiter optimiert werden?
Ich habe die folgenden Änderungen an einem Standard-QWERTZ-Layout vorgenommen. (Ich benutze kein Dvorak , aber es gibt ein erwähnenswertes Dvorak- Layout für Programmierer .)
- Tauschen Sie Zahlen mit Symbolen in der oberen Reihe aus, da lange oder wiederholte Literalzahlen normalerweise durch benannte Konstanten ersetzt werden.
- Tauschen Sie Backquote mit Tilde aus, da Backquote in vielen Sprachen selten ist, Destruktoren in C ++ jedoch häufig vorkommen.
- Tauschen Sie Minus gegen Unterstrich aus, da Unterstriche in Bezeichnern häufig vorkommen.
- Tauschen Sie geschweifte Klammern gegen eckige Klammern aus, da Blöcke häufiger vorkommen als Indizes. und
- Tauschen Sie doppelte Anführungszeichen gegen einfache Anführungszeichen aus, da Zeichenfolgen häufiger vorkommen als Zeichenliterale.
Ich vermute, dass letzteres wahrscheinlich das umstrittenste sein wird, da es den laufenden Text am meisten stört, indem es die Verwendung von Shift erfordert, um gemeinsame Kontraktionen einzugeben. Dieses Layout hat meine Schreibgeschwindigkeit in C ++, C, Java und Perl erheblich erhöht und in LISP und Python etwas erhöht.
quelle
Antworten:
Ich bin immer noch der Meinung, dass die Schreibgeschwindigkeit nicht der Hauptfaktor für die Zeit ist, die ein Projekt benötigt, um abgeschlossen zu werden. Wenn ja, gibt es ein großes Problem (Wochen der Codierung sparen uns Stunden der Planung).
In Bezug auf Ihre Frage bevorzuge ich die Verwendung des Standardlayouts, da dies bedeutet, dass ich die ersten 10 Minuten nicht damit verbringen muss, dumm auszusehen, wenn ein Standardtastaturlayout angezeigt wird.
Einige der von Ihnen vorgeschlagenen Ersetzungen, z. B. die oberste Reihe mit den Sonderzeichen, machen keinen Unterschied, da sich der äußere Finger andererseits bewegen sollte, um sich gleichzeitig zu verschieben.
IMHO Eine Sache, die über das Verketten von Layouts hinaus hilft, ist die Verwendung von Tastaturkürzeln. Vim und Emacs werden empfohlen. Dadurch wird das Verschieben von Text erheblich beschleunigt.
quelle
Ich würde Ihre Frage folgendermaßen angehen. Die Aufgabe besteht darin, eine Tastatur so zu organisieren, dass Tastenanschläge und Handbewegungen für einen bestimmten Text minimiert werden.
Schritte zu einer möglichen Lösung. Machen Sie ein Programm, das:
Jetzt manuell oder durch Schreiben eines Programms Definieren Sie Ihr Layout folgendermaßen neu. Platzieren Sie das am häufigsten verwendete Symbol in einer zentralen Position näher an Ihrer starken Hand. Das zweite Symbol geht an Ihre schwache Hand in zentraler Position. Das dritte Symbol geht auf Ihre starke Hand zurück ... und so weiter. Dann bewegen Sie sich allmählich von der zentralen Position der Hände in "weiter entfernte" Bereiche der Tastatur. Wenn alle Tastaturen voll sind, setzen Sie die Zuweisung der Tasten fort, diesmal jedoch mit gedrückter Umschalttaste. Der andere Unterschied wäre, dass Sie nicht für jedes Symbol eine starke und eine schwache Hand drehen, wenn die Umschalttaste gedrückt ist. Wenn Sie zuerst die Umschalttaste nach unten drücken, füllen Sie die zentralen Positionen auf der Tastatur aus und bewegen sich dann zu weiter entfernten Positionen.
Wenn Sie dies alles tun, führen Sie Schritt 3 erneut für das neue Layout aus, um zu sehen, wie das Layout verbessert wurde.
Möglicherweise müssen Sie Ihre Tastatur jederzeit bei sich tragen. Auf der positiven Seite wird niemand Ihren Computer berühren. Dadurch sehen Sie aus wie ein Profi.
Vergessen Sie nicht, Ihre Erkenntnisse mitzuteilen.
quelle
Ich spiele momentan mit einer Variante des Colemak-Layouts mit starken Symboländerungen:
ohne SHIFT:
`- {} []; <> () _ =
qwfpgjluy * / # \
arstdhneio '
zxcvbkm ,. !
mit UMSCHALT:
~ 1 2 3 4 5 6 7 8 9 0 & +
QWFPGJLUY @ ^ $ |
ARSTDHNEIO "
ZXCVBKM% :?
Vielleicht stelle ich den / key wieder her ...
Dies basiert jedoch nicht auf fundierten Recherchen, und ich würde auch gerne ein optimiertes Layout (Optimierung einschließlich Handänderungen usw., auch ZXCV-Aufbewahrung usw.) mit einem auf Quellcode basierenden Korpus sehen, da all diese Layouts zu sein scheinen nur für Prosa optimiert werden. Zum Beispiel ist 'f' ein sehr häufiger Buchstabe in C (wenn, für).
Update: Ich benutze gerade
`- {} [] @ <> () _ =
qwkrgyulp *; #
asftdhneio '\
\ zxcvbjm ,. /.
mit UMSCHALT:
~ 1 2 3 4 5 6 7 8 9 0 ^ +
QWKRGYULP &! $
ASFTDHNEIO "|
| ZXCVBJM% :?
Dies basiert auf einer 6-Tasten-Swap- Teiloptimierung von Carpalx unter Beibehaltung der üblichen Verknüpfungen zum Ausschneiden / Kopieren / Einfügen / Rückgängigmachen, die geändert wurden, um einen besseren Zugriff auf die üblichen Programmierzeichen zu ermöglichen.
quelle
Erstellen Sie einen einfachen Tastenlogger und zählen Sie dann, wie oft jede Taste gedrückt wird. Führen Sie es ein oder zwei Tage lang aus und speichern Sie die Ausgabe in einer Textdatei. Tun Sie dies von Zeit zu Zeit. Es spielt keine Rolle, welches Layout Sie verwenden, da Sie nur sehen, welche Tasten am häufigsten verwendet werden.
Wenn Sie ein gutes Layout erstellen möchten, können Sie keine Angst haben, von der Norm abzuweichen. Ich würde vorschlagen, die Top-11-Tasten entlang der Startreihe zu platzieren, dann die nächsten Top-11-Tasten als oberste Reihe (lassen Sie die 2 Tasten über der Return-Taste als am wenigsten verwendete Tasten) und dann die 3. Top-11-Tasten als unterste Reihe . Es sollten jetzt noch 4 Schlüssel übrig sein. Nehmen Sie diese und stecken Sie sie in die Slots - = und] \. Glückwunsch! Sie haben jetzt ein großartiges Tastaturlayout für Ihre Zwecke erstellt! = D.
quelle
Insgesamt denke ich, dass es besser ist, einen guten Texteditor zu haben und zu wissen, wie man ihn verwendet, als zu versuchen, die Schreibgeschwindigkeit zu verbessern. Das Aufzeichnen und Wiedergeben von Makros ist manchmal ein Lebensretter, und eine Auswahl von Code-Snippets mit Verknüpfung kann nützlich sein, da normalerweise sprachliche Beschränkungen für die Umwandlung in eine Bibliothek gelten.
Generell denke ich, dass es bei den wirklichen Produktivitätssteigerern nur um Wissen geht ...
FWIW, ich behaupte nicht, in all diesen Bereichen stark zu sein. Ich war immer zu voreingenommen, um Probleme selbst zu lösen, und hatte eine zu starke Tendenz, das Rad und die großartigen Architekturpläne neu zu erfinden.
Wie auch immer, ich habe nur den Verdacht, dass die Zeit, die für das Ändern und Lernen von Tastaturlayouts aufgewendet wird, eine Ablenkung von wichtigeren Themen darstellt.
quelle
Das Ändern des Tastaturlayouts ist eine schlechte Idee, da es (möglicherweise) Ihre Schreibgeschwindigkeit auf einer Tastatur erhöhen würde, aber Ihre Schreibgeschwindigkeit auf anderen Tastaturen oder auf Computern, auf denen Sie kein spezielles Tastaturlayout haben, erheblich beeinträchtigen würde. Ich habe festgestellt, dass es oft besser ist, sich an die Standardeinstellungen anzupassen, als sie überall ändern zu müssen. (Persönlich sind meine Finger stark Emacs-voreingenommen, was überall sonst viel Tippreibung verursacht.)
quelle