La variable d'environnement EDITOR change après le redémarrage

9

Lors de l'exécution de la lesscommande, appuyez sur pour vouvrir le fichier dans l'éditeur. J'ai défini la EDITORvariable d'environnement sur vien exécutant la commande export EDITOR=vi.

Cela fonctionne parfaitement bien comme prévu. Cependant lorsque je redémarre l'ordinateur, l'éditeur n'est plus Vi. Comment puis-je le rendre permanent?

Sourire
la source
1
Veuillez /home/$USER/.bashrc
indiquer

Réponses:

14

Je configure généralement ce comportement globalement en utilisant update-alternatives:

$ sudo update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
  0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
* 3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    15        manual mode

Press <enter> to keep the current choice[*], or type selection number:

J'ai déjà sélectionné Vim, mais nano c'est la valeur par défaut d'Ubuntu. Vous taperiez 3pour sélectionner Vim dans mon exemple, s'il n'était pas déjà sélectionné.

De plus less, tout programme qui appelle un éditeur (tel que sudoedit) devrait maintenant appeler celui sélectionné.

Zanna
la source
+1; n'a pas pensé à cette option car j'ai répondu ici aussi :)
Videonauth
C'est une option incroyable mais se perd dans tout le trafic :-)
George Udosen
3
Merci. C'est très utile. J'ai également fait des "alternatives de mise à jour de l'homme" pour résoudre la curiosité.
Sourire
8

Pour le rendre permanent, procédez simplement comme suit dans le terminal:

echo "export EDITOR=vi" >> ~/.bashrc

Cela ajoutera la ligne à votre .bashrcfichier qui sera appelée chaque fois que vous ouvrirez une fenêtre de terminal.

Répondre à la raison pour laquelle cela fonctionnera même s'il y a eu une ligne similaire avant l'ajout .bashrcest simple. .bashrcest un script avec sera lu et exécuté de manière linéaire, et cette méthode ajoute cette ligne comme dernière sous toutes les autres, donc elle est exécutée / évaluée comme dernière. Donc, s'il y a eu une ligne avant, la valeur de la EDITORvariable sera remplacée par la ligne que vous ajoutez.

Alternativement, si vous ne souhaitez pas créer un gâchis, vous pouvez également utiliser votre éditeur préféré (vi, vim, nano, joe etc.) pour effectuer ce changement et ajouter une ligne si aucun n'est présent et si un est présent, modifiez-le.

Videonauth
la source
4

Vous devrez l'ajouter à votre .bashrcfichier, l'ouvrir avec nanoou viet ajouter la ligne suivante:

export EDITOR=vi
George Udosen
la source