Lassen Sie das Terminal erkennen, dass PageUp und PageDown anderen Tasten zugeordnet sind

1477
William

Ich verstehe Klemme nicht standardmäßig unterstützt PgDnund PgUp. Ich habe nicht PgDnund PgUpauf meiner Tastatur, aber habe sie derzeit anderen Tasten neu zugewiesen und daher funktioniert Shift+ PgDnnicht. Ich habe auch Fn+ probiert Up. Wie kann ich erkennen, dass das Terminal meine erneut zugeordneten Paging-Schlüssel erkennt?

2
Welches Terminal unterstützt pgdn / pgup nicht? Ipor Sircer vor 8 Jahren 1
Ich bin mir sicher, dass es unterstützt. Ipor Sircer vor 8 Jahren 0
Bitte ** nicht ** Crosspost. Weitere Informationen finden Sie unter [Ist das Cross-Posting einer Frage auf mehreren Stack Exchange-Sites zulässig, wenn die Frage für jeden Standort themenbezogen ist?] (// meta.stackexchange.com/a/64069) DavidPostill vor 8 Jahren 3
Ich bin verwirrt. Sie suchen nach einer Linux-Terminal-App, die PgDn und PgUp unterstützt, weil Sie keine PgDn- und PgUp-Tasten auf Ihrer Tastatur haben? Wenn Sie eine neue Terminal-App erwerben, werden der Tastatur keine physischen Tasten hinzugefügt. Ich bezweifle, dass Sie das meinten, vielleicht könnten Sie Ihre Frage klären? Beachten Sie jedoch, dass die Abfrage von Softwareempfehlungen [Off Topic] (http://superuser.com/help/on-topic) ist. 8bittree vor 8 Jahren 1
@Bittree Sie können die Position von PgDn und PgUp auf Ihrer Tastatur neu zuweisen, wie ich es getan habe. Dann verschieben Sie + PgDn und Shift + PgUp funktionieren nicht an den neu zugewiesenen Positionen. William vor 8 Jahren 0
Haben Sie versucht, den Fn + Aufwärtspfeil (Abwärtspfeil) anstelle von Bildlauf nach oben (Abwärtspfeil) zu verwenden? Oft funktioniert es. Hastur vor 8 Jahren 0
@Hastur ja es funktioniert nicht William vor 8 Jahren 0
Sie können die Bildlaufsperre verwenden, sie ist jedoch in Ubuntu nicht standardmäßig konfiguriert. Sie können es mit diesem Verfahren beheben: https://linuxtechie.wordpress.com/2008/04/07/getting-scroll-lock-to-work-in-ubuntu/ cscracker vor 8 Jahren 0
@cscracker In welcher Beziehung steht die Bildlaufsperre zu PgDn und PgUp? William vor 8 Jahren 0
Bei @William Scroll Lock können Sie bei aktivierter Option die Pfeile und die Schaltflächen zum Blättern nach oben / unten verwenden, um durch den Puffer zu scrollen. Es war das, was wir vor der Erstellung von shift + pgup / pgdn hatten. Es ist ein Umschalten in einen Bildlaufmodus, weshalb es als Bildlaufsperre bezeichnet wird. Linux und die meisten Unices unterstützen diese Funktionalität, aber einige moderne (Ubuntu) ordnen den Schlüssel nicht standardmäßig zu. Wenn Sie den Schlüssel selbst zuordnen, funktioniert er. cscracker vor 7 Jahren 1
Oh, also können Fragen mit Kopfgeld nicht geschlossen werden, das ist bequem. Software-Empfehlungen sind nicht thematisch. Daniel B vor 7 Jahren 0
@ DanielB Ich habe keine Lust auf eine Software, die ich eigentlich nativ machen möchte. William vor 7 Jahren 0
Aktualisiere deine Frage. Gründlich. Erklären Sie, was Sie wollen. Erklären Sie, dass Sie Schlüssel oder was auch immer neu zugeordnet haben. Fügen Sie alle verstreuten Informationen aus den Kommentaren hinzu. Es gibt viele davon, so dass sie standardmäßig nicht sichtbar sind! Daniel B vor 7 Jahren 0

3 Antworten auf die Frage

6
quixotic

(Kommentar: Sie haben XKB gefunden! Glückwunsch, es ist ein wahres Hasenloch, wenn Sie herunterfallen. Beachten Sie, dass Ihre Lösung beim nächsten Update von ubuntus xkb-data-Paket durch diese Datei zerstört wird und sich auf alle anderen angeschlossenen Tastaturen auswirkt die dieselbe Konfiguration verwenden.)

XKB folgt einem Modell namens RMLVO - Regeln, Modell, Layout, Variante, Optionen. Ihre Lösung ändert eine Systemmodelldatei. Eine bessere Lösung wäre das Finden oder Erstellen einer Option zum Hinzufügen von Überschreibungen. ( Dies evdevist die Standardregel für die meisten Distributionen. Die meisten externen Tastaturen verwenden ein pcModell. Die internen Modelle des Laptops können jedoch bestimmte Variationen aufweisen, die bereits in der Nähe Ihrer Anwendung liegen. Eine Standard-US-QWERTY-Tastatur verwendet das usLayout ohne Variante, obwohl dies möglich ist Wählen Sie die intloder altgr-intl-varianten, wenn Sie mit anderen Sprachen arbeiten.)

Optionen sind spezifische Überschreibungen für die Basisfunktionalität. Wenn Sie CapsLock deaktivieren möchten, weil der Schlüssel nur scheiße ist, gibt es bereits eine Option für das ( caps:none), oder Sie können stattdessen einen zusätzlichen Escape-Schlüssel ( caps:escape) festlegen . Sie können die spezifischen Überschreibungen in sehen /usr/share/X11/xkb/symbols/caps; Jede Zeilengruppe ist eine andere Option, die Sie zur Laufzeit aktivieren können.

In diesem setxkbmap -printFall erhalten Sie eine Liste Ihrer aktuellen XKB-Einstellungen:

$ setxkbmap -print xkb_keymap { xkb_keycodes { include "evdev+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete"}; xkb_symbols { include "pc+us+inet(evdev)" }; xkb_geometry { include "pc(pc105)" }; }; 

Erstellen Sie Ihre Überschreibungsdatei:

$ mkdir -p .config/xkb/symbols $ touch .config/xkb/symbols/pgupdown 

Bearbeiten Sie nun die neue Datei mit Ihrem bevorzugten Editor und geben Sie Folgendes ein:

// mapping PgUp and PgDown to other keys partial alphanumeric_keys xkb_symbols "rwinmenu" { key <RWIN> { [ Prior ] }; key <MENU> { [ Next ] }; };  // same but switched partial alphanumeric_keys xkb_symbols "menurwin" { key <MENU> { [ Prior ] }; key <RWIN> { [ Next ] }; }; 

Erstellen Sie nun eine Basiskeymap:

$ setxkbmap -print > ~/.config/xkb/mymap 

Bearbeiten Sie diese Datei und fügen Sie Ihre neue Option in der Symbolliste im Format hinzu +optionfile(function):

xkb_keymap { xkb_keycodes { include "evdev+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete"}; xkb_symbols { include "pc+us+inet(evdev)+pgupdown(rwinmenu)" }; xkb_geometry { include "pc(pc105)" }; }; 

Wenn Sie sich später entscheiden, dass Sie PgUp auf der Menütaste bevorzugen stattdessen ersetzen Sie einfach rwinmenumit menurwinda und du bist gut zu gehen.

Nun können Sie diese Datei laden mit xkbcomp:

$ xkbcomp -I$HOME/.config/xkb $HOME/.config/xkb/mymap $DISPLAY 

Starten Sie xev(aus dem x11-utilsPaket) und drücken Sie die Tasten, um sicherzustellen, dass die Änderungen geladen werden:

# sed to scrape out non-kbd events; xev is pretty spammy $ xev | sed -ne '/^KeyPress/,/^$/p' 

Wenn Sie alles an den richtigen Stellen erhalten haben, sollten Sie mit der Menütaste Nächste Ereignisse und mit der Win_R-Taste Prior senden. Wenn das funktioniert, können Sie die oben hinzufügen xkbcompBefehl zu Ihrem .xinitrcoder .xprofileso läuft es, wenn Sie sich anmelden oder starten X.

... es sei denn du gibst Gnome. (und / oder möglicherweise KDE.) Dann gehen wir weiter durch das Kaninchenloch und überlegen, wie man diese neue Option in Systemdateien einfügt, damit die DEs es als Standardoption nutzen können. Im Wesentlichen wird das beinhalten

  1. Platzieren Ihrer Optionsdatei /usr/share/X11/xkb/symbols/(deshalb pgupdownwar es eine gute Option, da es keine Symboldatei mit diesem Namen gibt)
  2. und dann fügen Sie Zeilen hinzu /usr/share/X11/xkb/rules/evdev*(um das optionsfile:functionFormat der Befehlszeile dem +optionsfile(function)verwendeten von zuzuordnen xkbcomp)
  3. und schließlich das DE einstellen, um Ihr bevorzugtes Layout und die gewünschten Optionen zu verwenden.

Schritt 2: Wenn Sie diese Route ausführen müssen, müssen Sie möglicherweise Schritt 2 nach xkb-bezogenen Upgrades erneut ausführen.

# in /usr/share/X11/xkb/rules/evdev # find the line that starts "! option = symbols" and add new lines: pgupdown:rwinmenu = +pgupdown(rwinmenu) pgupdown:menurwin = +pgupdown(menurwin)  # in /usr/share/X11/xkb/rules/evdev.lst # find the line that starts "! option" and add a new line: pgupdown:rwinmenu PgUp on RWin, PgDown on Menu pgupdown:menurwin PgUp on Menu, PgDown on RWin  # in /usr/share/X11/xkb/rules/evdev.xml # .... ummm .... ¯\_(ツ)_/¯ .... sorry! .... 

Schritt 3: Prüfen Sie, ob localectlauf Ihrem System verfügbar ist. localectlkann die Tastatur der virtuellen Konsole konfigurieren sowie eine standardmäßige X11-Tastatur einrichten. Da beide Optionen in den Regeldateien eingerichtet sind, können Sie entweder rwinmenuoder menurwinin diesen Befehlen verwenden.

$ localectl set-x11-keymap us pc "" pgupdown:rwinmenu # format [layout] [model] [variant] [option1,...,optionN] 

Für Gnome musst du verwenden dconf-editoroder gsettings:

# set layout/variant $ gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us')]"  # set options $ gsettings set org.gnome.desktop.input-sources xkb-options "['pgupdown:rwinmenu']" 

Eine andere Option für Gnome ist das Deaktivieren der Tastatureinstellungen. Dadurch sollte entweder die Option localectl oder die Option user-config wirksam bleiben:

$ gsettings set org.gnome.settings-daemon.plugins.keyboard active false 

Fehlerbehebung: Wenn Ihre Änderungen scheinbar nicht erfasst werden und Sie sicher sind, dass Sie die Dateiformatierung richtig vorgenommen haben, löschen Sie alle *.xkmDateien aus /var/lib/xkb/. Hierbei handelt es sich um vorkompilierte Keymaps, die sich möglicherweise im Weg befinden.

Ressourcen:

Also habe ich tatsächlich den Schlüssel benutzt für Prior stattdessen interessiert es Sie, zu aktualisieren, bevor ich Kopfgeld poste. William vor 7 Jahren 0
Ich habe festgestellt, dass Ihr Konto nicht registriert ist. Ihre Antworten sind * großartig *, also holen Sie sich ein Konto. Fragen Sie nach einer Fusion von uns, wenn etwas schief geht. Journeyman Geek vor 7 Jahren 1
2
William

Das Ändern der Tasten unter / usr / share / X11 / xkb / symbols / pc scheint zu funktionieren. Ich konnte die andere Antwort oben nicht finden. Dann verwenden Sie die neuen Tasten mit der Umschalttaste.

key <RWIN> { [ Prior ] }; key <MENU> { [ Next ] }; 
0
Warley

Das standardmäßige Ubuntu-Terminal unterstützt pgup und pgdn. Die Tastenkombinationen sind [shift] + pgup und [shift] + pgdn. Die meisten anderen Terminals, die Sie ausprobieren, haben die gleichen Tastenkombinationen, meistens, weil pgup und pgdn für bestimmte Dinge bereits von bash übernommen werden, sodass Sie es nicht wirklich verwenden können.

edit: wenn Sie Ihre pgup- und pgdn-Schlüssel neu zuordnen müssen, können Sie diese Antwort auf askubuntu für linux folgen:

https://askubuntu.com/questions/24916/how-do-i-remap-certain-key-oder-gerate/24930#24930

Dafür wären noch die Tasten Page Up und Page Down erforderlich. (Aber in der Tat war der Titel der Frage ziemlich schlecht.) Arjan vor 8 Jahren 0
oh ok, cool. Wenn Sie Befehle neu zuordnen müssen, können Sie die Hinweise in dieser Antwort befolgen. http://askubuntu.com/questions/24916/how-do-i-remap-certain-key-oder-gerate/24930#24930 Warley vor 8 Jahren 0
Wenn das gemacht werden kann, um beispielsweise mit Shift zu arbeiten, dann sollten Sie Ihrer Meinung nach [edit] (http://superuser.com/posts/1136810/edit) Ihre Antwort geben? (Beachten Sie, dass ich nicht der Fragesteller bin ...) Arjan vor 8 Jahren 0
Ich habe versucht, die Schlüssel neu zuzuordnen, und sie registrieren sich nicht bei ihrem neuen Standort. William vor 8 Jahren 0