Utilisation de la ligne de commande avec la dyslexie

57

Je suis nouveau sur Linux, et étant dyslexique, le travail à partir d’une ligne de commande est un défi. Quels outils ou conseils sont disponibles pour vous aider à résoudre ce problème?

Dale Davidson
la source
4
Lorsque vous faites glisser un fichier dans le terminal, le chemin complet est automatiquement imprimé. Lorsque vous appuyez sur la flèche vers le haut, la dernière commande est automatiquement imprimée.
Karel
21
C'est une bonne question, mais j'ai du mal à imaginer quels sont vos problèmes. Veuillez éditer et expliquer ce qui vous interpelle le plus. Les solutions possibles peuvent être plus simples que vous ne le pensez (voir autres commentaires).
Dessert
6
Les raccourcis clavier aident beaucoup , trouvez-les utiles ici: askubuntu.com/q/45521/507051 et askubuntu.com/q/444708/507051
dessert
4
Pour gagner du temps lors de la saisie d'un long chemin vers un fichier, faites glisser l'icône du fichier dans le terminal pour imprimer le chemin du fichier, puis copiez / collez-le dans la commande suivante.
Karel
3
Zsh peut réellement corriger automatiquement les lettres échangées dans les noms de commande! (Les pages de manuel ont plus d'informations.)
SilverWolf - Rétablir Monica

Réponses:

90

Vous pouvez essayer quelques choses pour améliorer votre expérience avec la ligne de commande.

  1. Utilisez la complétion par tabulation (remplissez automatiquement les commandes partiellement saisies en appuyant sur Tab) dans la mesure du possible.
  2. Appuyez sur (flèche haut) pour imprimer automatiquement la dernière commande et maintenez enfoncées les touches & (touches fléchées haut / bas) pour parcourir l'historique des commandes.
  3. Faites glisser un fichier dans le terminal pour imprimer automatiquement le chemin complet.
  4. Appuyez sur Alt+ .(point) pour insérer le dernier argument de la dernière commande exécutée (utile pour, par exemple, mkdirsuivi de cd).
  5. Utilisez les raccourcis clavier (voir ceci et cela ).
  6. Utilisez des alias Bash (voir ceci et cela ).
  7. Utilisez history, vous pouvez afficher l'historique des commandes , puis utiliser le numéro de la commande d'historique pour réexécuter la commande (par exemple, rétablir la commande n ° 352 avec !352). Dites-le simplement hpour un accès rapide et facile.
  8. Utilisez une recherche de terminal inverse ( Ctrl+ R, puis commencez à taper) pour faire correspondre les commandes précédentes; c'est un moyen rapide de trouver des choses de plus tôt.
  9. Utilisez un shell qui complète les commandes et les arguments facultatifs tels que Zsh ou fish .
  10. Utilisez une police qui améliore la lisibilité pour les lecteurs dyslexiques , par exemple " OpenDyslexic ", dans Terminal.
  11. Écoutez ce que vous lisez à l'écran. activer un lecteur d'écran comme Orca . Vous pouvez le faire lire un seul mot, une page entière, épeler des mots lettre par lettre, changer de vitesse, de volume, de niveau de détail, etc.
  12. Agrandissez une partie de l'écran pendant que vous lisez. jetez un coup d'œil aux applications qui effectuent un zoom avec des raccourcis clavier, comme Magnifier .
  13. Avancé: personnalisez l’affichage de la sortie, par exemple en définissant des couleurs de texte conditionnelles. La distribution Ubuntu par défaut apporte plusieurs améliorations à Terminal. Lorsque vous utilisez lspour répertorier le contenu d'un répertoire, par exemple, les sous-répertoires sont imprimés en bleu et les noms de fichiers en blanc, ce qui facilite la distinction entre les deux. Pour d'autres exemples, jetez un coup d'œil aux nombreuses personnalisations que les gens ont partagées. Certains valent certainement la peine d'être essayés "tels quels". Un bon point de départ est le populaire dépôt de fichiers de fichiers Awesome .
pomsky
la source
1
@flith C'est censé être à la !352place de history 352, innit?
Pomsky
2
Jusqu'à présent, j'ai changé pour la police dyslexique et activé les couleurs dans le terminal. Cela a aidé avec la lecture et les maux de tête certains. Nous parcourons toujours les livres Ubuntu Unleashed et Linux Bible. Vim et certains des autres éditeurs peuvent fournir des réponses.
Dale Davidson
Ctrl + R - Je n'ai jamais vu ça auparavant. C'est incroyablement utile
Noel Evans le
16

Je vais tenter une réponse complète. Si j'ai omis quelque chose, commentez et je l'ajouterai.

Tab achèvement

La complétion par tabulation est votre plus grande aide ici. Appuyez sur Tabpour terminer la commande dans la mesure où elle est uniquement identifiable. Un Tabdouble appui donnera une liste d’options. Taper suffisamment de caractères pour identifier l’option souhaitée et appuyer à Tabnouveau pour la terminer. Cela fonctionne également avec les noms de chemin / fichier.

Par exemple, supposons que j'ai un utilisateur nommé Paul et qu'il ait les fichiers text123.txt et text124.txt dans son dossier Téléchargements:

Je pourrais taper / h Tabet bash me le donnera /home/. Puis tapez P Tabet obtenez /home/Paul/. Et continuez ainsi jusqu'à ce que j'ai le fichier complet et le chemin.

Extension du nom de chemin / fichier

La saisie automatique accepte également les caractères génériques *et ?. ?correspond à un seul caractère et *correspond à tous les caractères (ou aucun). En utilisant l'exemple ci-dessus, je pourrais taper:

/h*/P*/Dow*/t*4*alors Tabet bash me donnera /home/Paul/Downloads/text124.txt. Si je suis sûr que je fais correspondre le bon fichier, je peux simplement appuyer sur Enterpour exécuter la commande sans le développer au préalable.

Certaines références de répertoire courantes sont:

  • ~ pour votre répertoire personnel.
  • .. Dossier Parent
  • .répertoire actuel; au cas où vous voudriez être absolument sûr que bash sera dans le bon répertoire.

Raccourcis clavier

Les flèches haut et bas vous permettent de naviguer dans une liste de commandes récemment utilisées. Appuyez sur Ctrl+ Gpour sortir du mode de recherche historique. Alt+ .répète le dernier argument de la commande précédente.

Alias

Bash vous permet de spécifier des alias. Si vous constatez souvent que la commande est mal typée, vous pouvez ajouter des alias personnalisés en modifiant ~/.bashrcet en ajoutant des lignes comme celles-ci:

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

Puis reconnectez-vous pour les activer.

délirant
la source
4
~est pasalias , il est plutôt développé par bashcomme décrit dans EXPANSION / Tilde Expansion enman bash - ~est étendu à $HOME, ~+à $PWDet ~-à , $OLDPWDpar exemple. Vous pouvez en fait paramétrer par exemple alias ~='cd ~'et il est très utile de revenir rapidement au répertoire d’origine, mais c’est totalement différent de l’extension (et cela ne fait pas de mal).
Dessert
Eh bien, man basha toute une section EXPANSION… Vous avez déjà couvert un peu d’extension de nom de chemin.
Dessert
Sur mon système, il semble impossible de faire fonctionner la plupart des autres extensions dans CLI. Mais je vais me réorganiser pour corriger l'explication du tilde.
Ravery
1
@WJAndrea: Le shell a un support spécial pour ..et .; par exemple, cd ..supprime réellement le dernier segment de chemin du répertoire de travail actuel, plutôt que d'ajouter un ..segment.
Ruakh
1
@WJAndrea and Ravery: Ctrl + G quitte la recherche dans l'historique des commandes que vous commencez avec Ctrl + R. Une fois démarré, tapez simplement le début d’une commande et elle vous montrera celle qui correspond le mieux. Parcourez les commandes correspondantes avec Ctrl + R, exécutez une commande avec Entrée ou modifiez-la avec une touche qui modifie la position du curseur, par exemple Origine, Fin, flèches, etc. Ce mode de recherche est extrêmement utile si vous souhaitez rechercher une commande récente son nom - essayez-le, ça va vous couper le souffle. ;)
dessert
12

Le shell Zsh (ou au moins la version que j'utilise, Oh-my-ZSH ) a une fonctionnalité qui vous corrige si vous faites de petites fautes de frappe dans les noms de commande et de fichier:

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

Vous pouvez l'activer avec la ligne suivante dans votre .zshrc:

# Uncomment the following line to enable command auto-correction.
ENABLE_CORRECTION="true"
Graipher
la source
peut-il être fait automatique? Je sais qu'il demande des ennuis, mr fr- ./ -oe--rvoeorrpne-st->zsh: automatically correcting to rm -rf / --no-preserve-root
cat
1
@cat Pas autant que je sache. La raison que vous avez invoquée en est une raison, mais elle vous empêcherait également de faire des choses légitimes telles que mv file1 file1.old, car le deuxième nom de fichier serait corrigé en premier, ce qui en ferait un non-op.
Graipher
1
tcsh le fait aussi.
Peter - Réintégrer Monica le
11

Vous pouvez essayer d’utiliser la police dyslexique ouverte dans votre terminal. Cela pourrait aider à lire le texte. Cela suppose que vous utilisez le terminal ubuntu par défaut, qui, je l’espère, est identique au terminal GNOME.

https://opendyslexic.org/

  1. Télécharge le.
  2. Installez la police.
  3. Ouvrez un terminal, accédez à la barre de menu et sélectionnez Édition-> Préférences de profil.
  4. Activez la police personnalisée et sélectionnez la police mono dyslexique ouverte.
HSchmale
la source
L'installation peut être faite avec sudo apt install fonts-opendyslexic.
Chai T. Rex
2

Pour compléter la réponse de @pomsky, je voudrais ajouter quelques points:

  • Apprenez à automatiser les choses, surtout apprendre comment le fortravail des boucles, comment ne readfonctionne, comment ne iffonctionne, quels sont [ ]et [[ ]], utilisez le bash officieux mode strict , car une fois un script est valide, il est plus facile de ne pas faire des erreurs.

  • si vous le pouvez, installez le paquet bash-completion (peut avoir différents noms selon les versions)

  • Utiliser rmavec le -icommutateur dans des situations dangereuses (comme avec sudo), ou peut-être installer et utiliser rmtrash(ce qui mettra des déchets dans la corbeille)

  • Utiliser cpavec le -ncommutateur, qui n'écrasera pas les fichiers existants lors de la copie. (Bien sûr, plus utile lors de la copie récursive)

  • Apprenez à utiliser le ~/.bashrcfichier, cela peut rendre la $PS1variable plus claire pour vous.

Et peut-être le plus difficile si vous êtes jeune:

  • Essayez de connaître un peu mieux les outils les plus récents et les plus communs de ce que vous faites.

    • Par exemple, si vous êtes un étudiant qui apprend à développer avec c ++, essayez de le définir $CXXFLAGSdans votre ~/.bashrc. (Par exemple: export CXXFLAGS=" -std=c++17 -fmax-errors=1 -Wall -Wextra -pedantic -Werror "selon votre version de c ++ bien sûr, donc je suppose que c ++ 11 pour Ubuntu), alors compilez avec make main.cppet vos options seront reportées. Notez que cette option est assez dure: tout ce qui est correct et standard sera considéré comme une erreur et vous empêchera de compiler.
Pierre-Antoine Guillaume
la source
2

Essayez "FISH" shell interactif convivial. Disponible dans les pensions.

J'avais l'habitude de lutter avec la ligne de commande en utilisant BASH. Fish se souvient de toutes les dernières commandes et de la finalisation de ses offres. sudo apte à installer fish, puis de type bash; poisson. Si vous le souhaitez, recherchez des instructions pour en faire votre shell par défaut. Il y a d'autres coquilles disponibles; POISSON est mon choix. Une fois que vous avez commencé, vous pourriez l’aimer.

utilisateur73028
la source
2

J'ai appris que j'étais dyslexique après avoir été ingénieur Unix et expert en shell pendant de nombreuses années sur de nombreuses plates-formes différentes (Linux, AIX et Solaris).

La dyslexie affecte différentes personnes à des degrés différents, de sorte que l'hypothèse "nous voyons les choses en désordre" peut être une simplification excessive et frustrante si elle ne vous affecte pas de cette façon - je trouve réellement la police par défaut de largeur fixe des terminaux extrêmement lisible ( le blanc sur noir me semble bien)

Les coquillages sont difficiles à apprendre, avec de nombreux acronymes et conventions peu intuitives, ce qui complique souvent l'apprentissage des personnes qui aiment les mots simples et réguliers.

Je comprends maintenant que la plupart des dyslexiques apprennent et mémorisent leurs expériences personnelles. Nous sommes très pauvres en apprentissage par cœur ou en consommant beaucoup de théorie théorique. Une fois que nous avons digéré la théorie par application, cependant, elle adhère généralement rapidement à une compréhension intrinsèque profonde. Pour ce faire, concentrez - vous sur la recherche d’exemples de shell et essayez-les en les tapant à la main et en comprenant le rôle de chaque ligne. Faites des expériences, cassez des choses, restez debout toute la nuit à les réparer.

Au fil du temps, vous vous souviendrez de plus en plus de commandes et de motifs ponctuels dans la façon dont les développeurs ont implémenté leurs programmes, qui peuvent être appliqués à la commande suivante. Cependant, toutes les commandes ne suivent pas les mêmes conventions lors de la transmission d'arguments / paramètres, il faudra donc un certain temps pour apprendre les commandes similaires.

Comme tout le monde, après quelques années, cela deviendra une seconde nature. Avec le temps, toutefois, vous pouvez acquérir l’avantage dyslexique en sachant intuitivement comment résoudre des solutions et effectuer une analyse complexe des causes profondes en utilisant votre capacité, au 6ème sens, de détecter des modèles ou des ruptures de modèles.

À l'exception de la complétion par onglets et des conseils clés, je trouve que la plupart des réponses ne feront que rendre l'expérience encore plus pénible. Ignore les. La simplification est la clé

Alastair McCormack
la source
2

Il existe un outil qui se situe entre une blague et une aide inestimable.

https://github.com/nvbn/thefuck

Vous pouvez l'essayer en plus d'autres recommandations de ce fil. L'idée principale est que lorsque vous écrivez quelque chose et recevez la commande inconnue ou quoi que ce soit, cet outil le corrigera et l'exécutera à nouveau.

Ce n'est pas une solution miracle, mais ça vaut peut-être la peine de l'essayer.

MariusSiuram
la source