Sebagai semua orang, saya memiliki beberapa keluaran berwarna di bash saya. Saya ingin menyimpan sintaks berwarna ketika menyalin ekstrak ke editor HTML misalnya. Apakah ada cara untuk menangani ini?
Terima kasih.
Jika Anda berbicara tentang output berwarna dari beberapa utilitas baris perintah seperti ls
, grep
, cmake
, git diff
, dll, silakan perhatikan, bahwa itu tidak memiliki hubungan dengan GNU Bash.
Bagaimanapun, ada beberapa alat untuk mengubah keluaran yang diwarnai dengan urutan pelarian ANSI ke HTML:
aha
dari paket dengan nama yang samaansi2html
from HTML :: FromANSI Perl module (tidak dikemas dalam repo Ubuntu, dapat diinstal dari CPAN)ansi2html.sh
oleh pixelb (tidak dikemas, unduh dari git)Penggunaan semuanya agak sederhana: mereka membaca urutan pelarian terminal dari stdin
dan menempatkan HTML stdout
. Tetapi perhatikan: sebagian besar utils tidak mewarnai keluaran jika tidak pergi ke terminal. Anda harus memesannya untuk menghasilkan keluaran berwarna secara eksplisit. E. g .:
$ ls --color=always | aha | xsel -i -b
xsel -i -b
di sini akan menyalin HTML ke clipboard.
aha
) bekerja dengan indah; Terima kasih banyak!git -c color.ui=always diff | aha > /tmp/diff.html && firefox /tmp/diff.html
... dan ya saya tahu OP ingin html, tetapi banyak dari kita akan tersandung di sini ingin format umumnya.Anda perlu menggunakan pustaka javascript untuk itu, Anda tidak bisa langsung menyalin / menempel dan mempertahankan warnanya. Beberapa perpustakaan populer untuk ini adalah:
Sumber: Pertanyaan serupa pada SO
sumber