ini-file: cleanup using \f\v escapes.
parent
5f1f2a00d6
commit
df295d5ef9
|
@ -43,12 +43,12 @@ USE: xml.entities
|
||||||
: escape-string ( str -- str' )
|
: escape-string ( str -- str' )
|
||||||
H{
|
H{
|
||||||
{ CHAR: \a "\\a" }
|
{ CHAR: \a "\\a" }
|
||||||
{ 0x08 "\\b" }
|
{ CHAR: \b "\\b" }
|
||||||
{ 0x0c "\\f" }
|
{ CHAR: \f "\\f" }
|
||||||
{ CHAR: \n "\\n" }
|
{ CHAR: \n "\\n" }
|
||||||
{ CHAR: \r "\\r" }
|
{ CHAR: \r "\\r" }
|
||||||
{ CHAR: \t "\\t" }
|
{ CHAR: \t "\\t" }
|
||||||
{ 0x0b "\\v" }
|
{ CHAR: \b "\\v" }
|
||||||
{ CHAR: ' "\\'" }
|
{ CHAR: ' "\\'" }
|
||||||
{ CHAR: \" "\\\"" }
|
{ CHAR: \" "\\\"" }
|
||||||
{ CHAR: \\ "\\\\" }
|
{ CHAR: \\ "\\\\" }
|
||||||
|
@ -60,14 +60,7 @@ USE: xml.entities
|
||||||
} escape-string-by ;
|
} escape-string-by ;
|
||||||
|
|
||||||
: space? ( ch -- ? )
|
: space? ( ch -- ? )
|
||||||
{
|
"\s\t\n\r\f\v" member-eq? ;
|
||||||
[ CHAR: \s = ]
|
|
||||||
[ CHAR: \t = ]
|
|
||||||
[ CHAR: \n = ]
|
|
||||||
[ CHAR: \r = ]
|
|
||||||
[ 0x0c = ] ! \f
|
|
||||||
[ 0x0b = ] ! \v
|
|
||||||
} 1|| ;
|
|
||||||
|
|
||||||
: unspace ( str -- str' )
|
: unspace ( str -- str' )
|
||||||
[ space? ] trim ;
|
[ space? ] trim ;
|
||||||
|
@ -92,7 +85,7 @@ SYMBOL: option
|
||||||
} 1&& ;
|
} 1&& ;
|
||||||
|
|
||||||
: line-continues? ( line -- ? )
|
: line-continues? ( line -- ? )
|
||||||
{ [ empty? not ] [ last CHAR: \ = ] } 1&& ;
|
?last CHAR: \ = ;
|
||||||
|
|
||||||
: section, ( -- )
|
: section, ( -- )
|
||||||
section get [ , ] when* ;
|
section get [ , ] when* ;
|
||||||
|
@ -130,9 +123,9 @@ PRIVATE>
|
||||||
|
|
||||||
: write-ini ( assoc -- )
|
: write-ini ( assoc -- )
|
||||||
[
|
[
|
||||||
dup string?
|
dup string? [
|
||||||
[ [ escape-string ] bi@ "%s=%s\n" printf ]
|
[ escape-string ] bi@ "%s=%s\n" printf
|
||||||
[
|
] [
|
||||||
[ escape-string "[%s]\n" printf ] dip
|
[ escape-string "[%s]\n" printf ] dip
|
||||||
[ [ escape-string ] bi@ "%s=%s\n" printf ]
|
[ [ escape-string ] bi@ "%s=%s\n" printf ]
|
||||||
assoc-each nl
|
assoc-each nl
|
||||||
|
|
Loading…
Reference in New Issue