NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: xterm -fa weirdness (9.3 and 10.0 RC_1)



On Fri 05 Jan 2024 at 08:23:33 +0000, RVP wrote:
> On Thu, 4 Jan 2024, Rhialto wrote:
> 
> > I do have in my ~/.Xresources:
> > 
> > xterm.vt100.faceName:		Lucida Console Semi-Condensed
> > xterm.vt100.faceSize:		9
> > XTerm.vt100.renderFont:         false
> > UXTerm.vt100.renderFont:        true
> > 
> 
> You've put the instance-names (lower-case initial char.) in .Xresources
> which will override resources specified using class-names (upper-case
> initial char.), so:

Thanks for your analysis. I had a feeling it might have something to do
with the details of the .Xresources and how the command line arguments
relate to that. But I couldn't quite get my finger behind it.

The thing is that I used the lower case names (instance names instead of
class names) in the .Xresources on purpose. The reason was, if I
remember correctly, to make them work for both xterm and uxterm. Uxterm
is basically "xterm -class UXTerm". That means that resources like
"XTerm.VT100.faceName" don't match for uxterm. I would need to double
them for both cases.
For the renderFont resource I make use of this difference: for XTerm
it is false, for UXTerm it is true.

I suppose that the reason why the app-defaults file for UXTerm
(/usr/X11R7/lib/X11/app-defaults/UXTerm) works with including the one
for XTerm, is that those simply don't include the XTerm or UXTerm
component at all. But I don't think that is an option for the global
.Xresources.

[...]
> those 2 are not equivalent. The `-fa "C64 Pro Mono"' becomes, I believe,
> `XTerm.VT100.faceName: C64 Pro Mono'; and class-names are a less specific
> match compared to instance-names. This is hinted at in xterm(1):
> 
> 	Some poorly?designed resource files are too specific to
> 	allow the command?line options to affect the relevant widget
> 	values.

Hm, I would then say that the problem is that the command line option
does *not* equate to the most-specific possible resource name. I would
expect that a command line option *always* must override resources.

I browsed through the source of xterm and it wasn't immediately clear
where the command line option is recognised and converted to a resource.
So I could not say if this is easy to change.

> -xterm.vt100.faceName:           Lucida Console Semi-Condensed
> -xterm.vt100.faceSize:           9
> +XTerm.vt100.faceName:           Lucida Console Semi-Condensed
> +XTerm.vt100.faceSize:           9
> 
> That should work.

I'll duplicate them for UXTerm as well, then. Unless some better idea
comes along. Thanks!

> -RVP
-Olaf.
-- 
___ Olaf 'Rhialto' Seibert                            <rhialto/at/falu.nl>
\X/ There is no AI. There is just someone else's work.           --I. Rose

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index