feat(mcp): add text_search and text_replace with multiline MText and accent-insensitive matching

- Add text_search (read) and text_replace (mutating) operations to control bridge, automation, and MCP
- Support single and batch find/replace pairs under atomic undo transactions
- Safely parse and preserve MText formatting tags, inline fonts, colors, and margins
- Add flexible multiline MText matching and replacement across paragraph breaks (\n <-> \P)
- Add accent/diacritic-insensitive matching across Unicode and ASCII character sets
- Support Windows-1252 / ISO-8859-1 code decoding (%%nnn), DXF Unicode escapes (\U+XXXX), and special character codes
- Expose ignore_accents parameter across ocs_read and ocs_execute MCP tool schemas
This commit is contained in:
Karim Jerbi committed 2026-09-29 12:42:00 +01:00
1 parent ea91315ba8
commit 88169c1d7a
6 files changed
+1394 -2

No files matched your search

+2
View File
@@ -679,6 +679,8 @@ impl OpenCADStudio {
"entities" => self.entity_summary(),
"audit" => self.document_audit(&req),
"query" => self.entity_query(&req),
"text_search" => self.automation_text_search(&req),
"text_replace" => self.automation_text_replace(&req),
"records" => self.record_query(&req),
"record_schema" => self.record_schema(&req),
"capabilities" => self.record_capabilities(),