LMConsolidator // Fix the procedure for fixing the pragma header.

This commit is contained in:
ShikiSuen 2023-03-09 13:17:22 +08:00
parent a2f5606579
commit 87ad7dccbb
1 changed files with 4 additions and 2 deletions

View File

@ -104,6 +104,7 @@ public extension vChewingLM {
strProcessed.regReplace(pattern: #"(\n | \n)"#, replaceWith: "\n") strProcessed.regReplace(pattern: #"(\n | \n)"#, replaceWith: "\n")
// CR & FF to LF, // CR & FF to LF,
strProcessed.regReplace(pattern: #"(\f+|\r+|\n+)+"#, replaceWith: "\n") strProcessed.regReplace(pattern: #"(\f+|\r+|\n+)+"#, replaceWith: "\n")
strProcessed.regReplace(pattern: "^\(kPragmaHeader)$", replaceWith: "")
if strProcessed.prefix(1) == " " { // if strProcessed.prefix(1) == " " { //
strProcessed.removeFirst() strProcessed.removeFirst()
} }
@ -111,8 +112,6 @@ public extension vChewingLM {
strProcessed.removeLast() strProcessed.removeLast()
} }
strProcessed = kPragmaHeader + "\n" + strProcessed // Add Pragma Header
// Step 3: Deduplication. // Step 3: Deduplication.
let arrData = strProcessed.split(separator: "\n") let arrData = strProcessed.split(separator: "\n")
// reversed override // reversed override
@ -121,6 +120,9 @@ public extension vChewingLM {
// Step 4: Remove duplicated newlines at the end of the file. // Step 4: Remove duplicated newlines at the end of the file.
strProcessed.regReplace(pattern: #"\n+"#, replaceWith: "\n") strProcessed.regReplace(pattern: #"\n+"#, replaceWith: "\n")
// Step 5: Add pragma header back.
strProcessed = kPragmaHeader + "\n" + strProcessed // Add Pragma Header
} }
/// ///