This website requires JavaScript.
5785405495
merge: reconcile the preserved C1b baseline with current main
main
Kinneyzhang
2026-09-08 21:38:16 +0800
711b0b1abe
fix: preserve property defaults and Emacs 31 compatibility
Kinneyzhang
2026-09-08 21:33:14 +0800
a3d20aa87e
chore: freeze verified ekp baseline before C1b
Kinneyzhang
2026-09-05 05:07:38 +0800
97cb6a6e35
docs: close source live append performance gate
c1a-ekp-emacs31-fingerprint-2026-09-01
Kinneyzhang
2026-08-20 09:43:43 +0800
d216c6b761
docs: record native live append gate
Kinneyzhang
2026-08-20 09:35:52 +0800
3d3dda6688
perf: add native automatic live append backend
Kinneyzhang
2026-08-20 09:35:35 +0800
cfa7c18beb
docs: record rejected strict DP experiment
Kinneyzhang
2026-08-20 08:09:22 +0800
5f78cae0b1
docs: close append attribution record
Kinneyzhang
2026-08-20 08:00:23 +0800
01001b9008
perf: split append attribution
Kinneyzhang
2026-08-20 07:58:44 +0800
5efd4d113b
docs: close performance attribution record
Kinneyzhang
2026-08-20 07:55:44 +0800
db6e6b98ee
perf: attribute source live append costs
Kinneyzhang
2026-08-20 07:53:28 +0800
19b8c9050e
docs: add source-fresh performance postmortem
Kinneyzhang
2026-08-20 07:44:36 +0800
60b299b3f4
docs: record source-fresh performance boundary
Kinneyzhang
2026-08-20 07:44:25 +0800
c47abf7529
docs: refresh hardening verification counts
Kinneyzhang
2026-08-20 07:41:39 +0800
dbb3809d7c
test: name backward live regression accurately
Kinneyzhang
2026-08-20 07:37:24 +0800
c93786570b
docs: record post-audit verification commit
Kinneyzhang
2026-08-20 07:34:30 +0800
6a8c7e04f5
fix: harden post-audit contracts and test gates
Kinneyzhang
2026-08-20 07:34:03 +0800
183f256020
docs: close confirmed repository issues
Kinneyzhang
2026-08-19 20:17:54 +0800
888a4019f4
update ekp-showcase demo
Kinneyzhang
2026-08-08 09:31:08 +0800
e823d89a4a
fix: restore TeX final-pass reachability
Kinneyzhang
2026-08-02 15:30:12 +0800
665164911f
perf: make live structural commits incremental
Kinneyzhang
2026-07-30 08:24:54 +0800
83352c4571
feat!: add source-clean live buffer layout
Kinneyzhang
2026-07-30 01:07:25 +0800
fd1210e557
fix: close repository audit findings
Kinneyzhang
2026-07-28 22:43:10 +0800
29cef97ef8
fix: justified lines fit the real display, not an idealized one
v1.0.0
Kinneyzhang
2026-07-27 03:19:27 +0800
448198bdb9
docs: cut the 1.0.0 changelog section
Kinneyzhang
2026-07-27 02:31:42 +0800
4dee06ec47
fix(showcase): follow-window right-edge truncation; checkdoc clean
Kinneyzhang
2026-07-27 02:28:29 +0800
81d32c7052
docs: record the paragraph-handle API as documented future work
Kinneyzhang
2026-07-27 02:04:47 +0800
4ba97deec7
docs: sync all docs with the M1–M4 changes
Kinneyzhang
2026-07-27 02:01:44 +0800
03096facc5
ci: add lint, sanitizer, macOS and snapshot jobs; docs and changelog
Kinneyzhang
2026-07-27 01:56:28 +0800
74a780ce95
refactor!: remove the experimental C tokenization path; harden the module
Kinneyzhang
2026-07-27 01:49:25 +0800
3fc05c1405
feat: typography wave — dictionary HYPHENMIN, JIS kinsoku, fast indent
Kinneyzhang
2026-07-27 01:36:52 +0800
bed359d439
perf: session-global width cache; fix two cache-aliasing bugs
Kinneyzhang
2026-07-27 01:21:15 +0800
bb7b21eb92
chore: keep internal working notes out of the public repository
Kinneyzhang
2026-07-27 01:11:47 +0800
bc4907e1fc
perf(region): smarter lazy re-flow scheduling
Kinneyzhang
2026-07-27 01:11:05 +0800
f0c7927644
feat: whole-buffer commands, DWIM, M-q remap, org/markdown wiring
Kinneyzhang
2026-07-27 01:08:40 +0800
a12a3c1191
feat: coexist with the Emacs ecosystem — isearch, kill ring, windows
Kinneyzhang
2026-07-27 01:05:15 +0800
ede518f10f
fix: editor-state integrity — saving, stickiness, modified flag, undo
Kinneyzhang
2026-07-27 01:00:27 +0800
9dcaeb0ba3
chore: licensing, customize support, and packaging hygiene
Kinneyzhang
2026-07-27 00:52:37 +0800
c7a89df6ce
feat(showcase): pin the key cheat sheet to the header line
Kinneyzhang
2026-07-27 00:11:26 +0800
5233baeea0
feat: interactive showcase — M-x ekp-showcase
Kinneyzhang
2026-07-26 23:48:35 +0800
dc2f6da846
feat: visible-first lazy re-flow for large buffers; packaging polish
Kinneyzhang
2026-07-26 23:22:56 +0800
c4d7fdf8bb
perf: reclaim feature costs — hot-path caches for smooth reflow
Kinneyzhang
2026-07-26 22:03:05 +0800
c703ce0226
docs: typography features, verbatim protection, engine notes
Kinneyzhang
2026-07-26 21:44:56 +0800
4d9a018fbf
feat: verbatim protection — code blocks and mode hooks
Kinneyzhang
2026-07-26 21:40:43 +0800
720b1cd0e4
feat: parshape and first-line indentation (Elisp 2D path)
Kinneyzhang
2026-07-26 21:37:58 +0800
f6aa64b3b1
feat: right-edge protrusion — hanging punctuation (C 1.4)
Kinneyzhang
2026-07-26 21:32:54 +0800
57a3abe853
feat: alignment modes — ragged-right, ragged-left, center (C 1.3)
Kinneyzhang
2026-07-26 21:22:19 +0800
ea96a6dc96
feat: no-break spans, NBSP/WORD JOINER support, verbatim atoms
Kinneyzhang
2026-07-26 21:12:07 +0800
64eb2f38d5
refactor!: per-gap break permissions — punctuation as first-class boxes
Kinneyzhang
2026-07-26 21:05:50 +0800
33981a647e
docs: describe lossless renderer markers in developer docs
Kinneyzhang
2026-07-26 20:25:03 +0800
95ed2b32d1
feat: buffer-level justification — region commands and auto-justify mode
Kinneyzhang
2026-07-26 20:23:03 +0800
d3972fdc26
ci: add GitHub Actions workflow
Kinneyzhang
2026-07-26 19:53:40 +0800
9afe491e1a
chore: silence build warnings on non-macOS toolchains
Kinneyzhang
2026-07-26 19:53:39 +0800
112b3a0e52
refactor!: overhaul KP core — correctness, C parity, performance, tests, docs
kp-overhaul
Kinneyzhang
2026-07-26 18:43:45 +0800
11437cb029
Merge pull request #10 from Kinneyzhang/copilot/fix-issue-9
Geekinney
2026-05-25 12:18:47 +0800
7287bec474
chore: add *.elc to .gitignore and remove accidentally committed .elc
copilot-swe-agent[bot]
2026-05-24 15:23:13 +0000
50d41ed30f
fix: enforce kinsoku rules for CJK opening punctuation in box splitting
copilot-swe-agent[bot]
2026-05-24 15:22:52 +0000
caf6576260
update
Kinneyzhang
2026-02-20 11:52:54 +0800
f7280df9c3
Merge pull request #8 from Kinneyzhang/copilot/analyze-repo-issues
Geekinney
2026-02-20 11:44:32 +0800
9b89115b5d
fix: address code review feedback - improve docstrings and use defalias consistently
copilot-swe-agent[bot]
2026-02-10 12:19:22 +0000
af855e3394
refactor: Linus-style code quality improvements across Elisp and C modules
copilot-swe-agent[bot]
2026-02-10 12:18:00 +0000
ddfa26fafc
Initial plan
copilot-swe-agent[bot]
2026-02-10 12:11:27 +0000
262b5eefdc
Makefile supports multiple plantform
Kinneyzhang
2026-01-26 11:51:19 +0800
136e53fe8e
improve C module
Kinneyzhang
2026-01-26 01:24:47 +0800
f42c2bda00
delete unnecessary code
Kinneyzhang
2026-01-25 21:32:34 +0800
6d65902933
Fix: preserve all leading spaces in paragraph indentation
copilot-swe-agent[bot]
2026-01-25 13:23:00 +0000
5e3571f689
Fix: preserve paragraph indentation, strip only line-break artifact spaces
copilot-swe-agent[bot]
2026-01-25 13:09:59 +0000
8e39dc2b83
Fix: DP line metrics now excludes leading/trailing space box widths to match rendering
copilot-swe-agent[bot]
2026-01-25 12:55:58 +0000
c60ddb3903
Fix: DP algorithm now excludes leading/trailing space box widths to match rendering behavior
copilot-swe-agent[bot]
2026-01-25 12:41:04 +0000
836ff75c89
Refactor: use efficient char list building instead of string concat in loop
copilot-swe-agent[bot]
2026-01-25 12:30:08 +0000
5b8a328855
Fix: words with embedded hyphens now split at hyphens instead of using hyphenation algorithm
copilot-swe-agent[bot]
2026-01-25 12:28:09 +0000
a855bce99b
Initial plan
copilot-swe-agent[bot]
2026-01-25 12:19:56 +0000
06e28b078d
add test
Kinneyzhang
2026-01-25 20:12:38 +0800
a421926e91
Fix C module single-box line handling order to match Elisp
copilot-swe-agent[bot]
2026-01-25 12:02:09 +0000
4a84723181
Refactor C module to eliminate duplicate DP logic
copilot-swe-agent[bot]
2026-01-25 11:55:27 +0000
32021fbe35
Implement Looseness, Threshold Pruning, and Flagged Penalties
copilot-swe-agent[bot]
2026-01-25 11:35:30 +0000
b70affb9ef
Optimize hyphen position lookup O(n)->O(log n) and add named constants
copilot-swe-agent[bot]
2026-01-25 11:15:42 +0000
fb58a9b19a
Fix remaining global glue param usages in DP and glue distribution functions
copilot-swe-agent[bot]
2026-01-25 11:03:27 +0000
333618bb57
Fix glue parameter caching inconsistency for multi-font paragraphs
copilot-swe-agent[bot]
2026-01-25 10:52:45 +0000
fee05f769d
Fix C module to match Elisp behavior for last-line overflow handling
copilot-swe-agent[bot]
2026-01-25 10:32:06 +0000
b296de0928
Initial plan
copilot-swe-agent[bot]
2026-01-25 10:25:46 +0000
a790aa87c3
update
Kinneyzhang
2026-01-25 18:23:33 +0800
68ca9b191a
improve C module parallel
Kinneyzhang
2026-01-25 17:28:04 +0800
6cf6f75f71
fix bugs of C moudule
Kinneyzhang
2026-01-25 16:53:23 +0800
aaeea099c9
fix bug
Kinneyzhang
2026-01-25 15:11:47 +0800
c88bbdd395
add dynamic moudle to improve prefermance
Kinneyzhang
2026-01-25 13:50:46 +0800
91d9bbc1e9
process spaces between words
Kinneyzhang
2026-01-25 01:17:18 +0800
6cf17e0066
update knuth-plass paper link
Kinneyzhang
2026-01-24 22:46:48 +0800
6421f6b1fb
refactor ekp cache and code improve
Kinneyzhang
2026-01-24 22:40:53 +0800
68b46f8337
code improve
Kinneyzhang
2026-01-24 20:44:38 +0800
dab9ca280e
Add optional use-cache parameter to ekp-pixel-justify and ekp-pixel-range-justify
copilot-swe-agent[bot]
2025-11-29 17:56:42 +0000
c4240fe15c
Initial plan
copilot-swe-agent[bot]
2025-11-29 17:54:24 +0000
f56ec5a520
Fix ekp-text-hash to consider text properties
copilot-swe-agent[bot]
2025-11-29 17:09:16 +0000
5c646bf6be
Initial plan
copilot-swe-agent[bot]
2025-11-29 17:06:09 +0000
ca9349e99f
fix bug when text is blank string
Kinneyzhang
2025-09-26 00:18:37 +0800
820e73920a
update test
Kinneyzhang
2025-08-22 00:15:33 +0800
37baccded8
keep original text properties of string after typesetting
Kinneyzhang
2025-08-22 00:06:14 +0800
165be829df
a batter ekp-cjk-char-p
Kinneyzhang
2025-08-19 11:31:48 +0800
796d3e49d2
misc
Kinneyzhang
2025-08-18 00:35:40 +0800
12b5029bbf
update readme_zh
Kinneyzhang
2025-08-09 19:32:23 +0800