Rendi la riga numerica in riga simboli per impostazione predefinita


12

Come programmatore mi ritrovo a digitare simboli molto più spesso di quanto non faccia i numeri. Quindi sarebbe bello se la riga dei numeri sulla tastiera producesse simboli per impostazione predefinita.

I risultati finali dovrebbero essere: 6produrrebbe ^e Shift+ 6darebbe 6.

Ho provato a passare a Dvorak per un po ', ma la combinazione di una curva di apprendimento ripida e una scadenza incombente non la rende una soluzione attraente.

Idealmente mi piacerebbe farlo anche su Windows, ma concentriamoci su Debian in quanto è la mia macchina di sviluppo principale.

Da quello che trovo sul web la funzione "Shift Lock", attivata premendo rapidamente il tasto Shift, fa esattamente questo su Windows, ma non sono riuscito a trovare alcun riferimento * nix.

Modifica: Idealmente la soluzione non dovrebbe interferire con i tasti di riga non num come, ad esempio, [se riesco a conviverci (come {è più comune in C di [).

Risposte:


8

Dalla tua domanda capisco che hai solo bisogno di alcuni tasti per funzionare esattamente come quando premi il tasto Maiusc e viceversa. Per questo è possibile creare il proprio layout di tastiera personalizzato. Per questo è possibile scaricare Microsoft Keyboard Layout Creator MSKLC e quindi utilizzarlo per creare layout personalizzati per il proprio sistema. Anche dopo aver creato il layout personalizzato Dovresti chiederti di installare il layout creato, quindi scegli SÌ per andare alla cartella in cui si trova il programma di installazione e installare il layout personalizzato. Inoltre, è necessario riavviare il sistema dopo aver creato il layout personalizzato. Dopodiché devi solo attivarlo dal Pannello di controllo.

Vai a (per Windows 8)

  1. Premi il pulsante Windows + I (per aprire il menu Impostazioni Charms)
  2. Fai clic sul pulsante Tastiera (angolo in basso a destra)
  3. Dovresti vedere il tuo layout personalizzato
  4. Selezionalo
  5. E ora il tuo layout personalizzato verrà attivato

Anche per un tutorial completo su MSKLC puoi ottenerlo qui e qui . Vedi entrambi i tutorial in caso di problemi.


1
La domanda riguarda Debian.
harrymc,

@harrymc Beh, sì e no. "Idealmente mi piacerebbe farlo anche su Windows, ma concentriamoci su Debian in quanto è la mia macchina di sviluppo principale." Quindi la risposta non è esattamente invalida nel contesto della domanda.
un CVn

Beh, suppongo che avrei dovuto specificare Windows 7 in quanto non possiedo una macchina Win8. Una risposta valida comunque.
rath

@rath non devi preoccuparti Vorrei mettere i dettagli per win 7 in esecuzione su una scatola virtuale.
Hunter

@rath Ecco i dettagli per farlo in W7. Fare riferimento a questi collegamenti: - support.microsoft.com/kb/258824 , support.microsoft.com/kb/306560 e sevenforums.com/tutorials/86239-keyboard-layout-change.html . Vedi anche che quando aggiungi un layout di tastiera personalizzato (o altri forniti da Windows) solo allora (quando hai attivato più di 1 layout di tastiera) sarai in grado di vedere la barra della lingua (nella barra delle applicazioni, proprio come Windows 8 tranne che è nel menu degli accessi).
Hunter

5

Dalla discussione Ruolo inverso della pressione di shift + numero deriva questo file xmodmap:

keycode  10 = exclam 1 exclam 1
keycode  11 = at 2 at 2
keycode  12 = numbersign 3 numbersign 3
keycode  13 = dollar 4 dollar 4
keycode  14 = percent 5 percent 5
keycode  15 = asciicircum 6 asciicircum 6
keycode  16 = ampersand 7 ampersand 7
keycode  17 = asterisk 8 asterisk 8
keycode  18 = parenleft 9 parenleft 9
keycode  19 = parenright 0 parenright 0

Vedi il link sopra per maggiori informazioni sull'uso di questo file.


2

È possibile utilizzare dumpkeyse e loadkeys(per la console) o xmodmap(per X) per ridefinire la funzione di un determinato tasto della tastiera. xevpuò dirti come X vede un determinato input di chiave.

Ti consiglio di stampare prima l'intero set di espressioni keymap; è possibile che il sistema sia configurato in modo leggermente diverso all'inizio, nel qual caso quanto sopra non corrisponderà esattamente. Per fare ciò, basta fare xmodmap -pke(per stampare la tabella keymap come espressioni).

Ad esempio, per rimappare 1su !e Shift+ 1su 1in X, per prima cosa usiamo xev per scoprire che 1è il codice chiave 10 (nel mio caso; assicurati di verificare). Per rimappare il tasto per invertire la sua funzione spostata:

xmodmap -e 'keycode 10 = exclam 1 exclam 1 exclamdown onesuperior exclamdown'

Per ripristinare la normale funzione (corrisponde a ciò che viene stampato da xmodmap -pke):

xmodmap -e 'keycode 10 = 1 exclam 1 exclam exclamdown onesuperior exclamdown'

Le modifiche hanno effetto immediato e influiscono almeno sull'intera sessione X (non sono locali per l'applicazione che avvia xmodmap).

Una volta che hai una serie di comandi xmodmap che imposta la tastiera nel modo desiderato, memorizzali in ~ / .xmodmaprc, quindi aggiungili a ~ / .xsessionrc (creandolo se non esiste):

xmodmap ~/.xmodmaprc

La parte che si desidera aggiungere a .xmodmaprc è semplicemente la keycode XX = yyy ...parte del comando da riga di comando (ovvero l'argomento per l' -eopzione).


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.