Bagaimana cara memuat ulang screenrc tanpa me-restart layar?

90

Setelah screenrc dimodifikasi, bagaimana cara melihat perubahan tanpa me-restart layar?

garconcn
sumber

Jawaban:

103

Anda bisa mencoba Ctrl- .a : source ~/.screenrc

Dennis Williamson
sumber
7
Sumber file seharusnya berfungsi. Melepaskan dan memasang kembali tidak akan.
Zed
1
@Zed: Tapi itu akan menerapkan kembali hal-hal termcap / terminfo yang tidak akan terjadi ketika Anda menggunakan source.
Dennis Williamson
@ Dennis, saya mencoba melepaskan dan memasang kembali dan tidak berhasil, maka saya datang untuk menanyakan pertanyaan ini. Selain itu, menggunakan sumber dapat membuka semua jendela dari .screenrc, namun itu tidak menyegarkan sesi, tetapi membuat jendela duplikat dalam satu sesi. Terima kasih.
garconcn
3
Menggunakan "sumber" adalah cara yang benar (dan satu-satunya) agar layar membaca ulang .screenrc dalam sesi yang sedang berjalan. Ya, ini berarti akan menjalankan kembali perintah yang Anda miliki di dalamnya, termasuk perintah yang membuat jendela atau tata letak. Anda dapat mengedit file untuk mengomentari perintah yang membuat jendela baru / tata letak; sumber file; dan kemudian hapus komentar pada baris tersebut. Tentu saja, jika itu kreasi jendela yang ingin Anda uji, Anda tidak punya banyak pilihan di sini ...
James Polley
8
@garconcn: Jika ini adalah sesuatu yang mungkin Anda sering lakukan, masukkan barang-barang itu (instruksi non-layar-penciptaan) di file kedua dan sourcedari .screenrc(yang akan berisi instruksi pembuatan layar Anda) untuk startup reguler dan ketika Anda perlu melakukannya sourcelagi setelah screensudah dimulai, cukup lakukan "ctrl-a: source secondary-file" untuk melewati hal-hal pembuatan layar.
Dennis Williamson
36

Saya mencoba opsi yang disebutkan di sini - Ctrl- dan itu tidak berhasil untuk saya.a : source ~/.screenrc

Inilah yang bekerja untuk saya - Ctrl-a : source $HOME/.screenrc

holydevil
sumber
Adalah normal untuk mengharapkan ~untuk memperluas ke direktori home Anda.
user9517
@ Aku tahu, idealnya seharusnya. Saya kira ada yang salah dengan ENV saya saat itu. Namun demikian, itu berhasil.
holydevil
Saya memiliki masalah yang sama persis pada CentOS 5.
slm
Masalah yang sama dengan zsh dan oh-my-zsh di archlinux.
Jaseem
2
Masalah yang sama pada Mac saya, harus menggunakan 'source $ HOME /
.screenrc
19

Saya memilikinya di file .screenrc saya:

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

Yang menyebabkan layar memuat ulang file .screenrc saat Ctrl-AShift-Rditekan.

Tentu saja, ini hanya berfungsi jika Anda sudah mendapatkan baris di file .screenrc Anda! Untuk 'bootstrap' penyortiran ini pada sesi layar yang ada, tambahkan baris di atas baris ke file .screenrc Anda dan kemudian ikuti jawaban @Dennis Williamson. Setelah itu, Anda dapat menggunakan pintasan keyboard baru.

ltn100
sumber