In den Tagen der physischen Terminals gab es keine sitzungsweiten Zwischenablagen, nur wenige Programme unterstützten internes Kopieren / Einfügen - häufig unter dem Namen "Puffer" oder "Kill Rings" - und verwendeten verschiedene Tastenanschläge. Zum Beispiel verwendet die Bash- Shell CtrlKoder, um CtrlUzu "töten" (ausschneiden), um CtrlYzu "reißen" (einfügen); dies kommt aus dem Emacs - Editor .
CtrlCFast überall in Unix wurde die "Interrupt" -Taste verwendet, um das aktuelle Programm oder den aktuellen Vorgang abzubrechen. Der CtrlVSchlüssel bedeutete oft "wörtlich einfügen" - das heißt, das folgende Zeichen wird wörtlich eingefügt, ohne dass eine zugehörige Aktion ausgeführt wird. Beispielsweise wechselt ein normaler EscBenutzer im vi- Editor in den Befehlsmodus CtrlV, Escfügt jedoch das ESC
Zeichen in das Dokument ein.
Das CtrlCKopieren und CtrlVEinfügen aus der sitzungsweiten Zwischenablage wurde 1983 von Mac OS und 1990 von Microsoft Windows 3.x eingeführt. (Frühere Windows-Versionen (1.x und 2.x) sowie IBM OS / 2 , unterstützte nur die IBM CUA- Schlüssel CtrlInszum Kopieren und ShiftInsEinfügen; diese Verknüpfungen werden weiterhin von allen Windows-Versionen unterstützt.)
Als GUIs mit Zwischenablage-Unterstützung endlich Unix erreichten, wurden die CtrlTastendrücke bereits von vielen Terminalprogrammen verwendet. Außerdem hatte die grafische Oberfläche von X etwas andere Mechanismen : "Auswahlen" und "Puffer ausschneiden". Schon jetzt können Sie Text in einem Programm markieren und mit der mittleren Maustaste einfügen, ohne explizite Kopieraktion.
Kurz gesagt, zu dem Zeitpunkt, als Xterm und GNOME Terminal geschrieben wurden (ich nehme an, Sie verwenden das letztere), hatten sie CtrlV bereits seit vielen Jahren eine völlig andere Bedeutung und konnten nicht geändert werden. Darüber hinaus gab es in X11 bereits eine alternative Methode zum Kopieren von Text - die "Auswahl" -, sodass das explizite Kopieren / Einfügen wahrscheinlich nicht so wichtig war wie in Windows. Dies bedeutet, dass verschiedene Tastaturkürzel ausgewählt werden mussten - beispielsweise die meisten modernen Terminalprogramme, wie GNOME Terminal, verwenden CtrlShiftCund CtrlShiftV. (Wenn Sie Xterm verwenden, können dieselben Verknüpfungen mithilfe der XResource für XTerm * vt100 * -Übersetzungen manuell hinzugefügt werden . Rxvt verfügt nicht über eine solche Option.)
(Die meisten X11 - Toolkits unterstützen auch die CUA - Schlüssel "Kopieren" und "Einfügen", die nicht mit Terminalprogrammen in Konflikt stehen. Leider sind die Implementierungen eher inkonsistent - CtrlInsKopien in die "Zwischenablage" in den meisten Programmen (GTK, Qt4, aber von ignoriert) Xaw); allerdings werden ShiftInsin den meisten GTK- und Qt4-Programmen Pasten aus der "primären Auswahl", in Firefox jedoch aus der "Zwischenablage" und in den jetzt veralteten Cut-Puffern in Xaw eingefügt.)
Alles , was gesagt, einige Endgeräte oder Konsolen (insbesondere die Windows - 10 - Konsole) tun diese Tasten unterstützen. Da die Windows-Konsole immer einen separaten "Mark / Select" -Modus hatte, hat sie CtrlCjetzt auch zwei Bedeutungen, die auf dem Kontext basieren: Im regulären Modus sendet sie einen Interrupt, im Auswahlmodus kopiert sie in die Zwischenablage (wie Enterfrüher).
Inzwischen Tools Windows - Befehlszeilen nie wirklich verwendet CtrlV für alles, so wurde es gebunden „Paste“ , ohne viel etwas zu stören. Dasselbe auf Unix-ähnlichen Terminals zu tun, wäre jedoch problematischer.
Shift
-Insert
funktioniert auch