GNU/Linux >> Linux Esercitazione >  >> Linux

Come creare macro di Linux e associazioni di tasti funzione nel file .intputrc

Readline ti offre anche la possibilità di mappare le tue combinazioni di tasti personalizzate modificando il file di configurazione .inputrc nella tua home directory.

Di seguito sono riportati due tipi di combinazioni di tasti personalizzate che puoi definire:

  1. Macro
  2. Funzioni

Macro

È possibile definire una combinazione di tasti che, una volta eseguita, riempirà una stringa di caratteri nella posizione corrente del cursore. Per fare ciò aggiungi una riga con il seguente formato al tuo file di configurazione .inputrc (o crea il file se non esiste ancora):

<key combination>: "<string of characters>"

Ad esempio, supponiamo che mi ritrovi a reindirizzare ripetutamente l'output al file "~/debug_output.txt". Potrei definire una macro nel mio .inputrc aggiungendo la seguente riga:

Control-g: " > ~/debug_output.txt"

Ora, ogni volta che digito la combinazione di tasti Control-g, l'istruzione di reindirizzamento verrà aggiunta dopo il mio cursore, permettendomi di aggiungerla facilmente alla fine di altri comandi.

Tieni presente quanto segue quando crei le macro:

  • Posso scrivere le combinazioni di tasti in inglese (per ulteriori informazioni su questo, vedere la pagina man di bash. Cerca la sezione "Readline Key Bindings")
  • La sequenza di caratteri che deve essere inserita dalla macro deve essere racchiusa tra virgolette (")
  • La scelta di Control-g è stata arbitraria, potresti scegliere una combinazione più significativa per te.
  • È possibile ignorare le associazioni di tasti predefinite (tenerlo a mente quando ne definisci le tue)
  • Affinché la combinazione di tasti abbia effetto, è necessario avviare una nuova istanza della shell (il file di configurazione .inputrc viene letto all'avvio della shell)

Funzioni

Puoi anche creare una combinazione di tasti che, una volta eseguita, chiamerà una funzione. Readline offre un gran numero di funzioni predefinite tra cui scegliere. Per mappare una combinazione di tasti su una funzione predefinita:

<key combination>: <function-name>

Per un elenco delle funzioni predefinite disponibili, vedere il manuale GNU Readline.

È anche possibile definire le proprie funzioni personalizzate, ma ciò richiede la loro scrittura in C ed è al di fuori dello scopo di questo tutorial. Potremmo trattarlo come tutorial separato in seguito.

Un'utile funzione predefinita è il menu completo. Fornisce un comportamento di completamento automatico alternativo.

Il comportamento predefinito per il completamento automatico (associato al tasto TAB) è:

  • Compila il comando parziale/directory/nomefile se esiste una singola corrispondenza
  • visualizza un elenco di possibili corrispondenze quando ne esiste più di 1

menu-complete invece scorrerà l'elenco delle possibili corrispondenze, riempiendo la successiva corrispondenza possibile ogni volta che viene chiamata la funzione. Questo comportamento può essere utile, specialmente quando si completano automaticamente nomi di file più lunghi. Per rimappare la chiave TAB per utilizzare questo comportamento, aggiungi la seguente riga al tuo file .inputrc.

TAB: menu-complete

Nota che questa nuova combinazione di tasti non avrà effetto nella shell corrente, devi avviare una nuova istanza per ricaricare il file di configurazione .inputrc

In questo tutorial abbiamo appreso che le associazioni di tasti della riga di comando di Linux sono alimentate da uno strumento chiamato Readline. Una combinazione di tasti può essere di 1 di 2 tipi:

  • Macro:espande una sequenza di caratteri
  • Funzione:esegue un'azione

Readline ci fornisce una serie di combinazioni di tasti predefinite, ma ci offre anche la flessibilità di crearne di nostre nel file di configurazione .inputrc. Infine, per vedere tutte le combinazioni di tasti correnti, possiamo usare il comando 'bind'.

bind -p

Linux
  1. Come creare un file ZIP protetto da password in Linux

  2. Come creare o aumentare lo spazio di scambio in Linux

  3. Come reindirizzare l'output su un file e Stdout in Linux

  4. Come creare uno scambio in Linux

  5. Come crittografare e decrittografare un file utilizzando GnuPG in Linux

File host Linux:come modificarlo e utilizzarlo?

Come creare directory da un file di testo in Linux

Come visualizzare e creare file e directory nascosti in Linux

Come creare una passphrase chiave SSH in Linux

Come creare un file di grandi dimensioni da 1 GB o 10 GB in Linux

Come creare e utilizzare file di scambio su Linux