From 584550a73222cd3d3add446253975c3af376799b Mon Sep 17 00:00:00 2001 From: Juergen Spitzmueller Date: Sat, 18 Apr 2020 11:21:48 +0200 Subject: [PATCH] Remap typographical apostrophe from Hunspell to plain apostrophe (#11832) (cherry picked from commit ca28c9866a916494c6613076842aa32e8d572c37) --- src/HunspellChecker.cpp | 11 +++++++++-- status.23x | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/HunspellChecker.cpp b/src/HunspellChecker.cpp index 1c2612e78e..593a123bf9 100644 --- a/src/HunspellChecker.cpp +++ b/src/HunspellChecker.cpp @@ -47,6 +47,13 @@ typedef map LangPersonalWordList; typedef vector IgnoreList; +docstring remap_result(docstring const s) +{ + // substitute RIGHT SINGLE QUOTATION MARK + // by APOSTROPHE + return subst(s, 0x2019, 0x0027); +} + } // namespace @@ -418,14 +425,14 @@ void HunspellChecker::suggest(WordLangTuple const & wl, #ifdef HAVE_HUNSPELL_CXXABI vector wlst = h->suggest(word_to_check); for (auto const s : wlst) - suggestions.push_back(from_iconv_encoding(s, encoding)); + suggestions.push_back(remap_result(from_iconv_encoding(s, encoding))); #else char ** suggestion_list; int const suggestion_number = h->suggest(&suggestion_list, word_to_check.c_str()); if (suggestion_number <= 0) return; for (int i = 0; i != suggestion_number; ++i) - suggestions.push_back(from_iconv_encoding(suggestion_list[i], encoding)); + suggestions.push_back(remap_result(from_iconv_encoding(suggestion_list[i], encoding))); h->free_list(&suggestion_list, suggestion_number); #endif } diff --git a/status.23x b/status.23x index 1d99bb5ed9..81ebd0dc8b 100644 --- a/status.23x +++ b/status.23x @@ -117,6 +117,8 @@ What's new - Fix direction of some parts of text in bidi texts (bug 11691). +- Do not insert \textquoteright with Hunspell (bug 11832). + * INTERNALS -- 2.39.5