copilot-swe-agent[bot]
b70affb9ef
Optimize hyphen position lookup O(n)->O(log n) and add named constants
...
Performance:
- ekp--hyphenate-p: O(n) cl-find -> O(log n) binary search
- is_hyphen_break: O(n) linear -> O(log n) binary search
- is_hyphen_pos: O(n) linear -> O(log n) binary search
In O(n²) DP loop, this reduces worst-case complexity from O(n³) to O(n² log n)
Code quality:
- Add ekp-consecutive-hyphen-penalty (was hardcoded 100)
- Add ekp-forced-break-penalty (was hardcoded 10000)
- Add ekp-last-line-short-penalty (was hardcoded 50)
- Update ekp-looseness docstring noting partial implementation
Co-authored-by: Kinneyzhang <38454496+Kinneyzhang@users.noreply.github.com>
2026-01-25 11:15:42 +00:00
copilot-swe-agent[bot]
fee05f769d
Fix C module to match Elisp behavior for last-line overflow handling
...
When is_last && ideal > line_width, the C module now correctly
triggers force break logic, matching ekp--dp-cache-elisp behavior.
This ensures consistent results between C module and pure Elisp paths.
Co-authored-by: Kinneyzhang <38454496+Kinneyzhang@users.noreply.github.com>
2026-01-25 10:32:06 +00:00
Kinneyzhang
68ca9b191a
improve C module parallel
2026-01-25 17:28:04 +08:00
Kinneyzhang
6cf6f75f71
fix bugs of C moudule
2026-01-25 16:53:23 +08:00
Kinneyzhang
aaeea099c9
fix bug
2026-01-25 15:11:47 +08:00
Kinneyzhang
c88bbdd395
add dynamic moudle to improve prefermance
2026-01-25 13:50:46 +08:00