Linux: jak ustawić domyślny katalog emulatorów terminali?

12

Po aktualizacji do Ubuntu 11.04, moje terminale (gnome-terminal i urxvt) zaczynają się "/"zamiast"~"

Co może powodować takie zachowanie?

Wyobrażam sobie, że katalog roboczy Gnome lub X jest ustawiony na "/", lub coś w tym rodzaju, ale nie mam pojęcia, od czego zacząć debugowanie.

Używam zsh, konfiguracja może być uwzględniona.

Joernsn
źródło
możesz spróbować dirs -vdowiedzieć się, czy ostatni wpis pochodzi z jakiegoś pushd po $ HOME w jakiś sposób. Tylko myśl.
Alain Pannetier

Odpowiedzi:

5

Zakładam, że widzisz to zachowanie podczas otwierania terminów za pomocą niestandardowych skrótów klawiaturowych, gdy zaczynają się one w odpowiednim katalogu, jeśli są otwierane za pomocą menu lub okna dialogowego Uruchom aplikację .

Co ciekawe, programy zdefiniowane w sekcji Skróty niestandardowe okna dialogowego Skróty klawiaturowe Gnome nie dziedziczą katalogu roboczego sesji. Nie wiedząc o przyczynach, podejrzewam, że to błąd.

Obejścia:

  • Użyj skrótu Uruchom terminal w sekcji Pulpit i ustaw preferowany emulator terminala w System => Preferencje => Preferowane aplikacje => System => Emulator terminala ,

  • Ustaw skrót klawiaturowy na skrypt opakowania, np

    #!/bin/sh
    exec rxvt -cd $HOME
    
  • Zdefiniuj skrót, który ma obejmować ustawienie katalogu roboczego, np .:

    gnome-terminal --working-directory=$HOME
    

    lub

    rxvt -cd /path/to/home
    

    (To ostatnie nie działa $HOMEdla mnie; musiałem podać absolutną ścieżkę.)

peth
źródło
100% poprawne! Dzięki! Naprawiłem to, używając zamiast tego skrótów klawiaturowych compiz. Bardzo dobre sugestie. (Okno dialogowe uruchamiania aplikacji faktycznie działa tak, jak powinno w Ubuntu natty)
Joernsn
2

Rozwiązałem problem z dodaniem polecenia cd na końcu mojego ~ / .bashrc

...
cd /your_desired_path

Następnie za każdym razem, gdy wywołujesz konsolę, która używa .bashrc, wyświetla monit w żądanej ścieżce.

Sergio Abreu
źródło
1

Możesz spróbować umieścić cdna końcu swojego ~/.zshrc.

Cyrus
źródło
Zsh jest moją domyślną powłoką. Czy nie spieprzyłyby skryptów oczekujących, że cwd będzie czymś innym?
Joernsn
1
Skrypty oczekują, że podczas uruchamiania znajdą się w folderze domowym.
cyr
1

Kilka rzeczy do sprawdzenia:

  1. Twój katalog domowy jest ustawiony poprawnie (cd ~ zabiera cię do domu ok)
  2. Partycja zawierająca katalog domowy jest zamontowana i dostępna w momencie zalogowania się przez GDM.

Miałem podobny problem podczas korzystania z ZFS i posiadania domu w puli ZFS. ZFS nie zaczynał się przed GDM, więc kiedy zalogował mnie do mojego domowego katalogu, nie było go. Kilka sekund później już tam było, więc mogłem do niego nagrać.

Majenko
źródło
Dobre sugestie! 1: Jeśli zaloguję się poza X, wszystko działa, więc wydaje się, że $ HOME przynajmniej jest tam poprawny. „echo $ HOME” jest również poprawne w emulatorach terminali. 2: Próbowałem ponownie uruchomić GDM po upewnieniu się, że wszystko jest zamontowane, bez powodzenia :(
Joernsn