Commit Graph
858 Commits
Author SHA1 Message Date
Martin BallandClaude Opus 5.5 7f203bc1c8 #39: per-user Windows installer that needs no administrator rights
Build wordcraft.wxs a second time as a dual-purpose package
(Scope=perUserOrMachine: ALLUSERS=2, MSIINSTALLPERUSER=1), shipped as
wordcraft-<ver>-windows-user-<arch>.msi. Registry keys move from HKLM to
HKMU so the same components land in HKLM per-machine and HKCU per-user.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-26 00:18:09 +00:00
skylar taylor-barrick ea541fe66d Merge current WordCraft main while preserving egui 0.37 migration 2026-10-25 17:30:11 +01:00
skylar taylor-barrick fe9f6dbcc9 M0: reconcile current-main dialogs and canvas changes with egui 0.37 2026-10-25 17:03:15 +01:00
ea5780d2ab Gap 9: open AES-encrypted Word files (Standard encryption) (#2628)
* Gap 9: open AES-encrypted Word files (Standard encryption)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Gap 9: restore progress-doc rows lost in the main merge

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Gap 9: Standard package layout test built from the spec

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Dmitrii Khlapov <19991457+dkhlapov@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 11:48:13 -04:00
skylar taylor-barrick 42477bd806 M0: reconcile current main and classify double-space rewrites for egui 0.37 2026-10-25 16:47:30 +01:00
Max MurphyandClaude Opus 5.5 49731f3faa #2982: File ▸ Info Custom Document Properties dialog (#2997)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 11:44:31 -04:00
SlavenDj 1b2f7a8c09 #1845: filter-as-you-type command search in Customize Ribbon, QAT and Keyboard pickers (#1848)
# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# interactive rebase in progress; onto d588e0b8
# Last command done (1 command done):
#    pick 6a1268ea # #1845: filter-as-you-type command search in Customize Ribbon, QAT and Keyboard pickers
# No commands remaining.
# You are currently rebasing branch 'feat/1845-command-filter' on 'd588e0b8'.
#
# Changes to be committed:
#	modified:   crates/ui-egui/src/dialogs_keyboard.rs
#	modified:   crates/ui-egui/src/dialogs_ribbon.rs
#	modified:   docs/ui-parity.md
#

# Conflicts:
#	docs/ui-parity.md
2026-10-25 11:39:07 -04:00
MexandClaude Opus 5.5 40a7fe6be2 Make three-column header/footer presets editable tables (#2197) (#2266)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 11:34:23 -04:00
skylar taylor-barrick f7c49cb0f8 egui-037: reconcile main and protect IME undo and wrapped layout 2026-10-25 16:15:05 +01:00
0cb2af4f4b AutoFormat As You Type: optional "Add a period with double-space", and an AutoCorrect Options button in Options › Proofing (#2848) (#3318)
* AutoFormat As You Type: optional period with double-space, off by default (#2848)

* Test the double-space option through the AutoCorrect dialog (#2848)

* File > Options > Proofing: an AutoCorrect Options button opens the dialog (#476)

* #2848: report doubleSpacePeriod in tools.autocorrect's params doc and result

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Brandon Thomas <echelon@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 11:11:20 -04:00
Dmitrii KhlapovandDmitrii Khlapov 50a1c34647 #1475: Scale all style font sizes at once (#2620)
Co-authored-by: Dmitrii Khlapov <19991457+dkhlapov@users.noreply.github.com>
2026-10-25 11:06:42 -04:00
Martin BallandClaude Opus 5.5 85db9cfef5 #4177: regex Replace expands capture groups (#4201)
* With Regular expressions on, Replace with reads $1…$n, ${n}, ${name}, $name,
$0/${0}, $$, \1…\9, \n (paragraph mark, splits the paragraph through the ^p
path), \t and \\, alongside the ^ codes. Named groups resolve through
meta::Regex::group_info(); missing, unknown and out-of-range groups expand to
nothing. Plain and wildcard Replace are unchanged.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* #4177: review — special:false keeps regex group references

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* #4177: review — \$ and \^ in regex Replace keep the character as typed

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 10:53:13 -04:00
Marco Arnulfo d1db090a7c Mini toolbar: the alignment buttons mark the alignment seen on the page, as the ribbon does (#3886) 2026-10-25 10:48:42 -04:00
Fin WarmanandClaude Opus 5.5 a5526724aa Cover repeated DOCX style replacement across saves (#2469)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 10:43:03 -04:00
SimoneandLucenx9 b0b7e6b5ea Fix Markdown code span line endings (#3804)
Co-authored-by: Lucenx9 <185146821+Lucenx9@users.noreply.github.com>
2026-10-25 10:32:31 -04:00
MarekSpodBiedry 14f0eec255 Stretch justified lines that end in a manual line break (#3924) (#4023) 2026-10-25 10:27:35 -04:00
Marco Arnulfo 7563ebb314 Layout: a no-break space is as wide as a space, not as the font's own U+00A0 glyph (#4210)
* Layout: a no-break space is as wide as a space, not as the font's own U+00A0 glyph (fixes #4192)

* Layout parity: a no-break space is as wide as a space (#4192)
2026-10-25 10:23:25 -04:00
Marco Arnulfo 8c366eb176 Layout: a bookmark is no line-break opportunity (#4211)
* Layout: a bookmark is no line-break opportunity (fixes #4193)

* Layout parity: a bookmark is no line-break opportunity (#4193)
2026-10-25 10:19:38 -04:00
NetterSilverandClaude Haiku 5.5 77200f9c13 Indent a whole selected paragraph on Tab instead of replacing it (#4291)
Fixes #4285

Co-authored-by: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-25 10:04:21 -04:00
7mz410 66e5c06b25 Lists: draw Arabic letter numbering (arabicAlpha, arabicAbjad) (#4218)
* Lists: draw Arabic letter numbering (arabicAlpha, arabicAbjad) instead of decimal

Both orders of the 28 letters; past the last letter they double, as Latin
and Russian letters do.

* Docs: layout parity lists Arabic list labels as drawn; status lines and revision history
2026-10-25 09:55:53 -04:00
Marco Arnulfo f490f9da9a Linux desktop entry: stop declaring text/plain (#4206)
* Linux desktop entry: stop declaring text/plain (fixes #4137)

* Docs: plain text is no longer in the Linux desktop entry (#4137)
2026-10-25 09:54:32 -04:00
skylartaylor 5d428e408f M-egui037: reconcile upstream and document migration review fixes 2026-10-25 06:42:20 +01:00
aiongg 5c43a3673d Gaps: follow-ups from the field, table and AutoFormat batch 2026-10-25 03:51:11 +00:00
aiongg 0aa1a40b88 Parity checklist: Read Mode 2 of 3 (cargo xtask parity) 2026-10-25 02:43:09 +00:00
aiongg 6f6ff64af1 Merge PR #4205: Track Changes: Accept and Reject can move to the next change or stop tracking
# Conflicts:
#	docs/ui-parity.md
2026-10-25 02:23:07 +00:00
aiongg bc4a69b17d Merge PR #4182: Parity catalog: the checklist counts Read Mode's Column Width, Page Color and Layout
# Conflicts:
#	ROADMAP.md
#	docs/ui-parity.md
2026-10-25 02:23:02 +00:00
aiongg 5c779b3d96 Merge PR #4098: AutoFormat: *bold* and _italic_ become real formatting as you type
# Conflicts:
#	ROADMAP.md
#	crates/engine/src/cmd/tools.rs
#	docs/typing-parity.md
2026-10-25 02:22:19 +00:00
aiongg 533686ce26 Merge PR #4139: AutoFormat: border and table lines stay text in a paragraph numbered by its style
# Conflicts:
#	crates/engine/src/cmd/text.rs
2026-10-25 02:21:33 +00:00
aiongg 1b629d1299 Merge PR #4155: Tables: Convert to Text asks for the separator and converts only the selected rows 2026-10-25 02:21:10 +00:00
skylartaylor 0b007fd47b egui037: reconcile WordCraft main and preserve input migration 2026-10-25 03:17:45 +01:00
skylartaylor a605fa5ca7 M-EGUI037: reconcile WordCraft main and preserve IME editing 2026-10-25 02:19:38 +02:00
aiongg ef175c6e2f Merge PR #4133: #4085: toggle the last highlight colour with the keyboard shortcut 2026-10-24 22:35:22 +00:00
dotCooCoo 1fbca15212 AutoFormat: status lines and revision history for bold and italic marks 2026-10-24 14:34:12 -07:00
dotCooCoo c4827112ef AutoFormat: AutoCorrect corrects the first word of a marked span of several words
With *Bold* and _italic_ as real formatting on, the opening mark is not
part of the word AutoCorrect reads, so typing `*teh end* ` gives bold
`The end ` instead of `teh end `. A sentence capital is decided from the
text before the mark.
2026-10-24 14:32:36 -07:00
dotCooCoo f409bd93c9 Track Changes: Accept and Reject can move to the next change or stop tracking
Word's Accept and Reject menus have Accept and Move to Next, Reject and
Move to Next, Accept All Changes and Stop Tracking, and Reject All
Changes and Stop Tracking. WordCraft's menus had only Accept This
Change, Accept All Changes, Reject Change and Reject All Changes.

review.accept and review.reject take "next": after the change at the
caret is resolved, the first change from the caret on is selected,
including one that starts and ends there, such as an empty paragraph's
formatting. Past the last change, the first change in the document is
selected, as Next Change does. With the caret on no change, they select
the next change as before and resolve nothing. review.acceptAll and
review.rejectAll take "stopTracking", which also turns Track Changes
off in the same undo step. The ribbon's Accept and Reject menus list
the four new items. The big Accept and Reject buttons are unchanged.
2026-10-24 14:28:54 -07:00
dotCooCoo 5dfef70759 Docs: progress log and Reading Mode row for Read Mode's View menu in the catalog
ROADMAP.md's progress log and revision history, and docs/ui-parity.md's
Reading Mode row and revision history, record the catalog rows for
Read Mode's View menu: Column Width works, Page Color and Layout are
missing (catalog 503/520). Both status lines are bumped.
2026-10-24 14:24:32 -07:00
skylartaylor c4974d9e8d egui037: reconcile current main, qualify dependency pins and preview accessibility 2026-10-24 23:22:06 +02:00
LQRD 68e5ae2253 #4085: include selected paragraph marks in the highlight decision
Match format_range for whole-cell segments and ordinary targets, including empty
paragraphs. Partial text columns leave their unselected marks out of the check.
Keep the large-run fixture prefix mark blue so it cannot mask the tail regression.

Before the fix, whole-cell and ordinary-mark regressions failed while the other5
highlight controls passed. All7 now pass, including inherited/empty cells,
unselected neighbours, empty-only ranges, partial columns and Undo/Redo.
Full cargo xtask ci passed all8 gates with serial tests. Previous head's CodeRabbit
docstring measurement95.24% exceeds80%; all3 new tests have documentation.
Native Word comparison remains pending. No new interface strings.
2026-10-25 02:16:26 +05:00
aiongg dd8ea27b99 Merge PR #4039: #3889, #3891: Update Table keeps the styles and columns of a localized table of contents 2026-10-24 21:05:19 +00:00
aiongg dd865648c2 Merge PR #4079: Comments: times in the user's own time zone, in the pane and the balloons (#2322, #2337) 2026-10-24 21:05:18 +00:00
aiongg 8e8d8b4dd2 Merge PR #4172: Read Mode: a Page color menu shows the columns on white, sepia or a dark page 2026-10-24 21:05:18 +00:00
aiongg 0e571c1fc6 Merge PR #4133: #4085: toggle the last highlight colour with the keyboard shortcut 2026-10-24 21:05:13 +00:00
aiongg 6ba3d8d2a7 Merge PR #4123: AutoFormat: Enter twice after a short line makes it a heading 2026-10-24 21:05:05 +00:00
aiongg 540d0b2b34 Merge PR #4101: AutoCorrect: words after a no-break space are corrected 2026-10-24 20:42:03 +00:00
aiongg 4a4877e433 Merge PR #4097: Layout: include exact line-bottom contact for floating tables (#3977) 2026-10-24 20:42:02 +00:00
aiongg 39bf1a6c76 Merge PR #4074: cu20we: fix box float paragraph origins and preserve shape line caps 2026-10-24 20:42:02 +00:00
aiongg 5d9d9f5be4 Merge PR #4004: #4001: A command that changes nothing is not an edit 2026-10-24 20:42:01 +00:00
aiongg d5c2d88935 Merge PR #4129: AutoFormat: border lines and +---+ tables track the characters they delete 2026-10-24 20:38:52 +00:00
aiongg 6498bb20f6 Merge PR #4121: MCP: keep serving when the app isn't open yet (#4078) 2026-10-24 20:38:51 +00:00
aiongg 35f0a7c785 Merge PR #4113: AutoFormat: Tab and Backspace at the start of a line set the paragraph's indents 2026-10-24 20:38:50 +00:00