centerim (По-русски не получает сообщения :()

Софт под Linux, разные программы, но только связанные с Linux

Модератор: /dev/random

Аватара пользователя
kinglibrary
Сообщения: 40

centerim

Сообщение kinglibrary »

А как сделать так, чтобы сообщения нормально писались? А то скачут куда-то, нормально не редактируется текст.
Спасибо сказали:
Аватара пользователя
Minton
Сообщения: 1588
Статус: openSUSE Localization Team
ОС: openSUSE Tumbleweed x86-64

Re: centerim

Сообщение Minton »

Для пущей пользы дела советую дать некие пояснения, а то данный поток сознания в логичную картину ну никак не хочет складываться... Откуда вы взяли эти строчки с кодировками, зачем менять локаль и т.д.
Русский раздел на forums.opensuse.org :)

"Настоящие мужчины используют поиск" ©Goodvin
Спасибо сказали:
Аватара пользователя
kinglibrary
Сообщения: 40

Re: centerim

Сообщение kinglibrary »

Minton писал(а):
21.12.2007 01:33
Для пущей пользы дела советую дать некие пояснения, а то данный поток сознания в логичную картину ну никак не хочет складываться... Откуда вы взяли эти строчки с кодировками, зачем менять локаль и т.д.

Насчет локаль ничего не нужно, я уже разобрался. Проблема вот в чём - когда начинаю письмо писать собеседнику, то курсор с болшим кол-вом побелов от конца слова отодвигается. Ну при попытке отредактировать сообщение - произвольно меняются буквы не те, которые хотел отредактировать, а которые в другом месте стояли.
Т.е вот сообщение:
Привет_______|а вот примерно до этого места пробел растягивается! :(
Но если писать по-английски, то все нормально!
Да и сообщения сложно редактировать - это я выше писал. Нужно заново начинать.
Спасибо сказали:
Аватара пользователя
Minton
Сообщения: 1588
Статус: openSUSE Localization Team
ОС: openSUSE Tumbleweed x86-64

Re: centerim

Сообщение Minton »

Тут возможно несколько вариантов:
1) некорректное отображение русских букв - сомневаюсь, что смена шрифта поможет, но чем ... не шутит :)
2) включены и/или глючат какие-нибудь опции форматирования текста (если есть), типа выравнивания по двум сторонам и/или отступы табуляцией, мало ли чего...
Русский раздел на forums.opensuse.org :)

"Настоящие мужчины используют поиск" ©Goodvin
Спасибо сказали:
Аватара пользователя
kinglibrary
Сообщения: 40

Re: centerim

Сообщение kinglibrary »

Minton писал(а):
21.12.2007 13:22
Тут возможно несколько вариантов:
1) некорректное отображение русских букв - сомневаюсь, что смена шрифта поможет, но чем ... не шутит :)
2) включены и/или глючат какие-нибудь опции форматирования текста (если есть), типа выравнивания по двум сторонам и/или отступы табуляцией, мало ли чего...

Пробовал - не выходит :huh:
В интернет тоже искал, но пока ничего не нашел...
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: centerim

Сообщение diesel »

это скорее всего из серии кривости с utf8, либо пускать это в однобайтовой кодировке, либо искать другой im-клиент(finch, mcabber, например)
Спасибо сказали:
Аватара пользователя
kinglibrary
Сообщения: 40

Re: centerim

Сообщение kinglibrary »

diesel писал(а):
22.12.2007 00:57
это скорее всего из серии кривости с utf8, либо пускать это в однобайтовой кодировке, либо искать другой im-клиент(finch, mcabber, например)

finch - то, что надо! Так что спасибо.
Спасибо сказали:
Аватара пользователя
Voice
Сообщения: 1073
Статус: столлманист
ОС: Debian GNU/Linux

Re: centerim

Сообщение Voice »

Решил поинтересоваться поборол ли кто данный глюк, а то у меня оно тоже наблюдается.
"И может собственных Платонов и быстрых разумом Невтонов российская земля рождать."
М. В. Ломоносов
Спасибо сказали:
time2die
Сообщения: 29
ОС: Microsoft Vista Home basic

Re: centerim

Сообщение time2die »

дистр Debian lenny,кодировка системная utf-8,чет что не пробовал все криво идет.какую нужно ставить кодирову внутрь\наружу чтобы нормально обьщаться?я знаю в pidgin стоит cp1251,но тут чето не катит
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: centerim

Сообщение diesel »

centericq плохо дружит с utf-8, попробуй что-нить другое.
Спасибо сказали:
time2die
Сообщения: 29
ОС: Microsoft Vista Home basic

Re: centerim

Сообщение time2die »

дык поэтому я поставил специально centericq-utf8,а можно поподробнее про другое и желательно консольное и удобное
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: centerim

Сообщение diesel »

time2die писал(а):
08.03.2008 10:49
дык поэтому я поставил специально centericq-utf8,а можно поподробнее про другое и желательно консольное и удобное

mcabber(jabber), finch(консольная версия pidgin),micq(не знаю как у нее с юникодом) ... тут как-то тема уже была про это - там больше советов было, поищи. centericq-utf8 вроде как тоже не избавлен от коверкания русских символов.
Спасибо сказали:
Аватара пользователя
DaemonTux
Сообщения: 1480
Статус: Юный падаван
ОС: Gentoo

Re: centerim

Сообщение DaemonTux »

ставете micq.
или http://www.centerim.org/ -это форк center icq
Vladivostok Linux User Group
Спасибо сказали:
aniily
Сообщения: 64

Re: centerim

Сообщение aniily »

time2die писал(а):
08.03.2008 00:04
дистр Debian lenny,кодировка системная utf-8,чет что не пробовал все криво идет.какую нужно ставить кодирову внутрь\наружу чтобы нормально обьщаться?

У меня аналогичная проблема. Это из-за того, что centrim написан для однобайтовых кодировок, а в UTF-8 русские буква занимают по два байта. Поэтому все несколько криво...
Набросал тут небольшой патч, применив который можно устранить некоторые проблемы при написании русских сообщений. Для меня показалось этого достаточно для вполне комфортной работы. Если что, то пишите в личку, можно еще что-нибудь подправить...


Делается это примерно так:

1. Находим нужный файл
centrim 4.22.3$cd kkconsui/src

2. Прикладываем патч
...$patch -i texteditor.patch texteditor.cc

3. Пересобираем centerim
make и sudo make install

Не забываем, что ./configure надо было делать с -with-libncursesw, чтобы включить поддержку UTF-8


=========== texteditor.patch ===================

Код: Выделить всё

991,992c991,998
<               kgotoxy(x1, k-curfile->sy+y1);
<               showline(k, curfile->sx, x2-x1);
---
>             for(int x=x1;x<x2;x++)
>                     {
>                         kgotoxy(x, k-curfile->sy+y1);
>                         sethlcolor(0);
>                         printw(" ");
>                     }
>             kgotoxy(x1, k-curfile->sy+y1);
>             showline(k, curfile->sx, x2-x1);
1024,1025c1030,1038
<       if(curfile->x >= x2-x1) curfile->x = x2-x1-1;
<       kgotoxy(x1+curfile->x, y1+curfile->y);
---
> //    if(curfile->x >= x2-x1) curfile->x = x2-x1-1;
> //    kgotoxy(x1+curfile->x, y1+curfile->y);
>
>     int     x_cnt=0;
>     char*   str=(char*)curfile->lines->at(curfile->y);
>     for(int x=0;str[x];x++)
>         if ((str[x]&0xF0)!=0xD0) x_cnt++;
>       if(x_cnt >= x2-x1) x_cnt = x2-x1-1;
>     kgotoxy(x1+x_cnt, y1+curfile->y);
1093a1107,1111
>     int x=curfile->x;
>     char* str=(char*)curfile->lines->at(curfile->y);
>     unsigned char second_backspace_flag=0;
>     if ((str[x-1]&0xF0)==0xD0) second_backspace_flag=1;
>
1116a1135,1136
>
>     if (second_backspace_flag) edbackspace();
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: centerim

Сообщение diesel »

Объединил топики про centerim, переношу mix в программы, возможно стоит сюда еще чего-нить доклеить, например:
консольный IM дабы не плодить сущностей.
Спасибо сказали:
petergross
Сообщения: 5
ОС: ubuntu

Re: centerim

Сообщение petergross »

Пользую centerim давно нравится он мне больше всего!!!!! итак как я победил проблему с кодировкой и пробелами после русского языка:
1. Запускаем Терминал :)
2.LANG=ru_RU.CP1251
3.В настройках терминала выставляем соответствующую кодировку (для тех кто в танке :) CP1251)
4. Далее запускаемся т.е centerim
5. В CenterIM Configuration ОТКЛЮЧАЕМ ВСЕ ПРЕОБРАЗОВАНИЯ КОДИРОВОК!!!! это необходимо тк у нас ВЕЗДЕ CP1251
И все :) наслаждаемся

Эт конечно все здорово но есть проблемы которые я так и не смог победить во-первых: Принципиально не могу получать сообщения по-русски из ICQ6.0 приходит чото типа 1!= :85 823 a...... короче даже мыслей нет как с этим бороться такая же проблемы с некоторыми мобильными клиентами но чаще всего там есть настройки поковырять и общение станет проще :)
и вот еще что: в самой софтине те в Terminal 2.18.2 при получении сообщения появляються артефакты в виде непонятных зеленых символов.... но в принципе я копризничаю с этим жить можно

на centerim ранее он был centericq уже года три :)
Спасибо сказали:
mvs
Сообщения: 1
ОС: debian, kubuntu

Re: centerim

Сообщение mvs »

Подниму древнюю тему :)
Спасибо aniily, этот патч с небольшими изменениями получилось наложить на 4.22.9. Текст патча ниже, если кому надо будет.

Код: Выделить всё

--- /root/centerim-4.22.9/kkconsui/src/texteditor.cc    2009-11-20 00:22:47.000000000 +0300
+++ ./texteditor.cc    2010-02-15 20:57:20.000000000 +0300
@@ -995,8 +995,14 @@
     if(show) {
     if(curfile->lines) {
         for(k = curfile->sy+fromline; k < curfile->lines->count && k < y2-y1+curfile->sy; k++) {
-        kgotoxy(x1, k-curfile->sy+y1);
-        showline(k, curfile->sx, x2-x1);
+             for(int x=x1;x<x2;x++)
+                     {
+                         kgotoxy(x, k-curfile->sy+y1);
+                         sethlcolor(0);
+                         printw(" ");
+                     }
+             kgotoxy(x1, k-curfile->sy+y1);
+             showline(k, curfile->sx, x2-x1);
         }

         if(k < y2-y1+curfile->sy) {
@@ -1028,8 +1034,15 @@
 void texteditor::updatecursor() {
     if(active && curfile) {
     if(curfile->y >= y2-y1) curfile->y = y2-y1-1;
-    if(curfile->x >= x2-x1) curfile->x = x2-x1-1;
-    kgotoxy(x1+curfile->x, y1+curfile->y);
+ //    if(curfile->x >= x2-x1) curfile->x = x2-x1-1;
+ //    kgotoxy(x1+curfile->x, y1+curfile->y);
+
+     int     x_cnt=0;
+     char*   str=(char*)curfile->lines->at(curfile->y);
+    for(int x=0;str[x];x++)
+         if ((str[x]&0xF0)!=0xD0) x_cnt++;
+       if(x_cnt >= x2-x1) x_cnt = x2-x1-1;
+     kgotoxy(x1+x_cnt, y1+curfile->y);
     }
 }

@@ -1098,6 +1111,10 @@
 }

 void texteditor::edbackspace() {
+     int x=curfile->x;
+     char* str=(char*)curfile->lines->at(curfile->y);
+     unsigned char second_backspace_flag=0;
+     if ((str[x-1]&0xF0)==0xD0) second_backspace_flag=1;
     int i, bc;

     if(CURCOL) {
@@ -1121,6 +1138,7 @@
     edmove(KEY_END);
     eddel();
     }
+     if (second_backspace_flag) edbackspace();
 }

 void texteditor::eddelword() {



Так-то можно сказать, что centerim вполне себе работает с utf-8. Но две проблемы ещё осталось. Первая - в окне быстрого поиска (alt-s) по-русски оно вообще не воспринимает текст. Раньше когда локаль была кои8-р, всё было нормально. И ещё когда смотришь хистори или открываешь меню по f3/f4, текст обрезан в некоторых строчках, видимо как раз из-за двухбайтовости. С этими проблемами никто не поборолся?
Спасибо сказали: