From 56b7b47039b8b55136e7fd8f86b8f670c6c4e021 Mon Sep 17 00:00:00 2001 From: minjaesong Date: Fri, 3 May 2024 16:13:47 +0900 Subject: [PATCH] codestyle wip --- .../pua_codestyle_ascii_variable.tga | 3 +++ lib/TerrarumSansBitmap.jar | 4 ++-- src/net/torvald/btex/BTeXParser.kt | 19 ++++++++++++++----- 3 files changed, 19 insertions(+), 7 deletions(-) create mode 100644 assets/graphics/fonts/terrarum-sans-bitmap/pua_codestyle_ascii_variable.tga diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/pua_codestyle_ascii_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/pua_codestyle_ascii_variable.tga new file mode 100644 index 000000000..c8c791fad --- /dev/null +++ b/assets/graphics/fonts/terrarum-sans-bitmap/pua_codestyle_ascii_variable.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e915013c8baa0ebb0f0cc58137607309d331114c7fc1f3756f49a5d1195ef38b +size 122898 diff --git a/lib/TerrarumSansBitmap.jar b/lib/TerrarumSansBitmap.jar index 8c731fd43..80eded83d 100644 --- a/lib/TerrarumSansBitmap.jar +++ b/lib/TerrarumSansBitmap.jar @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0a362e06e4cab5e686e44e69bc65965cafe12d6212a59b914483eb48e4fe2575 -size 194123 +oid sha256:82f10fc3ef4ab42fb87502b3cf309fb0bde8b4b45ec214be70a9c6f826862b3d +size 226415 diff --git a/src/net/torvald/btex/BTeXParser.kt b/src/net/torvald/btex/BTeXParser.kt index 0b36f8c3a..f6225fe1c 100644 --- a/src/net/torvald/btex/BTeXParser.kt +++ b/src/net/torvald/btex/BTeXParser.kt @@ -286,7 +286,7 @@ object BTeXParser { private var oldCodeMode = false override fun characters(ch: CharArray, start: Int, length: Int) { - val str = + var str = String(ch.sliceArray(start until start + length)).replace('\n', ' ').replace(Regex(" +"), " ")//.trim() if (str.isNotEmpty()) { @@ -309,11 +309,20 @@ object BTeXParser { } // process code request - if (codeMode != oldCodeMode && codeMode) { + if (codeMode != oldCodeMode || codeMode) { println("CODE tag for str '$str'") - val w = getFont().getWidth(str) - getOrPutCodeTagRef(w) - paragraphBuffer.appendObjectPlaceholder("TAG@CODE-$w") + + str = CodepointSequence(listOf(0xF901D, 0xF901D, 0xF901D)).toUTF8Bytes().decodeToString() + + if (!codeMode) { + paragraphBuffer.append(TerrarumSansBitmap.charsetOverrideDefault) + } + else { + val w = getFont().getWidth(str) + getOrPutCodeTagRef(w) + paragraphBuffer.appendObjectPlaceholder("TAG@CODE-$w") + paragraphBuffer.append(TerrarumSansBitmap.charsetOverrideCodestyle) + } }