[LyX/master] Hack to display section symbol
Richard Kimberly Heck
rikiheck at lyx.org
Fri Jul 28 14:54:07 UTC 2023
commit 5cb80b867f4a59c3253487652ba74a29ad5b3f0f
Author: Richard Kimberly Heck <rikiheck at lyx.org>
Date: Thu Jul 27 01:18:55 2023 -0400
Hack to display section symbol
---
lib/unicodesymbols | 1 -
src/BiblioInfo.cpp | 12 ++++++++++++
2 files changed, 12 insertions(+), 1 deletions(-)
diff --git a/lib/unicodesymbols b/lib/unicodesymbols
index 458a9ee..1b2a88d 100644
--- a/lib/unicodesymbols
+++ b/lib/unicodesymbols
@@ -68,7 +68,6 @@
0x00a5 "\\textyen" "textcomp" "force=cp862;cp1255;cp1256;euc-jp;euc-jp-platex;jis;shift-jis-platex" "\\yen" "amssymb" # YEN SIGN
0x00a6 "\\textbrokenbar" "textcomp" "force=cp1255;cp1256;iso8859-7;euc-jp;euc-jp-platex;utf8-platex" # BROKEN BAR
0x00a7 "\\textsection" "textcomp" "force=cp1255;cp1256;iso8859-7;euc-cn;euc-jp;euc-kr;euc-tw;gbk;jis;shift-jis-platex" "\\mathsection" "" # SECTION SIGN
-0x00a7 "\\S" ""
0x00a8 "\\textasciidieresis" "textcomp" "force=cp1255;cp1256;iso8859-7;euc-cn;euc-jp;euc-kr;gbk;jis;shift-jis-platex" # DIAERESIS
0x00a9 "\\textcopyright" "textcomp" "force=cp1255;cp1256;koi8-u;iso8859-7;euc-jp;euc-jp-platex;utf8-platex" # COPYRIGHT SIGN
0x00a9 "\\copyright" ""
diff --git a/src/BiblioInfo.cpp b/src/BiblioInfo.cpp
index 7c15cdd..36509c6 100644
--- a/src/BiblioInfo.cpp
+++ b/src/BiblioInfo.cpp
@@ -333,6 +333,7 @@ docstring convertLaTeXCommands(docstring const & str)
bool scanning_cmd = false;
bool scanning_math = false;
+ bool is_section = false;
bool escaped = false; // used to catch \$, etc.
while (!val.empty()) {
char_type const ch = val[0];
@@ -355,13 +356,24 @@ docstring convertLaTeXCommands(docstring const & str)
// discard characters until we hit something that
// isn't alpha.
if (scanning_cmd) {
+ if (!is_section && ch == 'S') {
+ is_section = true;
+ val = val.substr(1);
+ continue;
+ }
if (isAlphaASCII(ch)) {
+ is_section = false;
val = val.substr(1);
escaped = false;
continue;
+ } else if (is_section) {
+ ret.push_back(0x00a7);
+ is_section = false;
+ continue;
}
// so we're done with this command.
// now we fall through and check this character.
+ is_section = false;
scanning_cmd = false;
}
More information about the lyx-cvs
mailing list