ã·ã³ã¿ãã¯ã¹ãã¤ã©ã¤ããããã£ã«ã¿ã¦ãªãããª
ã·ã³ã¿ãã¯ã¹ãã¤ã©ã¤ããããã£ã«ã¿ã¦ãªããããã¼
æ¨æºå
¥åã«è²ï¼ANSI colorï¼ã¤ãã¦æ¨æºåºåã«åºãã ãã®ãã¤ã
view(vim)ãåºåãã¦çµäºãã¦ãããã°ãããã ãã©ããã
$ colorize < filename | less -R
ã¨ã
$ crontab -l | colorize | less -R
ã¨ããããã
ã§ãæçµçã«ã¯LESSOPENã§ä½¿ãããã
追è¨#1
Perlã®Text::VimColorã¨Term::ANSIColorã§ãã£ã«ã¿æ¸ãããã
$ colorize < httpd.conf | less -R $ crontab -l | colorize
LESSOPENã§å¼ã°ããlesspipe.shãããã£ã¦å¿ ãcolorizeã§ãã£ã«ã¿ããããã«ãããããªãã¼ããã¡ã¤ã«ã ã¨colorizeã®å¦çã«æ°ç§ããã£ã¦ã¤ã©ã£ã¨ããã®ã§ããã¯ããã¾ããã
ãã®ä»£ããã~/.lesskeyã«
#command c shell colorize % | less
ã£ã¦æ¸ãã¦ã
$ lesskey ~/.lesskey
ã§~/.lessãæ´æ°ãã¦ããã°ãlessã§ãã¡ã¤ã«éããå¾ã§ãã¤ãã¤ãã¦ã¼ãã¨æã£ãã¨ãã¯ãcããæéµããã°OKã(lessã§ãã¡ã¤ã«ãããªãã¦STDINãè¦ã¦ãã¨ãã¯ã ãã ãã©)
#!/usr/bin/env perl # colorize use strict; use warnings; use Text::VimColor; { package Text::VimColor; use Term::ANSIColor; my $ColorTable = { Comment => 'yellow', Constant => 'bold', Identifier => 'green bold', Statement => 'bold cyan', PreProc => 'bold cyan', Type => 'bold', Special => 'bold', Underlined => 'bold white', Error => 'magenta', Todo => 'yellow bold on_red', }; no warnings 'once'; *ansi = sub { my($self,$ctab) = @_; my $syntax = $self->marked; $ctab = { %$ColorTable, (ref $ctab eq 'HASH' ? %$ctab : ()) }; my $ansi = ''; foreach (@{ $syntax }) { if ( $_->[0] eq '' || ! exists $ctab->{$_->[0]} ) { $ansi .= $_->[1]; } else { $ansi .= colored($_->[1], $ctab->{$_->[0]}); } } return $ansi; }; } print Text::VimColor->new(string => do { local $/; <> })->ansi; __END__
追è¨#2
id:rayfill ããã«æãã¦ããã£ã
ããããã£ã¹ã
ãã£ããã®ãã¡ã¤ã«ãéãã¦ãã¹ãã¬ã¹ãªãã®ã§ãLESSOPENã®ããã©ã«ããã£ã«ã¿ã«ãã¦ãããããã§ãã
å ¥åãã©ã¼ãããã¯ãã¡ã¤ã«ã®æ¡å¼µåã§å¤æãã¦ããã®ã§ãæ¡å¼µåãã¼ãã«ã«ãªãã£ããæ¨æºå ¥åã ã£ããããã¨èµ·ãããã¦å¤æãã¦ããã¾ããããªã®ã§ãã¦ãã¨ããããã¨ãããªãã§ããshã¹ã¯ãªããã«ãã¦ãã©ã¼ã«ããã¯ããããã«ã
ãã¨ã¤ãã§ã«ã
- 好ã¿ã®è²ã«å¤ããã (esc.style)
- æ¡å¼µæ°ã®å®ç¾©ãå¤ããã (lang.map) (*.plãPerlãããªãã¦Prologãªã®ã§)
ã¨ããããã
#!/bin/sh SH_ETC=~/etc/source-highlight source-highlight \ -f esc -o STDOUT \ --style-file=$SH_ETC/esc.style \ --lang-map=$SH_ETC/lang.map \ "$@" 2>/dev/null \ || \ source-highlight \ -s text \ --lang-def=$SH_ETC/text.lang \ -f esc -o STDOUT \ --style-file=$SH_ETC/esc.style \ --lang-map=$SH_ETC/lang.map \ "$@"
追è¨#3
ãããªããã§source-highlightã®ãããã§ã«ã©ãã«ã©ã¤ããã¨ã³ã¸ã§ã¤ãã¦ãã¾ãã
ããless (382+iso262) ã®-Rã§ã¿ã¦ã¦/ã§æ¤ç´¢ããã¨ãæ¤ç´¢æååã«ãããããé¨åã®ãã¤ã©ã¤ããããããæååããããããã®ã§ããï¼lv -cã ã¨åé¡ãªãï¼
ãªãã§ã¼ã¨ããã£ã¦ããã
Less version 418
- Fix search bug when using -R and text contains ANSI color escape sequences.
ã¨ããã®ãçºè¦ãããã§ç´ãã®ããã§ãæ¥æ¬èªåãããããªãããsjisã¨ã表示ã§ããªãã®ãããããããalias less=lvããã¨ããªã®ããã