]> gitweb.factorcode.org Git - factor.git/blob - unmaintained/fonts/syntax/syntax.factor
34ccbc8aa8f1d8864a9c0dd53bfb43f441df5c86
[factor.git] / unmaintained / fonts / syntax / syntax.factor
1 USING: accessors arrays variants combinators io.styles
2 kernel math parser sequences fry ;
3 IN: fonts.syntax
4
5 VARIANT: fontname serif monospace ;
6
7 : install ( object quot -- quot/? ) over [ curry ] [ 2drop [ ] ] if ;
8
9 : >>name* ( object fontname -- object ) name>> >>name ;
10
11 SYNTAX: FONT: \ ; parse-until {
12     [ [ number? ] find nip [ >>size ] install ]
13     [ [ italic = ] find nip [ >>italic? ] install ]
14     [ [ bold = ] find nip [ >>bold? ] install ]
15     [ [ fontname? ] find nip [ >>name* ] install ]
16 } cleave 4array concat '[ dup font>> @ drop ] append! ;