Wrong letter displayed for Slavic character

Wrong letter displayed for Slavic character

6
NewbieNewbie
6

    Apr 28, 2008#1

    Hi all.

    I have one problem. I try UE v 13.10a+1 (I found some older version on my disk) for editing SQL source and texts files. In UE I have one problem with my native language. In my language existing letter "Ľ". It is ˇ and L together. But UE doesn't display this letter correct. In UE it is like "ź". But, if I copy this letter from UE like ź and paste into another editor, for example notepad, or hit textarea on your website, letter is pasted correctly, like "Ľ". I don know, what is wrong. Can you give my some advice?
    Thanks.

    Peter.

    6,675585
    Grand MasterGrand Master
    6,675585

      Apr 28, 2008#2

      First I guess the file you have open in UltraEdit is an ASCII/ANSI file and not a Unicode file and therefore Unicode characters like yours (coded with more than 1 byte) must be converted to ANSI (only 1 byte per character) if this is possible. The conversion from Unicode to ANSI is done with the code page currently selected at Advanced - Set Code Page/Locale or which is declared in the document and automatically detected and applied by UltraEdit (if the configuration setting for automatic code page detection is not disabled) or applied manually to current document at View - Set Code Page. HTML and XML documents should always contain the code page/character set declaration. For example in HTML in section <head>

      <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">

      is the right one for most Western European and North American Languages.

      I use the German page SELFHTML - Zeichenkodierungen which contains images of some character tables to answer questions like yours. In WikiPedia you can also find many articles about code pages and character sets. I can see your character in the code table of ISO-8859-2 (Latin-2) which is the code table for most Central European and Slavic languages. It has the decimal code 165. Set the cursor left to your special character and click on Search - Character Properties. If it shows you the decimal code 165 for this character, I'm right.

      You have to choose a font at View - Set Font, View - Set HEX/Column Mode Font, View - Set Printer Font which supports the code page you need and has the correct glyph for your character. You must specify also the correct Script in the font settings dialog. If I'm right, the script (code page) you need is Central European.

      Select ISO-8859-2 (Latin-2) at Advanced - Set Code Page/Locale and View - Set Code Page.
      Edit: That is wrong. The code page required for this file is 1250 (ANSI - Central Europe).

      The format of the current file is displayed in the status bar at bottom of the UltraEdit window. See my readme announcement where it is explained what the abbreviations for the file format and the line terminations in the field right to the field with line/column/clipboard numbers in the status bar mean.

      See also this post about the message about change of font and/or script settings in font dialog explaining character display and all the settings in detail.
      Best regards from an UC/UE/UES for Windows user from Austria

      6
      NewbieNewbie
      6

        Apr 28, 2008#3

        Hi Mofi.

        I have still this problem. I have already setup code pade 1250 - ANSI Central European, or ISO-8859-2 Central Europe, letter Ľ is always displayed as ź. I restarted UE many times, nothing changed. If I have cursor on left side of this letter and use Search->Character Properties, I see in dialog this:

        Decimal value: 188
        Hexadecimal value: 0xbc
        Display as: Ľ (this will very based on font and script)

        Offset of Character (Decimal): 19512
        Offset of Character (HEX): 0x4c38.

        I'm using font Courier new, style: regular, Size: 10, script is Central European.

        UE still display Ľ as ź.

        Nuf

        6,675585
        Grand MasterGrand Master
        6,675585

          Apr 28, 2008#4

          I did not understand why this character has decimal code 188 instead of 165. ź is correct for character with code 188 using ISO-8859-2 (Latin-2).

          I have selected the font/script you have selected and created an ANSI file with characters 160 to 169 and compare the look of the characters with the image for ISO-8859-2 (Latin-2), I can see that most characters are identical displayed, but not all.

          Windows code page 1250 ignores partly the international standard ISO-8859-2. This can be seen by comparing Windows code page Windows-1250 with standardized code page ISO/IEC 8859-2.

          Therefore it is necessary to have code page 1250 (ANSI - Central Europe) set with View - Set Code Page and have set for example font Courier New with View - Set Font with Central European selected from list as Script to get the byte with decimal value 188 displayed as character Ľ and not as character ź.

          By the way: If I start Notepad with Windows Region and Language settings set to German (Austria) and using therefore Windows-1252 as code page for ANSI files, paste Ľ and ź into a new file, click on Save As, choose the encoding ANSI and click on button Save, I get displayed the message:
          Notepad wrote:This file contains characters in Unicode format which will be lost if you save this file as an ANSI encoded text file.
          To keep the Unicode information, click Cancel below and then select one of the Unicode options from the Encoding drop down list.
          Continue?
          And the 2 special characters are saved as normal L and z in the ANSI file if I continue.
          Best regards from an UC/UE/UES for Windows user from Austria

          1
          NewbieNewbie
          1

            Jan 20, 2016#5

            Go to View -> Set Font... and show Script select box and setup correct value Central Europe...