Re: xsrc/60398 (Line drawing in xterm does not work as expected)

Havard Eidnes <[email protected]>
Newsgroups gmane.os.netbsd.bugs
Message-ID <[email protected]>
> 1. Can you please start a fresh xterm in each version of NetBSD you
>    tried, started however you normally start xterms, and share the
>    output of `locale' in each fresh xterm?

I usually don't mess with things I don't have to, so they all
have

$ locale
LANG=""
LC_CTYPE="C"
LC_COLLATE="C"
LC_TIME="C"
LC_NUMERIC="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=""
$ 

I also have Alt-B and Alt-F committed to muscle memory as usable
line editing characters in tcsh, and if I'm not terribly mistaken,
those are no longer usable in a locale containing UTF-8, and are
instead interpreted as Something Else.

> 2. Can you share any .Xdefaults or .Xresources file you have?
>
> 3. Can you share the output of `xrdb -q'?

These come down to basically the same:

$ xrdb -q | egrep -i xterm
XTerm*ScrollBar:        true
XTerm*scrollbar*thickness:      7
XTerm*multiScroll:      true
XTerm*saveLines:        1000
XTerm*scrollInput:      false
XTerm*scrollKey:        true
XTerm*visualBell:       true
XTerm*cursorColor:      violet red
xterm.waitforwm:        false
XTerm*background:       bisque
XTerm*foreground:       black
XTerm*deleteIsDEL:      true
XTerm*ptyInitialErase:  true
XTerm*ttyModes: erase ^?
XTerm*numLock:  false
XTerm*backarrowKeyIsErase:      true
XTerm*backarrowKey:     true
$ 

> 4. Can you share the output of `appres XTerm'?

$ appres XTerm
*tekMenu*vtshow*Label:  Show VT Window
*tekMenu*tektextsmall*Label:    Small Characters
*tekMenu*vtmode*Label:  Switch to VT Mode
*tekMenu*tektextlarge*Label:    Large Characters
*tekMenu*tekpage*Label: PAGE
*tekMenu*tekreset*Label:        RESET
*tekMenu*tektext2*Label:        #2 Size Characters
*tekMenu*tekhide*Label: Hide Tek Window
*tekMenu*tekcopy*Label: COPY
*tekMenu*tektext3*Label:        #3 Size Characters
*tekMenu.Label: Tek Options
*MenuButton*borderWidth:        0
*menubar.borderWidth:   0
*mainMenu*redraw*Label: Redraw Window
*mainMenu*oldFunctionKeys*Label:        Old Function-Keys
*mainMenu*interrupt*Label:      Send INT Signal
*mainMenu*8-bit control*Label:  8-Bit Controls
*mainMenu*logging*Label:        Log to File
*mainMenu*sunFunctionKeys*Label:        Sun Function-Keys
*mainMenu*hangup*Label: Send HUP Signal
*mainMenu*print-immediate*Label:        Print-All Immediately
*mainMenu*sunKeyboard*Label:    VT220 Keyboard
*mainMenu*terminate*Label:      Send TERM Signal
*mainMenu*backarrow key*Label:  Backarrow Key (BS/DEL)
*mainMenu*print-on-error*Label: Print-All on Error
*mainMenu*hpFunctionKeys*Label: HP Function-Keys
*mainMenu*kill*Label:   Send KILL Signal
*mainMenu*num-lock*Label:       Alt/NumLock Modifiers
*mainMenu*toolbar*Label:        Toolbar
*mainMenu*print*Label:  Print Window
*mainMenu*scoFunctionKeys*Label:        SCO Function-Keys
*mainMenu*quit*Label:   Quit
*mainMenu*alt-esc*Label:        Alt Sends Escape
*mainMenu*print-redir*Label:    Redirect to Printer
*mainMenu*fullscreen*Label:     Full Screen
*mainMenu*tcapFunctionKeys*Label:       Termcap Function-Keys
*mainMenu*meta-esc*Label:       Meta Sends Escape
*mainMenu*dump-html*Label:      XHTML Screen Dump
*mainMenu*securekbd*Label:      Secure Keyboard
*mainMenu*suspend*Label:        Send STOP Signal
*mainMenu*dump-svg*Label:       SVG Screen Dump
*mainMenu*allowsends*Label:     Allow SendEvents
*mainMenu*delete-is-del*Label:  Delete is DEL
*mainMenu*continue*Label:       Send CONT Signal
*mainMenu.Label:        Main Options
*tek4014*fontLarge:     9x15
*tek4014*font2: 8x13
*tek4014*font3: 6x13
*tek4014*fontSmall:     6x10
*SimpleMenu*menuLabel.font:     -adobe-helvetica-bold-r-normal--*-120-*-*-*-*-iso8859-*
*SimpleMenu*menuLabel.vertSpace:        100
*SimpleMenu*Sme.height: 16
*SimpleMenu*BackingStore:       NotUseful
*SimpleMenu*HorizontalMargins:  16
*SimpleMenu*Cursor:     left_ptr
*SimpleMenu*borderWidth:        2
*fontMenu*allow-bold-fonts*Label:       Bold Fonts
*fontMenu*font2*Label:  Tiny
*fontMenu*utf8-title*Label:     UTF-8 Titles
*fontMenu*font-linedrawing*Label:       Line-Drawing Characters
*fontMenu*font3*Label:  Small
*fontMenu*allow-color-ops*Label:        Allow Color Ops
*fontMenu*font-doublesize*Label:        Doublesized Characters
*fontMenu*font4*Label:  Medium
*fontMenu*allow-font-ops*Label: Allow Font Ops
*fontMenu*font-loadable*Label:  VT220 Soft Fonts
*fontMenu*font5*Label:  Large
*fontMenu*allow-mouse-ops*Label:        Allow Mouse Ops
*fontMenu*font-packed*Label:    Packed Font
*fontMenu*fontdefault*Label:    Default
*fontMenu*font6*Label:  Huge
*fontMenu*allow-tcap-ops*Label: Allow Termcap Ops
*fontMenu*render-font*Label:    TrueType Fonts
*fontMenu*font1*Label:  Unreadable
*fontMenu*font7*Label:  Enormous
*fontMenu*allow-title-ops*Label:        Allow Title Ops
*fontMenu*utf8-mode*Label:      UTF-8 Encoding
*fontMenu*fontescape*Label:     Escape Sequence
*fontMenu*allow-window-ops*Label:       Allow Window Ops
*fontMenu*fontsel*Label:        Selection
*fontMenu*utf8-fonts*Label:     UTF-8 Fonts
*fontMenu.Label:        VT Fonts
*vtMenu*keepSelection*Label:    Keep Selection
*vtMenu*autowrap*Label: Enable Auto Wraparound
*vtMenu*titeInhibit*Label:      Enable Alternate Screen Switching
*vtMenu*altscreen*Label:        Show Alternate Screen
*vtMenu*keepClipboard*Label:    Keep Clipboard
*vtMenu*reversewrap*Label:      Enable Reverse Wraparound
*vtMenu*activeicon*Label:       Enable Active Icon
*vtMenu*sixelScrolling*Label:   Sixel Scrolling
*vtMenu*selectToClipboard*Label:        Select to Clipboard
*vtMenu*autolinefeed*Label:     Enable Auto Linefeed
*vtMenu*softreset*Label:        Do Soft Reset
*vtMenu*privateColorRegisters*Label:    Private Color Registers
*vtMenu*cursesemul*Label:       Enable Curses Emulation
*vtMenu*scrollbar*Label:        Enable Scrollbar
*vtMenu*appcursor*Label:        Enable Application Cursor Keys
*vtMenu*hardreset*Label:        Do Full Reset
*vtMenu*visualbell*Label:       Enable Visual Bell
*vtMenu*appkeypad*Label:        Enable Application Keypad
*vtMenu*clearsavedlines*Label:  Reset and Clear Saved Lines
*vtMenu*bellIsUrgent*Label:     Enable Bell Urgency
*vtMenu*scrollkey*Label:        Scroll to Bottom on Key Press
*vtMenu*tekshow*Label:  Show Tek Window
*vtMenu*scrollttyoutput*Label:  Scroll to Bottom on Tty Output
*vtMenu*jumpscroll*Label:       Enable Jump Scroll
*vtMenu*poponbell*Label:        Enable Pop on Bell
*vtMenu*tekmode*Label:  Switch to Tek Mode
*vtMenu*allow132*Label: Allow 80/132 Column Switching
*vtMenu*reversevideo*Label:     Enable Reverse Video
*vtMenu*cursorblink*Label:      Enable Blinking Cursor
*vtMenu*vthide*Label:   Hide VT Window
*vtMenu.Label:  VT Options
*form.Thickness:        0
*VT100.utf8Fonts.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1
*VT100.utf8Fonts.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1
*VT100.utf8Fonts.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1
*VT100.utf8Fonts.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1
*VT100.utf8Fonts.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1
*VT100.utf8Fonts.font:  -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1
*VT100.utf8Fonts.font7: -adobe-courier-medium-r-normal--24-240-75-75-m-150-iso10646-1
*VT100.font4:   7x13
*VT100.font2:   5x7
*VT100.font6:   10x20
*VT100.font5:   9x15
*VT100.font3:   6x10
*VT100.font1:   nil2
*VT100.font7:   -adobe-courier-medium-r-normal--24-240-75-75-m-150-iso10646-1
XTerm*scrollbar*thickness:      7
XTerm*scrollKey:        true
XTerm*ptyInitialErase:  true
XTerm*backarrowKey:     true
XTerm*background:       bisque
XTerm*visualBell:       true
XTerm*multiScroll:      true
XTerm*ttyModes: erase ^?
XTerm*foreground:       black
XTerm*cursorColor:      violet red
XTerm*ScrollBar:        true
XTerm*saveLines:        1000
XTerm*numLock:  false
XTerm*scrollInput:      false
XTerm*deleteIsDEL:      true
XTerm*backarrowKeyIsErase:      true
*saveLines:     1024
*IconFont:      nil2
*allowWindowOps:        false
*pointerMode:   0
$ 

> When I try running `LC_CTYPE=C xterm' vs `LC_CTYPE=C.UTF-8
> xterm', on netbsd-9 and netbsd-10 userlands, I am able to
> reproduce exactly what you described: with LC_CTYPE=C, xterm
> shows a-with-circumflex; with LC_CTYPE=C.UTF-8, xterm shows
> vertical bar.

If I start xterm on netbsd-9 and netbsd-10 without any LANG or
LC_CTYPE in the environment, bring up the font menu and select
"UTF-8 Encoding", I get line drawing characters for the UTF-8
sequences for those characters in that xterm.

If I do the same on netbsd-11, I do not.  Evidently with that
version, xterm *must* be started in an environment / locale setting
which includes UTF-8 for that to work, and in that case the font
menu entries related to UTF-8 are greyed out in the newly started
xterm.

So ... in the new xterm version, the dynamic choice of "UTF-8
Encoding" no longer appears to be possible.

So ... in a sense I now have a workaround.

Regards,

- Havard
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.