Grałem z es w ciągu ostatnich kilku dni i (jak rc) ma dziwactwo / funkcję, że uruchamia swój skrypt startowy ( .esrc) po zalogowaniu. Zwykłym sposobem uruchamiania kodu w każdej sesji interaktywnej jest umieszczenie tego kodu w %promptfunkcji.
Oczywiście nie ma żadnej %promptfunkcji, jeśli es -lnigdy nie została uruchomiona.
Więc pytanie: jak ustawić środowisko logowania, gdy wchodzisz przez gdm lub podobny, który tylko źródłowy .profile (lub .xprofile, .xsession itp.)? Najlepsze, co wymyśliłem, to:
if [ -f "$HOME/.esrc" ]; then
eval "`es -l <<-x
sh <<<'export -p'
x`"
fi
Co wydaje się ... przerażające. Jakieś lepsze podejścia?
esjest moją powłoką logowania. Przepraszam, jeśli nie wyjaśniłem tego. Ale powłoki logowania nie są uruchamiane w sesjach X przed uruchomieniem terminali, przynajmniej o ile mi wiadomo.
bashnie es. Ale kiedy otwieram nowe okno terminala, działa ono bashjako powłoka logowania.
esto nie jest twoja powłoka logowania. Co o ustawieniealias es='es -l'w.bashrc?