diff options
Diffstat (limited to 'patches/source/screen/58-show-encoding-hardstatus.patch')
-rw-r--r-- | patches/source/screen/58-show-encoding-hardstatus.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/patches/source/screen/58-show-encoding-hardstatus.patch b/patches/source/screen/58-show-encoding-hardstatus.patch new file mode 100644 index 00000000..45fecdbf --- /dev/null +++ b/patches/source/screen/58-show-encoding-hardstatus.patch @@ -0,0 +1,41 @@ +Author: rascov@rascov.tw +Date: Wed Feb 11 05:51:31 CST 2009 +Subject: show encoding in hardstatus, orginal from FreeBSD by yzlin@cs.nctu.edu.tw +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/screen/+bug/286810 +Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=533498 + +Index: screen/screen.c +=================================================================== +--- screen.orig/screen.c 2014-04-28 03:14:19.195018278 +0200 ++++ screen/screen.c 2014-04-28 03:14:19.179018199 +0200 +@@ -2801,6 +2801,18 @@ + } + p += strlen(p) - 1; + break; ++ #ifdef ENCODINGS ++ case 'e': ++ *p = 0; ++ D_encoding = nwin_options.encoding > 0 ? nwin_options.encoding : 0; ++ if (win && win->w_encoding) ++ { ++ *p++ = ' '; ++ strcpy(p, EncodingName(win->w_encoding)); ++ } ++ p += strlen(p) - 1; ++ break; ++ #endif + case '{': + { + char rbuf[128]; +Index: screen/process.c +=================================================================== +--- screen.orig/process.c 2014-04-28 03:14:19.195018278 +0200 ++++ screen/process.c 2014-04-28 03:14:19.183018228 +0200 +@@ -3693,6 +3693,7 @@ + { + WinSwitchEncoding(fore, n); + ResetCharsets(fore); ++ RedisplayDisplays(0); + } + else if (i && display) + D_encoding = n; |