Saya telah bermain dengan es beberapa hari terakhir, dan itu (seperti rc) memiliki quirk / fitur yang hanya menjalankan skrip startupnya ( .esrc
) saat login. Cara biasa untuk menjalankan kode di setiap sesi interaktif adalah dengan meletakkan kode itu dalam %prompt
fungsi.
Tentu saja, tidak ada %prompt
fungsi jika es -l
belum pernah dijalankan.
Jadi, pertanyaannya: bagaimana Anda mengatur lingkungan login ketika Anda masuk melalui gdm atau sejenisnya, yang hanya sumber .profile (atau .xprofile, .xsession, dll.)? Yang terbaik yang saya hasilkan adalah:
if [ -f "$HOME/.esrc" ]; then
eval "`es -l <<-x
sh <<<'export -p'
x`"
fi
Yang sepertinya ... mengerikan. Adakah pendekatan yang lebih baik?
es
adalah shell login saya. Maaf jika saya tidak menjelaskannya. Tapi shell login tidak berjalan dalam sesi X sebelum terminal diluncurkan, setidaknya sejauh yang saya tahu.
bash
, bukan es
. Tetapi ketika saya membuka jendela terminal baru, itu berjalan bash
sebagai shell login.
es
bukan shell login Anda. Bagaimana pengaturanalias es='es -l'
di.bashrc
?