On 13/12/11 11:50, Paul Maier wrote:
>
>>>>> Hi,
>>>>>
>>>>> German message output is broken when encoding=UTF-8.
>>>>> Maybe calls to convert messages to the current encoding (see :help iconv) are missing in the code?
>>>>>
>>>>> To reproduce here are 2 examples among many others:
>>>>>
>>>>>
>>>>> 1. example:
>>>>>
>>>>> - open new gvim
>>>>> - :set enc=UTF-8
>>>>> - :set enc=lalala ... something invalid
>>>>>
>>>>> I get:
>>>>> E474: Ung<fc>ltiges Argument: enc=lalala
>>>>> I expect:
>>>>> E474: Ungültiges Argument: enc=lalala
>>>>>
>>>>>
>>>>> 2. example:
>>>>>
>>>>> - open new gvim
>>>>> - :set enc=UTF-8
>>>>> - :set bomb
>>>>> - i<Enter><Esc> ... enter a newline to make the buffer not empty
>>>>> - g<C-G> ... g CONTROL-G
>>>>>
>>>>> I get:
>>>>> Sp 1 von 0; Zeile 2 von 2; Wort 0 von 0; Byte 4 von 4(+3 f<fc>r BOM)
>>>>> I expect:
>>>>> Sp 1 von 0; Zeile 2 von 2; Wort 0 von 0; Byte 4 von 4(+3 für BOM)
>>>>>
>>>>>
>>>>> I use:
>>>>>
>>>>> :version
>>>>> VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Oct 27 2010 17:59:02)
>>>>> MS-Windows 32 Bit GUI Version mit OLE-Unterstützung
>>>>> Inklusive der Korrekturen: 1-46
>>>>> Übersetzt von Bram@KIBAALE
>>>>>
>>>>>
>>>>> When enc is latin1, all messages display fine.
>>>>>
>>>>> Thanks& regards,
>>>>> Paul
>>>>>
>>>>>
>>>>
>>>> If you were running under Linux I would suggest
>>>>
>>>> lang mess de_DE.UTF-8
>>>>
>>>> but beware that the placement of this command before or after not only
>>>> ":set enc=utf-8" but also ":filetype [plugin] [indent] on" and ":syntax
>>>> on" (and the relative placement of these) makes a difference.
>>>>
>>>> Under Windows I'm less sure; maybe something like
>>>>
>>>> lang mess German_Germany.10646
>>>>
>>>> Same caveats as above about command ordering.
>>>>
>>>>
>>>
>>>
>>> Hi!
>>>
>>> Sorry, your hint didn't change anything, but I found, that it's working
>>> for Spanish:
>>>
>>> :set enc=utf-8
>>> :lang mess es
>>> Este es el cambio más nuevo
>>> => WORKS FINE! "á" (Hex 00e1) is printed out fine.
>>>
>>> :lang mess fr
>>> D<e9>j<e0> <e0> la modification la plus r<e9>cente
>>> :lang mess de
>>> Bereits bei der j<fc>ngsten<c4>nderung
>>> => ENCODING PROBLEMS!
>>>
>>>
>>> But when I set to :enc=latin1, then it's VICE VERSA:
>>> German and French working, but Spanish not:
>>>
>>> :set enc=latin1
>>> :lang mess es
>>> Este es el cambio más nuevo
>>> => Looks like UTF-8 here.
>>>
>>>
>>> Are the messages for German and French coded in latin1,
>>> and for Spanish in UTF-8?
>>>
>>> I agree, there needs to be some translation from the encoding of the message
>>> to the encoding currently in use.
>>> But how?
>>> Is it something that I can configure, or is it a vim coding problem?
>>>
>>> I found out that in Cygwin's vim and Cygwin's gvim the German messages display
>>> fine for both settings, enc=utf-8 and enc=latin1 (without that I did anything).
>>>
>>> Thanks& Regards,
>>> Paul
>>>
>>>
>>>
>>
>> Did you try the _full_ three-part locale, language_COUNTRY.encoding,
>> where (IIUC) under Windows "encoding" is a numeric codepage, 10646 for
>> Unicode? For German, my guess was
>>
>> lang mess German_Germany.10646
>>
>> where 10646 (from ISO/IEC 10646) is the Windows codepage for Unicode.
>> Did you try it? Did you try varying the order of
>>
>> :language messages ...
>> :set enc=...
>> :filetype ...
>> :syntax on
>>
>> ? (The latter two set up the menus, which are also influenced by the
>> "messages" language.)
>>
>> N.B. When I was on Windows some years ago, my system locale (as set by
>> the OS) was French_Belgium.1252 — hence my suggestion above.
>>
>
>
> Hi Tony,
>
> yes I checked the full locale "lang mess German_Germany.10646" and I checked it
> again, but sorry, no effect.
> The system seems to understand "German_Germany.10646" (because when I enter nonsense
> it says so), but when I afterwards query the language with "lang mess" it just
> outputs "de" (see below).
maybe try the same for :lang ctype
I'm not sure
>
> I also played around with different combinations of filetypes and syntax commands,
> but no effect.
> First enc, then mess: see my last mail. Other orders: see below.
>
> Full transcript of my session follows.
> There I use :later to produce an error message with German umlaut characters in it.
>
>
> # initial state: latin1, working
>
> :set enc?
> encoding=latin1
> :lang mess
> Momentane messages Sprache: "de_DE.CP1252"
> :later
> Bereits bei der jüngsten Änderung
>
> # ok, let's begin.
> # first "mess" then "enc":
>
> :lang mess German_Germany.10646
> :lang mess
> Momentane messages Sprache: "de"
> :set enc=utf-8
> :later
> Bereits bei der j<fc>ngsten<c4>nderung
>
> # "syntax", then again "mess"
>
> :syntax
> Keine Syntax-Elemente f<fc>r diesen Puffer definiert
> :syntax on
???
Just :syntax on by itself should not give an error (and neither should
:set ft=dos BTW). See :help :syntax-on
When I do :syntax with no arguments in an empty buffer, I get
No syntax items defined for this buffer
which is not an error. You could also do
:filetype
:let syntax_on
(both of them with no additional arguments) to see if syntax
highlighting is currently on (the first command too because if filetype
detection is off, Vim won't set 'syntax' on newly opened files)
> E749: Leerer Puffer
> :syntax
> Keine Syntax-Elemente f<fc>r diesen Puffer definiert
> :lang mess
> Momentane messages Sprache: "de"
> :lang mess German_Germany.10646
> :lang mess
> Momentane messages Sprache: "de"
> :later
> Bereits bei der j<fc>ngsten<c4>nderung
>
> # set filetype, then again "mess"
Not :set filetype, just :filetype, as in one of the following:
:filetype on
:filetype plugin on
:filetype plugin indent on
:filetype indent on
>
> :set filetype?
> filetype=
> :set filetype=dos
> E749: Leerer Puffer
> :set filetype?
> filetype=dos
> :later
> Bereits bei der j<fc>ngsten<c4>nderung
> :set enc=latin1
> :later
> Bereits bei der jüngsten Änderung
> :set enc=utf-8
> :later
> Bereits bei der j<fc>ngsten<c4>nderung
> :lang mess German_Germany.10646
> :later
> Bereits bei der j<fc>ngsten<c4>nderung
> :set enc=utf-8
> :later
> Bereits bei der j<fc>ngsten<c4>nderung
>
>
> Thank you,
> Paul
>
>
>
I see. Well, I can't help you then, unless you hit a bug which was fixed
between your version (7.3.046) and the latest one (7.3.372).
You can get a recent (and regularly updated) version of Vim for Windows
from http://sourceforge.net/projects/cream/files/Vim/ — this is what
this list's regulars mean when they talk of "Vim without Cream". It is
compiled from the official sources, but not by Bram himself, and
possibly by means of a different C/C++ compiler; it ought to work just
as well as Bram's executable on any Windows system (and maybe better
since bugfixes are incorporated more often).
Best regards,
Tony.
--
If someone were to ask me for a short cut to sensuality, I would
suggest he go shopping for a used 427 Shelby-Cobra. But it is only
fair to warn you that of the 300 guys who switched to them in 1966,
only two went back to women.
-- Mort Sahl
--
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
No comments:
Post a Comment