tin may ignore ncursesw (tin modifies terminal settings)
clemens fischer <[email protected]> Thu, 01 Apr 2010 21:16:46 +0200
| Newsgroups | gmane.network.tin.user |
|---|---|
| Message-ID | <[email protected]> |
I wrote, also in [1] about the same problem: > When I use "rtin", all the color settings affect only where "tin" writes > text, everything else is left at the current default colors. I always > thought this to be tin specific, but I am not so sure anymore, because > after exiting "rtin", the same behaviour persists in "bash" as well! > I didn't notice until now, because tin runs always in its own > tmux/screen managed window which closes after "rtin" exits. I think the tin auto-configuration ignores some, but not all of the system installed ncursesw if not explicitly requested. The old version was configured like this: $ ./configure --prefix=/opt/tin/1.9.6-snapshot --disable-nls \ --disable-etiquette --enable-cancel-locks --with-pcre=/usr \ --enable-debug --with-gpg=/usr/bin/gpg I found that the binary links to /lib/libncursesw.so.5.7 (on arch-linux) but apparently doesn't use all its entry points: $ objdump -T /l/bin/tin|egv glibc /l/bin/tin: file format elf32-i386 DYNAMIC SYMBOL TABLE: 00000000 DF *UND* 00000000 LIBIDN_1.0 stringprep_check_version 00000000 w D *UND* 00000000 __gmon_start__ 00000000 w D *UND* 00000000 _Jv_RegisterClasses 00000000 DF *UND* 00000000 ubidi_open_4_2 00000000 DF *UND* 00000000 ubidi_getParaLevel_4_2 00000000 DF *UND* 00000000 LIBIDN_1.0 idna_to_unicode_lzlz 00000000 DF *UND* 00000000 tigetnum 00000000 DF *UND* 00000000 pcre_version 00000000 DF *UND* 00000000 pcre_exec 00000000 DF *UND* 00000000 pcre_config 00000000 DF *UND* 00000000 tigetflag 00000000 DF *UND* 00000000 setupterm 00000000 DF *UND* 00000000 u_strlen_4_2 00000000 DF *UND* 00000000 unorm_normalize_4_2 00000000 DF *UND* 00000000 tputs 00000000 DF *UND* 00000000 pcre_compile 00000000 DF *UND* 00000000 tgoto 00000000 DF *UND* 00000000 u_strFromUTF8_4_2 00000000 DF *UND* 00000000 ubidi_writeReordered_4_2 00000000 DF *UND* 00000000 tigetstr 00000000 DF *UND* 00000000 ubidi_close_4_2 00000000 DF *UND* 00000000 ubidi_setPara_4_2 00000000 DF *UND* 00000000 pcre_study 00000000 DF *UND* 00000000 u_strToUTF8_4_2 08140f54 g D *ABS* 00000000 Base _end 080f6764 g D *ABS* 00000000 Base _edata 080b4264 g DO .rodata 00000004 Base _IO_stdin_used 080f6764 g D *ABS* 00000000 Base __bss_start 0804a088 g DF .init 00000000 Base _init 080b422c g DF .fini 00000000 Base _fini The new version, which initializes the terminal correctly and doesn't mess with default and configured colors was configured like this: $ ./configure --disable-nls --with-defaults-dir=/l/etc/tin \ --disable-etiquette --enable-cancel-locks --with-trace \ --with-pcre=/usr --with-screen=ncursesw --enable-debug \ --enable-nntp-only --with-gpg=/usr/bin/gpg --sysconfdir=/l/etc/tin \ --prefix=/opt/tin/1.9.6-snapshot-tmux Now more symbols belonging to ncursesw are referenced: $ objdump -T /l/bin/tin|egv glibc /l/bin/tin: file format elf32-i386 DYNAMIC SYMBOL TABLE: 00000000 DF *UND* 00000000 scrollok 00000000 DF *UND* 00000000 wclrtobot 00000000 DF *UND* 00000000 waddch 00000000 DF *UND* 00000000 wmove 00000000 DF *UND* 00000000 reset_shell_mode 00000000 DF *UND* 00000000 keypad 00000000 DF *UND* 00000000 LIBIDN_1.0 stringprep_check_version 00000000 w D *UND* 00000000 __gmon_start__ 00000000 w D *UND* 00000000 _Jv_RegisterClasses 00000000 DF *UND* 00000000 endwin 00000000 DF *UND* 00000000 ubidi_open_4_2 00000000 DF *UND* 00000000 use_default_colors 00000000 DF *UND* 00000000 nodelay 00000000 DF *UND* 00000000 resizeterm 00000000 DF *UND* 00000000 ubidi_getParaLevel_4_2 00000000 DF *UND* 00000000 LIBIDN_1.0 idna_to_unicode_lzlz 00000000 DF *UND* 00000000 reset_prog_mode 00000000 DF *UND* 00000000 werase 00000000 DF *UND* 00000000 initscr 00000000 DF *UND* 00000000 pcre_version 00000000 DF *UND* 00000000 wclrtoeol 00000000 DF *UND* 00000000 pcre_exec 00000000 DF *UND* 00000000 wdelch 00000000 DF *UND* 00000000 beep 00000000 DF *UND* 00000000 pcre_config 00000000 DF *UND* 00000000 getmouse 00000000 DF *UND* 00000000 mousemask 00000000 DF *UND* 00000000 wrefresh 00000000 DF *UND* 00000000 init_pair 00000000 DF *UND* 00000000 u_strlen_4_2 00000000 DF *UND* 00000000 cbreak 00000000 DF *UND* 00000000 unorm_normalize_4_2 00000000 DF *UND* 00000000 ungetch 00000000 DF *UND* 00000000 start_color 00000000 DF *UND* 00000000 pcre_compile 00000000 DF *UND* 00000000 wgetch 00000000 DF *UND* 00000000 vwprintw 00000000 DF *UND* 00000000 has_colors 00000000 DF *UND* 00000000 waddnstr 00000000 DF *UND* 00000000 wgetnstr 00000000 DF *UND* 00000000 winnstr 00000000 DF *UND* 00000000 u_strFromUTF8_4_2 00000000 DF *UND* 00000000 ubidi_writeReordered_4_2 00000000 DF *UND* 00000000 wattr_off 00000000 DF *UND* 00000000 curs_set 00000000 DF *UND* 00000000 wsetscrreg 00000000 DF *UND* 00000000 ubidi_close_4_2 00000000 DF *UND* 00000000 wscrl 00000000 DF *UND* 00000000 ubidi_setPara_4_2 00000000 DF *UND* 00000000 noecho 00000000 DF *UND* 00000000 wbkgdset 00000000 DF *UND* 00000000 pcre_study 00000000 DF *UND* 00000000 u_strToUTF8_4_2 00000000 DF *UND* 00000000 wattr_on 080b49fc g DF .fini 00000000 Base _fini 080f6c84 g DO .bss 00000004 stdscr 0804a710 g DF .init 00000000 Base _init 080f6cc0 g DO .bss 00000004 LINES 080f6c64 g D *ABS* 00000000 Base __bss_start 080b4a24 g DO .rodata 00000004 Base _IO_stdin_used 0813ef78 g D *ABS* 00000000 Base _end 080f6c80 g DO .bss 00000004 COLORS 080f6ce8 g DO .bss 00000004 COLOR_PAIRS 080f6c90 g DO .bss 00000004 curscr 080f6c64 g D *ABS* 00000000 Base _edata 080f6cc4 g DO .bss 00000004 COLS [1] Archived-At: <http://permalink.gmane.org/gmane.network.tin.user/383> clemens