Salah satu alur kerja umum saya adalah membuka halaman manual di terminal, kemudian terminal lain untuk menguji berbagai hal. Halaman manual diformat ke dimensi awal terminal pertama. Ketika sekarang saya mengubah ukuran jendela saya (atau WM saya melakukannya untuk saya secara otomatis), ada celah di sebelah kanan halaman yang telah diformat sebelumnya, atau garis yang dibungkus. Pada titik ini saya biasanya q
(uit) dan !!
(lari lagi), yang kehilangan posisi saya di halaman.
Saya menganggap proses pemformatan cukup intensif CPU, atau mungkin berasal dari zaman kuno ukuran terminal tetap. The less
pager dinamis bereaksi terhadap peristiwa mengubah ukuran terminal, sehingga itu harus mungkin dalam teori.
Saya mencoba membaca halaman manual, mencari di Web, bertanya di IRC - semuanya - tetapi tidak bisa menemukan apa pun.
Bisakah saya memicu pemformatan ulang dari dalam atau di luar utilitas man?
Apakah ada versi man utility yang mengubah ukuran halaman secara dinamis?
Apakah ada cara untuk menyesuaikan beberapa bagian dari proses pemformatan / tampilan agar pembaruan
SIGWINCH
?
man
sebenarnya digunakanless
sebagai pager; Anda dapat menekanh
halaman manual untuk mendapatkanless
layar bantuan. Saya tidak yakin mengapa itu tidak mengubah ukuran halaman manual secara dinamisman
membuat output dengan lebar istilah. Yang Anda butuhkan adalah pager yang dapat menandai di mana Anda berada di dalam dokumen, mengeksekusi ulang man (yang benar-benar tidak tahu sejak itu disalurkan ke sana) dan kembali ke bookmark. Atau, perintah manusia baru yang menggabungkan pager.Jawaban:
Masalah dasar adalah bahwa pemformatan dilakukan oleh satu program dan paging dilakukan oleh yang lain. Bahkan jika penata format mendapatkan sinyal bahwa ukuran jendela telah berubah dan memformat ulang teks untuk ukuran jendela baru, yang bisa dilakukan hanyalah memasukkan teks baru ke dalam pipa ke pager. Tidak ada cara bagi pager untuk mengetahui dengan pasti posisi apa di aliran baru yang sesuai dengan posisi di aliran lama yang sedang ditampilkan.
Yang Anda butuhkan adalah agar pager dapat melakukan pemformatan ulang. Seperti yang dikatakan @Robin Green, itu HTML.
Jika Anda ingin menggunakan HTML tetapi masih berfungsi di terminal, Anda dapat meminta
man(1)
untuk meng-output dalam HTML dan memanggil browser mode teks untuk menampilkannya.Itu akan menampilkan halaman
man(1)
manual di browser mode teks lynx. Lynx tidak secara langsung menanggapi perubahan ukuran jendela, tetapi Anda dapat menekan ctrl-R dan lynx akan merender ulang halaman untuk ukuran jendela baru.Ada dua browser mode teks lain yang saya ketahui: tautan dan elink. Anda dapat bereksperimen dengan itu dan lynx dan menentukan mana yang memberi Anda pengalaman terbaik untuk menjelajahi halaman manual. Anda mungkin ingin menggunakan konfigurasi khusus hanya untuk halaman manual dan menjalankan skrip yang memanggil browser dengan konfigurasi tertentu.
Anda bisa memasukkan opsi man yang Anda suka ke
MANOPT
variabel lingkungan.Anda perlu menginstal
groff
paket untukman
dapat menghasilkan HTML.sumber
-H
argumen pada man adalah bahwa ia tidak menggunakan server web, tetapi hanya sebuah file kecil. Meskipun ini menghindari masalah dengan firewall yang salah konfigurasi, firewall tidak memperbolehkan hyperlink ke halaman manual lainnya (yang setidaknya mendukung skrip man> html pihak ketiga).less
tidak memiliki hyperlink.Konversikan halaman manual menjadi html dengan cepat menggunakan skrip yang sesuai seperti manserver , melihatnya di browser web (yang tentu saja dapat menjadi browser web berbasis teks seperti lynx).
Ini mungkin mengapa tidak ada yang memecahkan masalah ini - karena masalah menjadi tidak relevan dengan pengembangan skrip man-> html.
sumber