diff --git a/docs/tests/FILEFORMAT.md b/docs/tests/FILEFORMAT.md
index 070735836e..9703df9aa8 100644
--- a/docs/tests/FILEFORMAT.md
+++ b/docs/tests/FILEFORMAT.md
@@ -81,8 +81,8 @@ For example, to insert the word hello 100 times:
To add significant whitespace characters at the end of the line, or to empty
lines:
- %spc%
- %tab%
+ %SP - space
+ %TAB - horizontal tab
## Insert capped epoch days
diff --git a/tests/data/test1029 b/tests/data/test1029
index ac636449cb..2004791cd8 100644
--- a/tests/data/test1029
+++ b/tests/data/test1029
@@ -50,7 +50,7 @@ Content-Length: 62
Connection: close
This server reply is for testing a simple Location: following
-http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER 0%spc%
+http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER 0%SP
diff --git a/tests/data/test1070 b/tests/data/test1070
index 39e2d408f8..3305b7b2b2 100644
--- a/tests/data/test1070
+++ b/tests/data/test1070
@@ -57,7 +57,7 @@ Expect: 100-continue
Content-Length: 2313
Content-Type: application/x-www-form-urlencoded
-This creates%spc%
+This creates%SP
diff --git a/tests/data/test1090 b/tests/data/test1090
index ad3c59d113..0e3879c68c 100644
--- a/tests/data/test1090
+++ b/tests/data/test1090
@@ -30,7 +30,7 @@ Connection: close
Content-Type: text/plain; charset=us-ascii
0007
-bigger%spc%
+bigger%SP
0008
monster
diff --git a/tests/data/test1105 b/tests/data/test1105
index aa84c862cb..d23b92f560 100644
--- a/tests/data/test1105
+++ b/tests/data/test1105
@@ -19,9 +19,9 @@ Funny-head: yesyes swsclose
Set-Cookie: foobar=name;
Set-Cookie: mismatch=this; domain=127.0.0.1; path="/silly/";
Set-Cookie: partmatch=present; domain=.0.0.1; path=/;
-Set-Cookie: foo%tab%bar=barfoo
-Set-Cookie: bar%tab%foo=
-Set-Cookie: bar=foo%tab%bar
+Set-Cookie: foo%TABbar=barfoo
+Set-Cookie: bar%TABfoo=
+Set-Cookie: bar=foo%TABbar
diff --git a/tests/data/test1185 b/tests/data/test1185
index 64eef41800..26852a6418 100644
--- a/tests/data/test1185
+++ b/tests/data/test1185
@@ -20,7 +20,7 @@ checksrc
* Violate each rule at least once.
**/
int hello; /*------------------------------------------------------------------*/
-int%tab%tab;
+int%TABtab;
int trailing_space;
int a = func ();
int b = func( b);
@@ -91,7 +91,7 @@ void startfunc(int a, int b) {
./%LOGDIR/code1185.c:4:82: warning: Longer than 79 columns (LONGLINE)
int hello; /*------------------------------------------------------------------*/
./%LOGDIR/code1185.c:5:4: error: Contains TAB character (TABS)
- int%tab%tab;
+ int%TABtab;
^
./%LOGDIR/code1185.c:7:13: warning: func with space (SPACEBEFOREPAREN)
int a = func ();
@@ -118,7 +118,7 @@ void startfunc(int a, int b) {
} else {
^
./%LOGDIR/code1185.c:24:11: warning: missing space after close paren (PARENBRACE)
- if(a == 2){%spc%%spc%
+ if(a == 2){%SP%SP
^
./%LOGDIR/code1185.c:28:14: warning: no space before semicolon (SPACESEMICOLON)
func_return() ;
@@ -205,10 +205,10 @@ void startfunc(int a, int b) {
// CPP comment ?
^
./%LOGDIR/code1185.c:1:1: error: Missing copyright statement (COPYRIGHT)
-%spc%
+%SP
^
./%LOGDIR/code1185.c:1:1: error: Missing closing comment (OPENCOMMENT)
-%spc%
+%SP
^
checksrc: 0 errors and 41 warnings
diff --git a/tests/data/test136 b/tests/data/test136
index 70537719cc..c869c612bf 100644
--- a/tests/data/test136
+++ b/tests/data/test136
@@ -30,7 +30,7 @@ FTP with user and no password
USER user
-PASS%spc%
+PASS%SP
PWD
EPSV
TYPE I
diff --git a/tests/data/test1461 b/tests/data/test1461
index 71de31772d..4ee109a122 100644
--- a/tests/data/test1461
+++ b/tests/data/test1461
@@ -47,8 +47,8 @@ Usage: curl [options...]
This is not the full help; this menu is split into categories.
Use "--help category" to get an overview of all categories, which are:
-auth, connection, curl, deprecated, dns, file, ftp, global, http, imap, ldap,%spc%
-output, pop3, post, proxy, scp, sftp, smtp, ssh, telnet, tftp, timeout, tls,%spc%
+auth, connection, curl, deprecated, dns, file, ftp, global, http, imap, ldap,%SP
+output, pop3, post, proxy, scp, sftp, smtp, ssh, telnet, tftp, timeout, tls,%SP
upload, verbose.
Use "--help all" to list all options
Use "--help [option]" to view documentation for a given option
diff --git a/tests/data/test1654 b/tests/data/test1654
index 3b88236441..8f3cae1556 100644
--- a/tests/data/test1654
+++ b/tests/data/test1654
@@ -27,7 +27,7 @@ h2 example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0
# a comment
h2 foo.example.com 443 h3 shiny.example.com 8443 "20291231 23:30:00" 0 0
h1 example.com 443 h3 shiny.example.com 8443 "20121231 00:00:01" 0 0
-%tab%h3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0
+%TABh3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0
# also a comment
bad example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0
rubbish
diff --git a/tests/data/test1664 b/tests/data/test1664
index ea126a3be7..fa0b3a377c 100644
--- a/tests/data/test1664
+++ b/tests/data/test1664
@@ -68,7 +68,7 @@ curlx_str_singlespace
3: ("b") 5, line 0
4: ("\") 5, line 0
5: (" ") 0, line 1
-6: ("%tab%") 5, line 0
+6: ("%TAB") 5, line 0
7: ("
") 5, line 0
8: ("") 5, line 0
diff --git a/tests/data/test17 b/tests/data/test17
index c8c0a19b77..31e2a8e536 100644
--- a/tests/data/test17
+++ b/tests/data/test17
@@ -46,7 +46,7 @@ request MOOO
MOOO /that.site.com/%TESTNUMBER HTTP/1.1
Host: %HOSTIP:%HTTPPORT
-User-Agent: agent007 license to drill%tab%
+User-Agent: agent007 license to drill%TAB
Accept: */*
diff --git a/tests/data/test1700 b/tests/data/test1700
index 6d26e1b011..e75c1f3d1a 100644
--- a/tests/data/test1700
+++ b/tests/data/test1700
@@ -76,7 +76,7 @@ HTTP/1.1 101 Switching Protocols
Connection: Upgrade
Upgrade: h2c
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
last-modified: Tue, 13 Jun 2000 12:10:00 GMT
etag: "21025-dc7-39462498"
@@ -87,7 +87,7 @@ funny-head: yesyes
via: 1.1 nghttpx
-foo-
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
diff --git a/tests/data/test1701 b/tests/data/test1701
index 44780df197..ecc5f6f17c 100644
--- a/tests/data/test1701
+++ b/tests/data/test1701
@@ -65,7 +65,7 @@ HTTP/1.1 101 Switching Protocols
Connection: Upgrade
Upgrade: h2c
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
last-modified: Tue, 13 Jun 2000 12:10:00 GMT
etag: "21025-dc7-39462498"
diff --git a/tests/data/test1702 b/tests/data/test1702
index 9f1b167761..96acf700d3 100644
--- a/tests/data/test1702
+++ b/tests/data/test1702
@@ -61,7 +61,7 @@ HTTP/1.1 101 Switching Protocols
Connection: Upgrade
Upgrade: h2c
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
last-modified: Tue, 13 Jun 2000 12:10:00 GMT
etag: "21025-dc7-39462498"
diff --git a/tests/data/test188 b/tests/data/test188
index 79a7f5f84a..d5796c7318 100644
--- a/tests/data/test188
+++ b/tests/data/test188
@@ -19,7 +19,7 @@ Content-Length: 3
OK
-HTTP/1.1 200 OK%spc%
+HTTP/1.1 200 OK%SP
Connection: close
Content-Length: 15
Content-Range: bytes 50-
@@ -32,7 +32,7 @@ HTTP/1.1 301 OK swsbounce
Location: /%TESTNUMBER
Content-Length: 3
-HTTP/1.1 200 OK%spc%
+HTTP/1.1 200 OK%SP
Connection: close
Content-Length: 15
Content-Range: bytes 50-
diff --git a/tests/data/test189 b/tests/data/test189
index 8d92ef578b..e8e8044049 100644
--- a/tests/data/test189
+++ b/tests/data/test189
@@ -16,7 +16,7 @@ Content-Length: 3
OK
-HTTP/1.1 200 OK%spc%
+HTTP/1.1 200 OK%SP
Connection: close
Content-Length: 15
@@ -28,7 +28,7 @@ HTTP/1.1 301 OK swsbounce
Location: /%TESTNUMBER
Content-Length: 3
-HTTP/1.1 200 OK%spc%
+HTTP/1.1 200 OK%SP
Connection: close
Content-Length: 15
diff --git a/tests/data/test1940 b/tests/data/test1940
index d15bf1d5b6..b5ddd4c2b9 100644
--- a/tests/data/test1940
+++ b/tests/data/test1940
@@ -59,8 +59,8 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
- Set-Cookie == secondcookie=2data; (1/3)
- Set-Cookie == cookie3=data3; (2/3)
Fold == is folding a line
- Blank ==%spc%
- Blank2 ==%spc%
+ Blank ==%SP
+ Blank2 ==%SP
diff --git a/tests/data/test1955 b/tests/data/test1955
index 93d1422e8b..3a43100373 100644
--- a/tests/data/test1955
+++ b/tests/data/test1955
@@ -65,7 +65,7 @@ Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, S
X-Xxx-Date: 19700101T000000Z
test3: 1234
test2:
-test_space: t%tab%s m%tab% end%repeat[4 x ]%
+test_space: t%TABs m%TAB end%repeat[4 x ]%
tesMixCase: MixCase
diff --git a/tests/data/test1958 b/tests/data/test1958
index f5e38868c6..90dd1d131b 100644
--- a/tests/data/test1958
+++ b/tests/data/test1958
@@ -63,7 +63,7 @@ GET /aws_sigv4/testapi/test HTTP/1.1
Host: exam.ple.com:9000
Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=25b4cac711ea8f65010c485d3778885f5f3870d0b8ff0b3ab58a8d7eeab991ff
X-Xxx-Date: 19700101T000000Z
-X-Xxx-Content-Sha256: %tab%arbitrary%spc%
+X-Xxx-Content-Sha256: %TABarbitrary%SP
diff --git a/tests/data/test212 b/tests/data/test212
index c7fba5f8b9..6f1d747b58 100644
--- a/tests/data/test212
+++ b/tests/data/test212
@@ -51,11 +51,11 @@ PWD
CWD a
CWD path
EPRT |1|
-PORT%spc%
+PORT%SP
TYPE I
SIZE %TESTNUMBER
RETR %TESTNUMBER
-PORT%spc%
+PORT%SP
SIZE %TESTNUMBER
RETR %TESTNUMBER
QUIT
diff --git a/tests/data/test2302 b/tests/data/test2302
index ab88d9e162..889d014e2d 100644
--- a/tests/data/test2302
+++ b/tests/data/test2302
@@ -66,7 +66,7 @@ Connection: Upgrade
%hex[%8a%808321]hex%
-68 65 6c 6c 6f%spc%
+68 65 6c 6c 6f%SP
RECFLAGS: 1
diff --git a/tests/data/test2306 b/tests/data/test2306
index 233905fc79..713cc27c93 100644
--- a/tests/data/test2306
+++ b/tests/data/test2306
@@ -24,7 +24,7 @@ Funny-head: yesyes
HTTP/1.1 200 OK swsclose
-%tab%Access-Control-Allow-Origin: *
+%TABAccess-Control-Allow-Origin: *
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8
Date: Wed, 10 May 2023 14:58:08 GMT
diff --git a/tests/data/test2400 b/tests/data/test2400
index 8478681fbd..1fed4b71e6 100644
--- a/tests/data/test2400
+++ b/tests/data/test2400
@@ -50,7 +50,7 @@ HTTP/2 GET over HTTPS
# Verify data after the test has been "shot"
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
diff --git a/tests/data/test2401 b/tests/data/test2401
index a10715ff80..94787f1c6f 100644
--- a/tests/data/test2401
+++ b/tests/data/test2401
@@ -47,7 +47,7 @@ HTTP/2 POST over HTTPS
# Verify data after the test has been "shot"
-HTTP/2 201%spc%
+HTTP/2 201%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 0
funny-head: yesyes
diff --git a/tests/data/test2403 b/tests/data/test2403
index b23b1e6760..34141d6780 100644
--- a/tests/data/test2403
+++ b/tests/data/test2403
@@ -51,7 +51,7 @@ HTTP/2 GET using %{header_json}
# Verify data after the test has been "shot"
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
diff --git a/tests/data/test2406 b/tests/data/test2406
index adf39dbd7e..6426b2cc84 100644
--- a/tests/data/test2406
+++ b/tests/data/test2406
@@ -49,7 +49,7 @@ HTTP/2 over HTTPS with -f
# Verify data after the test has been "shot"
-HTTP/2 404%spc%
+HTTP/2 404%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
diff --git a/tests/data/test2500 b/tests/data/test2500
index c774bf805a..f92cabfd32 100644
--- a/tests/data/test2500
+++ b/tests/data/test2500
@@ -58,7 +58,7 @@ Accept: */*
-HTTP/3 200%spc%
+HTTP/3 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
last-modified: Tue, 13 Jun 2000 12:10:00 GMT
etag: "21025-dc7-39462498"
diff --git a/tests/data/test2501 b/tests/data/test2501
index 8d68a582c1..99167ec48e 100644
--- a/tests/data/test2501
+++ b/tests/data/test2501
@@ -47,7 +47,7 @@ HTTP/3 POST
# Verify data after the test has been "shot"
-HTTP/3 201%spc%
+HTTP/3 201%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 0
funny-head: yesyes
diff --git a/tests/data/test2503 b/tests/data/test2503
index 6c4b100bed..722d0ceb7a 100644
--- a/tests/data/test2503
+++ b/tests/data/test2503
@@ -50,7 +50,7 @@ HTTP/3 header-api
# Verify data after the test has been "shot"
-HTTP/3 200%spc%
+HTTP/3 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
diff --git a/tests/data/test358 b/tests/data/test358
index d29b09f956..3bdd5b4b32 100644
--- a/tests/data/test358
+++ b/tests/data/test358
@@ -60,7 +60,7 @@ HTTP/1.1 101 Switching Protocols
Connection: Upgrade
Upgrade: h2c
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
@@ -69,7 +69,7 @@ alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0
via: 1.1 nghttpx
-foo-
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
diff --git a/tests/data/test359 b/tests/data/test359
index cc2b27b2ff..1a2f9d73a8 100644
--- a/tests/data/test359
+++ b/tests/data/test359
@@ -60,7 +60,7 @@ HTTP/1.1 101 Switching Protocols
Connection: Upgrade
Upgrade: h2c
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
@@ -69,7 +69,7 @@ alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0
via: 1.1 nghttpx
-foo-
-HTTP/2 200%spc%
+HTTP/2 200%SP
date: Tue, 09 Nov 2010 14:49:00 GMT
content-length: 6
content-type: text/html
diff --git a/tests/data/test378 b/tests/data/test378
index e15e97e6e0..09279fc1d7 100644
--- a/tests/data/test378
+++ b/tests/data/test378
@@ -29,7 +29,7 @@ Reject using -T and -d at once
2
-Warning: You can only select one HTTP request method! You asked for both PUT%spc%
+Warning: You can only select one HTTP request method! You asked for both PUT%SP
Warning: (-T, --upload-file) and POST (-d, --data).
diff --git a/tests/data/test4 b/tests/data/test4
index 4f57f8dd62..8b0479c1f8 100644
--- a/tests/data/test4
+++ b/tests/data/test4
@@ -44,7 +44,7 @@ User-Agent: curl/%VERSION
extra-header: here
Accept: replaced
X-Custom-Header:
-X-Test: foo;%spc%
+X-Test: foo;%SP
X-Test2: foo;
GET /%TESTNUMBER HTTP/1.1
@@ -53,7 +53,7 @@ User-Agent: curl/%VERSION
extra-header: here
Accept: replaced
X-Custom-Header:
-X-Test: foo;%spc%
+X-Test: foo;%SP
X-Test2: foo;
diff --git a/tests/data/test421 b/tests/data/test421
index 7b41703fb5..6cc2bc2763 100644
--- a/tests/data/test421
+++ b/tests/data/test421
@@ -21,7 +21,7 @@ referrer-policy: strict-origin-when-cross-origin
access-control-allow-methods: GET, POST, PUT, DELETE, OPTIONS
access-control-max-age: 1728000
access-control-allow-headers: Authorization, Content-Type, AuthorizationOauth, X-EARLY-ACCESS
-access-control-expose-headers:%spc%
+access-control-expose-headers:%SP
vary: Accept
etag: W/"2678f9ab2ba550d164e7cc014aefd31e"
cache-control: max-age=0, private, must-revalidate
diff --git a/tests/data/test459 b/tests/data/test459
index 42398bd35f..539aa0729d 100644
--- a/tests/data/test459
+++ b/tests/data/test459
@@ -56,7 +56,7 @@ Content-Type: application/x-www-form-urlencoded
arg
-Warning: %LOGDIR/config:1: warning: 'data' uses unquoted whitespace. This may%spc%
+Warning: %LOGDIR/config:1: warning: 'data' uses unquoted whitespace. This may%SP
Warning: cause side-effects. Consider double quotes.
diff --git a/tests/data/test46 b/tests/data/test46
index 007861b4fb..715616e23c 100644
--- a/tests/data/test46
+++ b/tests/data/test46
@@ -65,7 +65,7 @@ www.loser.com FALSE / FALSE 2139150993 UID 99
domain..tld FALSE / FALSE 2139150993 mooo indeed
#HttpOnly_domain..tld FALSE /want FALSE 2139150993 mooo2 indeed2
%endif
-domain..tld FALSE /want FALSE 0 empty%tab%
+domain..tld FALSE /want FALSE 0 empty%TAB
cookies
@@ -88,18 +88,18 @@ Cookie: empty=; mooo2=indeed2; mooo=indeed
# This file was generated by libcurl! Edit at your own risk.
domain..tld FALSE /want/ FALSE 0 simplyhuge %repeat[3998 x z]%
-domain..tld FALSE / FALSE 0 justaname%tab%
+domain..tld FALSE / FALSE 0 justaname%TAB
domain..tld FALSE / FALSE 0 ASPSESSIONIDQGGQQSJJ GKNBDIFAAOFDPDAIEAKDIBKE
domain..tld FALSE / FALSE 0 ckySession temporary
domain..tld FALSE / FALSE %days[400] ckyPersistent permanent
%if large-time
-domain..tld FALSE /want FALSE 0 empty%tab%
+domain..tld FALSE /want FALSE 0 empty%TAB
#HttpOnly_domain..tld FALSE /want FALSE 22139150993 mooo2 indeed2
domain..tld FALSE / FALSE 22139150993 mooo indeed
www.loser.com FALSE / FALSE 22139150993 UID 99
www.fake.come FALSE / FALSE 22147483647 cookiecliente si
%else
-domain..tld FALSE /want FALSE 0 empty%tab%
+domain..tld FALSE /want FALSE 0 empty%TAB
#HttpOnly_domain..tld FALSE /want FALSE 2139150993 mooo2 indeed2
domain..tld FALSE / FALSE 2139150993 mooo indeed
www.loser.com FALSE / FALSE 2139150993 UID 99
diff --git a/tests/data/test54 b/tests/data/test54
index 167542fbf0..901620fa62 100644
--- a/tests/data/test54
+++ b/tests/data/test54
@@ -11,7 +11,7 @@ followlocation
HTTP/1.1 302 This is a weirdo text message swsclose
Connection: close
-Location:%spc%
+Location:%SP
This server reply is for testing
diff --git a/tests/data/test646 b/tests/data/test646
index 5f7f8e7605..a8d8ff2b6f 100644
--- a/tests/data/test646
+++ b/tests/data/test646
@@ -39,7 +39,7 @@ It may contain any type of data.
# This line is a comment
-X-fileheader1: This is a header from a file%spc%
+X-fileheader1: This is a header from a file%SP
# This line is another comment. It precedes a folded header.
X-fileheader2: This is #a
diff --git a/tests/data/test792 b/tests/data/test792
index b3630b5058..fb20874d1d 100644
--- a/tests/data/test792
+++ b/tests/data/test792
@@ -36,7 +36,7 @@ machine %HOSTIP login username password%hex[%00]hex% hello
USER username
-PASS%spc%
+PASS%SP
PWD
EPSV
TYPE I
diff --git a/tests/data/test793 b/tests/data/test793
index 3a3e16e087..f6e77e9116 100644
--- a/tests/data/test793
+++ b/tests/data/test793
@@ -36,7 +36,7 @@ machine %HOSTIP login username "password"%hex[%00]hex% hello
USER username
-PASS%spc%
+PASS%SP
PWD
EPSV
TYPE I
diff --git a/tests/testutil.pm b/tests/testutil.pm
index f139516cfa..30ac782a99 100644
--- a/tests/testutil.pm
+++ b/tests/testutil.pm
@@ -147,8 +147,8 @@ sub subbase64 {
$$thing =~ s/%%DAYS%%/%alternatives[$d,$d2]/;
}
- $$thing =~ s/%spc%/ /g; # space
- $$thing =~ s/%tab%/\t/g; # horizontal tab
+ $$thing =~ s/%SP/ /g; # space
+ $$thing =~ s/%TAB/\t/g; # horizontal tab
# include a file
$$thing =~ s/%include ([^%]*)%[\n\r]+/includefile($1)/ge;