[00:40:25] slavazanko/h вышел из конференции [02:59:19] axaru вышел из конференции [03:00:00] axaru зашёл в конференцию [04:33:30] axaru вышел из конференции [05:29:19] iNode вышел из конференции [05:52:48] repolainen зашёл в конференцию [06:04:45] il.smind-- зашёл в конференцию [06:07:51] andrew_b зашёл в конференцию [06:11:33] il.smind-- вышел из конференции [06:18:14] <andrew_b> Мужик возвращается пьяный домой поздно ночью, его на пороге встречает жена и кричит: - Ты где шлялся, сволочь?! - Милая, ты не поверишь - вулкан взорвался, всё как будто в тумане - еле дорогу домой нашёл. - Какой такой вулкан?! - Эйяфьядоку... Эйяфьякудо... БЛЯТЬ!!!! Да бухал я, бухал!!! [06:18:57] repolainen вышел из конференции [06:19:56] il.smind зашёл в конференцию [06:20:21] <il.smind> привет [06:21:52] il.smind вышел из конференции [06:42:10] iNode зашёл в конференцию [06:55:55] <il.smind++> andrew_b: привет! [06:56:05] <andrew_b> ! [06:56:18] <il.smind++> посмотри плиз 212 [06:56:27] <il.smind++> там проблема есть [06:56:40] <il.smind++> сегфолтится, не пойму что не так [06:56:50] <andrew_b> Ну вот. [06:56:54] <il.smind++> но если был запущен мц [06:56:59] <andrew_b> С чего бы? [06:57:05] <il.smind++> то если второй раз зупускаешь [06:57:40] <il.smind++> то если в окне [Ja] [Non] нажать стрелку вбок [06:58:01] <il.smind++> то тут же выпадает [07:02:19] <andrew_b> Диалог появляется до того, как проинициализирован массив забинденных клавиш.
#0 0x08067b87 in lookup_keymap_command (keymap=0x0, key=405) at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/keybind.c:1014 #1 0x080521a1 in dlg_handle_key (h=0x81c3e30, d_key=405) at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/dialog.c:670 #2 0x08052455 in dlg_key_event (h=0x81c3e30, d_key=405) at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/dialog.c:769 #3 0x080527d1 in dlg_process_event (h=0x81c3e30, key=405, event=0xbfdc2d50) at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/dialog.c:870 #4 0x080528c0 in frontend_run_dlg (h=0x81c3e30) at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/dialog.c:904 #5 0x0805292f in run_dlg (h=0x81c3e30) at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/dialog.c:920 #6 0x0806334d in query_dialog (header=0x81cf5bc "Предупреждение", text=0x81cf54c "Другой Midnight Commander уже работает\nна этом терминале. Встроенная командная\nоболочка будет выключена.", flags=1, count=2) at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/wtools.c:224 #7 0x08091911 in check_sid () at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/subshell.c:345 #8 0x08091948 in init_subshell () at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/subshell.c:374 #9 0x0808fd0e in main (argc=1, argv=0xbfdc3074) at /home/borodin/work/work.c/mc/mc-212_dialog_hardcoded_hotkeys/src/main.c:2191 [07:02:57] <andrew_b> Идёт обращение по нулл-указателю. [07:03:43] <andrew_b> 1860 main_map = default_main_map; 1861 if (main_keymap && main_keymap->len > 0) 1862 main_map = (global_keymap_t *) main_keymap->data; 1863 1864 main_x_map = default_main_x_map; 1865 if (main_x_keymap && main_x_keymap->len > 0) 1866 main_x_map = (global_keymap_t *) main_x_keymap->data; 1867 1868 panel_map = default_panel_keymap; 1869 if (panel_keymap && panel_keymap->len > 0) 1870 panel_map = (global_keymap_t *) panel_keymap->data; 1871 1872 input_map = default_input_keymap; 1873 if (input_keymap && input_keymap->len > 0) 1874 input_map = (global_keymap_t *) input_keymap->data; 1875 1876 tree_map = default_tree_keymap; 1877 if (tree_keymap && tree_keymap->len > 0) 1878 tree_map = (global_keymap_t *) tree_keymap->data; 1879 1880 help_map = default_help_keymap; 1881 if (help_keymap && help_keymap->len > 0) 1882 help_map = (global_keymap_t *) help_keymap->data; 1883 1884 dialog_map = default_dialog_keymap; 1885 if (dialog_keymap && dialog_keymap->len > 0) 1886 dialog_map = (global_keymap_t *) dialog_keymap->data; [07:04:09] <andrew_b> Это надо делать раньше. Настолько, насколько возможно. [07:04:20] <il.smind++> а почему в мастере не падает? [07:04:38] <andrew_b> Потому что там нет 1884 dialog_map = default_dialog_keymap; 1885 if (dialog_keymap && dialog_keymap->len > 0) 1886 dialog_map = (global_keymap_t *) dialog_keymap->data; [07:04:48] <il.smind++> а ну потому что.. [07:04:58] <il.smind++> да... [07:07:24] <andrew_b> Все эти _map = (global_keymap_t *)... надо делать до init_subshell. [07:07:57] <andrew_b> Потому что диалог рисуется там. [07:08:33] <il.smind++> спасибо, ща [07:23:04] <il.smind++> перенес [07:23:31] <il.smind++> не помогло нихрена :\ [07:26:41] <andrew_b> Должно быть после load_keymap_defs, но до inti_subshell. [07:27:14] <il.smind++> я переношу вместе /* Removing this from the X code let's us type C-c */ load_key_defs ();
load_keymap_defs (); [07:28:25] <il.smind++> все сдаюсь [07:28:47] <andrew_b> Запушь. [07:29:01] <il.smind++> запулить мож? [07:29:17] <il.smind++> сейчас на сервере последнее [07:29:30] <andrew_b> Ну ты что-то делал? [07:29:46] <andrew_b> Ладно, не надо. [07:29:52] <il.smind++> все что я делал это переносил в разные места вот эти 2 строки load_key_defs ();
и компанию переносил? [07:30:29] <il.smind++> в одном случае оно падало по Glib Критикал [07:30:45] <il.smind++> andrew_b: нет [07:30:50] <il.smind++> не переносил [07:30:55] <andrew_b> Вот потому и падает. [07:31:32] <andrew_b> [09:14]<andrew_b> Все эти _map = (global_keymap_t *)... надо делать до init_subshell. [08:20:56] slavazanko зашёл в конференцию [08:20:57] slavazanko/w зашёл в конференцию [08:21:22] slavazanko/w вышел из конференции [08:21:29] <slavazanko> всем привет [08:21:45] <il.smind++> slavazanko: привет! [09:11:46] <andrew_b> il.smind++: ну что там у тебя? [09:12:28] <il.smind++> andrew_b: я на тебя лишь уповаю, спосилец ты наш! [09:13:29] <il.smind++> andrew_b: в принципе если переставишь заполнение 1860 main_map = default_main_map; 1861 if (main_keymap && main_keymap->len > 0) 1862 main_map = (global_keymap_t *) main_keymap->data; куда надо то бранч считаю готовым [09:14:39] <andrew_b> А сам? [09:15:02] <andrew_b> Можно это перенести в load_keymap_defs? [09:15:07] <il.smind++> andrew_b: образованием не вышел... [09:16:01] <il.smind++> andrew_b: 1 сек гляну что в нем [09:21:11] <il.smind++> похоже что можно... [09:27:02] <andrew_b> В 120 не работает кнопка c. [09:27:18] <andrew_b> Показ ^M не переключается. [09:28:16] <andrew_b> А в 212 есть ещё один баг. В mc.keymap.default
366 DialogHelp = f1; f2 [09:29:41] <il.smind++> andrew_b: да ^M я выкинуть забыл [09:30:00] <il.smind++> А в 212 есть ещё один баг. В mc.keymap.default
366 DialogHelp = f1; f2
это я экскрементировал [09:30:13] <il.smind++> и забыл результаты подчистить [09:31:36] <il.smind++> ^M считаю ненужной фигней [09:32:01] <il.smind++> не вижу сигуаций где бы оно нужно было бы [09:36:15] <il.smind++> andrew_b: сегфолт поправил [09:37:24] ASM вышел из конференции [09:38:13] <il.smind++> andrew_b: запушил [09:38:18] <andrew_b> Запушивай. [09:42:49] <il.smind++> andrew_b: еще раз? [09:43:02] <andrew_b> Нет. [09:43:14] <il.smind++> а ок [09:47:29] <andrew_b> А давай ещё все кеймаповые переменные перенесём из main.* в keybind.* [09:48:42] <il.smind++> andrew_b: а эт нормально? [09:49:21] <il.smind++> ок попробую по пути с хидерами поборюсь если надо [09:51:49] <andrew_b> Что нормально? [09:53:04] <il.smind++> что они абы где [09:53:32] <il.smind++> я не уверен что везде keybind.h прописан [09:54:24] <andrew_b> Почему абы где? [09:55:10] <andrew_b> keybind.c вроде подходящее для них место. [10:58:21] <andrew_b> Кхм!.. [10:58:27] <andrew_b> www.midnight-commander.org uses an invalid security certificate. The certificate expired on 21.04.2010 11:36. (Error code: sec_error_expired_certificate) [10:59:08] <andrew_b> Я могу, конечно, добавить в исключения. Но как-то некрасиво. [11:22:47] <il.smind++> andrew_b: /home/projects/mc.old/src/setup.c:1094: undefined reference to `main_map' /home/projects/mc.old/src/setup.c:1098: undefined reference to `main_x_map' /home/projects/mc.old/src/setup.c:1100: undefined reference to `main_x_map' /home/projects/mc.old/src/setup.c:1096: undefined reference to `main_map' main.o: In function `midnight_get_shortcut': /home/projects/mc.old/src/main.c:831: undefined reference to `main_map' /home/projects/mc.old/src/main.c:839: undefined reference to `main_map' /home/projects/mc.old/src/main.c:841: undefined reference to `main_x_map' main.o: In function `midnight_set_buttonbar': /home/projects/mc.old/src/main.c:1097: undefined reference to `main_map' /home/projects/mc.old/src/main.c:1098: undefined reference to `main_map' /home/projects/mc.old/src/main.c:1099: undefined reference to `main_map' /home/projects/mc.old/src/main.c:1100: undefined reference to `main_map' /home/projects/mc.old/src/main.c:1101: undefined reference to `main_map' main.o:/home/projects/mc.old/src/main.c:1102: more undefined references to `main_map' follow main.o: In function `midnight_callback': /home/projects/mc.old/src/main.c:1656: undefined reference to `main_x_map' /home/projects/mc.old/src/main.c:1557: undefined reference to `main_x_map' collect2: ld returned 1 exit status m [11:22:57] <il.smind++> что то не просеку что не так [11:23:08] <il.smind++> main_map определен в [11:23:44] <andrew_b> include нужны [11:24:04] <il.smind++> keybind.h [11:24:17] <il.smind++> include ? [11:25:11] <il.smind++> main_map определен в keybind.h кейбинд прописан в setup.c [11:25:17] <il.smind++> что еще нужно? [11:26:44] <andrew_b> extern'ы есть у переменных? [11:27:19] <andrew_b> А не. [11:28:15] <il.smind++> запушил, глянь плиз [11:42:57] <andrew_b> pull [11:57:44] <il.smind++> tcc так сказал keybind.o: 'panel_map' defined twice keybind.o: 'input_map' defined twice keybind.o: 'tree_map' defined twice keybind.o: 'dialog_map' defined twice help.o: 'help_map' defined twice [11:59:07] <andrew_b> Он прав. [11:59:29] <il.smind++> ок, поправлу и засквошу [11:59:45] <il.smind++> *поправлю [11:59:47] <andrew_b> Надо оставить деларации этих переменных только в keybind.c. [11:59:54] <andrew_b> Остальные поудалять. [11:59:55] <il.smind++> ок [12:00:49] <andrew_b> Кстати, вьювер как-то выбивается из общего ряда. [12:01:04] <il.smind++> ? [12:01:12] <il.smind++> в плане кеймапов? [12:01:20] <andrew_b> Д. У него map'ы -- члены структуры. [12:01:32] <andrew_b> У остальных -- глобальные переменные. [12:01:46] <il.smind++> у редактора тоже члены [12:01:54] <andrew_b> Нет. [12:02:31] <il.smind++> я вьювер по аналогии с редактором делал [12:02:44] <andrew_b> А я потом редактор переделал. [12:03:30] <andrew_b> Клавиши Fx когда переделывал. [12:03:42] <andrew_b> Вот ещё что. [12:04:03] <andrew_b> Убери #include "src/keybind.h" из edit-widget.h. [12:05:52] <il.smind++> ок [12:06:36] <il.smind++> м... [12:06:46] <il.smind++> не всё сразу... [12:09:48] <andrew_b> А что всё: [12:09:50] <andrew_b> ? [12:10:13] <il.smind++> andrew_b: вьювер и мелочи [12:10:29] <andrew_b> Я про вьювер и не говорю. [12:10:30] <il.smind++> ша зачиску закончу позырю [12:10:42] <andrew_b> Так просто заметил. [12:10:44] <il.smind++> > Я про вьювер и не говорю. а... ок [12:13:22] <il.smind++> andrew_b: скажи мне вот что [12:13:54] <il.smind++> через обработчик dialog.c проходят все клавиши [12:14:09] <il.smind++> а есть над ним кто то? [12:14:23] <il.smind++> более глобальный виджет [12:14:33] <andrew_b> Нет. [12:15:06] <il.smind++> andrew_b: значит в нем и сделаю запись макросов [12:15:28] <il.smind++> т.к. через него проходит весь ввод и раздача [12:25:56] <il.smind++> ОчМощно ЗАПУШИЛ! УРА! [12:32:43] <andrew_b> Возвращаемся к 120 :) [12:33:10] <andrew_b> Надо как-то убрать memleak. [12:35:04] <il.smind++> andrew_b: да [12:35:09] <il.smind++> согласен надо [12:35:25] <il.smind++> чтобы убрать надо понять логику [12:35:35] <il.smind++> 1 сек открою код [12:36:23] <andrew_b> il.smind++: снова про 212, пока не забыл. [12:36:35] <il.smind++> andrew_b: давай [12:36:39] <andrew_b> mc -K не сломался? [12:37:04] <il.smind++> у меня сейчас 2 репа как раз 212 и 120 в 2-х каталогах [12:37:46] <il.smind++> andrew_b: у меня -K выдает хелп [12:38:16] <andrew_b> Прочти его :) [12:38:30] <andrew_b> Нужно имя файла с биндингами. [12:38:52] <il.smind++> andrew_b: блин :) [12:38:58] <il.smind++> прочел :) [12:41:59] <il.smind++> andrew_b: нет не сломался [12:42:09] <il.smind++> проверил [12:43:12] <andrew_b> А почему в emacs'овской раскладке в панелях не работают Home/End? [12:43:39] <il.smind++> фигасе [12:43:39] <andrew_b> И в редакторе тоже. [12:43:44] <il.smind++> ща [12:44:20] <il.smind++> andrew_b: в любой [12:44:28] <il.smind++> не только емаксовской [12:44:54] <andrew_b> Да. [12:45:01] <andrew_b> В стандартной тоже. [12:45:03] <il.smind++> я думал что мне показалось [12:45:23] <il.smind++> а хрен там, не показалось [12:45:29] <il.smind++> знаю почему [12:45:57] <il.smind++> не прочитаны база сочетаний терминалов [12:46:01] <il.smind++> ща [13:47:50] dkostousov/h зашёл в конференцию [13:47:55] <dkostousov/h> Добрый [13:48:03] <slavazanko> hi [13:48:10] <dkostousov/h> есть у меня подозрение, почему иногда mc под screen встает колом [13:48:16] <slavazanko> ? [13:50:12] <dkostousov/h> Дело в переменной DISPLAY. Когда заходишь первый раз через иксы, DISPLAY указывает на эти самые иксы. Потом заходишь через сеть, чепляешь работающий screen. DISPLAY все еще указывает на :0.0. Это, имхо, приводит к проблеме с определением мышака. [13:51:00] <slavazanko> гм [13:51:06] <slavazanko> совсем даже не исключено [13:51:39] <dkostousov/h> Хм... попробовал сделать unset DISPLAY - не помогло [13:52:08] <il.smind++> andrew_b: запушил [14:13:39] <andrew_b> il.smind++: ну вроде нормально. [14:15:15] <il.smind++> andrew_b: к 120? [14:15:37] <andrew_b> il.smind++: Остались клавиши в меню и в листбоксах. :) Нужен ещё один рывок. [14:15:40] <il.smind++> не могу утверждать что я понимаю все в том коде [14:15:48] <andrew_b> Я тоже не понимаю. [14:16:08] <il.smind++> andrew_b> il.smind++: Остались клавиши в меню и в листбоксах. :) Нужен ещё один рывок. да нужен [14:16:20] <andrew_b> После релиза. [14:16:22] <il.smind++> с листбоксом попроще [14:16:41] <il.smind++> по поводу 120 [14:17:34] <il.smind++> все начинается в printer () [14:18:10] <il.smind++> добавляется в 'a' [14:18:30] <il.smind++> g_array_append_val (a, p); [14:18:31] <andrew_b> Да. [14:20:20] <il.smind++> в 2344 dview_reread (WDiff * dview) [14:20:29] <il.smind++> есть чистка [14:23:16] <il.smind++> но не полная [14:23:24] <il.smind++> нет очистки p.p [14:23:47] <andrew_b> Есть. [14:23:56] <il.smind++> 2343 static void 2344 dview_reread (WDiff * dview) 2345 { 2346 int ndiff = dview->ndiff; 2347 destroy_hdiff (dview); 2348 2349 g_array_foreach (dview->a[0], DIFFLN, cc_free_elt); 2350 g_array_free (dview->a[0], TRUE); 2351 g_array_foreach (dview->a[1], DIFFLN, cc_free_elt); 2352 g_array_free (dview->a[1], TRUE); 2353 2354 dview->a[0] = g_array_new (FALSE, FALSE, sizeof (DIFFLN)); 2355 dview->a[1] = g_array_new (FALSE, FALSE, sizeof (DIFFLN)); 2356 2357 ndiff = redo_diff (dview); 2358 if (ndiff >= 0) 2359 { 2360 dview->ndiff = ndiff; 2361 } 2362 } [14:24:03] <il.smind++> где? [14:24:09] <andrew_b> g_array_foreach (dview->a[0], DIFFLN, cc_free_elt); [14:24:16] <andrew_b> cc_free_elt [14:24:23] <il.smind++> и оно почистит и p.p & [14:24:49] <andrew_b> Для каждого элемента массива вызывается cc_free_elt. [14:24:59] <andrew_b> Там чистится. [14:25:21] <il.smind++> вижу [14:25:28] <andrew_b> А не. [14:26:04] <il.smind++> ? [14:26:05] <andrew_b> Чистится только p->p. А сама p? [14:26:49] <il.smind++> p = NULL ? [14:27:11] <andrew_b> Или её не надо? Она не динамически выделяется? [14:27:17] <il.smind++> p->p = NULL надо? [14:27:23] <andrew_b> Нет. [14:28:34] <andrew_b> Не, саму p удалять не надо. [14:29:13] <andrew_b> При добавлении в массив создаётся копия, потом она удаляется автоматически. [14:29:33] <il.smind++> посмотрев код, почему ты думаешь что есть утечки? [14:29:48] <andrew_b> valgrind сказал. [14:30:08] <il.smind++> и по прежнему он продолжает упорствовать? [14:30:30] <andrew_b> А что с тех пор изменилось? [14:32:16] <il.smind++> вроде да [14:33:29] <il.smind++> сейчас с gcc пере-соберу [14:34:08] <andrew_b> ==23727== 248 bytes in 6 blocks are definitely lost in loss record 3 of 8 ==23727== at 0x402413D: malloc (vg_replace_malloc.c:207) ==23727== by 0x416F323: g_malloc (in /lib/libglib-2.0.so.0.2200.2) ==23727== by 0x41898A3: g_strndup (in /lib/libglib-2.0.so.0.2200.2) ==23727== by 0x80ECB2C: printer (ydiff.c:1733) ==23727== by 0x80EB0E8: dff_reparse (ydiff.c:942) ==23727== by 0x80ECF1E: redo_diff (ydiff.c:1830) ==23727== by 0x80EDF33: dview_init (ydiff.c:2303) ==23727== by 0x80F090F: diff_view (ydiff.c:3199) ==23727== by 0x80F0B72: dview_diff_cmd (ydiff.c:3282) ==23727== by 0x8070A17: diff_view_cmd (cmd.c:962) ==23727== by 0x808E587: midnight_execute_cmd (main.c:1193) ==23727== by 0x808ECAF: midnight_callback (main.c:1580) [14:36:37] <il.smind++> да несомненно [14:50:16] <il.smind++> andrew_b: с какими опциями запустить? [14:50:39] <il.smind++> --leak-check=full ? [14:51:13] <andrew_b> Да. [14:51:49] <il.smind++> я убрал куски кода, хочу проверить [14:52:40] <il.smind++> ==10881== 13,486 bytes in 453 blocks are definitely lost in loss record 117 of 117 ==10881== at 0x4023B58: malloc (vg_replace_malloc.c:195) ==10881== by 0x424B0BC: g_malloc (in /usr/lib/libglib-2.0.so.0.1600.6) ==10881== by 0x42641B0: g_strndup (in /usr/lib/libglib-2.0.so.0.1600.6) ==10881== by 0x80E1D62: printer (ydiff.c:1732) ==10881== by 0x80E05B3: dff_reparse (ydiff.c:1000) ==10881== by 0x80E12F2: redo_diff (ydiff.c:1829) ==10881== by 0x80E1780: diff_view (ydiff.c:2302) ==10881== by 0x80E1AAC: dview_diff_cmd (ydiff.c:3281) ==10881== by 0x809043F: midnight_execute_cmd (main.c:1193) ==10881== by 0x805D519: dlg_process_event (dialog.c:742) ==10881== by 0x805DA06: run_dlg (dialog.c:894) ==10881== by 0x808EB0B: do_nc (main.c:1798) [15:12:26] iNode вышел из конференции [15:20:21] <dkostousov/h> Вопрос по git'у есть, может в курсе кто. Нашлепал я несколько коммитов подряд. Можно их как-то в один объеденить? [15:20:41] <andrew_b> git rebase -i HEAD~N [15:21:07] <andrew_b> N -- количество коммитов [15:21:35] <andrew_b> Потом в открывшемся редакторе [15:22:35] <andrew_b> pick заменить на squash у тех коммитов, которые надо слить с предыдущим. [15:23:02] <slavazanko> можно просто букву 's' писать вместо 'squash' [15:23:33] <andrew_b> Потом снова откроется редактор, чтобы написать комментарий на новый коммит. [15:24:29] <andrew_b> man git-rebase /INTERACTIVE MODE [15:26:33] <andrew_b> il.smind++: ты обещал 2049. [15:27:00] andrew_b вышел из конференции: конец рабочего дня [15:27:02] <il.smind++> так вот сразу? [16:00:31] iNode зашёл в конференцию [16:25:48] styx.mp зашёл в конференцию [17:10:18] styx.mp вышел из конференции: Replaced by new connection [17:10:21] styx.mp зашёл в конференцию [17:36:08] andrew_b зашёл в конференцию [17:46:22] Yury V. Zaytsev зашёл в конференцию [17:46:31] <Yury V. Zaytsev> Есть вопрос [17:47:28] <Yury V. Zaytsev> Когда в редакторе alt+l (L) нажимаешь при зажатом caps оно так и должно не работать? [17:47:57] <andrew_b> Ага. [17:48:00] <Yury V. Zaytsev> В принципе я проверил, терминал посылает одинаковые последовательности когда caps и когда alt+shit+l [17:48:07] <Yury V. Zaytsev> Т.е. нельзя определиь разницу? [17:48:34] <Yury V. Zaytsev> Что сказать? Что если хочет пусть повесит дубликат на alt+L и закрыть как wontfix или есть какая-то политика в этом отношении? [17:48:37] <andrew_b> Точно не уверен, но вряд ли. [17:48:42] <Yury V. Zaytsev> Т.е. шорткаты не дублируются? [17:48:59] <Yury V. Zaytsev> Для зажатого капса [17:49:04] <andrew_b> ? [17:49:11] <andrew_b> Нет. [17:49:16] <Yury V. Zaytsev> Понял [17:49:25] <Yury V. Zaytsev> Тогда получается это by design? [17:49:49] <andrew_b> ДНК [17:50:13] <Yury V. Zaytsev> ДНК? [17:50:41] <andrew_b> Проблемы в ДНК. :) [17:51:52] <Yury V. Zaytsev> Ниче не понял [17:52:07] <Yury V. Zaytsev> Мне главное понять это может быть пофикшено или надо отказаться [17:52:11] <andrew_b> Проехали. :) [17:52:12] <Yury V. Zaytsev> Или может быть создавать тикет и т.п. [17:52:31] <andrew_b> Лучше спросить главного по кнопкам. [17:52:40] <andrew_b> Это у нас il.smind++. [17:52:41] <Yury V. Zaytsev> Вообще смотри [17:53:40] <Yury V. Zaytsev> в панелях alt+i с капсом и шифтом и вообще все не работает [17:53:49] <Yury V. Zaytsev> il.smind++: обрати внимание [17:53:53] <Yury V. Zaytsev> поряви понимание [19:19:09] repolainen зашёл в конференцию [19:29:09] andrew_b вышел из конференции [20:33:22] il.smind зашёл в конференцию [20:33:46] <il.smind> тест [20:33:48] <Зося Синицкая> il.smind: Две полоски! [20:35:10] <il.smind> Yury V. Zaytsev: ну ччо у тебя? [20:52:11] <Yury V. Zaytsev> il.smind к тебе вопрос был [20:52:22] <Yury V. Zaytsev> вопрос в том, можно ли отслеживать что капс зажат [20:52:24] <il.smind> да [20:52:30] <il.smind> нет [20:52:39] <Yury V. Zaytsev> И таким образом сделать так чтобы шорткаты работали при зажатом капсе [20:53:11] <il.smind> можно все что позволяет терминал, таков мой ответ [20:53:31] <il.smind> что может терминал можно узнать в программе cat [20:53:55] <il.smind> запускаем cat и поехали жтакать [20:54:00] <il.smind> жмакать [20:54:12] <Yury V. Zaytsev> il.smind ну у меня cat показывает просто что alt+l при капсе и alt+shift+l одно и то же [20:54:25] <Yury V. Zaytsev> Хорошо, это выяснили, тогда давай ты мне объяснишь политику партии [20:54:54] <il.smind> cat ^[i ^[I [20:55:06] <Yury V. Zaytsev> У нас есть шорткаты с шифтом? ты как считаешь, идеологически правильно определить что все шорткаты будут работать что с шифтом, что без шифта или нет? [20:55:08] <il.smind> мой терминал разницу видит [20:55:17] <Yury V. Zaytsev> Не может быть [20:55:28] <il.smind> зуб даю [20:55:30] <Yury V. Zaytsev> Разницу не между alt+l и alt_shift_l [20:55:42] <Yury V. Zaytsev> А разницу между alt+l С КАПСОМ и alt_shift+l [20:55:47] <repolainen> а ана шо у вас еык переключаеццо?:] [20:55:49] <il.smind> 1 сек [20:56:18] <Yury V. Zaytsev> У меня alt_shift [20:56:26] <il.smind> у меня капс переключает расскладку [20:56:34] <il.smind> переделывать лениво [20:56:35] <Yury V. Zaytsev> Огого [20:57:19] <Yury V. Zaytsev> il.smind ну ладно, поверь мне, что alt+l + caps и alt+_shit+_k это эдин и тот же код ^[L [20:57:29] <Yury V. Zaytsev> Тогда ты мне скажи про политику вопрос выше [20:57:57] <il.smind> о на другом хосте [20:58:03] <Yury V. Zaytsev> Как ты думаешь хорошо ли сделать так, чтобы при шорткатах shift не учитывался, т.е. при капсе шорткаты работали [20:59:05] <il.smind> ^[i (алт-i)
^[I (alt-shift-i)
^[i нажат капс (алт-шифт-i)
^[I нажат капс (алт-i) [20:59:34] <repolainen> КАПСОМ их КАПСОМ [20:59:51] <Yury V. Zaytsev> il.smind ну идишь не отличаются ( [21:00:06] <Yury V. Zaytsev> repolainen: ты тоже приглашаешься высказаться дабы меня просветить [21:00:13] <il.smind> т.е. мой терминал различает [21:00:35] <Yury V. Zaytsev> il.smind
^[I (alt-shift-i) ^[I нажат капс (алт-i) [21:00:39] <Yury V. Zaytsev> il.smind ондо и то же [21:00:42] <Yury V. Zaytsev> Я говорю про этом [21:01:25] <il.smind> >Я говорю про это а какие еще варианты могут быть? [21:01:58] <Yury V. Zaytsev> Ну я думал разные коды [21:02:04] <il.smind> при нажатом капслок все буквы вводятся в верхнем регистре [21:02:23] <Yury V. Zaytsev> il.smind теперь я понял, что это в буквальном смысле зажатый шифт [21:02:27] <il.smind> что равносильно зажатому шифту [21:03:26] <il.smind> теперь к политике партии [21:03:42] <il.smind> в чем именно вопрос [21:03:57] <il.smind> только я вот что хотел бы сказать [21:04:09] <Yury V. Zaytsev> il.smind слушаю [21:05:11] <il.smind> ctrl-i, ctrl-I, ctrl-shift-i это всегда ctrl-I [21:05:28] <Yury V. Zaytsev> il.smind вот это круто [21:05:36] <il.smind> т.е. для контрола не важен регистр [21:05:37] <Yury V. Zaytsev> А с meta то бишь alt? [21:05:47] <Yury V. Zaytsev> У меня вопрос по политике партии относительно meta [21:05:48] <il.smind> а с мета важен [21:05:55] <Yury V. Zaytsev> Понятно [21:06:07] <il.smind> в этом есть одна серьезная засада [21:06:10] <Yury V. Zaytsev> Тогда такой вопрос: это ты считаешь багом или фичей? [21:06:28] <il.smind> > Тогда такой вопрос: это ты считаешь багом или фичей? такова реальность [21:06:38] <il.smind> ничего поделать нельзя [21:06:48] <il.smind> это то что отдает терминал [21:07:03] <il.smind> а он отдает вот так [21:07:11] <Yury V. Zaytsev> il.smind Ну можно с meta игнорировать регистр [21:07:16] <Yury V. Zaytsev> il.smind разве нет? [21:07:46] <il.smind> ^[ю ^[Ю в руской раскладке [21:07:57] <il.smind> Yury V. Zaytsev: нельзя [21:08:25] <il.smind> я так скажу - можно написать конвертор [21:08:53] <il.smind> но для всех языков надо будет писать таблицы соответствия [21:09:04] <Yury V. Zaytsev> il.smind ой как адски [21:09:11] <Yury V. Zaytsev> А разве нельзя делать просто strtolower [21:09:21] <Yury V. Zaytsev> Или какая там есть функция в glib ? [21:10:35] <il.smind> можно но это ничего не даст [21:10:46] <il.smind> языков километр [21:12:13] <repolainen> il.smind: по поводу утечек [21:12:20] <repolainen> я так понял выделяется 2 массива [21:12:25] <repolainen> а освобождается только 1 [21:12:33] <il.smind> repolainen: 1 сек [21:14:14] <il.smind> 2349 g_array_foreach (dview->a[0], DIFFLN, cc_free_elt); 2350 g_array_free (dview->a[0], TRUE); 2351 g_array_foreach (dview->a[1], DIFFLN, cc_free_elt); 2352 g_array_free (dview->a[1], TRUE); [21:14:31] <il.smind> сначала dview->a[0] потом dview->a[1] [21:14:38] <Yury V. Zaytsev> il.smind я не понял, т.к. теоретически glib должен заботиться о том как правильно сделать strtolower [21:14:56] <il.smind> да сделает он тебе strtolower [21:15:00] <Yury V. Zaytsev> il.smind т.е. если у тебя utf8 строка не должен парить тебя алфавит [21:15:02] <il.smind> ты не понимаешь [21:15:07] <Yury V. Zaytsev> il.smind а в чем проблем тогда? [21:15:20] <Yury V. Zaytsev> тогда ^[L станет ^[l и шорткат заработате [21:15:23] <il.smind> но ты допустим в немецкой расскладке [21:15:27] <Yury V. Zaytsev> Ну [21:15:36] <il.smind> это один шорткат [21:15:41] <Yury V. Zaytsev> И у меня там alt+shit+Ü [21:15:47] <il.smind> а в английской другой [21:15:47] <Yury V. Zaytsev> А, понял [21:15:53] <il.smind> а в русской третий [21:16:02] <Yury V. Zaytsev> Ну да, разумеется, если русский включить, то шорткаты все перестают работатть [21:16:05] <il.smind> и так N шорткатов [21:16:10] <Yury V. Zaytsev> Но я же тебе не про это говорю [21:16:17] <il.smind> не про это [21:16:47] <il.smind> но перевод в верхний/нижний регистр не снимает проблемы [21:17:00] <Yury V. Zaytsev> Ну да... я хочу узнать считаешь ли ты что alt+shift+i и alt+i разные шорткаты это баг [21:17:10] <repolainen> где определен g_array_foreach? [21:17:31] <Yury V. Zaytsev> il.smind он снимает проблему что alt_shit_i и alt_i разные шорткаты [21:17:48] <Yury V. Zaytsev> А проблемы с русской раскладкой я вообще не касался и не знаю чего ты про неё заговорил [21:18:01] <Yury V. Zaytsev> Она меня лично не волнует т.к. я русской арскладкой в mc не пользуюсь [21:18:02] <repolainen> это местный костыль чтоли? [21:18:35] <il.smind> repolainen: охохо ты спросил [21:18:50] <il.smind> в glib-e [21:18:52] <Yury V. Zaytsev> il.smind он умный и сам найдет =) [21:18:56] <Yury V. Zaytsev> il.smind ответь лучше мне [21:19:25] <il.smind> >alt+shift+i и alt+i с точки зрения терминала это разные шорткаты [21:19:42] <repolainen> il.smind: хуй там [21:20:00] <Yury V. Zaytsev> il.smind Ну я понял. вопрос считаешь ли ты это багом или фичей и согласен ли ты сделать lowercase чтобы разницу убрать или нет [21:20:53] <repolainen> в какой из массивов аппендит printer? :] [21:21:07] <il.smind> Yury V. Zaytsev: не вижу смысла [21:21:08] <repolainen> видать ваще в трэш область [21:21:27] <il.smind> Yury V. Zaytsev: ты можешь сделать проще [21:21:38] <repolainen> GArray *a = ((PRINTER_CTX *) ctx)->a; <- выэ понимаете, что это не правда? [21:21:47] <Yury V. Zaytsev> il.smind в своем keymap дописать варианты с шифтом? [21:21:52] <repolainen> или a[0] или a[1] [21:21:58] <il.smind> Yury V. Zaytsev: именно [21:22:07] <Yury V. Zaytsev> il.smind всё понял больше вопросов не имею [21:22:16] <Yury V. Zaytsev> il.smind спасибо большое за разяснение политики партии [21:23:25] <il.smind> Yury V. Zaytsev: мы можем делать вид что не поняли что там нажалось за счет приведения к верхнему или нижнему регистру [21:23:52] <il.smind> но я считаю тогда проще и то и то забиндить [21:24:22] <il.smind> repolainen: нэ нэ оченама [21:24:53] <il.smind> repolainen: я только вижу заклинание 2-го уровня [21:25:17] <il.smind> мне 40 хитпоинтов не хватает чтобы читать такие заклятья [21:26:01] <repolainen> этот адов код с массивами ужасает :] [21:26:15] <il.smind> а то [21:27:41] <il.smind> GArray *a это не тот 'a' что в dview->a[0] [21:27:54] <repolainen> ужас [21:28:05] <repolainen> а обязательно было постоянно лупить касты в функции? [21:28:11] <repolainen> вместо одного приведения? [21:28:28] il.smind вышел из конференции: Этого участника выгнали из комнаты за то, что он послал сообщение об ошибке другому участнику: service-unavailable [21:28:37] <repolainen> FBUF *f = ((PRINTER_CTX *) ctx)->f; [21:28:45] <repolainen> нет шоп pctx->f [21:30:17] <repolainen> ну раз это не тот - значит он и не высвобождается вообще [21:30:18] <repolainen> :] [21:30:44] <repolainen> dview высвобождается, а ctx шото не вижу [21:31:49] il.smind зашёл в конференцию [21:32:34] <repolainen> не, там всё еще хуже [21:35:56] <il.smind> repolainen: а хег его знает, я разобрался только с той частью кода которую UTF-ицировал [21:36:41] <repolainen> зато я теперь знаю, почему meld на питоне [21:36:53] <il.smind> repolainen: ? :)) [21:36:56] <il.smind> dff_reparse [21:37:05] <repolainen> z уже нашел [21:37:11] <il.smind> там передается ctx [21:37:31] <repolainen> вы будете смеяться [21:37:35] <il.smind> 1823 ctx.a = dview->a[0]; 1824 ctx.f = f[0]; 1825 rv |= dff_reparse (0, dview->file[0], ops, printer, &ctx); [21:37:38] <repolainen> но ваш чудомакрос не работает [21:37:46] <il.smind> repolainen: не не буду [21:37:48] <repolainen> который g_array_free [21:37:59] <repolainen> точнее g_array_foreach [21:38:26] <repolainen> что-то забыл фигурные скобки [21:38:29] <repolainen> кто-то [21:38:30] <repolainen> :] [21:38:47] <il.smind> repolainen: я знаю кто :) [21:39:15] <repolainen> а еще эта херь не портабельна на gnu c [21:39:23] <repolainen> на _не_ gnu c [21:41:19] <il.smind> ??? [21:41:22] <il.smind> tcc [21:41:25] <repolainen> щас запушу фикс [21:41:33] <il.smind> давай [21:41:36] <repolainen> tcc знаешь на чем проверялся? [21:41:55] <repolainen> на суперпортабельном среди компиляторов C проекте - ядре linux [21:42:06] <il.smind> ок. давай лучше что его ниасилит icc ? [21:42:09] <repolainen> там гну расширений выше крыши [21:42:26] <repolainen> вижуалстудия :] [21:42:30] <repolainen> ic хез [21:42:39] <repolainen> наерна AIX cc [21:42:42] <repolainen> sun [21:43:03] <il.smind> ну про студию ты конеш пошутил, но на санках проверрю [21:43:24] <il.smind> у меня есть 2 вида соляры теперь [21:46:05] <repolainen> 4e4c499..5a99cce 120_diff_view -> 120_diff_view [21:46:08] <repolainen> have fun [21:46:48] <repolainen> хз, проверять уже нечего :] [21:47:49] <repolainen> но именно этот g_array_foreach мог как нех юыть inline функцией :] [21:48:36] <repolainen> http://feedproxy.google.com/~r/fp-planet-ru/~3/N621upltkH4/9979.html [21:48:51] <repolainen> http://www.google.com/search?q=source+g_array_foreach [21:49:01] <Yury V. Zaytsev> ErrorNo such entry. [21:49:22] <repolainen> http://vsychina.blogspot.com/2010/03/3900.html [21:49:44] <repolainen> шото у меня в быдлоридере всё работоло [21:50:00] <il.smind> repolainen: а как ты допер что нет скобок? [21:50:46] <repolainen> каких скобок? [21:50:47] <repolainen> а [21:51:09] * repolainen думает какой бы антинаучной хуйни написать [21:51:36] <il.smind> repolainen: ладно пока ты же собрал диффвьювер зацени его :) [21:51:41] <repolainen> ну я сначала хотел позырить на определение g_array_foreach [21:51:58] <repolainen> и как только увидел, что он наше поделие я сразу понял, что виноват он [21:52:17] <repolainen> два VALGRIND_PRINTF_BACKTRACE в ключевых местах и аффтор спалился [21:52:39] <repolainen> il.smind: я ж тебе показывал скриншот с глазовырывной цветосхемой [21:52:52] <il.smind> repolainen: не... другое [21:52:58] <repolainen> а после запыривания исходника я вообще боюсь его запускать [21:53:24] <il.smind> про схему тут ты волен любые цвета ставить, это не интересно [21:53:49] <repolainen> ненене [21:53:53] <il.smind> repolainen: запыривания? [21:53:56] <repolainen> я юзаюсь дефолтом [21:54:06] <repolainen> пыреццо - пялеццо таращиццо [21:54:12] <repolainen> запыривания - рассмотрение [21:54:19] <il.smind> так вот [21:54:26] <il.smind> сделай 2 файла [21:54:35] <il.smind> в первом нарисуй [21:54:39] <repolainen> я лик тестил на этих файлах [21:54:43] <il.smind> 1 2 3 4 5 6 7 8 [21:54:46] <repolainen> ты можешь не париться :] [21:54:56] <il.smind> во втором [21:55:06] <repolainen> будет истер егг? [21:55:07] <il.smind> 1 2 3 3 3 4 5 7 8 [21:55:19] <il.smind> просто сделай [21:55:31] * repolainen ьы почитал это в формате блог поста в картинках [21:55:32] <il.smind> теперь сравни эти 2 файла [21:55:45] <repolainen> ты шо предлагаешь мне его написать? :] [21:55:59] <repolainen> ты упускаешь карму на хабрахабре [21:56:28] <il.smind> после того как сравнил 2 файла ты можешь частично мерджить изменения [21:56:48] <il.smind> вот с частичным мерджем и предлагаю побаловаться [21:56:50] <repolainen> пащще как в мелд? [21:57:12] <il.smind> ну надеюсь что да [21:57:13] <repolainen> что меня парит в мелд - так это его ненормальное потребление памяти на больших файлах [21:57:25] <repolainen> скажем в мегов 50-500 [21:57:27] <repolainen> :] [21:58:02] <il.smind> я теперь вообще не могу обходиться без частичного слияния, не понимаю как раньше жил без этого :) [21:58:16] <il.smind> repolainen: ну 500 не обещаю [21:58:24] <il.smind> это надо тестить [21:58:46] <il.smind> алгоритм то тупой прочитали - записали [21:59:10] <il.smind> для 500 мб это будет долго + бакап еже 500 мб [21:59:19] <repolainen> угу и гиг рам [21:59:45] <repolainen> src/diffviewer/ydiff.c: Now used GArray type and g_array_* functions instead of self-written stuff
Signed-off-by: Slava Zanko <slavazanko@gmail.com> [21:59:49] <repolainen> ай-яй-яй [22:00:05] <il.smind> repolainen: для диффвью имхо не надо много оперативки [22:00:38] <repolainen> как нить при случае попробую на 50 меговых логах [22:00:51] <il.smind> да [22:01:06] <il.smind> но просто проверь как мердж работает [22:01:13] <il.smind> прямо сейчас [22:01:17] <repolainen> ненене [22:01:27] <il.smind> ??? [22:01:54] <il.smind> ну блин это же прикольно перетаскивать кусками [22:02:23] <repolainen> как в мелде [22:02:43] <repolainen> прикольно, огда этим не занимаешься неделю перед релизом :] [22:23:24] styx.mp вышел из конференции [22:23:53] Yury V. Zaytsev вышел из конференции [22:53:40] repolainen вышел из конференции [23:43:21] dkostousov/h вышел из конференции [23:55:29] il.smind вышел из конференции