現在,我使用most
作爲我的尋呼機。雖然它對man
頁面有幫助的語法突出顯示,但對於其他任何內容(我特別尋找diff/C++),它缺少彩色語法突出顯示。語法高亮尋呼機
同時,pygments
是一個很棒的節目。我可以很容易地使彩色輸出它:
# ./pygmentize -f console256 ${file}
hg diff | ./pygmentize -f console256 -l diff
現在,我希望能夠頁的輸出,所以我只是用:
# ./pygmentize -f console256 ${file} | most
hg diff | ./pygmentize -f console256 -l diff | most
在這一點上,大多數轉儲全部彩色化控制字符到我的屏幕像這樣:
^[[38;5;28;01mclass^[[39;00m ^[[38;5;21;01mheap_allocator^[[39;00m
{
^[[38;5;28;01mpublic^[[39;00m^[[38;5;241m:^[[39m
這當然是不可讀的。我查看man
頁面most
,但我找不到任何「嘿,將這些控制字符顯示爲顏色而不是打印它們」的選項。 less
與most
具有相同的垃圾行爲,但more
顯示的顏色完美無瑕,具有more
的明顯限制。
是否有支持語法突出顯示或某些瘋狂的參數和程序組合的尋呼機我可以串起來使這項工作?最終,我想從Mercurial獲得差異和日誌以突出顯示,所以也許有一個快捷方式在那裏...
尼斯 - JED支持管道到緩衝區(vim和emacs的定期不)。如何打開jed中的語法高亮顯示?如果我'$ $ {FILE}',突出顯示的作品,但不是當我cat $ {文件} | jed' – 2011-03-15 18:49:53
我不認爲這是可能的。這實際上是一個非常困難的問題,因爲它提出了很多語言在語法上有效的短程序非常簡單。與大多數編輯人員一樣,模式檢測僅基於文件擴展名。最簡單的方法可能是將stdout用適當的擴展名輸入到文件中。 – 2011-03-15 18:55:55
一旦程序已經啓動,打開語法高亮的命令序列是什麼?我不熟悉emacs衍生產品。 – 2011-03-15 19:01:33