Pengaturan berikut tampaknya berfungsi. Teks pada baris kedua menghilang jika baris perintah meluap baris pertama. The preexecFungsi menghapus baris kedua sebelum menjalankan perintah; jika Anda ingin menyimpannya, ubah ke preexec () { echo; }.
%lolos didokumentasikan dalam manual zsh ( man zshmisc).
Terminfo adalah API akses terminal. Zsh memiliki terminfomodul yang memberikan akses ke database deskripsi terminal: $terminfo[$cap]adalah urutan karakter yang akan dikirim untuk menjalankan kemampuan terminal $cap, yaitu untuk menjalankan $capperintahnya. Lihat man 5 terminfo(di Linux, nomor bagian dapat bervariasi pada kesatuan lainnya) untuk informasi lebih lanjut.
Urutan tindakan adalah: gerakkan kursor ke bawah satu baris ( cud1), lalu kembali ke atas ( cuu1); simpan posisi kursor ( sc); gerakkan kursor ke bawah satu baris; cetak [some status]; mengembalikan posisi kursor. Bit down-and-up di awal hanya diperlukan jika prompt ada di garis bawah layar. Baris preexec menghapus baris kedua ( el) sehingga tidak tercampur dengan output dari perintah.
Jika teks pada baris kedua lebih lebar dari terminal, tampilan mungkin kacau. Gunakan Ctrl+ Ldalam keadaan darurat untuk memperbaiki.
Berikut ini bashsetara dengan solusi zsh Gilles. Bash tidak memiliki modul terminfo asli, tetapi tputperintah (dibundel dengan terminfo) melakukan hal yang sama.
@Gilles: Terima kasih atas masukannya! Saya pikir saya sudah membuatnya bekerja lebih baik sekarang. Mencoba bash 4.1.5 di gnome-terminal dan xterm, dan bash 3.2.48 di OSX Terminal.
Jawaban:
Pengaturan berikut tampaknya berfungsi. Teks pada baris kedua menghilang jika baris perintah meluap baris pertama. The
preexec
Fungsi menghapus baris kedua sebelum menjalankan perintah; jika Anda ingin menyimpannya, ubah kepreexec () { echo; }
.%
lolos didokumentasikan dalam manual zsh (man zshmisc
).Terminfo adalah API akses terminal. Zsh memiliki
terminfo
modul yang memberikan akses ke database deskripsi terminal:$terminfo[$cap]
adalah urutan karakter yang akan dikirim untuk menjalankan kemampuan terminal$cap
, yaitu untuk menjalankan$cap
perintahnya. Lihatman 5 terminfo
(di Linux, nomor bagian dapat bervariasi pada kesatuan lainnya) untuk informasi lebih lanjut.Urutan tindakan adalah: gerakkan kursor ke bawah satu baris (
cud1
), lalu kembali ke atas (cuu1
); simpan posisi kursor (sc
); gerakkan kursor ke bawah satu baris; cetak[some status]
; mengembalikan posisi kursor. Bit down-and-up di awal hanya diperlukan jika prompt ada di garis bawah layar. Baris preexec menghapus baris kedua (el
) sehingga tidak tercampur dengan output dari perintah.Jika teks pada baris kedua lebih lebar dari terminal, tampilan mungkin kacau. Gunakan Ctrl+ Ldalam keadaan darurat untuk memperbaiki.
sumber
Berikut ini
bash
setara dengan solusi zsh Gilles. Bash tidak memiliki modul terminfo asli, tetapitput
perintah (dibundel denganterminfo
) melakukan hal yang sama.Jika terminal tidak mendukung salah satu kapabilitas, ia akan kembali ke prompt satu baris.
The
trap
line adalah cara Hacky untuk meniru zsh inipreexec
fungsi. Lihat /superuser/175799/ untuk info lebih lanjut.EDIT : Skrip yang ditingkatkan berdasarkan komentar Gilles.
sumber