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

Тема: http://www.midnight-commander.org | Latest stable release: 4.7.5.1
[03:37:51] iNode вышел из конференции
[05:24:00] iNode зашёл в конференцию
[06:16:01] andrew_b зашёл в конференцию
[07:02:40] il.smind зашёл в конференцию
[07:27:29] <il.smind > slavazanko/h> запушил
пересобрал, не ругается...
[08:41:31] <andrew_b> slavazanko/w: --enable-mclib=no, но либа всё равно собирается.
[08:48:39] <slavazanko/w> я туд. Ща гляну всё...
[09:02:32] <il.smind > andrew_b: бракодел?
[09:02:51] <il.smind > --disable-mclib ?
[09:03:43] <slavazanko/w> да оно и так должно отработать
[09:05:06] <andrew_b> Не понял.
[09:06:05] <slavazanko/w> Илья подумал, что конструкция "--enable-mclib=no" неправильная.
[09:06:18] <andrew_b> Он не прав.
[09:06:42] <slavazanko/w> да. я уже сказал ему, что он земляной червь
[09:06:53] <andrew_b> il.smind : -1
[09:06:57] <Зося Синицкая> andrew_b: Вы изменили карму il.smind до -2. Следующий раз можно изменить через: 00:30:00
[09:06:59] <slavazanko/w> il.smind : -1
[09:07:00] <Зося Синицкая> slavazanko/w: Вы изменили карму il.smind до -3. Следующий раз можно изменить через: 00:30:00
[09:07:06] <slavazanko/w> ниже плинтуса
[09:29:36] <il.smind > э вы чо мне карму сливаете беспредельщики
[09:30:42] <il.smind > slavazanko/w: так что на счет того что оно собирается без ругани?
[09:30:44] <andrew_b> il.smind : не хабре, чай.
[09:30:50] <andrew_b> Тут карма не помогает.
[09:31:10] <andrew_b> не _на_ хабре
[09:31:35] <il.smind > я вот думаю
[09:31:49] <il.smind > может попробовать tree поправить
[09:32:00] <slavazanko/w> il.smind : у меня ругается. Я сейчас закрываю косяк со сборкой шаренных либ даже когда не просят, потом буду выяснять, почему у тебя не ругается.. может. tcc?
[09:32:12] <il.smind > slavazanko/w: не
[09:32:30] <andrew_b> il.smind : посмотри тикеты про fish.
[09:32:36] <il.smind > мне кажется ты проверяешь на несуществующей функции
[09:32:42] <andrew_b> Может, есть неактуальные уже.
[09:32:53] <slavazanko/w> на существующей. на той, которую ты публиковал
[09:32:58] <il.smind > а я вызываю существующую
[09:33:03] <il.smind > ок
[09:33:14] <il.smind > andrew_b> il.smind : посмотри тикеты про fish.
позырю
[09:33:55] <andrew_b> Слава, я немного event.txt подредактировал.
[09:33:59] <andrew_b> Пушить?
[09:34:49] <andrew_b> Запушено.
[09:35:05] <andrew_b> Ещё строки покороче сделал.
[09:35:14] <andrew_b> В пределах 80 символов.
[09:35:35] <slavazanko/w> (10:34:00) andrew_b: Пушить?
(10:34:49) andrew_b: Запушено.
а чего спрашивал? :)
Гуд, спасибо
[09:36:09] <andrew_b> Ну я подождал минуту, ответа нет.
[09:36:20] <andrew_b> И запушил.
[09:36:23] <slavazanko/w> а. сорри. немного с головой в бранч ушёл
[09:36:36] <slavazanko/w> git pull --rebase рулит :) Никаких мерж-коммитов
[10:00:44] il.smind вышел из конференции
[10:49:43] BanderOS зашёл в конференцию
[10:51:41] <slavazanko/w> il.smind:
Making check in tests
make[2]: Вход в каталог `/home/slavaz/work/mc-devel/git/build_root/lib/tests'
make library_independ
make[3]: Вход в каталог `/home/slavaz/work/mc-devel/git/build_root/lib/tests'
CC library_independ.o
CCLD library_independ
../../lib/.libs/libmc.so: undefined reference to `edit_menu_cmd'
collect2: ld returned 1 exit status
make[3]: *** [library_independ] Ошибка 1
make[3]: Выход из каталога `/home/slavaz/work/mc-devel/git/build_root/lib/tests'
make[2]: *** [check-am] Ошибка 2
make[2]: Выход из каталога `/home/slavaz/work/mc-devel/git/build_root/lib/tests'
make[1]: *** [check-recursive] Ошибка 1
make[1]: Выход из каталога `/home/slavaz/work/mc-devel/git/build_root/lib'
make: *** [check-recursive] Ошибка 1
~/work/mc-devel/git
[10:52:46] <slavazanko/w> Андрей, запуль. Уже должно собираться с- и без либы
[10:58:08] il.smind зашёл в конференцию
[10:58:30] <il.smind > slavazanko/w: пулить7
[10:58:57] <slavazanko/w> ну пуль. По твоей проблеме я ничего не делал, только по проблеме Андрея. Я не знаю, прочему у тебя не работает
[10:59:04] <slavazanko/w> ты make check делаешь?
[10:59:12] <il.smind > b nfr b nfr
[10:59:15] <il.smind > и так и так
[10:59:26] <il.smind > diff --git a/lib/keybind.c b/lib/keybind.c
index a4f4093..0cf58ac 100644
--- a/lib/keybind.c
+++ b/lib/keybind.c
@@ -28,6 +28,7 @@
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
+#include <src/editor/edit-impl.h>

#include "lib/global.h"
#include "lib/tty/key.h" /* KEY_M_ */
@@ -656,6 +657,7 @@ keybind_lookup_keymap_command (const global_keymap_t * keymap, long key)
if (keymap[i].key == key)
return keymap[i].command;

+ edit_menu_cmd (NULL);
return CK_Ignore_Key;
}
[10:59:34] <slavazanko/w> да
[10:59:41] <il.smind > +#include <src/editor/edit-impl.h>
?
[10:59:46] <slavazanko/w> у меня всё гуд. Пролистни немного вверх историю этого чата
[10:59:51] <slavazanko/w> да
[11:03:53] <andrew_b> slavazanko/w: да tcc половину арнументов игнорирует.
[11:04:53] <il.smind > сделал clean
[11:05:01] <il.smind > все сзупагут
[11:05:50] <slavazanko/w> уфф...
[11:07:18] <andrew_b> -Build the shared library is disabled
+Build of shared library is disabled
[11:07:47] <andrew_b> -[ Compile shared library libmc.so (no)]
+[Compile shared library libmc.so [no]]
[11:08:35] <slavazanko/w> понято
[11:09:35] <slavazanko/w> запушил
[11:09:58] <andrew_b> Кстати, мне показалось, или вчера libmc-1.so.0.0.1 была в каком-то коммите libmc.so.0.0.0 ?
[11:10:40] <slavazanko/w> эм... хз. Вроде всё время оно libmc-1.so.0.0.1
[11:10:55] <andrew_b> Вроде бы не показалось, я ещё спек-файл правил, чтобы рпм собрать.
[11:11:33] <andrew_b> Да, вот:
%_libdir/libmc.so.0.0.0
%_libdir/libmc.so.0
[11:11:51] <andrew_b> Ну не суть.
[11:12:50] <slavazanko/w> ого. ты уже и бинарники с либой собираешь... :)
и как rpm называется? mc-lib?
[11:13:06] <andrew_b> Не.
[11:13:15] <andrew_b> Я просто попробовал собрать rpm.
[11:13:52] <andrew_b> Пока предлагаю на libmc внимание не заострять и не офишировать. :)
[11:14:00] <andrew_b> афишировать
[11:14:21] <andrew_b> Народу не нужны нездоровые сенсации.
[11:14:53] <slavazanko/w> да. можно даже про это не писать в новостях. Пусть будет "пасхальным яйцом" :)
[11:28:45] <il.smind > фиксед: Народу НУЖНЫ нездоровые сенсации.
[11:29:13] <andrew_b> Народу не нужны нездоровые сенсации. Народу нужны здоровые сенсации.
[11:29:29] BanderOS вышел из конференции
[11:30:09] <il.smind > а чего теперь можно свой mc мутить?
[11:30:28] <il.smind > с блэкджеком
[11:30:53] <il.smind > что там такое есть интересное в libmc
[11:30:55] <il.smind > ?
[11:31:34] <andrew_b> il.smind : 2511_simplify_keybindings ?
[11:31:38] <andrew_b> Доколе?
[11:32:08] <andrew_b> Есть замечания, предложения?
[11:33:26] BanderOS зашёл в конференцию
[11:39:07] <il.smind > andrew_b: ну...
[11:39:18] <il.smind > я по второму разу буду зыредь
[11:39:23] <il.smind > работать работает
[11:39:51] <il.smind > andrew_b: ты мог бы засквошить еще немного?
[11:41:25] <andrew_b> Сейчас нет. В тоннель не пролезет.
[11:43:39] <andrew_b> Что ещё будем переименовывать?
[11:43:51] <andrew_b> Toggle разные?
[12:34:37] BanderOS вышел из конференции
[12:34:59] BanderOS зашёл в конференцию
[13:02:17] <il.smind > andrew_b: не готов пока
[13:02:38] <il.smind > тут депутатов показывали так я час там в зале просидел
[13:30:47] <andrew_b> Студни продолжают изучать mc. :) Домашнее задание -- сделать поиск только каталогов.
http://repo.or.cz/w/midnight-commander/osp.git/forks?o=age
[13:37:28] <andrew_b> slavazanko/w: два предложения по событиям.
[13:37:57] <andrew_b> Первое.
mc_event_raise (MCEVENT_GROUP_CORE, "interactive_display", &event_data);
Предлагаю заменить interactive_display на help.
[13:38:15] <slavazanko/w> а второе?
[13:38:22] <andrew_b> 2. Добавить в события указатель на источник.
[13:38:37] <slavazanko/w> тут поподробнее
[13:39:40] <andrew_b> mc_event_raise (const gchar * event_group_name, const gchar * event_name, gpointer event_data, gpointer sender).
[13:39:59] <andrew_b> И, соответственно, в callback добавить тоже.
[13:40:16] <andrew_b> Чтобы знать, от кого пришло.
[13:41:52] <slavazanko/w> а напомни, зачем это?
[13:42:30] <andrew_b> Одно и то же событие от разных источником может обрабатываться по-разному. Например:
1577 case DLG_ACTION:
1578 /* shortcut */
1579 if (sender == NULL)
1580 midnight_execute_cmd (NULL, parm);
1581 /* message from menu */
1582 else if (sender == (Widget *) the_menubar)
1583 midnight_execute_cmd (sender, parm);
1584 /* message from buttonbar */
1585 else if (sender == (Widget *) the_bar)
1586 {
1587 if (data == NULL)
1588 midnight_execute_cmd (sender, parm);
1589 else
1590 send_message ((Widget *) data, WIDGET_COMMAND, parm);
1591 }
1592 return MSG_HANDLED;
[13:43:09] <andrew_b> Или
1303 case CK_QuickViewCmd:
1304 if (sender == (Widget *) the_menubar)
1305 quick_view_cmd (); /* menu */
1306 else
1307 quick_cmd_no_menu (); /* shortcut or buttonabr */
1308 break;
[13:43:39] <andrew_b> Возможно, всё это можно сделать и по-другому.
[13:43:52] <slavazanko/w> гм.
Стоит ли выделять отдельный параметр или можно сентера передавать в структуре?
[13:44:02] <slavazanko/w> сентера == сендера
[13:44:40] BanderOS вышел из конференции
[13:44:58] <andrew_b> Ну...
[13:47:06] <slavazanko/w> я к тому, что не всегда и не везде нужен сендер.
[13:52:18] <andrew_b> Ну да, не везде.
[13:52:39] <il.smind > slavazanko/w: где не нужен будет там NULL
[13:52:53] <il.smind > а вообще нужен
[13:53:12] <slavazanko/w> предлагаю его в структуре таскать, а не отдельно.
[13:54:14] <andrew_b> Ладно, пусть, там посмотрим.
[13:54:23] <andrew_b> Сделаем, если надо.
[13:54:45] <andrew_b> il.smind : давай про мультиедит договрим.
[13:55:13] <andrew_b> Про окна в нём.
[13:55:38] <il.smind > andrew_b> il.smind : давай про мультиедит договрим
давай
[13:55:42] <il.smind > только я эта...
[13:55:56] <il.smind > сильно шибко занят
[13:56:05] <andrew_b> А, не вопрос.
[13:56:09] <andrew_b> Не срочно.
[13:56:12] <il.smind > я смогу только читать и писать, но думать нет
[13:56:17] <andrew_b> Впереди вечность.
[13:56:21] <il.smind > ок
[13:56:29] <il.smind > доделаю отчет и того
[13:56:39] <andrew_b> slavazanko/w: давай я тебе тогда расскажу.
[13:56:42] <slavazanko/w> думать начнёшь?
[13:56:46] <slavazanko/w> давай
[13:58:07] <andrew_b> Проблема в том, что сейчас мышиные события сделан так, что таскать мышью виджеты нельзя. Окно редактора -- это виджет WEdit.
[13:58:37] <andrew_b> Если в редакторе будет несколько окон, то их хотелось бы как-то тасовать.
[13:58:46] <andrew_b> Размер менять, положение.
[13:58:48] <slavazanko/w> ну как бы да
[13:59:35] <andrew_b> Можно, конечно, это делать с клавиатуры.
[13:59:48] <slavazanko/w> не. мышом логичнее
[13:59:56] <andrew_b> Да.
[13:59:59] <andrew_b> Так вот.
[14:01:03] <andrew_b> В виджет приходит событие от мыши, если оно совершилось в границах виджета, и координаты мыши относительные.
[14:01:41] <andrew_b> Например, если клацнуть на верхней рамке окна, то событие в окне будет иметь координату y=1.
[14:02:21] <slavazanko/w> гм... абсолютные координаты сложно передать дополнительно?
[14:02:24] <andrew_b> А чтобы окно ехало вслед за мышью, координата должна быть абмолютной и меняться.
[14:02:32] <slavazanko/w> да, я понял
[14:03:19] <andrew_b> В принципе, можно передавать абсолютные координаты.
[14:03:54] <slavazanko/w> в дополнение
[14:04:11] <andrew_b> Зачем в дополнение?
[14:04:21] <il.smind > дополнительных не надо
[14:04:32] <il.smind > у нас и так есть положение окна
[14:04:34] <slavazanko/w> ок, уболтали
[14:05:04] <andrew_b> Абсолютные координаты есть, верхний левый угол виджета есть. Получаем относительные координаты.
[14:05:17] <il.smind > x1 - x, y1 - y бедут относительные при необходимости
[14:05:23] <andrew_b> Да.
[14:06:36] <il.smind > вопрос то ваш в чём?
[14:06:56] <il.smind > передавать ли абсолютные?
[14:07:12] <andrew_b> Да я хотел предложить другую концепцию многооконности.
[14:07:14] <il.smind > думаю ответ логичен в такой ситуации...
[14:07:21] <il.smind > andrew_b: а...
[14:07:24] <il.smind > давай
[14:07:43] <andrew_b> Окна всегда во весь экран.
[14:07:50] <il.smind > а...
[14:07:52] <il.smind > ну да
[14:07:55] <il.smind > я против
[14:07:58] <andrew_b> То есть внешне всё будет выглядеть как сейчас.
[14:08:05] <il.smind > да
[14:08:08] <il.smind > я против
[14:08:11] <andrew_b> Только добавится список окон.
[14:08:12] <slavazanko/w> почему?
[14:08:18] <il.smind > из них тогде ничего не слепить
[14:08:25] <il.smind > т.е. вообще ничего
[14:08:42] <il.smind > это убивает идею оконности
[14:08:51] <andrew_b> il.smind : ты намекаешь на отдадчик?
[14:08:53] <il.smind > на корню
[14:08:59] <il.smind > не только
[14:10:49] <andrew_b> Понимаете, сейчас вопрос о том, передавать ли мышиное событие в виджет, решается в одном месте, в dlg_mouse_event().
[14:11:12] <il.smind > вот по этому я и предлагаю - не таскать окна
[14:11:27] <il.smind > но дать возможность их позиционировать
[14:11:32] <il.smind > вот и всё
[14:11:35] <andrew_b> Как?
[14:11:51] <il.smind > сделать API для позиционирования
[14:11:54] <andrew_b> Плиткой укладывать?
[14:12:04] <il.smind > andrew_b: например
[14:12:17] <andrew_b> Тут свои проблемы.
[14:12:22] <il.smind > ту вот ты в vim не таскаешь же окон
[14:12:39] <il.smind > и пипл хавает
[14:12:42] <andrew_b> При изменении размера одного окна меняется размер другого.
[14:12:56] <il.smind > andrew_b: это я понимаю
[14:13:00] * slavazanko/w тоскует по временам BorlandC 3.5 - какой там вкусный редактор был...
[14:13:02] <andrew_b> Как узнать, какого?
[14:13:18] <il.smind > *slavazanko/w тоскует по временам BorlandC 3.5 - какой там вкусный редактор был...
у нас уже такой был
[14:13:35] <il.smind > andrew_b> Как узнать, какого?
это вообще элементарно
[14:13:41] <il.smind > наложением
[14:13:46] <slavazanko/w> чтобы можно было окна таскать мышкой? разворачивать их? сворачивать в одну строчку?
[14:13:58] <il.smind > 2 числа сложить
[14:14:02] <slavazanko/w> фокспро для доса тоже ничего был
[14:14:10] <andrew_b> slavazanko/w: есть идея сделать новые виджеты на основе TurboVision. Но тогда mc постепенно превратится в dn. :)
[14:14:13] <il.smind > slavazanko/w> фокспро для доса тоже ничего был
идеал
[14:14:42] <slavazanko/w> > есть идея сделать новые виджеты на основе TurboVision. Но тогда mc постепенно превратится в dn.
лично я не комплексую по этому поводу. Абы было удобно :)
[14:15:23] <il.smind > slavazanko/w> > есть идея сделать новые виджеты на основе TurboVision. Но тогда mc постепенно превратится в dn.
да оно не нужно, у нас и так почти оно
[14:15:44] <andrew_b> il.smind : нет. У нас нет нормальной объектной иерархии.
[14:15:53] <il.smind > ну и что
[14:16:02] <andrew_b> С виджетом нельзя обращаться как с диалогом и наоборот.
[14:16:19] <il.smind > это всё сильно усложняет проект
[14:16:43] <andrew_b> Нет единооборазия обработки событий. У виджетов свой механизм, у диалогов свой.
[14:16:50] <andrew_b> il.smind : пиши отчёт.
[14:17:12] <il.smind > ладно )
[14:17:29] <il.smind > промывай тогда пока Славе мозги :)
[14:17:40] <il.smind > я по позже подойду
[14:17:41] <andrew_b> Да собсно я кончил.
[14:17:59] <il.smind > просто я боюсь что те наработки канут в лету
[14:18:03] <andrew_b> Окна во весь экран ты не хочешь, а это проще всего.
[14:18:11] <andrew_b> Какие те?
[14:18:19] <andrew_b> А...
[14:18:20] <il.smind > которые про окна
[14:18:25] <andrew_b> Не канут.
[14:18:41] <il.smind > я хочу чтобы оно бвло доведено до логического финала
[14:18:52] <il.smind > а потом можно дальше их продвигать
[14:19:21] <andrew_b> [16:16]<il.smind > andrew_b> Как узнать, какого?
это вообще элементарно
[16:16]<il.smind > наложением
[14:19:26] <andrew_b> Не понял.
[14:19:58] <il.smind > ну 2 прямоугольника сравнить
[14:20:08] <il.smind > это же очень просто
[14:20:36] <il.smind > наложить один на другой
[14:21:29] <il.smind > можно еще добавить 1 свойство
[14:21:44] <il.smind > прилипание
[14:22:16] <il.smind > ну видели наверное как в IDE докабле окна липнут и делят пространство
[14:22:45] <andrew_b> Да.
[14:22:58] <andrew_b> Тут не то.
[14:23:07] <il.smind > ну и тогда будет просто клавой управлять
[14:23:54] <il.smind > ну вот как пример
[14:24:19] <il.smind > окно вида
| | |
--------
| |
[14:24:27] <andrew_b> Есть несколько прямоугольников, улоденных плиткой. Например, тянем один из них за левую границу. Сначала надо найти тот прямоугольник, который слева. У него надо будет синхронно менять правую границу.
[14:24:59] <il.smind > andrew_b: это просто
[14:25:45] <andrew_b> Кстати, есть ещё один момент. Файл может быть открыт в нескольких окнах. Как тут быть? vim, например, синхронизирует действия в окнах.
[14:26:00] <il.smind > у нас нет
[14:26:16] <andrew_b> Меняем файл в левом окне, те же действия видны в правом.
[14:26:16] <il.smind > другая модель
[14:26:30] <il.smind > но в принципе можно, но нужно ли?
[14:26:37] <andrew_b> Хорошо бы.
[14:26:46] <il.smind > а в чем прелесть?
[14:27:11] <il.smind > в других редакторах такого я не видел
[14:27:28] <andrew_b> Так это другие редакторы.
[14:29:57] <andrew_b> Ладно, сначала 2511_simplify_keybindings, потом я займусь 2261_multiedit.
[14:30:08] <andrew_b> Вот такое моё слово.
[14:42:47] <il.smind > ок
[14:52:33] <il.smind > я готов
[15:06:37] <andrew_b> il.smind : прекрасно.
[15:06:41] <andrew_b> 2511_simplify_keybindings
[15:06:48] <il.smind > )
[15:28:57] andrew_b вышел из конференции: конец рабочего дня
[16:11:49] il.smind вышел из конференции
[17:40:19] slavazanko/h вышел из конференции
[17:41:36] slavazanko/h зашёл в конференцию
[19:12:33] styx.mp зашёл в конференцию
[19:51:50] styx.mp вышел из конференции
[20:26:13] BanderOS зашёл в конференцию
[20:29:45] BanderOS вышел из конференции
[20:33:24] BanderOS зашёл в конференцию
[23:21:54] BanderOS вышел из конференции
Powered by freQ Powered by Python Valid XHTML 1.0 Transitional Valid CSS!