Jak ponownie załadować screenrc bez ponownego uruchamiania ekranu?


90

Po zmodyfikowaniu screenrc, jak zobaczyć zmiany bez ponownego uruchamiania ekranu?

Odpowiedzi:


103

Możesz spróbować Ctrl- .a : source ~/.screenrc


7
Pozyskiwanie pliku powinno działać. Odłączanie i ponowne podłączanie nie będzie.
Zed,

1
@Zed: Ale zastosuje ponownie rzeczy termcap / terminfo, co nie nastąpi podczas korzystania source.
Dennis Williamson,

@Dennis, próbowałem odłączyć i ponownie dołączyć i to nie zadziałało, dlatego przyszedłem zadać to pytanie. Ponadto użycie źródła może otworzyć wszystkie okna z .screenrc, jednak nie odświeża sesji, ale tworzy duplikaty okien w jednej sesji. Dzięki.
garconcn

3
Użycie „źródła” jest poprawnym (i jedynym) sposobem, aby ekran ponownie odczytał plik .screenrc w uruchomionej sesji. Tak, oznacza to, że ponownie uruchomi wszystkie polecenia w nim zawarte, w tym polecenia tworzące okna lub układy. Możesz edytować plik, aby skomentować polecenia tworzące nowe okna / układy; źródło pliku; a następnie usuń komentarz z tych wierszy. Oczywiście, jeśli chcesz stworzyć okno, które chcesz przetestować, nie masz tutaj dużego wyboru ...
James Polley

8
@garconcn: Jeśli jest to coś, co często możesz robić, umieść te rzeczy (instrukcje nie tworzenia ekranu) w drugim pliku i sourceod .screenrc(który będzie zawierał instrukcje tworzenia ekranu) do regularnego uruchamiania i kiedy będziesz musiał to sourcezrobić ponownie po screenjuż się zaczął, po prostu wykonaj „ctrl-a: źródłowy plik pomocniczy”, aby pominąć tworzenie ekranu.
Dennis Williamson

36

Wypróbowałem wspomnianą tutaj opcję - Ctrl- i to nie działało dla mnie.a : source ~/.screenrc

To działało dla mnie - Ctrl-a : source $HOME/.screenrc


Normalnym byłoby oczekiwać ~rozszerzenia do katalogu domowego.
user9517

@ Iain wiem, najlepiej powinien. Myślę, że wtedy coś było nie tak z moim ENV. Niemniej jednak zadziałało.
holydevil,

Miałem dokładnie ten sam problem na CentOS 5.
slm

Ten sam problem z zsh i oh-my-zsh na archlinux.
Jaseem

2
Ten sam problem na moim Macu, musiałem użyć „source $ HOME / .screenrc”
bobmagoo

19

Mam to w moim pliku .screenrc:

bind R eval "source $HOME/.screenrc" "echo '.screenrc reloaded!'"

Co powoduje, że screen ponownie ładuje plik .screenrc po Ctrl-AShift-Rnaciśnięciu.

Oczywiście działa to tylko wtedy, gdy masz już linię w pliku .screenrc! Aby „bootstrap” to sortowanie w istniejącej sesji ekranowej, dodaj linię powyżej linii do pliku .screenrc, a następnie postępuj zgodnie z odpowiedzią @Dennis Williamson. Następnie będziesz mógł użyć nowego skrótu klawiaturowego.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.