From ba1552976930fb8dd5537d4ba09f98796fa79d37 Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Mon, 9 May 2022 11:34:11 -0400 Subject: [PATCH] ktxt2 join apply special chars within joined block --- projects/kiss-vscode/src/ktxt2/KTxt2.kiss | 6 +++++- projects/kiss-vscode/src/ktxt2/KTxt2Editor.kiss | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/projects/kiss-vscode/src/ktxt2/KTxt2.kiss b/projects/kiss-vscode/src/ktxt2/KTxt2.kiss index b5849f9f..eb206ad8 100644 --- a/projects/kiss-vscode/src/ktxt2/KTxt2.kiss +++ b/projects/kiss-vscode/src/ktxt2/KTxt2.kiss @@ -137,4 +137,8 @@ ((text.endsWith "\n") (+ (substr text 0 -1) "↵")) (true - text)))) \ No newline at end of file + text)))) + +// Apply special chars in the middle of a block, and insert them at the end +(function :String normalizeSpecialChars [:String text] + (insertSpecialChars (applySpecialChars text))) \ No newline at end of file diff --git a/projects/kiss-vscode/src/ktxt2/KTxt2Editor.kiss b/projects/kiss-vscode/src/ktxt2/KTxt2Editor.kiss index 233027d9..86a9537c 100644 --- a/projects/kiss-vscode/src/ktxt2/KTxt2Editor.kiss +++ b/projects/kiss-vscode/src/ktxt2/KTxt2Editor.kiss @@ -261,7 +261,7 @@ (function joinBlocks [element nextElement] (assertLet [(Block (object sourceStart start source source1 output output1 outputLocked lock1)) element (Block (object outputEnd end source source2 output output2 outputLocked lock2)) nextElement - text "${source1}${source2}${KTxt2.unlockedStart}${output1}${output2}"] + text "$(KTxt2.normalizeSpecialChars "${source1}${source2}")${KTxt2.unlockedStart}$(KTxt2.normalizeSpecialChars "${output1}${output2}")"] (unless (or lock1 lock2) (postMessage (objectWith [type "replace"] start end text)))))