Utilizzo della riga di comando con dislessia


57

Sono nuovo di Linux e, essendo dislessico, trovo difficile lavorare da una riga di comando. Quali aiuti o consigli sono disponibili per aiutare a risolvere questo problema?


4
Quando si trascina un file nel terminale, questo stampa automaticamente il percorso completo. Quando si preme il tasto freccia su, stampa automaticamente l'ultimo comando.
Karel,

21
È una buona domanda, ma trovo difficile immaginare quali siano i tuoi problemi. Si prega di modificare e spiegare che cosa ti sfida esattamente più. Le possibili soluzioni potrebbero essere più semplici di quanto pensi (vedi altri commenti).
dessert

6
Le scorciatoie da tastiera aiutano molto , trova quelle utili qui: askubuntu.com/q/45521/507051 e askubuntu.com/q/444708/507051
dessert

4
Per risparmiare tempo digitando un lungo percorso su un file trascino l'icona del file nel terminale per stampare il percorso del file e quindi copiarlo / incollarlo nel comando successivo.
Karel,

3
Zsh può effettivamente correggere automaticamente le lettere scambiate nei nomi dei comandi! (Le pagine del manuale contengono ulteriori informazioni.)
SilverWolf - Ripristina Monica il

Risposte:


90

Puoi provare alcune cose per migliorare la tua esperienza con la riga di comando.

  1. Utilizzare il completamento della scheda (compilare automaticamente i comandi parzialmente digitati premendo Tab) ogni volta che è possibile.
  2. Premere (tasto freccia su) per stampare automaticamente l'ultimo comando e continuare a premere & (tasti freccia su e giù) per scorrere la cronologia dei comandi.
  3. Trascina un file nel terminale per stampare automaticamente il percorso completo.
  4. Premere Alt+ .(punto) per inserire l'ultimo argomento dall'ultimo comando eseguito (utile per esempio mkdirseguito da cd).
  5. Utilizza le scorciatoie da tastiera (vedi questo e questo ).
  6. Usa gli alias Bash (vedi questo e questo ).
  7. Utilizzare history, è possibile visualizzare la cronologia dei comandi e quindi utilizzare il numero del comando storico per rieseguire il comando (ad es. Ripetere il comando # 352 con !352). Alias ​​semplicemente hper un accesso facile e veloce.
  8. Utilizzare una ricerca terminale inversa ( Ctrl+ R, quindi iniziare a digitare) per abbinare i comandi precedenti; è un modo rapido per trovare cose precedenti.
  9. Usa una shell che completa comandi e argomenti opzionali come Zsh o fish .
  10. Utilizzare un carattere che aumenti la leggibilità per i lettori con dislessia , ad esempio " OpenDyslexic ", in Terminale.
  11. Ascolta ciò che è sullo schermo mentre stai leggendo; abilitare uno screen reader come Orca . Puoi farlo leggere solo una parola, un'intera pagina, scrivere parole lettera per lettera, cambiare velocità, volume, livello di dettaglio, ecc.
  12. Ingrandisci una parte dello schermo mentre stai leggendo; dai un'occhiata alle app che ingrandiscono con le scorciatoie da tastiera, come Magnifier .
  13. Avanzato: personalizza il modo in cui viene visualizzato l'output, come l'impostazione dei colori del testo condizionale. La distro Ubuntu predefinita fornisce numerosi miglioramenti al Terminale. Quando si utilizza lsper elencare i contenuti di una directory, ad esempio, le sottodirectory stampano in blu e i nomi dei file vengono stampati in bianco, rendendo più semplice distinguerli. Per altri esempi, dai un'occhiata alle molte personalizzazioni che le persone hanno condiviso. Vale sicuramente la pena provare alcuni "così come sono". Un buon punto di partenza è il famoso repository di dotfile Awesome .

1
@flith Dovrebbe essere !352invece history 352, vero?
pomsky,

2
Finora ho cambiato il carattere dislessico e abilitato i colori nel terminale. Ciò ha contribuito alla lettura e al mal di testa. Ancora arando i libri Ubuntu Unleashed e Linux Bible. Vim e alcuni altri editor possono fornire alcune risposte.
Dale Davidson,

Ctrl + R - Non l'ho mai visto prima. È incredibilmente utile
Noel Evans il

16

Cercherò una risposta completa. Se ho lasciato qualcosa fuori, ti preghiamo di commentare e lo aggiungerò.

Tab completamento

Il completamento della scheda è il tuo più grande aiuto qui. Premendo Tabsi completerà il comando per quanto identificabile in modo univoco. Premendo Tabdue volte verrà visualizzato un elenco di opzioni. Digitando abbastanza caratteri per identificare quale opzione si desidera e premere di Tabnuovo per completarla. Funziona anche con nomi di percorso / file.

Ad esempio, supponiamo che io abbia un utente di nome Paul e che abbia il file text123.txt e text124.txt nella sua cartella Download:

Potrei digitare / he Tabbash mi darà /home/. Quindi digitare P Tabe ottenere /home/Paul/. E continua in questo modo fino a quando non ho il file e il percorso completi.

Espansione del percorso / nome file

Il completamento automatico accetta anche jolly *e ?. ?corrisponde a un singolo carattere e *corrisponde a tutti i caratteri (o nessuno). Utilizzando l'esempio sopra, potrei digitare:

/h*/P*/Dow*/t*4*allora Tabe bash mi darà /home/Paul/Downloads/text124.txt. Se sono sicuro che sto abbinando il file corretto, posso semplicemente premere Enterper eseguire il comando senza prima espanderlo.

Alcuni riferimenti di directory comuni sono:

  • ~ per la tua home directory.
  • .. directory principale
  • .directory corrente; nel caso tu voglia essere assolutamente sicuro che bash si trovi nella directory giusta.

Tasti rapidi

I tasti freccia su e freccia giù consentono di spostarsi in un elenco di comandi utilizzati di recente. Premi Ctrl+ Gper uscire dalla modalità di ricerca della cronologia. Alt+ .ripete l'ultimo argomento del comando precedente.

alias

Bash ti consente di specificare gli alias. Se scopri che spesso digiti male un comando allo stesso modo, puoi aggiungere alias personalizzati modificando ~/.bashrce aggiungendo linee come questa:

alias agi='apt-get install'
alias mkdri='mkdir'

Quindi accedere nuovamente per attivarli.


4
~non è unalias , è piuttosto esteso da bashcome descritto in ESPANSIONE / Tilde espansione inman bash - ~viene espansa a $HOME, ~+a $PWDe ~-per $OLDPWDesempio. Puoi effettivamente impostare ad es. alias ~='cd ~'Ed è molto utile tornare rapidamente alla home directory, ma questo è totalmente diverso (e non danneggia) l'espansione.
dessert

Bene, man bashha un'intera sezione EXPANSION... Hai già coperto un po 'di espansione del percorso.
dessert

Sul mio sistema non riesco a far funzionare la maggior parte delle altre espansioni nella CLI. Ma mi riorganizzerò per correggere la spiegazione della tilde.
ravery

1
@WJAndrea: la shell ha un supporto speciale per ..e .; ad esempio, cd ..rimuove effettivamente l'ultimo segmento del percorso dalla directory di lavoro corrente, anziché aggiungere un ..segmento.
Ruakh,

1
@WJAndrea e ravery: Ctrl + G esce dalla ricerca della cronologia dei comandi che si inizia con Ctrl + R. Una volta avviato, basta digitare l'inizio di un comando e ti mostrerà quello più attuale corrispondente. Sfoglia i comandi corrispondenti con Ctrl + R, esegui un comando con Invio o modificalo con un tasto che modifica la posizione del cursore, ad esempio Home, Fine, frecce ecc. Questa modalità di ricerca è estremamente utile se desideri trovare un comando recente il suo nome: provalo, ti lascerà a bocca aperta. ;)
dessert

12

La shell Zsh (o almeno la versione che sto usando, Oh-my-ZSH ) ha una funzione che ti corregge se fai piccoli errori di battitura nei nomi dei comandi e dei file:

$ pyhton scirpt.py
zsh: correct 'pyhton' to 'python' [nyae]? y
zsh: correct 'scirpt.py' to 'script.py' [nyae]? y
...

Puoi accenderlo con la seguente riga nel tuo .zshrc:

# Uncomment the following line to enable command auto-correction.
ENABLE_CORRECTION="true"

può essere reso automatico? so che sta chiedendo problemi, mr fr- ./ -oe--rvoeorrpne-st->zsh: automatically correcting to rm -rf / --no-preserve-root
cat

1
@cat Non per quanto ne so. Il motivo che hai fornito è uno dei motivi per cui, ma ti impedirebbe anche di fare cose legittime come mv file1 file1.old, perché correggerebbe il secondo nome di file al primo, rendendolo un no-op.
Graipher


11

Potresti provare a usare il carattere dislessico aperto nel tuo terminale. Potrebbe aiutare a leggere il testo. Questo presuppone che tu stia usando il terminale Ubuntu predefinito, che spero sia lo stesso del terminale GNOME.

https://opendyslexic.org/

  1. Scaricalo.
  2. Installa il carattere.
  3. Apri un terminale, vai alla barra dei menu e seleziona Modifica-> Preferenze profilo
  4. Attiva il carattere personalizzato e seleziona il carattere monocromatico dislessico aperto.

L'installazione può essere eseguita con sudo apt install fonts-opendyslexic.
Chai T. Rex,

2

Per completare la risposta di @pomsky, vorrei aggiungere alcuni punti:

  • Impara come automatizzare le cose, in particolare impara come forfunzionano i loop, come readfunziona, come iffunziona, cosa sono [ ]e come [[ ]]utilizzare la modalità rigorosa bash non ufficiale , perché una volta che uno script è valido, è più facile non commettere errori.

  • se puoi, installa il pacchetto bash-completamento (può venire con nomi diversi a seconda delle versioni)

  • Utilizzare rmcon l' -iinterruttore in situazioni pericolose (come con sudo), o forse installare e utilizzare rmtrash(che porterà immondizia nella spazzatura)

  • Utilizzare cpcon l' -nopzione, che non sovrascriverà i file esistenti durante la copia. (Naturalmente, più utile quando si copia in modo ricorsivo)

  • Scopri come utilizzare il ~/.bashrcfile, può rendere la $PS1variabile più chiara per te.

E forse il più difficile se sei giovane:

  • Cerca di conoscere un po 'meglio lo stato dell'arte e gli strumenti comuni di ciò che stai facendo.

    • Ad esempio, se sei uno studente che impara a sviluppare con c ++, prova a impostare il $CXXFLAGStuo ~/.bashrc. (Ad esempio: export CXXFLAGS=" -std=c++17 -fmax-errors=1 -Wall -Wextra -pedantic -Werror "secondo la tua versione c ++ ovviamente, quindi suppongo c ++ 11 per Ubuntu), quindi compila con make main.cppe le tue opzioni verranno trasferite. Nota che questo set di opzioni è piuttosto duro: tutto ciò che è corretto e standard sarà visto come un errore e ti impedirà di compilare.

2

Prova la shell interattiva "FISH". Disponibile nei repository.

Ho avuto difficoltà con la riga di comando usando BASH. Fish ricorda tutti gli ultimi comandi e offre il completamento. sudo apt installa fish quindi nel tipo bash; pesce. Se ti piace, consulta le istruzioni su come impostarlo come shell predefinita. Ci sono altre shell disponibili; FISH è la mia scelta. Una volta iniziato, potrebbe piacerti.


2

Ho imparato che ero dislessico dopo essere stato un ingegnere Unix e un abile utilizzatore di shell per molti anni su molte piattaforme diverse (Linux, AIX e Solaris).

La dislessia colpisce persone diverse a diversi livelli, quindi il presupposto che "vediamo le cose fuori servizio" può essere una semplificazione eccessiva e frustrante se non ti influenza in questo modo - trovo davvero estremamente leggibile il carattere predefinito dei terminali a larghezza fissa ( il bianco-nero sembra carino per me)

Le conchiglie sono difficili da imparare con molti acronimi e convenzioni non intuitive da navigare, il che spesso rende difficile l'apprendimento per le persone che amano le parole semplici con schemi regolari.

Ora capisco che la maggior parte dei dislessici impara e memorizza dall'esperienza diretta. Siamo molto poveri nell'apprendimento automatico o nel consumo di una teoria prolissa. Una volta che abbiamo digerito la teoria per applicazione, tuttavia, di solito si attacca rapidamente con una profonda comprensione intrinseca. A tal fine, concentrati sulla ricerca di esempi di shell e sulla loro prova digitandoli a mano e comprendendo cosa fa ogni riga. Sperimenta, rompi le cose, resta sveglio tutta la notte aggiustandolo.

Nel tempo ricorderete sempre più comandi e schemi di punti nel modo in cui gli sviluppatori hanno implementato i loro programmi che possono essere applicati al comando successivo. Tuttavia, non tutti i comandi seguono le stesse convenzioni quando si passano argomenti / parametri, quindi ci vorrà del tempo per apprendere comandi simili.

Come chiunque altro, dopo qualche anno diventerà una seconda natura. Nel tempo, tuttavia, potresti ottenere il vantaggio dislessico in cui sai intuitivamente come risolvere soluzioni ed eseguire complesse analisi delle cause alla radice usando la tua sesta capacità sensoriale di individuare schemi o interruzioni di schemi.

Con l'eccezione del completamento della scheda e dei consigli chiave su, trovo che la maggior parte delle risposte renderà l'esperienza ancora più travolgente. Ignorali. La semplificazione è la chiave


2

C'è uno strumento, che si trova tra uno scherzo e un aiutante inestimabile.

https://github.com/nvbn/thefuck

Puoi provarlo in aggiunta ad altri consigli in questo thread. L'idea principale è che quando stai scrivendo qualcosa e ricevi il comando sconosciuto o altro, questo strumento lo correggerà e lo eseguirà nuovamente.

Non è un proiettile d'argento, ma può valere la pena provarlo.

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.