Commit Graph

50 Commits

Author SHA1 Message Date
be2673ef2b Make Text:find() return an optional int 2024-11-02 13:51:58 -04:00
052316261a Finish deprecating stack refs with & 2024-10-27 20:35:30 -04:00
6d0f04375d Have Text:matches() return an optional array of matches 2024-09-16 15:12:54 -04:00
e422079fcc Add a Byte datatype 2024-09-15 15:33:47 -04:00
75e0201fad Improve automatic text quoting so it minimizes escape sequences when
possible.
2024-09-15 14:03:16 -04:00
05724a659f Change unicode escape to \{name} and add escape for ANSI CSI sequences:
\[...]
2024-09-12 01:43:00 -04:00
e16792d5eb Add Text.starts_with() and Text.ends_with() 2024-09-09 05:31:25 -04:00
b0d806a1f0 Add unicode name escapes: \U[penguin] 2024-09-07 01:43:36 -04:00
b36d4eaf67 Fix test 2024-09-06 12:17:43 -04:00
c789d25878 Text overhaul 2024-09-06 03:29:07 -04:00
44892df4c5 Add Text.trim() 2024-09-06 00:03:28 -04:00
73df39ff7e Fix stability of concatenation 2024-09-05 03:47:15 -04:00
3a556296b6 Add Text:repeat() 2024-09-04 21:22:03 -04:00
00543b4e87 Add Text.map(pat, fn) 2024-09-04 21:02:37 -04:00
df844946f7 Add Text:matches() for convenience and performance 2024-09-04 00:34:27 -04:00
b8bb4ada8b Add recursive mode to text replacement and update docs 2024-09-03 23:16:45 -04:00
850fc8fbe1 Clean up text replacement API to use backrefs instead of match_chain() 2024-09-03 22:56:53 -04:00
c14ed3e3e7 Add Text.replace_all({Pattern:Text}) and tweak API for replacement to
support placeholders
2024-09-03 20:48:11 -04:00
91c5dc61c1 Change pattern syntax from [..pat] to {pat} 2024-09-03 14:27:09 -04:00
64143f0a13 Syntax overhaul (comments back to #, print statments to !!),
using `$/.../` for patterns and using a DSL for patterns
2024-09-03 13:19:41 -04:00
5f0b099e14 Better behavior for invalid character names 2024-09-03 01:32:00 -04:00
b517f3b287 Fix codepoint names by falling back to block names 2024-09-03 01:30:07 -04:00
e98e77e1d3 Fix for missing codepoint names 2024-09-03 01:20:36 -04:00
5441e6f287 Update docs 2024-09-03 00:54:48 -04:00
6c22999ede Add text slicing 2024-09-02 23:56:08 -04:00
5aa5a5e99b Fix some stuff around Text:find() and text indexing 2024-09-02 23:47:16 -04:00
5d6fa135b1 Add Text:find_all() 2024-09-02 23:26:55 -04:00
9d2e9c02fe Fix splitting an empty string 2024-09-02 23:24:16 -04:00
6e4be93848 Add Text:join() and tests 2024-09-02 23:13:02 -04:00
6d7e09bf18 Add Text:split() and use that with an empty pattern instead of Text:clusters() 2024-09-02 23:07:08 -04:00
9214e621bf Add Text:lines() 2024-09-02 22:57:49 -04:00
5c093e6a4a Improve test 2024-09-02 22:42:02 -04:00
708acda54e WIP fixes for synthetic graphemes and adding some text conversion
methods
2024-09-02 22:30:19 -04:00
96f276ec18 Fix test 2024-09-02 21:19:57 -04:00
cac560fdc3 Text fixes 2024-09-02 21:18:15 -04:00
620ebeab8d Fixing string methods 2024-09-02 20:22:13 -04:00
967b649da2 Deprecate # operator in favor of .length and fix up some issues 2024-08-18 20:39:57 -04:00
f4b04a1b8c Improved syntax for dollar-string literals 2024-08-18 14:44:15 -04:00
2ecb5fe885 Add channels and threads 2024-08-11 14:47:34 -04:00
e51e6f840c Tweak syntax for debug prints 2024-07-05 01:55:02 -04:00
9d9fe12987 Add !! statement for printing text 2024-07-04 16:23:05 -04:00
ba66a51a9e Add multiline string literal test 2024-07-01 13:09:26 -04:00
5b1960859f Hook up Text.has(), Text.trimmed(), Text.without() 2024-05-20 15:19:31 -04:00
3c0a8f0b89 Syntax tweak: use ':' for blocks 2024-04-28 14:58:55 -04:00
6c01eef851 Introducing the main() function 2024-04-12 13:09:31 -04:00
2b83ab279d Add langs to the language 2024-03-09 18:22:12 -05:00
0b7ca098ae Fix some bugs relating to NUL termination of strings 2024-03-04 01:34:12 -05:00
1f6aa4cac7 Add methods for text:clusters(), text:codepoints(), text:bytes() 2024-03-03 19:40:01 -05:00
dc04286e3a Unicode normalization for equality, hashing, tests, and printing 2024-03-03 19:12:53 -05:00
d8a533cdf0 Rename string test to text 2024-03-03 18:19:56 -05:00