Zixuan Chen
d942e3d7a2
Feat: Peritext-like rich text support ( #123 )
...
* feat: richtext wip
* feat: add insert to style range map wip
* feat: richtext state
* fix: fix style state inserting and style map
* fix: tiny vec merge err
* fix: comment err
* refactor: use new generic-btree & refine impl
* feat: fugue tracker
* feat: tracker
* feat: tracker
* fix: fix a few err in impl
* feat: init richtext content state
* feat: refactor arena
* feat: extract anchor_type info out of style flag
* refactor: state apply op more efficiently
we can now reuse the repr in state and op
* fix: new clippy errors
* refactor: use state chunk as delta item
* refactor: use two op to insert style start and style end
* feat: diff calc
* feat: handler
* fix: tracker checkout err
* fix: pass basic richtext handler tests
* fix: pass handler basic marking tests
* fix: pass all peritext criteria
* feat: snapshot encoding for richtext init
* refactor: replace Text with Richtext
* refacotr: rm text code
* fix: richtext checkout err
* refactor: diff of text and map
* refactor: del span
* refactor: event
* fix: fuzz err
* fix: pass all tests
* fix: fuzz err
* fix: list child cache err
* chore: rm debug code
* fix: encode enhanced err
* fix: encode enchanced
* fix: fix several richtext issue
* fix: richtext anchor err
* chore: rm debug code
* fix: richtext fuzz err
* feat: speedup text snapshot decode
* perf: optimize snapshot encoding
* perf: speed up decode & insert
* fix: fugue span merge err
* perf: speedup delete & id cursor map
* fix: fugue merge err
* chore: update utils
* perf: speedup text insert / del
* fix: cursor cache
* perf: reduce conversion by introducing InsertText
* perf: speed up by refined cursor cache
* chore: update gbtree dep
* refactor(wasm): use quill delta format
* chore: fix warnings
2023-10-29 14:02:13 +08:00
Zixuan Chen
c105ff2220
Feat: checkout to target version & use unicode index by default ( #98 )
...
* feat: checkout to frontiers
* feat: record timestamp
* fix: use unicode len by default for text
now "你好" has length of 2 instead of 6
* chore: rm dbg!
2023-08-04 10:45:23 +08:00
Zixuan Chen
1e736df133
Refactor: rm legacy code ( #97 )
...
* refactor: rm legacy code
* chore: rm dead code
* refactor: mv refactored files outside
* refactor: rename files & methods
* chore: rm unused deps
* fix: compact bytes err
* chore: fix ci
2023-07-31 11:49:55 +08:00
Zixuan Chen
9899a94f43
perf: opt encode/decode speed
2023-07-18 18:24:51 +08:00
Zixuan Chen
d03617ca26
feat: add bench
2023-07-17 23:18:18 +08:00
Zixuan Chen
e993f1b155
feat: basic snapshot encoding
2023-07-17 12:27:11 +08:00
Zixuan Chen
d26bb4e5c9
refactor: refine compact bytes interface
2023-07-14 12:51:06 +08:00
Zixuan Chen
e8ca8d61ed
feat(minor): add a min match size
2023-07-14 11:09:07 +08:00
Zixuan Chen
d8b51f6acf
perf: skip when matched len < 4
2023-07-14 03:03:51 +08:00
Zixuan Chen
3288bddfb8
Revert "perf: make mem more compact"
...
This reverts commit 44646e6bf1
.
2023-07-14 02:57:53 +08:00
Zixuan Chen
44646e6bf1
perf: make mem more compact
2023-07-14 02:16:01 +08:00
Zixuan Chen
92434ccdfc
feat: make capacity adjustable
2023-07-14 00:47:02 +08:00
Zixuan Chen
f6ebf6783d
perf: make it 4x faster with fixed mem usage
2023-07-14 00:29:30 +08:00
Zixuan Chen
6311782943
perf: optimize compress & speed
...
but no cap for now
2023-07-13 22:43:02 +08:00
Zixuan Chen
6dc8e15afa
test: add fuzz to compact bytes
2023-07-13 19:29:00 +08:00
Zixuan Chen
f10771ecba
docs: update todo for compact-bytes
2023-07-13 17:01:19 +08:00
Zixuan Chen
346117ff54
feat: supports setting capacity
2023-07-13 16:57:41 +08:00
Zixuan Chen
f604a89fc3
refactor(bytes): refine interface
2023-07-13 15:33:49 +08:00
Zixuan Chen
8704d22750
feat: compact bytes init
2023-07-13 13:33:23 +08:00