<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: ncurses: вывеси символ в utf-8 локали</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html</link>
    <description>Как сделать сабж?&lt;br&gt;&lt;br&gt;Банальный addch с utf8 кодом символа не работает. Имеется в виду libncurses, не libncursesw. Всякие irssi, vim как-то это умеют...</description>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (pup)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#20</link>
    <pubDate>Thu, 03 Jul 2008 19:37:38 GMT</pubDate>
    <description>Я тоже столкнулся с этой проблемой.&lt;br&gt;&lt;br&gt;&amp;gt;Добавить #include &amp;lt;locale.h&amp;gt; в заголовок и setlocale(LC_CTYPE, &quot;&quot;); до initscr(); после чего наступит счастье.&lt;br&gt;&lt;br&gt;Это помогает справиться с выводом utf-8 строк, то есть начинают работать функции типа addstr и printw. Но addch продолжает выводить гадости. То есть, если выводить символ через addch побайтно, ncurses рисует пробел и потом utf8 символ, причём с инвертированным атрибутом. (пробел -- это он выглядит как пробел в urxvt, что ncurses на самом деле выводит -- я не знаю).&lt;br&gt;Собственно как это побеждать -- не знаю, думаю обойти на кривой и написать что-нибудь вида:&#091;code&#093;void myaddch (char c)&lt;br&gt;&#123;&lt;br&gt;    static char buf&#091;5&#093; = &quot;&quot;;&lt;br&gt;    static int len = 0;&lt;br&gt;    &lt;br&gt;    buf&#091;len++&#093; = c;&lt;br&gt;    buf&#091;len&#093; = &apos;&#092;0&apos;;&lt;br&gt;    if (len &amp;gt;= 4) &#123;&lt;br&gt;        len = 0;&lt;br&gt;    &#125; else if (is_valid_utf8_char (buf)) &#123;&lt;br&gt;        addstr (buf);&lt;br&gt;        len = 0;&lt;br&gt;    &#125;&lt;br&gt;&#125;&#091;/code&#093;&lt;br&gt;</description>
</item>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (Cirill)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#19</link>
    <pubDate>Tue, 01 Jul 2008 19:53:20 GMT</pubDate>
    <description>Я пытался решить похожую проблему.&lt;br&gt;Решение нашёл здесь:&lt;br&gt;http://namakajiri.net/complog/trouble-using-utf-8-with-ncurses/&lt;br&gt;&lt;br&gt;кратко:&lt;br&gt;Добавить #include &amp;lt;locale.h&amp;gt; в заголовок и setlocale(LC_CTYPE, &quot;&quot;); до initscr(); после чего наступит счастье.&lt;br&gt;</description>
</item>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (perece)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#18</link>
    <pubDate>Mon, 04 Jun 2007 08:06:55 GMT</pubDate>
    <description>&amp;gt;&amp;gt;поддержка UTF-8 там должна отдельно включаться, видимо &lt;br&gt;&amp;gt;КАКИМ ОБРАЗОМ?? &lt;br&gt;яхз. еслиб знал - не писал бы в неопределенной форме&lt;br&gt;&lt;br&gt;&#092;^P^/&lt;br&gt;</description>
</item>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (dimonna)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#17</link>
    <pubDate>Sun, 03 Jun 2007 07:42:43 GMT</pubDate>
    <description>&amp;gt;&amp;gt;ncurses собрал последжнюю версию с поддержкой wide chars (как я понимаю это &lt;br&gt;&amp;gt;&amp;gt;и есть поддержка utf-8),&lt;br&gt;&amp;gt;неправильно понимаете. wide char - это UCS2. а UTF8 использует обычные char, &lt;br&gt;&amp;gt;только в некоторых случаях по несколько на символ &lt;br&gt;&amp;gt;поддержка UTF-8 там должна отдельно включаться, видимо &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&#092;^P^/ &lt;br&gt;&lt;br&gt;&lt;br&gt;КАКИМ ОБРАЗОМ??</description>
</item>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (perece)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#16</link>
    <pubDate>Wed, 30 May 2007 12:00:55 GMT</pubDate>
    <description>&amp;gt;ncurses собрал последжнюю версию с поддержкой wide chars (как я понимаю это &lt;br&gt;&amp;gt;и есть поддержка utf-8),&lt;br&gt;неправильно понимаете. wide char - это UCS2. а UTF8 использует обычные char, только в некоторых случаях по несколько на символ&lt;br&gt;поддержка UTF-8 там должна отдельно включаться, видимо&lt;br&gt;&lt;br&gt;&#092;^P^/&lt;br&gt;</description>
</item>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (NuINu)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#15</link>
    <pubDate>Fri, 25 May 2007 07:29:28 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;ncurses собрал последжнюю версию с поддержкой wide chars (как я понимаю это &lt;br&gt;&amp;gt;&amp;gt;&amp;gt;и есть поддержка utf-8), и mc собрал с поддержкой ncurses. Следовательно &lt;br&gt;&amp;gt;&amp;gt;&amp;gt;проблема не в mc, а в ncurses. &lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;Что курочать надо чтобы побороть проблему? &lt;br&gt;&amp;gt;&amp;gt;Так и не понял чего тебя в данном случае мучает? тебе хочеться &lt;br&gt;&amp;gt;&amp;gt;ncurses проверить или &lt;br&gt;&amp;gt;&amp;gt;mc разобрать? &lt;br&gt;&amp;gt;&amp;gt;может быть лучше мс с mcslang собрать? &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;я хочу чтобы ncurses корректно работал с utf-8. Что для этого надо &lt;br&gt;&amp;gt;сделать? &lt;br&gt;можешь по инету полазить, а так придется самому разбираться. извини, у меня кои8.&lt;br&gt;тут я тебе помочь не могу. ты со своей последней библиотекой, тесты то прогнал?&lt;br&gt;ну вот тот что я с &quot;привет&quot; приводил. не работает?&lt;br&gt;значит смотреть исходники надо.&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (dimonna)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#14</link>
    <pubDate>Fri, 25 May 2007 06:42:56 GMT</pubDate>
    <description>&amp;gt;&lt;br&gt;&amp;gt;&amp;gt;ncurses собрал последжнюю версию с поддержкой wide chars (как я понимаю это &lt;br&gt;&amp;gt;&amp;gt;и есть поддержка utf-8), и mc собрал с поддержкой ncurses. Следовательно &lt;br&gt;&amp;gt;&amp;gt;проблема не в mc, а в ncurses. &lt;br&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt;Что курочать надо чтобы побороть проблему? &lt;br&gt;&amp;gt;Так и не понял чего тебя в данном случае мучает? тебе хочеться &lt;br&gt;&amp;gt;ncurses проверить или &lt;br&gt;&amp;gt;mc разобрать? &lt;br&gt;&amp;gt;может быть лучше мс с mcslang собрать? &lt;br&gt;&lt;br&gt;&lt;br&gt;я хочу чтобы ncurses корректно работал с utf-8. Что для этого надо сделать?</description>
</item>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (NuINu)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#13</link>
    <pubDate>Fri, 25 May 2007 06:26:38 GMT</pubDate>
    <description>&lt;br&gt;&amp;gt;ncurses собрал последжнюю версию с поддержкой wide chars (как я понимаю это &lt;br&gt;&amp;gt;и есть поддержка utf-8), и mc собрал с поддержкой ncurses. Следовательно &lt;br&gt;&amp;gt;проблема не в mc, а в ncurses. &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Что курочать надо чтобы побороть проблему? &lt;br&gt;Так и не понял чего тебя в данном случае мучает? тебе хочеться ncurses проверить или&lt;br&gt;mc разобрать?&lt;br&gt;может быть лучше мс с mcslang собрать?&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>ncurses: вывеси символ в utf-8 локали (dimonna)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6483.html#12</link>
    <pubDate>Fri, 25 May 2007 05:23:36 GMT</pubDate>
    <description>Аналогичная проблема:&lt;br&gt;В mc русские таким же образом (не все буквы) побиты, хотя к примеру в vi, да и в самой консоли русские обрабатываются корректно. Мучаюсь так уже полтора года как сменил koi8 на utf-8.&lt;br&gt;&lt;br&gt;printf(&quot;Русский текст&#092;n&quot;); //////// Работает корректно&lt;br&gt;&lt;br&gt;С ncurses:&lt;br&gt;printw(&quot;Русский текст&quot;); ///// Часть букв - часть квадратиков&lt;br&gt;&lt;br&gt;ncurses собрал последжнюю версию с поддержкой wide chars (как я понимаю это и есть поддержка utf-8), и mc собрал с поддержкой ncurses. Следовательно проблема не в mc, а в ncurses.&lt;br&gt;&lt;br&gt;Что курочать надо чтобы побороть проблему?</description>
</item>

</channel>
</rss>
