Merge branch 'master' of factorcode.org:/git/factor
commit
54f26a90eb
basis
combinators/smart
db/tuples
help/apropos
regexp
core/make
extra
calendar/holidays
webapps/imagebin
misc
vim/syntax
|
@ -23,7 +23,7 @@ HELP: output>array
|
|||
{ "quot" quotation }
|
||||
{ "newquot" quotation }
|
||||
}
|
||||
{ $description "Infers the number or outputs from the quotation and constructs an array from those outputs." }
|
||||
{ $description "Infers the number of outputs from the quotation and constructs an array from those outputs." }
|
||||
{ $examples
|
||||
{ $example
|
||||
"USING: combinators combinators.smart math prettyprint ;
|
||||
|
|
|
@ -139,7 +139,7 @@ HELP: select-tuples
|
|||
{ $values
|
||||
{ "query/tuple" tuple }
|
||||
{ "tuples" "an array of tuples" } }
|
||||
{ $description "A SQL query is constructed from the slots of the exemplar tuple that are not " { $link f } ". Returns a multiple tuples from the database that match the query constructed from the exemplar tuple." } ;
|
||||
{ $description "A SQL query is constructed from the slots of the exemplar tuple that are not " { $link f } ". Returns an array of multiple tuples from the database that match the query constructed from the exemplar tuple." } ;
|
||||
|
||||
HELP: count-tuples
|
||||
{ $values
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
USING: accessors arrays assocs fry help.markup help.topics io
|
||||
kernel make math math.parser namespaces sequences sorting
|
||||
summary tools.completion vocabs.hierarchy help.vocabs
|
||||
vocabs words unicode.case help ;
|
||||
vocabs words unicode.case help unicode.categories ;
|
||||
IN: help.apropos
|
||||
|
||||
: $completions ( seq -- )
|
||||
|
@ -71,4 +71,4 @@ M: apropos >link ;
|
|||
INSTANCE: apropos topic
|
||||
|
||||
: apropos ( str -- )
|
||||
<apropos> print-topic nl ;
|
||||
[ blank? ] trim <apropos> print-topic nl ;
|
||||
|
|
|
@ -113,7 +113,7 @@ ARTICLE: { "regexp" "syntax" } "Regular expression syntax"
|
|||
"To make it convenient to have a long string which uses regexp operators, a special syntax is provided. If a substring begins with " { $snippet "\\Q" } " then everything until " { $snippet "\\E" } " is quoted (escaped). For example, " { $snippet "R/ \\Qfoo\\bar|baz()\\E/" } " matches exactly the string " { $snippet "\"foo\\bar|baz()\"" } "."
|
||||
{ $heading "Unsupported features" }
|
||||
{ $subheading "Group capture" }
|
||||
{ $subheading "Reluctant and posessive quantifiers" }
|
||||
{ $subheading "Reluctant and possessive quantifiers" }
|
||||
{ $subheading "Backreferences" }
|
||||
"Backreferences were omitted because of a design decision to allow only regular expressions following the formal theory of regular languages. For more information, see " { $link { "regexp" "theory" } } "."
|
||||
$nl
|
||||
|
|
|
@ -37,7 +37,7 @@ $nl
|
|||
{ $code "'[ 2 _ + ]" } ;
|
||||
|
||||
ARTICLE: "namespaces-make" "Making sequences with variables"
|
||||
"The " { $vocab-link "make" } " vocabulary implements a facility for constructing sequences by holding an collector sequence in a variable. Storing the collector sequence in a variable rather than the stack may allow code to be written with less stack manipulation."
|
||||
"The " { $vocab-link "make" } " vocabulary implements a facility for constructing sequences by holding a collector sequence in a variable. Storing the collector sequence in a variable rather than the stack may allow code to be written with less stack manipulation."
|
||||
$nl
|
||||
"Sequence construction is wrapped in a combinator:"
|
||||
{ $subsections make }
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
! Copyright (C) 2009 Doug Coleman.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: accessors assocs calendar fry kernel parser sequences
|
||||
shuffle vocabs words memoize ;
|
||||
USING: accessors assocs calendar fry kernel locals parser
|
||||
sequences vocabs words memoize ;
|
||||
IN: calendar.holidays
|
||||
|
||||
SINGLETONS: all world commonwealth-of-nations ;
|
||||
|
@ -15,7 +15,8 @@ SYNTAX: HOLIDAY:
|
|||
parse-definition (( timestamp/n -- timestamp )) define-declared ;
|
||||
|
||||
SYNTAX: HOLIDAY-NAME:
|
||||
scan-word "holiday" word-prop scan-word scan-object spin set-at ;
|
||||
[let scan-word "holiday" word-prop :> holidays scan-word :> name scan-object :> value
|
||||
value name holidays set-at ] ;
|
||||
>>
|
||||
|
||||
GENERIC: holidays ( n singleton -- seq )
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: accessors assocs calendar calendar.holidays
|
||||
calendar.holidays.private combinators combinators.short-circuit
|
||||
fry kernel lexer math namespaces parser sequences shuffle
|
||||
fry kernel lexer math namespaces parser sequences
|
||||
vocabs words ;
|
||||
IN: calendar.holidays.us
|
||||
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
USING: accessors furnace.actions furnace.redirection
|
||||
html.forms http http.server http.server.dispatchers
|
||||
io.directories io.encodings.utf8 io.files io.pathnames
|
||||
kernel math.parser multiline namespaces sequences urls ;
|
||||
kernel math.parser multiline namespaces sequences urls
|
||||
math ;
|
||||
IN: webapps.imagebin
|
||||
|
||||
TUPLE: imagebin < dispatcher path n ;
|
||||
|
@ -14,13 +15,13 @@ TUPLE: imagebin < dispatcher path n ;
|
|||
|
||||
: next-image-path ( -- path )
|
||||
imagebin get
|
||||
[ path>> ] [ n>> number>string ] bi append-path ;
|
||||
[ path>> ] [ [ 1 + ] change-n n>> number>string ] bi append-path ;
|
||||
|
||||
M: imagebin call-responder*
|
||||
[ imagebin set ] [ call-next-method ] bi ;
|
||||
|
||||
: move-image ( mime-file -- )
|
||||
next-image-path
|
||||
[ next-image-path dup exists? ] [ drop ] while
|
||||
[ [ temporary-path>> ] dip move-file ]
|
||||
[ [ filename>> ] dip ".txt" append utf8 set-file-contents ] 2bi ;
|
||||
|
||||
|
|
|
@ -10,10 +10,10 @@ IN: factor.vim.fgen
|
|||
|
||||
%>
|
||||
" Vim syntax file
|
||||
" Language: factor
|
||||
" Language: Factor
|
||||
" Maintainer: Alex Chapman <chapman.alex@gmail.com>
|
||||
" Last Change: 2009 May 19
|
||||
" To run: USE: html.templates.fhtml "resource:misc/factor.vim.fgen" <fhtml> call-template
|
||||
" Last Change: 2011 Mar 15
|
||||
" To run: USING: html.templates html.templates.fhtml ; "resource:misc/factor.vim.fgen" <fhtml> call-template
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
|
@ -33,11 +33,11 @@ else
|
|||
set iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
||||
endif
|
||||
|
||||
syn cluster factorCluster contains=factorComment,factorFryDirective,factorKeyword,factorRepeat,factorConditional,factorBoolean,factorCompileDirective,factorString,factorTriString,factorSbuf,@factorNumber,@factorNumErr,factorDelimiter,factorChar,factorBackslash,factorLiteral,factorLiteralBlock,@factorWordOps,factorAlien,factorTuple,factorStruct
|
||||
syn cluster factorCluster contains=factorComment,factorFrySpecifier,factorKeyword,factorRepeat,factorConditional,factorBoolean,factorBreakpoint,factorDeclaration,factorCallQuotation,factorExecute,factorCallNextMethod,factorString,factorTriString,factorSbuf,@factorNumber,@factorNumErr,factorDelimiter,factorChar,factorBackslash,factorLiteral,factorLiteralBlock,@factorWordOps,factorAlien,factorSlot,factorTuple,factorStruct
|
||||
|
||||
syn match factorTodo /\(TODO\|FIXME\|XXX\):\=/ contained
|
||||
syn match factorComment /\<#!\>.*/ contains=factorTodo
|
||||
syn match factorComment /\<!\>.*/ contains=factorTodo
|
||||
syn match factorComment /\<#!\>\s.*/ contains=factorTodo
|
||||
syn match factorComment /\<!\>\s.*/ contains=factorTodo
|
||||
|
||||
syn cluster factorDefnContents contains=@factorCluster,factorStackEffect,factorLiteralStackEffect,factorArray0,factorQuotation0
|
||||
|
||||
|
@ -55,8 +55,12 @@ syn region None matchgroup=factorPrivate start=/\<<PRIVATE\>/ end=/\<PRIVATE>\>/
|
|||
|
||||
|
||||
syn keyword factorBoolean f t
|
||||
syn match factorFryDirective /\<\(@\|_\)\>/ contained
|
||||
syn keyword factorCompileDirective inline foldable recursive
|
||||
syn keyword factorBreakpoint B
|
||||
syn keyword factorFrySpecifier @ _ contained
|
||||
syn keyword factorDeclaration delimiter deprecated final flushable foldable inline recursive
|
||||
syn match factorCallQuotation /\<call(\s.*\s--\s.*\s)\>/
|
||||
syn match factorExecute /\<execute(\s.*\s--\s.*\s)\>/
|
||||
syn keyword factorCallNextMethod call-next-method
|
||||
|
||||
<%
|
||||
|
||||
|
@ -101,16 +105,20 @@ syn region factorLiteralBlock start=/\<\$\[\>/ end=/\<\]\>/
|
|||
syn region factorUsing start=/\<USING:\>/ end=/;/
|
||||
syn match factorQualified /\<QUALIFIED:\s\+\S\+\>/
|
||||
syn match factorQualifiedWith /\<QUALIFIED-WITH:\s\+\S\+\s\+\S\+\>/
|
||||
syn region factorExclude start=/\<EXCLUDE:\>/ end=/;/
|
||||
syn region factorFrom start=/\<FROM:\>/ end=/;/
|
||||
syn region factorRename start=/\<RENAME:\>/ end=/;/
|
||||
syn region factorSingletons start=/\<SINGLETONS:\>/ end=/;/
|
||||
syn match factorSymbol /\<SYMBOL:\s\+\S\+\>/
|
||||
syn region factorSymbols start=/\<SYMBOLS:\>/ end=/;/
|
||||
syn region factorConstructor2 start=/\<CONSTRUCTOR:\?/ end=/;/
|
||||
syn region factorIntersection start=/\<INTERSECTION:\>/ end=/\<;\>/
|
||||
syn region factorTuple start=/\<TUPLE:\>/ end=/\<;\>/
|
||||
syn region factorUnion start=/\<UNION:\>/ end=/\<;\>/
|
||||
syn region factorStruct start=/\<\(UNION-STRUCT:\|STRUCT:\)\>/ end=/\<;\>/
|
||||
|
||||
syn match factorConstant /\<CONSTANT:\s\+\S\+\>/
|
||||
syn match factorAlias /\<ALIAS:\s\+\S\+\>/
|
||||
syn match factorAlias /\<ALIAS:\s\+\S\+\s\+\S\+\>/
|
||||
syn match factorSingleton /\<SINGLETON:\s\+\S\+\>/
|
||||
syn match factorPostpone /\<POSTPONE:\s\+\S\+\>/
|
||||
syn match factorDefer /\<DEFER:\s\+\S\+\>/
|
||||
|
@ -121,6 +129,7 @@ syn match factorHook /\<HOOK:\s\+\S\+\s\+\S\+\>/
|
|||
syn match factorMain /\<MAIN:\s\+\S\+\>/
|
||||
syn match factorConstructor /\<C:\s\+\S\+\s\+\S\+\>/
|
||||
syn match factorAlien /\<ALIEN:\s\+[0-9a-fA-F]\([0-9a-fA-F,]*[0-9a-fA-F]\)\?\>/
|
||||
syn match factorSlot /\<SLOT:\s\+\S\+\>/
|
||||
|
||||
syn cluster factorWordOps contains=factorConstant,factorAlias,factorSingleton,factorSingletons,factorSymbol,factorSymbols,factorPostpone,factorDefer,factorForget,factorMixin,factorInstance,factorHook,factorMain,factorConstructor
|
||||
|
||||
|
@ -140,7 +149,7 @@ syn cluster factorWordOps contains=factorConstant,factorAlias,factorSingle
|
|||
|
||||
syn region factorString start=/\<"/ skip=/\\"/ end=/"/
|
||||
syn region factorTriString start=/\<"""/ skip=/\\"/ end=/"""/
|
||||
syn region factorSbuf start=/\<SBUF"\>/ skip=/\\"/ end=/"/
|
||||
syn region factorSbuf start=/\<[-a-zA-Z0-9]\+"\>/ skip=/\\"/ end=/"/
|
||||
|
||||
syn region factorMultiString matchgroup=factorMultiStringDelims start=/\<STRING:\s\+\S\+\>/ end=/^;$/ contains=factorMultiStringContents
|
||||
syn match factorMultiStringContents /.*/ contained
|
||||
|
@ -148,11 +157,11 @@ syn match factorMultiStringContents /.*/ contained
|
|||
"syn match factorStackEffectErr /\<)\>/
|
||||
"syn region factorStackEffectErr start=/\<(\>/ end=/\<)\>/
|
||||
"syn region factorStackEffect start=/\<(\>/ end=/\<)\>/ contained
|
||||
syn match factorStackEffect /\<( .*--.* )\>/ contained
|
||||
syn match factorLiteralStackEffect /\<(( .*--.* ))\>/
|
||||
syn match factorStackEffect /\<(\s.*\s--\s.*\s)\>/ contained
|
||||
syn match factorLiteralStackEffect /\<((\s.*\s--\s.*\s))\>/
|
||||
|
||||
"adapted from lisp.vim
|
||||
if exists("g:factor_norainbow")
|
||||
if exists("g:factor_norainbow")
|
||||
syn region factorQuotation matchgroup=factorDelimiter start=/\<\(\(\('\|\$\|\)\[\)\|\[\(let\||\)\)\>/ matchgroup=factorDelimiter end=/\<\]\>/ contains=ALL
|
||||
else
|
||||
syn region factorQuotation0 matchgroup=hlLevel0 start=/\<\(\(\('\|\$\|\)\[\)\|\[\(let\||\)\)\>/ end=/\<\]\>/ contains=@factorCluster,factorQuotation1,factorArray1
|
||||
|
@ -167,7 +176,7 @@ else
|
|||
syn region factorQuotation9 contained matchgroup=hlLevel9 start=/\<\(\(\('\|\$\|\)\[\)\|\[\(let\||\)\)\>/ end=/\<\]\>/ contains=@factorCluster,factorQuotation0,factorArray0
|
||||
endif
|
||||
|
||||
if exists("g:factor_norainbow")
|
||||
if exists("g:factor_norainbow")
|
||||
syn region factorArray matchgroup=factorDelimiter start=/\<\(\$\|[-a-zA-Z0-9]\+\)\?{\>/ matchgroup=factorDelimiter end=/\<}\>/ contains=ALL
|
||||
else
|
||||
syn region factorArray0 matchgroup=hlLevel0 start=/\<\(\$\|[-a-zA-Z0-9]\+\)\?{\>/ end=/\<}\>/ contains=@factorCluster,factorArray1,factorQuotation1
|
||||
|
@ -203,9 +212,13 @@ if version >= 508 || !exists("did_factor_syn_inits")
|
|||
HiLink factorRepeat Repeat
|
||||
HiLink factorConditional Conditional
|
||||
HiLink factorKeyword Keyword
|
||||
HiLink factorCallQuotation Keyword
|
||||
HiLink factorExecute Keyword
|
||||
HiLink factorCallNextMethod Keyword
|
||||
HiLink factorOperator Operator
|
||||
HiLink factorFryDirective Operator
|
||||
HiLink factorFrySpecifier Operator
|
||||
HiLink factorBoolean Boolean
|
||||
HiLink factorBreakpoint Debug
|
||||
HiLink factorDefnDelims Typedef
|
||||
HiLink factorMethodDelims Typedef
|
||||
HiLink factorGenericDelims Typedef
|
||||
|
@ -237,7 +250,9 @@ if version >= 508 || !exists("did_factor_syn_inits")
|
|||
HiLink factorUsing Include
|
||||
HiLink factorQualified Include
|
||||
HiLink factorQualifiedWith Include
|
||||
HiLink factorExclude Include
|
||||
HiLink factorFrom Include
|
||||
HiLink factorRename Include
|
||||
HiLink factorUse Include
|
||||
HiLink factorUnuse Include
|
||||
HiLink factorIn Define
|
||||
|
@ -246,9 +261,11 @@ if version >= 508 || !exists("did_factor_syn_inits")
|
|||
HiLink factorBackslash Special
|
||||
HiLink factorLiteral Special
|
||||
HiLink factorLiteralBlock Special
|
||||
HiLink factorCompileDirective Typedef
|
||||
HiLink factorDeclaration Typedef
|
||||
HiLink factorSymbol Define
|
||||
HiLink factorSymbols Define
|
||||
HiLink factorConstant Define
|
||||
HiLink factorAlias Define
|
||||
HiLink factorSingleton Define
|
||||
HiLink factorSingletons Define
|
||||
HiLink factorMixin Typedef
|
||||
|
@ -259,7 +276,10 @@ if version >= 508 || !exists("did_factor_syn_inits")
|
|||
HiLink factorDefer Define
|
||||
HiLink factorForget Define
|
||||
HiLink factorAlien Define
|
||||
HiLink factorSlot Define
|
||||
HiLink factorIntersection Typedef
|
||||
HiLink factorTuple Typedef
|
||||
HiLink factorUnion Typedef
|
||||
HiLink factorStruct Typedef
|
||||
|
||||
if &bg == "dark"
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
|
||||
" Vim syntax file
|
||||
" Language: factor
|
||||
" Language: Factor
|
||||
" Maintainer: Alex Chapman <chapman.alex@gmail.com>
|
||||
" Last Change: 2009 May 19
|
||||
" To run: USE: html.templates.fhtml "resource:misc/factor.vim.fgen" <fhtml> call-template
|
||||
" Last Change: 2011 Mar 15
|
||||
" To run: USING: html.templates html.templates.fhtml ; "resource:misc/factor.vim.fgen" <fhtml> call-template
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
|
@ -23,11 +22,11 @@ else
|
|||
set iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
||||
endif
|
||||
|
||||
syn cluster factorCluster contains=factorComment,factorFryDirective,factorKeyword,factorRepeat,factorConditional,factorBoolean,factorCompileDirective,factorString,factorTriString,factorSbuf,@factorNumber,@factorNumErr,factorDelimiter,factorChar,factorBackslash,factorLiteral,factorLiteralBlock,@factorWordOps,factorAlien,factorTuple,factorStruct
|
||||
syn cluster factorCluster contains=factorComment,factorFrySpecifier,factorKeyword,factorRepeat,factorConditional,factorBoolean,factorBreakpoint,factorDeclaration,factorCallQuotation,factorExecute,factorCallNextMethod,factorString,factorTriString,factorSbuf,@factorNumber,@factorNumErr,factorDelimiter,factorChar,factorBackslash,factorLiteral,factorLiteralBlock,@factorWordOps,factorAlien,factorSlot,factorTuple,factorStruct
|
||||
|
||||
syn match factorTodo /\(TODO\|FIXME\|XXX\):\=/ contained
|
||||
syn match factorComment /\<#!\>.*/ contains=factorTodo
|
||||
syn match factorComment /\<!\>.*/ contains=factorTodo
|
||||
syn match factorComment /\<#!\>\s.*/ contains=factorTodo
|
||||
syn match factorComment /\<!\>\s.*/ contains=factorTodo
|
||||
|
||||
syn cluster factorDefnContents contains=@factorCluster,factorStackEffect,factorLiteralStackEffect,factorArray0,factorQuotation0
|
||||
|
||||
|
@ -45,8 +44,12 @@ syn region None matchgroup=factorPrivate start=/\<<PRIVATE\>/ end=/\<PRIVATE>\>/
|
|||
|
||||
|
||||
syn keyword factorBoolean f t
|
||||
syn match factorFryDirective /\<\(@\|_\)\>/ contained
|
||||
syn keyword factorCompileDirective inline foldable recursive
|
||||
syn keyword factorBreakpoint B
|
||||
syn keyword factorFrySpecifier @ _ contained
|
||||
syn keyword factorDeclaration delimiter deprecated final flushable foldable inline recursive
|
||||
syn match factorCallQuotation /\<call(\s.*\s--\s.*\s)\>/
|
||||
syn match factorExecute /\<execute(\s.*\s--\s.*\s)\>/
|
||||
syn keyword factorCallNextMethod call-next-method
|
||||
|
||||
syn keyword factorKeyword or 2bi 2tri while wrapper nip 4dip wrapper? bi* callstack>array both? hashcode die dupd callstack callstack? 3dup tri@ pick curry build ?execute 3bi prepose >boolean ?if clone eq? tri* ? = swapd 2over 2keep 3keep clear 2dup when not tuple? dup 2bi* 2tri* call tri-curry object bi@ do unless* if* loop bi-curry* drop when* assert= retainstack assert? -rot execute 2bi@ 2tri@ boa with either? 3drop bi curry? datastack until 3dip over 3curry tri-curry* tri-curry@ swap and 2nip throw bi-curry (clone) hashcode* compose 2dip if 3tri unless compose? tuple keep 2curry equal? assert tri 2drop most <wrapper> boolean? identity-hashcode identity-tuple? null new dip bi-curry@ rot xor identity-tuple boolean
|
||||
syn keyword factorKeyword ?at assoc? assoc-clone-like assoc= delete-at* assoc-partition extract-keys new-assoc value? assoc-size map>assoc push-at assoc-like key? assoc-intersect assoc-refine update assoc-union assoc-combine at* assoc-empty? at+ set-at assoc-all? assoc-subset? assoc-hashcode change-at assoc-each assoc-diff zip values value-at rename-at inc-at enum? at cache assoc>map <enum> assoc assoc-map enum value-at* assoc-map-as >alist assoc-filter-as clear-assoc assoc-stack maybe-set-at substitute assoc-filter 2cache delete-at assoc-find keys assoc-any? unzip
|
||||
|
@ -89,16 +92,20 @@ syn region factorLiteralBlock start=/\<\$\[\>/ end=/\<\]\>/
|
|||
syn region factorUsing start=/\<USING:\>/ end=/;/
|
||||
syn match factorQualified /\<QUALIFIED:\s\+\S\+\>/
|
||||
syn match factorQualifiedWith /\<QUALIFIED-WITH:\s\+\S\+\s\+\S\+\>/
|
||||
syn region factorExclude start=/\<EXCLUDE:\>/ end=/;/
|
||||
syn region factorFrom start=/\<FROM:\>/ end=/;/
|
||||
syn region factorRename start=/\<RENAME:\>/ end=/;/
|
||||
syn region factorSingletons start=/\<SINGLETONS:\>/ end=/;/
|
||||
syn match factorSymbol /\<SYMBOL:\s\+\S\+\>/
|
||||
syn region factorSymbols start=/\<SYMBOLS:\>/ end=/;/
|
||||
syn region factorConstructor2 start=/\<CONSTRUCTOR:\?/ end=/;/
|
||||
syn region factorIntersection start=/\<INTERSECTION:\>/ end=/\<;\>/
|
||||
syn region factorTuple start=/\<TUPLE:\>/ end=/\<;\>/
|
||||
syn region factorUnion start=/\<UNION:\>/ end=/\<;\>/
|
||||
syn region factorStruct start=/\<\(UNION-STRUCT:\|STRUCT:\)\>/ end=/\<;\>/
|
||||
|
||||
syn match factorConstant /\<CONSTANT:\s\+\S\+\>/
|
||||
syn match factorAlias /\<ALIAS:\s\+\S\+\>/
|
||||
syn match factorAlias /\<ALIAS:\s\+\S\+\s\+\S\+\>/
|
||||
syn match factorSingleton /\<SINGLETON:\s\+\S\+\>/
|
||||
syn match factorPostpone /\<POSTPONE:\s\+\S\+\>/
|
||||
syn match factorDefer /\<DEFER:\s\+\S\+\>/
|
||||
|
@ -109,6 +116,7 @@ syn match factorHook /\<HOOK:\s\+\S\+\s\+\S\+\>/
|
|||
syn match factorMain /\<MAIN:\s\+\S\+\>/
|
||||
syn match factorConstructor /\<C:\s\+\S\+\s\+\S\+\>/
|
||||
syn match factorAlien /\<ALIEN:\s\+[0-9a-fA-F]\([0-9a-fA-F,]*[0-9a-fA-F]\)\?\>/
|
||||
syn match factorSlot /\<SLOT:\s\+\S\+\>/
|
||||
|
||||
syn cluster factorWordOps contains=factorConstant,factorAlias,factorSingleton,factorSingletons,factorSymbol,factorSymbols,factorPostpone,factorDefer,factorForget,factorMixin,factorInstance,factorHook,factorMain,factorConstructor
|
||||
|
||||
|
@ -136,11 +144,11 @@ syn match factorMultiStringContents /.*/ contained
|
|||
"syn match factorStackEffectErr /\<)\>/
|
||||
"syn region factorStackEffectErr start=/\<(\>/ end=/\<)\>/
|
||||
"syn region factorStackEffect start=/\<(\>/ end=/\<)\>/ contained
|
||||
syn match factorStackEffect /\<( .*--.* )\>/ contained
|
||||
syn match factorLiteralStackEffect /\<(( .*--.* ))\>/
|
||||
syn match factorStackEffect /\<(\s.*\s--\s.*\s)\>/ contained
|
||||
syn match factorLiteralStackEffect /\<((\s.*\s--\s.*\s))\>/
|
||||
|
||||
"adapted from lisp.vim
|
||||
if exists("g:factor_norainbow")
|
||||
if exists("g:factor_norainbow")
|
||||
syn region factorQuotation matchgroup=factorDelimiter start=/\<\(\(\('\|\$\|\)\[\)\|\[\(let\||\)\)\>/ matchgroup=factorDelimiter end=/\<\]\>/ contains=ALL
|
||||
else
|
||||
syn region factorQuotation0 matchgroup=hlLevel0 start=/\<\(\(\('\|\$\|\)\[\)\|\[\(let\||\)\)\>/ end=/\<\]\>/ contains=@factorCluster,factorQuotation1,factorArray1
|
||||
|
@ -155,7 +163,7 @@ else
|
|||
syn region factorQuotation9 contained matchgroup=hlLevel9 start=/\<\(\(\('\|\$\|\)\[\)\|\[\(let\||\)\)\>/ end=/\<\]\>/ contains=@factorCluster,factorQuotation0,factorArray0
|
||||
endif
|
||||
|
||||
if exists("g:factor_norainbow")
|
||||
if exists("g:factor_norainbow")
|
||||
syn region factorArray matchgroup=factorDelimiter start=/\<\(\$\|[-a-zA-Z0-9]\+\)\?{\>/ matchgroup=factorDelimiter end=/\<}\>/ contains=ALL
|
||||
else
|
||||
syn region factorArray0 matchgroup=hlLevel0 start=/\<\(\$\|[-a-zA-Z0-9]\+\)\?{\>/ end=/\<}\>/ contains=@factorCluster,factorArray1,factorQuotation1
|
||||
|
@ -191,9 +199,13 @@ if version >= 508 || !exists("did_factor_syn_inits")
|
|||
HiLink factorRepeat Repeat
|
||||
HiLink factorConditional Conditional
|
||||
HiLink factorKeyword Keyword
|
||||
HiLink factorCallQuotation Keyword
|
||||
HiLink factorExecute Keyword
|
||||
HiLink factorCallNextMethod Keyword
|
||||
HiLink factorOperator Operator
|
||||
HiLink factorFryDirective Operator
|
||||
HiLink factorFrySpecifier Operator
|
||||
HiLink factorBoolean Boolean
|
||||
HiLink factorBreakpoint Debug
|
||||
HiLink factorDefnDelims Typedef
|
||||
HiLink factorMethodDelims Typedef
|
||||
HiLink factorGenericDelims Typedef
|
||||
|
@ -225,7 +237,9 @@ if version >= 508 || !exists("did_factor_syn_inits")
|
|||
HiLink factorUsing Include
|
||||
HiLink factorQualified Include
|
||||
HiLink factorQualifiedWith Include
|
||||
HiLink factorExclude Include
|
||||
HiLink factorFrom Include
|
||||
HiLink factorRename Include
|
||||
HiLink factorUse Include
|
||||
HiLink factorUnuse Include
|
||||
HiLink factorIn Define
|
||||
|
@ -234,9 +248,11 @@ if version >= 508 || !exists("did_factor_syn_inits")
|
|||
HiLink factorBackslash Special
|
||||
HiLink factorLiteral Special
|
||||
HiLink factorLiteralBlock Special
|
||||
HiLink factorCompileDirective Typedef
|
||||
HiLink factorDeclaration Typedef
|
||||
HiLink factorSymbol Define
|
||||
HiLink factorSymbols Define
|
||||
HiLink factorConstant Define
|
||||
HiLink factorAlias Define
|
||||
HiLink factorSingleton Define
|
||||
HiLink factorSingletons Define
|
||||
HiLink factorMixin Typedef
|
||||
|
@ -247,7 +263,10 @@ if version >= 508 || !exists("did_factor_syn_inits")
|
|||
HiLink factorDefer Define
|
||||
HiLink factorForget Define
|
||||
HiLink factorAlien Define
|
||||
HiLink factorSlot Define
|
||||
HiLink factorIntersection Typedef
|
||||
HiLink factorTuple Typedef
|
||||
HiLink factorUnion Typedef
|
||||
HiLink factorStruct Typedef
|
||||
|
||||
if &bg == "dark"
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
package, or checked out Factor sources from the GIT repository.</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="http://concatenative.org/wiki/view/Factor/Getting%20started">Getting started</a></li>
|
||||
<li><a href="http://concatenative.org/wiki/view/Factor/Learning">Learning Factor</a></li>
|
||||
<li><a href="http://concatenative.org/wiki/view/Factor/Requirements">System requirements</a></li>
|
||||
<li><a href="http://concatenative.org/wiki/view/Factor/Building%20Factor">Building Factor from source</a> (don't do this if you're using a binary package)</li>
|
||||
</ul>
|
||||
|
|
Loading…
Reference in New Issue