nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit d456bfa10d5a24ea6834d8b99480b67616e402aa
parent 22a3564a2e02ed8ceef59fcc9e0855b8550bfee1
Author: David Lawrence Ramsey <pooka109@gmail.com>
Date:   Fri, 18 Mar 2005 19:07:25 +0000

add more locale string checks beyond case-sensitive "UTF-8" so that we
can better detect UTF-8 locales, adapted from Debian's UTF-8 patch for
slang


git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2392 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

Diffstat:
MChangeLog | 6++++--
Msrc/nano.c | 7++++---
2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -252,8 +252,10 @@ CVS code - main() - Try to automatically detect whether UTF-8 support is needed by setting the NO_UTF8 flag if setlocale() returns a string that - doesn't contain "UTF-8". When using slang 2.x, enable UTF-8 - support with SLutf8_enable(). (DLR) + doesn't contain "UTF8" or "UTF-8", case insensitively. When + using slang 2.x, enable UTF-8 support with SLutf8_enable(). + (DLR, string checks beyond case-sensitive "UTF-8" adapted from + Debian's UTF-8 patch for slang) - nano.h: - Remove now-unneeded #defines for functions that now have multibyte equivalents. (DLR) diff --git a/src/nano.c b/src/nano.c @@ -3963,12 +3963,13 @@ int main(int argc, char **argv) #ifdef NANO_WIDE { /* If the locale set doesn't exist, or it exists but doesn't - * include the string "UTF-8", we shouldn't go into UTF-8 - * mode. */ + * include the case-insensitive string "UTF8" or "UTF-8", we + * shouldn't go into UTF-8 mode. */ char *locale = setlocale(LC_ALL, ""); if (locale == NULL || (locale != NULL && - strstr(locale, "UTF-8") == NULL)) + strcasestr(locale, "UTF8") == NULL && + strcasestr(locale, "UTF-8") == NULL)) SET(NO_UTF8); #ifdef USE_SLANG