Как сообщить less
, с -R
или иным образом, а не для сброса цветов по линиям новой строки (\n
)? Вот пример того, что я вижу:Предотвращение «меньше -R» от сброса цветов по линиям новой строки
$ echo -e '\033[31mThis is red.\nStill red.\n\033[0mBack now.' >> coltest
$ cat coltest
This is red. #Colour is red
Still red. #Colour is red
Back now. #Colour is the terminal's foreground colour.
$ less -RF coltest
This is red. #Colour is red
Still red. #Colour is the terminal's foreground colour.
Back now. #Colour is the terminal's foreground colour.
Почему цвет Still red.
сброса на цвет переднего плана терминала на выходе less -RF
?
Подумайте о том, что произойдет, если вы прокручиваетесь до конца файла, а затем работали в обратном направлении по одной строке за один раз. Обратите внимание, что 'less' делает это * без * даже глядя на предыдущие строки. – o11c
@ o11c Да, я понимаю, что применение атрибутов по очереди проще. Однако обратите внимание, что действительно есть случаи, когда «less» видит, например, не более одного номера строки. Конечно, это увеличивает время, необходимое для некоторых операций «меньше», но это компромисс, который «меньше» позволяет вам выбирать. Я тоже надеялся на что-то подобное. – Pradhan