EDYTOR zmienna środowiskowa zmienia się po ponownym uruchomieniu

9

Podczas uruchamiania lesspolecenia naciśnięcie votwiera plik w edytorze. Mam ustawić EDITORzmienną środowiskową do viuruchamiając komendę export EDITOR=vi.

Działa idealnie zgodnie z oczekiwaniami. Jednak po ponownym uruchomieniu komputera edytorem nie jest już Vi. Jak mogę to zrobić na stałe?

Uśmiech
źródło
1
Proszę ustawić to w swoim /home/$USER/.bashrcpliku
George Udosen

Odpowiedzi:

14

Zwykle konfiguruję to zachowanie globalnie, używając 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:

Wybrałem już Vima, ale nanojest to domyślny Ubuntu. W 3moim przykładzie napisałbyś, aby wybrać Vima, jeśli nie został jeszcze wybrany.

Jak również lesskażdy program, który wywołuje edytor (taki jak sudoedit), powinien teraz wywoływać wybrany.

Zanna
źródło
+1; nie zastanawiałem się nad tą opcją, ponieważ tutaj też odpowiedziałem :)
Videonauth
To niesamowita opcja, ale gubi się w całym ruchu :-)
George Udosen
3
Dzięki. To jest bardzo pomocne. Zrobiłem też „man update-alternatives”, aby rozwiązać ciekawość.
Uśmiechnij się
8

Aby było trwałe, po prostu wykonaj następujące czynności w terminalu:

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

Spowoduje to dodanie wiersza do .bashrcpliku, który jest wywoływany przy każdym otwarciu okna terminala.

Odpowiedź na pytanie, dlaczego to zadziała, nawet jeśli przed dodaniem była podobna linia, .bashrcjest prosta. .bashrcjest skryptem, który będzie czytany i wykonywany w sposób liniowy, a ta metoda dodaje tę linię jako ostatnią poniżej wszystkich innych, więc zostanie wykonana / oceniona jako ostatnia. Więc jeśli wcześniej była linia, wartość EDITORzmiennej zostanie zastąpiona dodaną linią.

Alternatywnie, jeśli nie chcesz tworzyć bałaganu, możesz również użyć swojego ulubionego edytora (vi, vim, nano, Joe itp.), Aby wprowadzić tę zmianę i dodać wiersz, jeśli nie ma go, a jeśli jest obecny, edytuj go.

Videonauth
źródło
4

Musisz dodać go do .bashrcpliku, otworzyć za pomocą nanolub vii dodać następujący wiersz:

export EDITOR=vi
George Udosen
źródło