Home
mc-dev
mc-dev@conference.jabber.ru
04.01.2011< ^ >

Тема: http://www.midnight-commander.org | Latest release (stable and current): 4.7.5
[01:52:24] il.smind вышел из конференции: Компьютер вошёл в спящий режим
[08:02:48] andrew_b зашёл в конференцию
[08:13:59] slavazanko/h вышел из конференции
[08:40:10] il.smind зашёл в конференцию
[08:40:59] <il.smind> andrew_b: привет
[08:41:13] <andrew_b> Привет!
[08:41:30] <il.smind> andrew_b: посмотришь бранч?
[08:41:49] <il.smind> dev_improved_f11
[08:41:59] <il.smind> nfvcvsck nfrjq
[08:42:03] <il.smind> тамсмысл такой
[08:42:28] <il.smind> сейчас сбрасывается выделение
[08:42:36] <il.smind> а в бранче нет
[08:42:55] <andrew_b> А оно надо?
[08:42:56] <il.smind> т.е. удобнее манипулировать
[08:43:01] <il.smind> очень надо
[08:43:56] <il.smind> смысл в том что можно последовательно применить разные внешние фильтры
[08:43:57] <andrew_b> А если от твоего выделенного блока ничего не останется? ЧТо там будет выделено?
[08:44:09] <il.smind> там проверка
[08:45:11] <andrew_b> Ты бранчи ненужные поудалял?
[08:45:23] <il.smind> допустим можно сначала в блоке заменить все табуляции на пробелы
[08:45:48] <il.smind> а потом всё в верхний регистр а потом отсортировать
[08:46:21] <andrew_b> Что за проверка?
[08:52:56] <il.smind> на длину
[08:53:10] <il.smind> выделения
[09:05:51] <il.smind> andrew_b: вот я ещё чего придумал
[09:06:23] <il.smind> можно меню делать из создаваемого файла на лету
[09:08:14] <il.smind> тогда можно например в это меню вставлять список слов для вариантов замены
[09:08:27] <il.smind> при проверке орфографии
[09:08:51] <il.smind> я понятно объяснил?
[09:09:22] <andrew_b> См. автодополнение.
[09:09:39] <il.smind> ну там есть варианты
[09:10:14] <il.smind> т.е. нажимаем f11, Предложить варианты
[09:10:36] <il.smind> скрипту передается выделенное слово
[09:10:59] <il.smind> скрипт просит ispell дать варианты
[09:11:14] <il.smind> если вариантов более чем ноль
[09:11:57] <il.smind> то создаёт файл меню с вариантами замены
[09:12:43] <il.smind> вот в чём идея
[09:13:48] <il.smind> как тебе?
[09:14:55] <andrew_b> Мне всё равно.
[09:15:42] <andrew_b> Только мне не нравится идея пихать в редактор то, что должно бы быть в плугинах.
[09:15:54] <slavazanko/w> +1
[09:19:17] <il.smind> andrew_b: ну f11 это то что могло бы быть в плагинах
[09:19:35] <andrew_b> il.smind: ты вот подумай на досуге над API для плугинов редактора. Мне кажется, у редактора сделать плугины проще всего.
[09:21:18] <il.smind> т.е. f11 уже работает
[09:22:10] <slavazanko/w> Я уже говорил. что API для плагинов будет формироваться автоматически при введении системы событий (events).
Оно и сейчас есть, но в виде явного вызова каллбэков. Всё, что нужно сейчас плагинам. это три подсистемы:
1) библиотека виджетов - чтобы плагин мог нарисовать что-нить
2) библиотека кейбиндингов - чтобы плагин мог на клавиши повеситься
3) библиотека событий - чтобы плагин мог "дёрнуть" внутренний функционал mc

и всё
[09:22:34] <il.smind> мне оно нравится тем что не надо сейчас вложить миллион часов на переделку
[09:22:58] <slavazanko/w> зато придётся вложить два миллиона часов на переделку того, чо быдет сделано сейчас
[09:24:08] <il.smind> ничего не надо делать
[09:24:14] <il.smind> сейчас
[09:24:21] <il.smind> уже сделано
[09:25:32] <il.smind> оно уже 10 лет назад сделано
[09:25:38] <slavazanko/w> блин. Они что, издеваются? опять запрос на русскоязычный перевод...
[09:31:56] <il.smind> моя идея только в том чтобы передавать имя файла меню
[09:33:43] <andrew_b> Какого файла?
[09:33:59] <il.smind> сейчас оно берётся из фиксированного места
[09:34:12] <il.smind> ну просто любого
[09:34:44] <andrew_b> Не понятно.
[09:35:21] <il.smind> тогда система становится гибче
[09:35:42] <il.smind> объясни что не понятно?
[09:36:09] <andrew_b> Какого файла и зачем?
[09:36:13] <il.smind> я говорю что сейчас берется из фиксированного местя
[09:36:29] <il.smind> файл меню у нас хранится в файле.
[09:36:40] <il.smind> это имя файла фиксировано
[09:37:09] <il.smind> ~/.mc/cedit/menu
[09:37:10] <andrew_b> И что в этом плохого?
[09:38:36] <il.smind> это вообще афигенно
[09:38:48] <il.smind> только сейчас оно фиксировано
[09:39:02] <andrew_b> И хорошо.
[09:39:17] <il.smind> моя идея была в том что это имя можно передавать
[09:39:32] <andrew_b> А все остальные фиксированные имена тебя не смущают?
[09:39:39] <il.smind> процедуре которая загружает пункты меню
[09:39:54] <il.smind> сейчас пока не смущают
[09:41:13] <il.smind> я вообще о другом говорю
[09:41:45] <il.smind> я говорю что внешняя утилита могла бы сформировать пункт меню
[09:41:51] <il.smind> я говорю что внешняя утилита могла бы сформировать пунктЫ меню
[09:41:57] <il.smind> в каком то файле
[09:42:04] <il.smind> сама
[09:42:12] <il.smind> и отдать это имя
[09:42:25] <il.smind> и мц это имя использовал бы
[09:43:01] <il.smind> вот и вся иддея
[09:43:13] <il.smind> а вы говорите надо плагины
[09:43:34] <il.smind> но плагины это вообще дугой уровень трудозатрат
[09:45:28] <slavazanko/w> > я говорю что внешняя утилита могла бы сформировать пунктЫ меню
mc_event_raise("menu","add", struct{"menu.submenu.submenu2", pointer_to_callback });
[09:46:13] <il.smind> смотри ты вынес extfs в extfs.d и стало хорошо
[09:46:26] <il.smind> ты же не ждал появления плагинов
[09:47:09] <andrew_b> extfs это сами по себе плагины.
[09:47:16] <andrew_b> Там уже всё было.
[09:48:26] <il.smind> и здесь ВСЁ уже есть
[09:49:04] <il.smind> f11 сами по себе внешние модули реализует
[09:53:32] <andrew_b> 2421_editor_highlight_occurences нужен, не?
[09:54:31] <il.smind> andrew_b: да я хотел там посмотреть кой чего
[09:57:04] <Зося Синицкая> RSS: Новости для Midnight Commander
• Ticket #2455 (alt-backspace doesn't work) closed
http://www.midnight-commander.org/ticket/2455#comment:9
[10:02:01] <il.smind> ок, но по поводу dev_improved_f11
[10:02:37] <il.smind> посмотрите
[10:03:06] <il.smind> там просто не сбрасывается выделение после F11
[10:05:24] <andrew_b> slavazanko/w: по событиям. Вот что я думаю:
Cобытия должны быть как минимум двух видов: адресные и бродкастовые.
Событие должно содержать инофрмацию:
- источник;
- приёмник;
- тип события: нажатие клавиши клавиатуры, мыши, событие-команда, событие-сообщение;
- данные, которые несёт с собой событие.
[10:05:29] <il.smind> если все устраивает сделаю nbrtn b ,hfyx
[10:06:08] <il.smind> если все устраивает сделаю тикет и бранч..
[10:06:59] <andrew_b> il.smind: ты когда gitfs доделаешь? :)
[10:08:49] <il.smind> andrew_b: вы забраковали идею префикса
[10:09:35] <il.smind> а альтернативы не предложили
[10:09:42] <il.smind> вот он и завис
[10:10:07] <il.smind> мне вот правда пришла в голову мысль
[10:10:24] <il.smind> надо искать .git
[10:10:33] <il.smind> если он есть то
[10:18:14] <andrew_b> то?
[10:22:44] <andrew_b> il.smind: я там сделал маааааааааааааленький коммитик в DEV_improved_f11.
[10:23:24] <andrew_b> 2458_command_autocompletion есть джелающие посмотреть?
[10:26:24] <il.smind> andrew_b: то?
пока не придумал, вернусь додумаю...
[10:26:51] <il.smind> но зацепка .git есть надо тему покрутить
[10:27:15] <Зося Синицкая> RSS: Новости для Midnight Commander
• Ticket #2463 (don't reset selection after call user menu (F11)) created
http://www.midnight-commander.org/ticket/2463
[10:33:27] <il.smind> 2458_command_autocompletion
я смотрел
[10:33:41] <il.smind> еще поэксперементирую вечером
[11:57:50] theMIROn зашёл в конференцию
[11:58:21] <theMIROn> всем привет
[12:00:07] <theMIROn> у меня все та же проблема с CP866 локалью и не-ascii хоткеями
[12:00:23] <theMIROn> очень хочется чтобы работало out-of-box
[12:22:02] <il.smind> theMIROn: привет
[12:22:20] <theMIROn> привет, илья
[12:22:28] <theMIROn> вообщем чем могу помочь?
[12:23:04] <theMIROn> вот это решает проблему http://hash.su/6912
[12:24:06] <theMIROn> насколько я понял, параметр parm уже приведен к нижнему регистру, если это было возможно (>32 <128)
[12:31:26] <il.smind> theMIROn: а этот патч поведение в utf-8 не ломает?
[12:32:22] <theMIROn> на латинские хоткеи влияния не должен оказывать. а на русские в utf8 - оно вообще должно так работать?
[12:32:42] <theMIROn> проверить прямо сейчас на utf8 не могу
[12:32:56] <theMIROn> хотя... могу
[12:33:19] <il.smind> theMIROn: а чего путти то не поставишь? :)
[12:33:46] <theMIROn> я уже отвечал как то, неудобно оно мне отсутствием переключения терминалов по atl+fx
[12:34:28] <theMIROn> и визуально с кучей вывода на stdio работает пошустрее, чем через ssh
[12:46:08] <il.smind> какой то горбатый патч
[12:46:19] <il.smind> не хочет накладываться
[12:47:21] <theMIROn> только что на гит накладывал
[12:47:27] <theMIROn> щас в норм форме дам
[12:48:31] <theMIROn> http://themiron.ru/pub/wl500g/mc.patch
[12:49:06] <theMIROn> проверил на utf8 - хоткеи которые в латинице работают, регистронезависимо как обычно
[12:49:28] <theMIROn> хоткеи в переведенных диалогах - нет. а должны?
[12:53:18] <theMIROn> оригинальное поведение: "^Регулярное поведение" - реагирует на Alt+Й, Alt+К, Alt+З и так далее
[12:53:51] <theMIROn> а на ansi локалях еще и на спец клавиши
[12:57:54] styx.mp зашёл в конференцию
[12:58:07] <il.smind> . а должны?
да вот не уверен
[12:58:29] <theMIROn> я проверил - работают криво. патч это отключит
[13:00:16] <theMIROn> по идее, хоткей на контрол не должен быть уникодным, смысле вычисляться из кэпшна/текста
[13:28:39] styx.mp вышел из конференции: Replaced by new connection
[13:28:40] styx.mp зашёл в конференцию
[13:34:05] Yury V. Zaytsev зашёл в конференцию
[13:34:24] <Yury V. Zaytsev> а об чем там речь была
[13:35:16] <Yury V. Zaytsev> акселераторы с руской локалью в однобитных кодировках чтоли не работают?
[13:36:20] <il.smind> theMIROn> по идее, хоткей на контрол не должен быть уникодным
русских с контролом не бывает
[13:36:26] <il.smind> только с альтом
[13:36:57] <theMIROn> да. разве другие бывают? в диалогах
[13:37:12] <Yury V. Zaytsev> вы про хоткеи или про акселераторы?
[13:37:31] <il.smind> в принципе без разницы
[13:37:37] <Yury V. Zaytsev> ы?
[13:37:49] <il.smind> Yury V. Zaytsev: это всего навсего число
[13:38:22] <theMIROn> акселераторы в диалогах, если быть точнее
[13:38:42] <il.smind> вопрос кто это число обрабатывает
[13:39:05] <il.smind> в диалогах первым это число хватает обработчик диалога
[13:39:06] <theMIROn> соответствующий хоткей колбэк виджета
[13:39:07] <Yury V. Zaytsev> а, раз уж зашел, slavazanko/w как спец по автокрапу, скажи мне
[13:39:21] <Yury V. Zaytsev> для конфигура опции можно в каком-то файле хранить
[13:39:43] <Yury V. Zaytsev> или просто шелл скрипт надо писать, который будет вызывать ./configure --with-... --without-...
[13:56:48] <andrew_b> Yury V. Zaytsev: вряд ли. Проще скрипт написать.
[13:57:37] <Yury V. Zaytsev> andrew_b: я просто помню что он как-то делал
[13:57:38] <il.smind> theMIROn: ну твой патч ничего не сломол
[13:58:05] <theMIROn> угу
[14:05:15] theMIROn вышел из конференции
[14:05:24] theMIROn зашёл в конференцию
[14:07:37] <theMIROn> il.smind: so?
[14:11:28] <il.smind> ну в 866 лечит BS
[14:14:35] <theMIROn> :) и это знаю
[14:15:01] <theMIROn> что-нибудь еще поправить?
[14:28:47] <il.smind> theMIROn: ))
[14:29:05] <il.smind> я его выложу в тикете
[14:30:00] <andrew_b> il.smind: тока новый тикет не открывай.
[14:30:03] <theMIROn> т.е так и придется на гит накладывать в дальнейшем? там вроде проголосовать должны, да?
[14:30:08] <theMIROn> тикет висит
[14:30:23] <theMIROn> http://www.midnight-commander.org/ticket/1634
[14:32:40] <andrew_b> theMIROn: с меню как? Нормальео всё?
[14:34:00] <theMIROn> на меню не действует, только на button/radio/check виджеты
[14:34:21] <andrew_b> Ясно.
[14:34:42] <andrew_b> Я имел в иду, с меню таких проблем нет?
[14:35:22] <theMIROn> как раз проверяю
[14:36:37] <theMIROn> нет, не вопроизводится. в диалоге на Р (русскую) есть реакция на BS, в меню - нет
[14:39:47] <theMIROn> в мею все ок, потому что там if (isascii (key)) key = g_ascii_tolower (key);
[14:39:54] <theMIROn> *меню
[14:58:00] <slavazanko/w> я туд. убегал ненадолго
[15:05:03] <il.smind> theMIROn: Vladislav Grishenko <themiron@mail.ru> подписать патч?
[15:05:30] <theMIROn> ага, спасибо
[15:08:48] <slavazanko/w> > slavazanko/w: по событиям. Вот что я думаю:
> Cобытия должны быть как минимум двух видов: адресные и бродкастовые.

м-м-м. я думал немного не так. Событие - это как в старые ДОСовые времена типа прерывание. на событие может вешаться целая цепочка каллбэков.
Например. вешаем каллбэки на события:
event_add("cursor","move", callback1, someInitialData1);
event_add("cursor","move", callback2, someInitialData2);
В этом случае на событие cursor.move будет два обработчика. callback1() и callback2() Вызываться будут в порядке добавления (callback1 первым)
Если callback1 вернёт TRUE, то дальнейшая обработка событий прервётся (оставшиеся каллбаки не будут вызваны). Или вернёт false. Тогда все, кто хотел ещё обработать событие, его обработают. Это и есть броадкаст или адресное. Это даст на одно событие, например. 'filesystem.copy' тучу обработчиков. каждый будет перебирать по очереди. если файл "не его", то будет вызван следующий обработчик следующего плагина. И как только плагин распознаёт файл как "свой", то файл копируется и происходит выход из цепочки.

> Событие должно содержать инофрмацию:
> - источник;
Зачем?

> - приёмник;
Каллбэк, который обработает событие

> - тип события: нажатие клавиши клавиатуры, мыши, событие-команда, событие-сообщение;
угу. "Группа"."Событие"

> - данные, которые несёт с собой событие.
да, само собой. У события почти всегда будут некие данные, сопровождающие его. ну и пока не знаю. нужны ли событию данные в момент добавления события.
[15:10:23] <andrew_b> Один виджет должен послать сообщение другому виджету, или диалог должен послать сообщение всем своим виджетам.
[15:10:37] <slavazanko/w> > Yury V. Zaytsev: а, раз уж зашел, slavazanko/w как спец по автокрапу, скажи мне
configure.mc
в этом скрипте храни вызов конфигура с любыми опциями. Этот файл будет запущен в конце автогена (autogen.sh)
[15:14:57] <slavazanko/w> > Один виджет должен послать сообщение другому виджету, или диалог должен послать сообщение всем своим виджетам.
виджеты вешаются на евент. который задаёт диалог. Например, диалог рандомно задаёт имя:
dialog_struct->event_name=make_random_name
а потом все эвенты автоматом читают это имя и вешают свои обработчики при создании/инициализации:
event_add("internally_for_dialogs",dialog_struct->event_name, input_callback, some_initial_data);
ну и потом диалог броадкастово кричит всем:
event_raise("internally_for_dialogs",dialog_struct->event_name, some_event_data);

при этом вызывается каллбак:
gboolean
input_callback(some_init_data, event_data)
{
...
}
[15:15:27] <andrew_b> andrew_b: например, переключение чекбокса дизейблит поле ввода. Как ты предлагаешь это делать.
[15:17:13] <andrew_b> Промазал.
[15:17:21] <andrew_b> slavazanko/w: переключение чекбокса дизейблит поле ввода. Как ты предлагаешь это делать.
[15:17:23] <andrew_b> ?
[15:17:44] <il.smind> http://www.midnight-commander.org/ticket/1634#comment:11
[15:18:20] <slavazanko/w> все элементы. которые должны быть задисейблены, вешаются на обработку:
event_add("internally_for_dialogs", some_checkbox->onchange, callback, data)
сам чекбокс рандомно инициализирует своё поле:
some_checkbox->onchange = event_make_random_name();
и потом при изменении вызывает свой это эвент
[15:18:28] <theMIROn> il.smind: вижу, спасибо :)
[15:18:47] <slavazanko/w> event_raise("internally_for_dialogs",some_checkbox->onchange, some_event_data);
[15:19:01] <slavazanko/w> а повесился кто на него или нет - чекбокса уже не волнует
[15:22:50] <slavazanko/w> получается, единая система событий как для виджетов. так и для VFS и для mc в целом
если система виджетов позволит давать имена элементам и производить поиск по именам, то можно будет писать плагины. которые будут вешаться обработчиками на конкретные элементы интерфейса
[15:24:40] <il.smind> theMIROn: Вам спасибо :)
[15:26:53] <slavazanko/w> theMIROn: il.smind: то есть, удаление g_ascii_tolower() из сравнения решает проблему нац. акселлераторов?
[15:27:15] <andrew_b> Нет. В коях не решают.
[15:27:41] <theMIROn> разве?
[15:27:45] <andrew_b> Но f10 перестайт распознаваться как русская р.
[15:28:18] <theMIROn> убирается двойная конвертация. один раз для ascii, второй раз - безусловно
[15:28:40] <andrew_b> Да. В коях русские хоткеи всё равно не работают.
[15:28:50] <Зося Синицкая> RSS: Новости для Midnight Commander
• Ticket #1634 (DEL & END keys dialog binding) updated
http://www.midnight-commander.org/ticket/1634#comment:11
• Ticket #1634 (DEL & END keys dialog binding) updated
http://www.midnight-commander.org/ticket/1634#comment:12
• Ticket #2266 (filtered view default text) updated
http://www.midnight-commander.org/ticket/2266#comment:3
[15:29:07] <theMIROn> русские хоткеи и в utf8 не работают...
[15:29:23] <theMIROn> в диалогах - точно.
[15:29:31] <andrew_b> Это другая проблема.
[15:30:07] <andrew_b> В коях русские символы хотя бы однобайтные, в utf-8 двухбайтные.
[15:30:26] <slavazanko/w> многобайтные
[15:30:37] <slavazanko/w> русские да. двухбайтные
[15:30:45] <slavazanko/w> тут надо систему вода ператрахивать
[15:30:46] <theMIROn> угу. а если транслитирировать акселератор - получится как раз однобайтный, и сравнивать с однобацтным alt+key
[15:30:51] <slavazanko/w> вода == ввода
[15:33:16] <il.smind> theMIROn: не получится
[15:34:06] <il.smind> slavazanko/w: в принципе не надо
[15:34:15] <slavazanko/w> ?
[15:34:17] <slavazanko/w> есть идеи?
[15:34:24] <il.smind> там смысл такой
[15:35:40] <il.smind> передаётся сейчас так KEY_M_ALT | (unsigned int)(x)
[15:36:14] <il.smind> если однобайтная локаль то всё работает
[15:36:44] <il.smind> если многобайтная то (x) это первый байт из последовательности
[15:36:50] <slavazanko/w> там смысл такой, что в этом инте. помимо кода. передаются ещё и модификаторы в старших битах
[15:36:59] <il.smind> ну это я уже рассказывал
[15:37:00] <slavazanko/w> для начала там надо сделать хотя бы long
[15:37:13] <il.smind> так вот
[15:37:34] <slavazanko/w> а ещё лучше - структуру из двух интов - один модификаторы. а второй - utf-32 (он же ucs)
[15:37:42] <slavazanko/w> и фсё в шоколаде
[15:38:13] <il.smind> раньше я думал что надо сначала получить итог от суммы всех байт
[15:38:13] <slavazanko/w> вот это я и называю перетрахнуть систему ввода
[15:38:27] <il.smind> но на деле это не требуется
[15:38:55] <theMIROn> от этого перестанут работать ascii акселераторы при национальном вводе
[15:38:56] <il.smind> достаточно сделать буфер как я делал в редакторе
[15:38:59] <slavazanko/w> почему? опять запихивать три байта utf-8 в инт. а четвёртый юзать как модификаторы?
[15:39:07] <il.smind> slavazanko/w: дослушай
[15:39:18] <slavazanko/w> слухаю
[15:39:22] <il.smind> так вот
[15:40:16] <il.smind> сейчас допустим есть мультибайтный символ (BYTE1 BYTE2)
[15:40:22] <slavazanko/w> > от этого перестанут работать ascii акселераторы при национальном вводе
да не должны перестать.
[15:41:17] <theMIROn> при вводе разве не M_ALT + Щ получится?
[15:41:24] <il.smind> если его нажать этот символ то мц передаст BYTE1 затем BYTE2
[15:41:49] <il.smind> если зажат алт то
[15:42:19] <il.smind> мц передаст (KEY_M_ALT | BYTE1) затем (BYTE2)
[15:42:28] <slavazanko/w> да.
[15:42:47] <il.smind> теперь тот кто ждет он делает так
[15:43:47] <il.smind> (первый полученный байт) & KEY_M_ALT
[15:44:03] <slavazanko/w> отделяем M_ALT (если есть). смотрим на incomplete utf-8 (если текущий ввод в utf-8) и продолжаем формировать корректный utf-8, потом конфертим его в ucs
если кодировка cp866 или koi8-r, то сразу конфертим в ucs
[15:44:04] <il.smind> засовывает в буфер
[15:44:29] <il.smind> дальше второй байт в буфер
[15:45:07] <theMIROn> а корейско-японские mbcs как? в win оно до 4х байт может занимать
[15:45:16] <il.smind> если из буфера получился полноценный символ значит нажимался Utf-8 СИМВОЛ
[15:45:25] <il.smind> капс щапал
[15:46:02] <slavazanko/w> в моём случае без разницы. Мы продолжаем считывать следующий символ, пока в буфере не окажется корректный utf-8 символ или пока не будет больше 6-ти байт - макс.длина utf-8
[15:46:39] <il.smind> slavazanko/w: именно про такой способ я и говорю
[15:46:48] <slavazanko/w> ну а про что мы тогда спорим? :)
[15:47:04] <il.smind> я пробовал его реализовать с полгода назад но времени не хватило
[15:47:18] <theMIROn> il.smind: с год :)
[15:47:27] <il.smind> slavazanko/w: мы с тобой обсуждали и еще один
[15:47:41] <il.smind> это когда всё надо переделывать
[15:48:00] <slavazanko/w> когда всё надо переделывать - это переход на GMainLoop
[15:48:04] <il.smind> ту самую процедуру которую все боятся
[15:48:06] <slavazanko/w> это ваще жопа
[15:48:23] <slavazanko/w> угу
[15:48:34] <il.smind> GMainLoop это из другой оперы
[15:48:46] <slavazanko/w> да всё та же.
[15:48:47] <il.smind> я то про создание структуры и тп
[15:49:06] <theMIROn> у меня вопрос. при включенном нац.вводе жмем Alt+Щ, соответственно считывается Щ, пусть приводится в lowercase. а акселератор на виджете не Щ, а латинская o.
[15:49:07] <il.smind> когда все виджеты подвенгнутся переделке
[15:49:15] slavazanko зашёл в конференцию
[15:49:17] <theMIROn> сейчас это работает.
[15:49:27] <il.smind> theMIROn: что такое Щ
[15:49:32] <theMIROn> буква
[15:49:39] <il.smind> сильно зависит от
[15:49:42] <theMIROn> "^Щтототакое"
[15:49:57] <theMIROn> текст виджета, из которого получается акселератор
[15:50:02] <il.smind> если 1-байтовая локаль то одно
[15:50:05] <andrew_b> theMIROn: не у всех qwerty.
[15:50:23] <il.smind> если много байтовая Щ то другое
[15:50:28] slavazanko вышел из конференции
[15:50:56] <theMIROn> нет, немного другое имею ввиду. на виджете текст "Opti^on", акселератор o
[15:51:32] <il.smind> theMIROn: не важно где происходит ввод
[15:51:36] <theMIROn> дефакто поведение приложений - при зажатой atl - посылается код, без нац. признаков, и работает вне зависсимоти от ракладки
[15:52:06] <theMIROn> и именно это работать и перестанет
[15:52:48] <il.smind> важно что все модификаторы применяются к первому байту последовательности
[15:53:10] <il.smind> theMIROn> дефакто поведение приложений - при зажатой atl - посылается код, без нац. признаков, и работает вне зависсимоти от ракладки
это не так
[15:53:19] <il.smind> смотри
[15:53:25] <theMIROn> в никсах - возможно, тут не специалист
[15:53:35] <theMIROn> у меня с интернационализацией только под win32 опыт
[15:54:35] <il.smind> ^[t - alt t

^[ф - alt ф
[15:54:49] <il.smind> это терминал мне посылает
[15:55:36] <il.smind> а вот при зажатой Ctrl действительно терминал присылает не замисимо от раскладки
[15:57:14] <theMIROn> ясна
[15:57:56] <theMIROn> а апи нет какогонибудь получать t от ф от активной keymap или что тут вместо
[16:00:34] <il.smind> нету
[16:02:04] <il.smind> в этом большая проблема
[16:03:28] <theMIROn> гм
[16:04:47] <il.smind> локалей и раскладок километр
[16:06:03] <slavazanko/w> только русских раскладок всякие двораки, qwerty, win, typo(типа как на печатной машинке - цифры при зажатом шифте)
[16:06:53] <slavazanko/w> и это не говоря уже про cp866, 1251, koi8-r, iso8955-5(mac), utf-8
[16:07:45] <slavazanko/w> всё учесть и на всё составить таблицы соответствия просто нереально :(
[16:07:52] <theMIROn> все это описывается и хранится. ядро же транслирует кейкоды
[16:07:56] <theMIROn> таблицы есть
[16:08:13] <slavazanko/w> к нам приходят не скан-коды. а esc-последовательности от терминала
[16:08:23] <slavazanko/w> в этом и загвоздка
[16:08:38] <slavazanko/w> были бы скан-коды - было бы на порядок проще. как в фаре
[16:09:03] <andrew_b> theMIROn: какие кейкоды через несколько проксей на той другой стороне шарика?
[16:09:34] <slavazanko/w> но на различных ядрах (linux, bsd, sun, aix, ...) различные методы работы со сканкодами. А ещё и графические оболочки...
Короче. и тут жопа
[16:09:45] <theMIROn> угу, уже понял
[16:09:48] <slavazanko/w> угу. ещё и rsh/ssh/telnet
[16:09:56] <il.smind> andrew_b: ну ты так говоришь как будто с этим знание человек рождается :)
[16:31:28] <il.smind> этава
[16:31:28] Зося Синицкая вышел из конференции: Этого участника выгнали из комнаты за то, что он послал сообщение об ошибке другому участнику: remote-server-not-found
[16:31:38] <slavazanko/w> ?
[16:32:00] <il.smind> a = b - c
f(c - b)
[16:32:10] <il.smind> как упростить?
[16:32:22] <il.smind> f(-a);
[16:32:27] <andrew_b> Да.
[16:32:32] <il.smind> это красиво?
[16:32:40] <andrew_b> Иногда.
[16:32:44] <slavazanko/w> оправданно ли?
[16:33:23] <slavazanko/w> если смысловая нагрузка не пострадает - ляпи -a
если лучше, чтобы было указание что из чего вычитается для результата - оставть c-b
[16:33:32] <il.smind> ну тогда не буду
[16:33:46] <il.smind> там оно 1 раз выполняется
[16:34:22] <il.smind> не даст эфекта
[16:34:27] Зося Синицкая зашёл в конференцию
[16:34:33] <slavazanko/w> главное не красивость. а смысл. Нам всем потом код сопровождать. Ляпи так. чтобы было понятно. а не красиво :) даже если для понятности будет больше кода. Машинное время фигня. Наше время ценнее
[16:34:42] Зося Синицкая вышел из конференции: Перезапуск по команде от GeAlex__
[16:34:48] Зося Синицкая зашёл в конференцию
[16:36:48] <slavazanko/w> и эта.. Илья, http://www.midnight-commander.org/ticket/1851
плиииииз
[16:38:11] Зося Синицкая вышел из конференции
[16:38:16] Зося Синицкая зашёл в конференцию
[16:38:21] <il.smind> slavazanko/w: хитренький
[16:38:21] Зося Синицкая вышел из конференции: Этого участника выгнали из комнаты за то, что он послал сообщение об ошибке другому участнику: remote-server-not-found
[16:38:29] Зося Синицкая зашёл в конференцию
[16:38:55] Зося Синицкая вышел из конференции
[16:38:59] Зося Синицкая зашёл в конференцию
[16:39:00] <il.smind> раскерачил весь мц а мне побырику 100500 строк кода отсмотреть? :)
[16:39:00] Зося Синицкая вышел из конференции: Этого участника выгнали из комнаты за то, что он послал сообщение об ошибке другому участнику: remote-server-not-found
[16:39:06] <slavazanko/w> не. я твоё отревьювал. как договаривались? отревьювал. теберь ты. как договаривались, ревьювай. А то отреверчу твои унды/реды нафиг
[16:39:12] Зося Синицкая зашёл в конференцию
[16:39:36] Зося Синицкая вышел из конференции
[16:39:37] <il.smind> slavazanko/w: :))
[16:40:09] <slavazanko/w> и там не весь mc раскерачен. Там чуток совсем. Раскерачим после новых виджетов/событий. от там без ста грамм будет не разобраться
[16:40:25] <il.smind> slavazanko/w: ну да... один раз не
[16:41:24] <il.smind> я ща доделаю кой чего, подпишу андреев, потом твоё
[16:41:44] <andrew_b> slavazanko/w: да, в очередь!
[16:41:48] <il.smind> slavazanko/w: слушай может gitfs добьём?
[16:43:07] <slavazanko/w> у меня воображение кончилось. как его можно по-человечески оприходовать. с префиксами /суфиксамитам ваще скучно. надо думать.
[16:44:07] Зося Синицкая зашёл в конференцию
[16:44:53] Зося Синицкая вышел из конференции: Перезапуск по команде от GeAlex
[16:44:58] Зося Синицкая зашёл в конференцию
[16:48:34] <theMIROn> gitfs+svnfs ;)
[16:48:43] <il.smind> theMIROn: да
[16:49:02] <theMIROn> от svnfs тормозить будет...
[16:49:06] <il.smind> только svnfs никому не нужен
[16:49:25] <slavazanko/w> угу. первая ласточка - gitfs
но есть трабла - там внутри надо вызвать changelogfs. Типа. показать версии файла. Вот с вызовом и проблема...
[16:49:43] <theMIROn> svn можно в локальный git испортнуть
[16:49:43] <Зося Синицкая> theMIROn: SVN from http://можно
ок
[16:49:44] <slavazanko/w> mercurialfs, bazaarfs, ...
[16:49:48] <slavazanko/w> что пошустрее :)
[16:49:58] <theMIROn> hg шустрее
[16:50:16] <slavazanko/w> да они все шустрее svn/cvs
[16:50:38] <theMIROn> только локальным репозиторием жеж
[16:50:47] <slavazanko/w> Bynthtcyj/ rfre. rjvfyle Pjcmrf dsgjkybkf&
[16:50:58] <slavazanko/w> Интересно, какую команду Зоська выполнила?..
[16:51:17] theMIROn вышел из конференции: Miranda IM. Menshe. Pushche. Proshhe!
[16:51:20] <il.smind> svn
[16:51:21] <Зося Синицкая> il.smind: Изучаем инструкции к командам...
[16:51:27] <slavazanko/w> > только локальным репозиторием жеж
само собой. Удалённо заколебёмся историю файла читать
[16:51:36] <il.smind> svn 123
[16:51:37] <Зося Синицкая> il.smind: SVN from http://123
ок
[16:51:39] theMIROn зашёл в конференцию
[16:51:57] <il.smind> git
[16:52:07] <il.smind> http
[16:52:12] <il.smind> ftp
[16:52:43] <theMIROn> git clone git://kernel.org//pub :)
[16:52:46] <slavazanko/w> наверное. колыбель Зоськи - svn, На это слово и реагирует...
[16:53:00] <il.smind> да
[16:53:08] <slavazanko/w> .help svn
[16:53:11] <mc_log> slavazanko/w: Категории: net

.svn [-v] url - посмотреть информацию о репозитарии
пример:
.svn svn://svn.berlios.de/freq-dev/trunk
.svn -v svn://svn.berlios.de/freq-dev/trunk
[16:53:36] <slavazanko/w> окак. даже наш молчаливы Джо знает про команду
[16:53:37] <andrew_b> .svn svn://svn.berlios.de/freq-dev/trunk
[16:53:38] <mc_log> andrew_b: r361 | kazakov | 2010-05-31 22:38:37 +0200 (Пнд, 31 Май 2010) | 2 lines
Fixed compile error, added functional for alists (read help for commands .aban , .aparticipant)
#officially conference of development freq-dev at conference.jabber.ru
[16:53:39] <theMIROn> товарищи, пните меня в нужном направлении, как начать пользоваться code jump
[16:54:24] <slavazanko/w> code jump?
сишная команда goto? или что?
[16:54:37] <theMIROn> помоему это было в mc реализовано
[16:54:40] <andrew_b> theMIROn: Сначала

make TAGS file via command:
$ find . -type f -name "*.[ch]" | etags -l c --declarations -

or, if etags utility not installed:
$ find . -type f -name "*.[ch]" | ctags --c-kinds=+p --fields=+iaS --extra=+q -e -L-
[16:54:43] <slavazanko/w> а
[16:54:45] <theMIROn> по вызывающим/вызываемым
[16:55:54] <slavazanko/w> http://www.midnight-commander.org/wiki/doc/editor/codejump
[16:55:59] <il.smind> alt enter
[16:56:06] <il.smind> на слове
[16:56:08] <slavazanko/w> http://www.midnight-commander.org/wiki/ru/doc/editor/codejump
[16:56:12] <theMIROn> спасибо
[17:05:33] andrew_b вышел из конференции: Replaced by new connection
[17:05:37] andrew_b зашёл в конференцию
[17:24:43] <il.smind> andrew_b просьбу можно?
[17:25:17] <andrew_b> Ну рискни здоровьем. :)
[17:25:45] <il.smind> редактор
[17:25:47] <il.smind> f11
[17:26:18] <il.smind> любой пункт
[17:26:23] <il.smind> моргает
[17:26:28] <il.smind> кто виноват?
[17:26:43] <il.smind> как можно это залечить?
[17:26:52] <il.smind> моргает гдето тут
[17:27:01] <il.smind> do_execute
[17:27:03] <andrew_b> Как моргает?
[17:27:37] <andrew_b> А, вижу.
[17:27:50] <andrew_b> Не знаю, надо искать.
[17:30:23] styx.mp вышел из конференции: Replaced by new connection
[17:30:24] styx.mp зашёл в конференцию
[17:41:58] <il.smind> andrew_b: я ниасилил
[18:46:07] andrew_b вышел из конференции
[18:57:03] slavazanko/h зашёл в конференцию
[19:27:26] theMIROn вышел из конференции: Miranda IM. Menshe. Pushche. Proshhe!
[19:29:49] ASM зашёл в конференцию
[20:12:59] theMIROn зашёл в конференцию
[20:26:48] <Зося Синицкая> RSS: Новости для Midnight Commander
• Ticket #2458 (command autocompletion is broken in 4.7.5) updated
http://www.midnight-commander.org/ticket/2458#comment:6
[20:33:52] il.smind вышел из конференции
[20:36:21] il.smind зашёл в конференцию
[20:55:05] <il.smind> /home/projects/mc(1851_xdg_config)$ src/mc

(mc:12527): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory.
This indicates a bug in someone's code. You must ensure an error is NULL before it's set.
The overwriting error message was: Произошла ошибка при чтении файла «/home/admin/.mc/fish»: Это каталог

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-CRITICAL **: g_file_set_contents: assertion `error == NULL || *error == NULL' failed

(mc:12527): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory.
This indicates a bug in someone's code. You must ensure an error is NULL before it's set.
The overwriting error message was: Your old settings were migrated from /home/admin/.mc
to Freedesktop recommended dirs.
To get more info, please visit
http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
[20:55:49] <slavazanko/h> это что?
[20:56:02] <slavazanko/h> а, вижу
[20:56:07] <slavazanko/h> жорстко
[20:56:08] <slavazanko/h> ща
[21:01:31] <slavazanko/h> запуль
[21:10:19] <il.smind> бракодел!
[21:10:32] <slavazanko/h> запулил, не?
[21:10:41] <il.smind> ну э...
[21:10:53] <slavazanko/h> лентяй
[21:10:55] <il.smind> собираю
[21:11:03] <slavazanko/h> а
[21:11:05] <slavazanko/h> сорри
[21:11:08] <il.smind> ))
[21:11:20] <slavazanko/h> погорячился, был не прав
[21:12:07] <il.smind> вы мне с андрюхой жизнь сломали когда отвергли мою геениииальную идею
[21:12:19] <il.smind> ненавижу вас за это
[21:12:39] <il.smind> я сначала полдня плакал
[21:12:55] <slavazanko/h> зато мы тебя любим. Расслабься и получай удовольствие :)
[21:13:08] styx.mp вышел из конференции: Replaced by new connection
[21:13:09] styx.mp зашёл в конференцию
[21:13:19] <il.smind> слушай что бы жене на днюху подарить
[21:13:38] <il.smind> после завтра а у меня нихрена ет идей
[21:13:51] <slavazanko/h> гм. интересный вопрос. с учётом того. что у моей жены 7-го днюха..
[21:14:01] <il.smind> и у моей
[21:14:04] <slavazanko/h> у твоей шестого?
[21:14:11] <il.smind> 7-го
[21:14:16] <slavazanko/h> херасе
[21:14:19] <slavazanko/h> кучно, однако
[21:14:22] <Yury V. Zaytsev> а вы не пробовали с ними на эту тему поговорить
[21:14:29] <slavazanko/h> у меня ещё у тёщи 7-го. но она далеко.
[21:14:59] <slavazanko/h> Говорил. Жена грит, что ничего не нужно. лучше деньги домой приноси. а я сама с ними распоряжусь :)
[21:15:13] <il.smind> Yury V. Zaytsev: моя сказала чтоп я ей всякую юхню типа ноутов и сотовых телефонов перестал дарить
[21:15:39] <slavazanko/h> а она тебе труселя и бюстгалтеры не дарит в ответ?
[21:15:52] <il.smind> slavazanko/h: ну она ноут просила
[21:15:56] <slavazanko/h> а...
[21:16:03] <il.smind> а я ей неправильный купил
[21:16:14] <il.smind> он ей в сумочку не влезает
[21:16:28] <slavazanko/h> опять погорячился. Думал. что ты так себе покупаешь... типа. дорогая. смотри какой тебе подарок! Что. не нужен? ну тогда я себе...
[21:16:40] <il.smind> надо было 12" брать а не 13
[21:16:45] <Yury V. Zaytsev> хехе
[21:16:51] <Yury V. Zaytsev> это так у меня отец КПК покупал
[21:16:57] <Yury V. Zaytsev> в подарок =)
[21:17:13] <il.smind> slavazanko/h: не... мне хватает железок
[21:17:14] <slavazanko/h> :)
[21:17:18] <Yury V. Zaytsev> да, всегда актуальный вопрос :( а вместе то нельзя сходить купить чтоли?
[21:17:23] <il.smind> времени на них не хватает
[21:17:30] <Yury V. Zaytsev> чтобы правильный
[21:19:36] <slavazanko/h> у меня сейчас особо и не разгонишься с подарком... я вам тут особо не болтал, но у меня недавно был семейный траур - 9 дней со дня смерти тестя. Отец жены в деревне 25-го заживо сгорел. Тёща к нам в гости на выходные, а тесть набухался и классически с сигаретой в кровати заснул.
Поэтому вопрос о подарках как-то очень деликатно умалчивается.
[21:20:43] <Yury V. Zaytsev> еклмн
[21:20:45] <il.smind> спросил
[21:20:56] <slavazanko/h> да и деньги лучше тёще переслать на воостановление (пол дома сгорело), чем подарки покупать...
[21:20:56] <il.smind> сказала шубу надо ей
[21:21:11] <slavazanko/h> шуба - это хорошо. Смотря какая. правда
[21:23:45] <il.smind> ну норковую...
[21:24:03] <il.smind> смотря какая уже есть
[21:29:55] <il.smind> Yury V. Zaytsev: вместе сложно, у нас в городе все процентов на 40 дороже
[21:30:21] <Yury V. Zaytsev> ааа тебя как эмиссара посылают
[21:31:01] <il.smind> Yury V. Zaytsev: не, ну допустим был в мск и купил
[21:37:56] theMIROn вышел из конференции: Miranda IM. Menshe. Pushche. Proshhe!
[21:40:35] <il.smind> >Setup saved to /home/admin/.config/mc/config.ini
hate!
[21:41:37] <slavazanko/h> love...
[21:42:22] <il.smind> )) ща коммитик маленький сделаю
[21:42:35] <slavazanko/h> неломай, изверг! там всё как надо
[21:42:48] <il.smind> 1 маленький
[21:43:02] <slavazanko/h> вот ведь настырный.. лана, уболтал. ляпи
[21:43:10] <il.smind> diff --git a/lib/fileloc.h b/lib/fileloc.h
index b6a6ab8..701b443 100644
--- a/lib/fileloc.h
+++ b/lib/fileloc.h
@@ -50,7 +50,7 @@
#define MC_EXTFS_DIR "extfs.d"

#define MC_BASHRC_FILE "bashrc"
-#define MC_CONFIG_FILE "config.ini"
+#define MC_CONFIG_FILE "ini"
#define MC_FILEBIND_FILE "bindings"
#define MC_FILEPOS_FILE "filepos"
#define MC_HISTORY_FILE "history"
[21:43:17] <slavazanko/h> ах ты...
[21:43:30] <il.smind> мы это обсуждали
[21:43:36] <slavazanko/h> ну тады лови фашыст гранату: доки тоже обновляй
[21:43:37] <il.smind> ты согласился
[21:43:43] <slavazanko/h> ах ты...
[21:43:58] <il.smind> а...
[21:44:01] <il.smind> доки...
[21:44:06] <il.smind> ладно
[21:44:37] <slavazanko/h> чё, расхотелось? :)
[21:59:40] <il.smind> не
[21:59:45] <il.smind> доделал
[22:00:00] <il.smind> дорогу осилит идущий
[22:13:32] <il.smind> запушил
[22:14:46] slavazanko/h вышел из конференции
[22:15:53] <il.smind> slavazanko/h: тут?
[22:15:59] <il.smind> не... не тут...
[22:16:18] slavazanko/h зашёл в конференцию
[22:37:09] <il.smind> slavazanko/h: ты есть?
[22:37:37] <il.smind> cedit мы вроде хотели заменить
[22:40:46] <il.smind> сегодня подписывать не буду
[23:20:41] Yury V. Zaytsev вышел из конференции
[23:56:32] Зося Синицкая вышел из конференции
[23:56:36] Зося Синицкая зашёл в конференцию
Powered by freQ Powered by Python Valid XHTML 1.0 Transitional Valid CSS!