xmode.highlight: enable highlighting of words.
parent
b38f42f73c
commit
47fbfdf1f0
|
@ -1,8 +1,8 @@
|
||||||
! Copyright (C) 2011 John Benediktsson
|
! Copyright (C) 2011 John Benediktsson
|
||||||
! See http://factorcode.org/license.txt for BSD license
|
! See http://factorcode.org/license.txt for BSD license
|
||||||
|
|
||||||
USING: help.markup help.syntax sequences strings xmode.catalog
|
USING: help.markup help.syntax sequences strings words
|
||||||
xmode.highlight xmode.tokens ;
|
xmode.catalog xmode.highlight xmode.tokens ;
|
||||||
|
|
||||||
IN: xmode.highlight
|
IN: xmode.highlight
|
||||||
|
|
||||||
|
@ -20,8 +20,7 @@ HELP: highlight-lines
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
HELP: highlight.
|
HELP: highlight.
|
||||||
{ $values { "path" string } }
|
{ $values { "obj" string } }
|
||||||
{ $description
|
{ $description
|
||||||
"Highlight and print code from the specified file (represented by "
|
"Highlight and print code from the specified " { $link word } " or path (with a mode determined using the file extension)."
|
||||||
{ $snippet "path" } "). The mode is determined using the file extension."
|
|
||||||
} ;
|
} ;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
! Copyright (C) 2011 John Benediktsson
|
! Copyright (C) 2011 John Benediktsson
|
||||||
! See http://factorcode.org/license.txt for BSD license
|
! See http://factorcode.org/license.txt for BSD license
|
||||||
|
|
||||||
USING: accessors assocs colors.hex io io.encodings.utf8 io.files
|
USING: accessors assocs colors.hex io io.encodings.utf8
|
||||||
io.styles kernel locals math math.parser namespaces sequences
|
io.files io.streams.string io.styles kernel locals see
|
||||||
xmode.catalog xmode.marker ;
|
sequences splitting strings words xmode.catalog xmode.marker ;
|
||||||
|
|
||||||
IN: xmode.highlight
|
IN: xmode.highlight
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ PRIVATE>
|
||||||
: highlight-tokens ( tokens -- )
|
: highlight-tokens ( tokens -- )
|
||||||
[
|
[
|
||||||
[ str>> ] [ id>> ] bi
|
[ str>> ] [ id>> ] bi
|
||||||
[ name>> STYLES at ] [ f ] if* BASE assoc-union
|
[ name>> STYLES at BASE assoc-union ] [ BASE ] if*
|
||||||
format
|
format
|
||||||
] each nl ;
|
] each nl ;
|
||||||
|
|
||||||
|
@ -55,7 +55,13 @@ PRIVATE>
|
||||||
tokenize-line highlight-tokens
|
tokenize-line highlight-tokens
|
||||||
] curry each drop ;
|
] curry each drop ;
|
||||||
|
|
||||||
:: highlight. ( path -- )
|
GENERIC: highlight. ( obj -- )
|
||||||
|
|
||||||
|
M:: string highlight. ( path -- )
|
||||||
path utf8 file-lines [
|
path utf8 file-lines [
|
||||||
path over first find-mode highlight-lines
|
path over first find-mode highlight-lines
|
||||||
] unless-empty ;
|
] unless-empty ;
|
||||||
|
|
||||||
|
M: word highlight.
|
||||||
|
[ see ] with-string-writer string-lines
|
||||||
|
"factor" highlight-lines ;
|
||||||
|
|
Loading…
Reference in New Issue