Wednesday, April 17, 2013

Re: macosx x11/motif gvim-7.3.706+ E250 dialog on startup

On 17/04/13 04:05, raf wrote:
> Tony Mechelynck wrote:
>
>> On 16/04/13 06:47, raf wrote:
>>> hi,
>>>
>>> i just installed an x11/motif version of vim-7.3.905 from source
>>> on macosx-10.6.8 and, every time it starts, i get an error dialog
>>> that says:
>>>
>>> E250: Fonts for the following charsets are missing in fontset -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1:
>>> [...snip...]
>>>
>>> my font is:
>>> set guifont=-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1
>>>
>>> it works fine up to patch 7.3.696.
>>> the motif version doesn't compile between patches 7.3.697 and 7.3.705.
>>> the error message appears as of patch 7.3.706 which got the motif version
>>> to compile again.
>
>> 7.3.697 is about "leaking resources when setting GUI font" which
>> means at least some font routines were changed. A quick search
>> through ftp://ftp.vim.org/pub/vim/patches/7.3/README shows some other
>> font-related patchlevels after that, but all concerning either
>> MS-Windows or 'guifontwide'.
>>
>> Have you set the 'guifontset' and/or 'guifontwide' options? Doing
>> :verbose set gfs? gfw?
>> will tell you. I recommend to leave them at their empty default
>> unless (a) you know what you do, and (b) you have
>> ÜBER-extra-super-hyper-duper-important reasons not to leave them
>> empty.
>
> no. i only set guifont.
>
> and, as i said, the problem happens even when guifont is not set
> to anything (i.e. its default value) and with gvim -u NONE -U NONE.
>
>> What happens if you use
>> :set gfs= gfw= gfn=-*-courier-medium-r-normal-*-*-120-*-*-m-*-*
>> ? This is a pretty common font, and (I hope) should not give errors.
>
> fixed is also a very common font in X11. it's in every installation
> and always has been.
>
> but to answer the question, setting guifont interactively is not an
> issue. there's no error there whether i use fixed or courier. the
> problem is setting guifont in ~/.gvimrc (or just starting the gui
> without setting the font) which causes the error message and the
> need to "Press ENTER or type command to continue" before i can see
> the file content.
>
> the error message i get for -*-courier-medium-r-normal-*-*-120-*-*-m-*-*
> is very similar:
>
> E250: Fonts for the following charsets are missing in fontset -*-courier-medium-r-normal-*-*-120-*-*-m-*-*-*:
> ISO8859-5
> KOI8-R
> ISO8859-7
> JISX0208.1983-0
> KSC5601.1987-0
> GB2312.1980-0
> JISX0201.1976-0
> E250: Fonts for the following charsets are missing in fontset -*-courier-medium-r-normal-*-*-120-*-*-m-*-*-*:
> ISO8859-5
> KOI8-R
> ISO8859-7
> JISX0208.1983-0
> KSC5601.1987-0
> GB2312.1980-0
> JISX0201.1976-0
>
> so it's not the choice of font that is the problem. it is the fact
> that vim thinks that it needs to warn me about the fact that certain
> obscure character sets that i don't use are not supported by the
> chosen (or default) font.
>
>> OTOH, if even the above generalized Courier font gives you similar
>> errors, then maybe there are needed X11 fonts which haven't been
>> installed on your system. In that case, check the optional packages
>> available for your OS, and see if some of them aren't about fonts, or
>> maybe about language packs.
>
> the font is working fine. i shouldn't have to install extra versions
> of a font for character sets that i am never going to use just to
> suppress this error message.
>
>> See also http://vim.wikia.com/wiki/Setting_the_font_in_the_GUI
>
> thanks but that doesn't mention anything about suppressing this error
> message.
>
>> Best regards,
>> Tony.
>
> thanks for the attempt. it's appreciated.
>
> what would "fix" the problem is the following patch:
>
> --- src/syntax.c.orig 2013-04-17 10:49:07.000000000 +1000
> +++ src/syntax.c 2013-04-17 10:49:21.000000000 +1000
> @@ -8054,7 +8054,7 @@ fontset_name2handle(name, fixed_width)
> if (STRCMP(name, "NONE") == 0)
> return NOFONTSET;
>
> - return gui_mch_get_fontset(name, TRUE, fixed_width);
> + return gui_mch_get_fontset(name, FALSE, fixed_width);
> }
> # endif
>
> the FALSE disables the warning but that seems a bit harsh.
> presumably someone else wants this error message to appear.
>
> alternatively, passing --disable-fontset to configure should
> make it go away but it doesn't.
>
> src/feature.h contains the following which turns it back on:
>
> # if !defined(FEAT_XFONTSET) && defined(HAVE_X11) && !defined(FEAT_GUI_GTK)
> # define FEAT_XFONTSET /* Hangul input requires xfontset */
> # endif
>
> but the comment and the code don't seem to agree. it's as if
> the absence of FEAT_GUI_GTK implies a desire for hangul input.
> shouldn't this look like the following instead (assuming that
> the comment is right rather than the code)?:
>
> # if !defined(FEAT_XFONTSET) && defined(HAVE_X11) && defined(FEAT_HANGULIN)
> # define FEAT_XFONTSET /* Hangul input requires xfontset */
> # endif
>
> but that doesn't help. there are two other places in src/feature.h
> that turn on FEAT_XFONTSET. it seems unavoidable if you want multibyte
> in X11 without gtk (which i do).
>
> putting "silent! " before the "set guifont" command doesn't have any effect.
> the error message and the prompt to continue still appear.
>
> i guess it's not the setting of the font that is generating the error,
> but rather the "getting" of the fontset in gui_mch_get_fontset() which
> seems to happen when the gui is activated.
>
> yes, running "vim -u NONE -U NONE" and then entering ":silent! gui" starts
> the gui without the error messages but that's no use when i run gvim itself.
>
> it's a pity there isn't a command to disable an error message by number.
>
> i guess i'll have to resort to the above patch unless someone has a good
> solution.
>
> cheers,
> raf
>

Aha! I'm using gvim with GTK2 GUI which comes (even with "Huge"
features) with -hangul_input -xfontset

Is there a GTK2 package available for Mac OS X? Maybe you could try it?
Or maybe even better, use the MacVim executable developed by Björn
Winckler as a gvim for Mac without X11 (using, IIUC, the Cocoa GUI)? The
MacVim binaries are not kept on the vim.org servers but there is a
chapter about them at http://www.vim.org/download.php#mac

Best regards,
Tony.
--
Democracy is the recurrent suspicion that more than half of the people
are right more than half of the time.
-- E. B. White

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

No comments: