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

Тема: http://www.midnight-commander.org | Latest release: 4.8.1 | Latest stable release: 4.7.5.6
[02:01:21] slavazanko/h вышел из конференции
[04:13:15] repolainen зашёл в конференцию
[04:48:11] iliamaslakov вышел из конференции: Replaced by new connection
[04:48:16] iliamaslakov зашёл в конференцию
[04:56:09] repolainen вышел из конференции
[05:12:56] andrew_b зашёл в конференцию
[06:40:52] slyfox^w вышел из конференции
[06:42:55] repolainen зашёл в конференцию
[07:09:25] repolainen вышел из конференции
[07:44:48] <iliamaslakov> привет
[07:44:59] <iliamaslakov> всем
[07:46:21] <andrew_b> Привет.
[07:46:40] <iliamaslakov> что с твоим редактором2 ?
[07:47:51] <iliamaslakov> Он вызвал у пользователей положительные эмоции
[07:47:58] <andrew_b> Всё по-старому.
[07:47:58] <iliamaslakov> в целом
[07:48:18] <andrew_b> Я его в последнее время забросил.
[07:48:31] <iliamaslakov> он же готов?
[07:49:13] <andrew_b> Нет.
[07:49:22] <iliamaslakov> как нет
[07:49:25] <iliamaslakov> готов!
[07:49:58] <andrew_b> Надо доделать остальные скины, которые у нас фкаропке.
[07:50:07] <iliamaslakov> сделаю
[07:50:14] <andrew_b> Ну и ещё кое-что обсудить по скинам.
[07:50:53] <iliamaslakov> по рамкам?
[07:51:37] <andrew_b> Да.
[07:51:45] <andrew_b> У тебя двойные рамки?
[07:52:33] <iliamaslakov> в мц да
[07:52:48] <andrew_b> А в редакторе?
[07:52:58] <iliamaslakov> в ретакторе конечно одинарные
[07:53:23] <iliamaslakov> просто мне кажется это можно потом сделать
[07:53:32] <iliamaslakov> оно не так важно
[07:53:41] <andrew_b> Зачем потом?
[07:54:03] <iliamaslakov> ну тебе я думаю сложно сейчас
[07:54:09] <andrew_b> Я думаю, у активного окна рамка должна быть двойная, у неактивных одинарная.
[08:07:51] <slavazanko/w> всем привет
[08:08:30] <andrew_b> Привет.
[08:09:48] <iliamaslakov> привет
[08:10:25] <iliamaslakov> andrew_b, есть мнение что достаточно сделать только неактивный статус бар
[08:10:49] <andrew_b> Не.
[08:10:50] <iliamaslakov> а с рамками можно не морочиться
[08:11:00] <iliamaslakov> нормально выглядит
[08:11:01] <andrew_b> В ч/б посмотри.
[08:11:06] <iliamaslakov> а...
[08:11:09] <andrew_b> Да и красивше будет.
[08:11:21] <iliamaslakov> и так красиво
[08:11:37] <iliamaslakov> а вот ч/б
[08:11:50] <iliamaslakov> надо подумать
[08:13:55] <iliamaslakov> в ч/б сейчас ваще всё зашибись
[08:14:16] <andrew_b> Да? А я сам не смотрел.
[08:14:45] <iliamaslakov> да
[08:14:46] <andrew_b> Но для единообразия двойную рамку неплохо было.
[08:20:51] <andrew_b> В ч/б рамки разного цвета получились.
[08:21:01] <iliamaslakov> ага
[08:21:12] <iliamaslakov> ваще круто
[08:21:49] <iliamaslakov> только я так понимаю это глюк?
[08:21:58] <andrew_b> Почему?
[08:22:02] <iliamaslakov> нет?
[08:22:09] <iliamaslakov> тогда кул
[08:22:18] <andrew_b> Надо же как-то окна различать?
[08:23:02] <iliamaslakov> давай добавим цвет еще одного статус бара и на этом всё? а?
[08:23:11] <andrew_b> ?
[08:23:59] <iliamaslakov> ну ща... я добавлю коммит, если что уберёшь
[08:24:32] <iliamaslakov> а... как редактор знает что он не текущий?
[08:25:28] <andrew_b> Знает.
[08:25:46] <iliamaslakov> а... шепни словечко заветное
[08:27:35] <andrew_b> --- a/src/editor/editwidget.c
+++ b/src/editor/editwidget.c
@@ -156,7 +156,7 @@ edit_draw_frame (const WEdit * edit, gboolean active)
/* draw a frame around edit area */
tty_setcolor (edit->drag_state != MCEDIT_DRAG_NORMAL ? EDITOR_FRAME_DRAG :
active ? EDITOR_FRAME_ACTIVE : EDITOR_FRAME);
- tty_draw_box (w->y, w->x, w->lines, w->cols, TRUE);
+ tty_draw_box (w->y, w->x, w->lines, w->cols, w != w->owner->current->data);
/* draw a drag marker */
if (edit->drag_state == MCEDIT_DRAG_NORMAL)
{
[08:27:49] <andrew_b> Надо ещё доделать. Рамка не перерисовывается.
[08:27:55] <iliamaslakov> Слав я косяков больше не нащел, кода плохого не заметил
[08:29:45] <andrew_b> Вот так правильно.

index 311ae04..a56ffd8 100644
--- a/src/editor/editwidget.c
+++ b/src/editor/editwidget.c
@@ -156,7 +156,7 @@ edit_draw_frame (const WEdit * edit, gboolean active)
/* draw a frame around edit area */
tty_setcolor (edit->drag_state != MCEDIT_DRAG_NORMAL ? EDITOR_FRAME_DRAG :
active ? EDITOR_FRAME_ACTIVE : EDITOR_FRAME);
- tty_draw_box (w->y, w->x, w->lines, w->cols, TRUE);
+ tty_draw_box (w->y, w->x, w->lines, w->cols, !active);
/* draw a drag marker */
if (edit->drag_state == MCEDIT_DRAG_NORMAL)
{
[08:32:08] <andrew_b> Запушил.
[08:32:28] <iliamaslakov> ок, ща
[08:33:16] <iliamaslakov> >iliamaslakov: Слав я косяков больше не нащел, кода плохого не заметил
но я под валгриндом не гонял, наверное стоит
[08:33:55] <slavazanko/w> ну.. можно и погонять.
[08:34:55] <andrew_b> Этта, я вот что подумал...
[08:35:04] <andrew_b> По панелизации.
[08:35:10] <iliamaslakov> ?
[08:35:45] <andrew_b> Можно, наверное, для панелизированных файлов получить список в формате ls -lR.
[08:36:07] <andrew_b> А у нас уже есть плагин для extfs.
[08:36:15] <slavazanko/w> да
[08:36:17] <iliamaslakov> не, погодь
[08:36:34] <iliamaslakov> ls -lR это вообще как хошь можно
[08:36:36] <iliamaslakov> ща
[08:37:04] <andrew_b> Только lslR не поддерживает copyin/copyout.
[08:37:26] <andrew_b> Потому что там нет никаких файлов.
[08:37:34] <iliamaslakov> да у нас есть внешняя панелизация
[08:38:02] <andrew_b> Не.
[08:38:11] <iliamaslakov> через неё можно подцепить этот список но что это даст?
[08:38:27] <andrew_b> Через внешнюю не протащишь результаты поиска, например.
[08:39:01] <iliamaslakov> разве?
[08:39:14] <andrew_b> А как?
[08:39:37] <iliamaslakov> ты в том смысле что в панелизированной панели поиск не запустить?
[08:40:34] <iliamaslakov> ну да оно ищет без учёта панелизации
[08:40:44] <iliamaslakov> это поправимо если надо
[08:41:13] <iliamaslakov> только в скольких случаях надо искать в найденном
[08:41:50] <iliamaslakov> так то может и пригождалось бы иногда, но пока ни у кого нужды не было, судя по отсутствию тикета
[08:42:38] <andrew_b> Не.
[08:43:33] <andrew_b> Если выносить панелизацию в отдельный плагин, то можно было бы воспользоваться чем-то готовым.
[08:43:47] <andrew_b> Например, lslR.
[08:43:55] <andrew_b> Но он ничего не умеет.
[08:44:21] <andrew_b> Внешняя панелизация -- это результат работы команды.
[08:44:44] <andrew_b> Поиск файлов к внешней панелизации никаким боком.
[08:44:45] <iliamaslakov> да но теперь результат он сохраняется
[08:44:55] <iliamaslakov> и с этим результатом можно работать
[08:45:11] <iliamaslakov> поиск то никаким боком
[08:45:39] <iliamaslakov> но там достаточно 2 условия добавить и будет работать с панелизацией
[08:46:15] <andrew_b> Другое дело, что отдельный vfs-плагин не будет вечно живым. Через некоторое время за ним придёт GC.
[08:46:36] <andrew_b> И все результаты панелизации пропадут.
[08:53:11] <iliamaslakov> тебе нужно искать в панелизации?
[08:53:27] <iliamaslakov> если да то там просто реализовать
[08:53:32] <andrew_b> Причём тут искать?
[08:53:40] <andrew_b> Ну и искать тоже.
[08:53:49] <andrew_b> Не искать, так открыть файл.
[08:55:54] <iliamaslakov> дак
[08:56:10] <iliamaslakov> панелизация это только фильтр
[08:56:21] <iliamaslakov> просто более продвинутый
[08:56:36] <iliamaslakov> он контент не генерирует
[09:57:38] <iliamaslakov> кстати прикол с редактором
[09:57:53] <iliamaslakov> когда 2 окна открыты
[09:58:01] <iliamaslakov> больше одного
[09:58:11] <iliamaslakov> включаешь нумерацию
[09:58:20] <iliamaslakov> она везде включается
[09:58:28] <andrew_b> Да.
[09:58:37] <andrew_b> Потому что это глобальная переменная.
[09:58:48] <andrew_b> К тому же она хранится в конфиге.
[09:59:19] <andrew_b> Все глобальные переменные сорханены.
[09:59:48] <andrew_b> iliamaslakov: ваши предложения?
[10:01:08] <iliamaslakov> ну можно подумать
[10:01:24] <iliamaslakov> по честноку это глюк
[10:01:44] <andrew_b> Чёйта?
[10:01:51] <iliamaslakov> по человечески если подой то то неприятная фича
[10:02:00] <iliamaslakov> по человечески если подойти то неприятная фича
[10:02:09] <iliamaslakov> по-человечески если подойти, то неприятная фича
[10:02:40] <andrew_b> Посмотри, как в другом многооконном редакторе работает подобная фича.
[10:02:40] <iliamaslakov> ну потому что не всякий контент нуждается в нумерации
[10:02:54] <iliamaslakov> я таких редактором не знаю
[10:03:00] <iliamaslakov> vim?
[10:03:32] <andrew_b> gedit
[10:03:43] <andrew_b> Там глобальная опция.
[10:03:56] <andrew_b> Распространяется на все отурытые вкладки.
[10:04:05] <andrew_b> В других редакторах также.
[10:04:54] <iliamaslakov> vim
[10:05:03] <iliamaslakov> vim -o 123 -o 321
[10:05:10] <iliamaslakov> :set number
[10:05:33] <iliamaslakov> в верхнем окне есть, в нижнем - нет
[10:06:50] <andrew_b> То есть, нужны две переменные? В одной -- дефолтовое значение, другая -- для оперативного управления?
[10:07:08] <iliamaslakov> мне так себе это представляется
[10:07:18] <andrew_b> Дл явсех остальных опций тоже?
[10:07:28] <iliamaslakov> а что еще...
[10:07:45] <iliamaslakov> а... курсор за пределами
[10:07:51] <andrew_b> А всё, что в настройках есть.
[10:08:04] <iliamaslakov> ну просто это настройки
[10:08:18] <iliamaslakov> а визуализация это немного другое
[10:08:21] <andrew_b> [x] Отображать пробелы
[x] Отображать табуляции
[10:08:31] <iliamaslakov> да
[10:08:36] <iliamaslakov> это оно
[10:08:44] <andrew_b> Ещё что?
[10:09:28] <iliamaslakov> т.е. если кратко то отображение номеров, табы, пробелы, и визуализация правого края
[10:10:44] <iliamaslakov> вот эти настройки наверное должны быть привязаны к конкретному окну
[10:11:04] <iliamaslakov> но это по большому счету уже дополнение функционала
[10:11:34] <andrew_b> А настройки табуляции?
[10:11:53] <andrew_b> Автоотступ "Вводом"
[10:12:30] <iliamaslakov> >andrew_b: А настройки табуляции?
про табы я написал
[10:12:42] <iliamaslakov> >andrew_b: Автоотступ "Вводом"
думаешь надо?
[10:12:53] <andrew_b> ХЗ
[10:14:11] <iliamaslakov> давай принципиально
[10:14:35] <iliamaslakov> 1) надо переделать сейчас
2) надо переделать но не сейчас
3) не надо
[10:14:49] <iliamaslakov> вариант обозначь
[10:15:10] <andrew_b> 3
[10:15:16] <iliamaslakov> 2
[10:16:09] <andrew_b> А, надо ещё меню ужать, чтобы в 25x80 влезало.
[10:16:29] <iliamaslakov> а... вот это да
[10:16:39] <andrew_b> Это в другом бранче.
[10:17:53] <iliamaslakov> а...
[10:18:47] <andrew_b> Будет.
[10:18:55] <iliamaslakov> а... )
[10:22:47] <iliamaslakov> edit_draw_frame (e, FALSE);
[10:23:12] <iliamaslakov> есть мнение что надоть наверное еще мот что
[10:23:43] <iliamaslakov> edit_set_active (FALSE);
[10:24:03] <andrew_b> Нет.
[10:24:13] <iliamaslakov> тогда код внутри редактора будет знать
[10:24:21] <iliamaslakov> поясни
[10:24:32] <andrew_b> Чтобы дезактивировать одно окно, надо активировать другое. А какое?
[10:24:52] <iliamaslakov> не незактивировать
[10:24:57] <iliamaslakov> не дезактивировать
[10:25:05] <iliamaslakov> а установить флаг
[10:25:33] <andrew_b> Установит флаг -- это изменить состояние.
[10:25:43] <iliamaslakov> e->is_active = ...
[10:25:46] <andrew_b> Дезактивировать одно окно, и активировать другое
[10:25:56] <iliamaslakov> наоборот
[10:26:08] <iliamaslakov> дезактивация приводит к
[10:26:21] <iliamaslakov> а не установка приводит к деактиваци
[10:26:47] <andrew_b> Что должно делать edit_set_active (FALSE)?
[10:26:48] <iliamaslakov> т.е. в
static cb_ret_t
edit_callback (Widget * w, widget_msg_t msg, int parm)
{
WEdit *e = (WEdit *) w;

switch (msg)
[10:27:29] <iliamaslakov> в
case WIDGET_FOCUS:
e->is_active = TRUE;
[10:27:48] <iliamaslakov> в
case WIDGET_UNFOCUS:
e->is_active = FALSE;
[10:28:26] <iliamaslakov> тогда можно будет знать текущее окно активно или нет
[10:29:24] <andrew_b> Текущее окно активно, если выполняется условие
w == w->owner->current->data
[10:29:36] <iliamaslakov> а...
[10:29:39] <iliamaslakov> понял
[10:29:47] <iliamaslakov> ща поковыряю
[10:38:58] <iliamaslakov> странно
[10:39:03] <iliamaslakov> --- a/src/editor/editdraw.c
+++ b/src/editor/editdraw.c
@@ -884,7 +884,11 @@ edit_status (WEdit * edit)
}

dlg_move (edit->widget.owner, 0, 0);
- tty_setcolor (STATUSBAR_COLOR);
+ if ((void *) edit == ((Widget *) edit)->owner->current->data)
+ tty_setcolor (STATUSBAR_COLOR);
+ else
+ tty_setcolor (EDITOR_RIGHT_MARGIN_COLOR);
+
printwstr (fname, fname_len + gap);
printwstr (status, w - (fname_len + gap));
[10:39:13] <iliamaslakov> не меняется ничего
[10:39:42] <iliamaslakov> оба нарисованы цветом STATUSBAR_COLOR
[10:39:58] <iliamaslakov> хотя переключался между окнами
[10:42:12] <andrew_b> Потому что в момент вызова edit_status () edit уже активный.
[10:42:26] <andrew_b> (void *) edit == ((Widget *) edit)->owner->current->data выполняется всегда.
[10:43:51] <andrew_b> Кстати, надо какое-то событие запустить при переключении окон, и в обработчике делать всё, что нужно.
[10:43:56] <iliamaslakov> я так примерно и понял, но тогда как перерисовать статусбар
[10:49:53] <iliamaslakov> вот я и думал что оно должно флаг установить какой то а потом... но ты точно в этом лучше шаришь
[11:51:18] <andrew_b> iliamaslakov: https://www.midnight-commander.org/ticket/2718#comment:3
[11:51:27] <andrew_b> Чё сказать-то хотел?
[11:56:08] <iliamaslakov> >Or is there other, quickest way to select files?
Key - "+"
[11:56:38] <andrew_b> По дате?
[11:56:57] <iliamaslakov> согласен
[11:57:05] <iliamaslakov> внешняя панелизация
[11:57:12] <andrew_b> ?
[11:57:16] <iliamaslakov> реальный способ
[11:57:19] <andrew_b> А...
[11:57:31] <iliamaslakov> ну find . ...
[11:57:38] <andrew_b> Я понял.
[12:08:49] <iliamaslakov> напишешь ему или мне самому?
[12:09:19] <andrew_b> Тебе.
[12:35:39] slyfox^w зашёл в конференцию
[12:35:58] <slyfox^w> прикольно, нашел машину, на которой Ctrl+Home/End не работают
[12:37:02] <slyfox^w> а вы знаете, что в mc.lib [terminal:xterm]bs=<непечатаемый-символ>? :]
[12:39:40] <andrew_b> Это не мы.
18831a11b035ad765989d42baa4fdcffb25c8933
[12:40:06] <slyfox^w> ого
[12:40:08] <slyfox^w> баянищще
[12:40:37] <slyfox^w> bs это backspace?
[12:40:50] <andrew_b> Да.
[12:54:20] <iliamaslakov> slyfox^w, как найти файл по дате?
[12:56:48] <slyfox^w> find ?
[12:59:05] <iliamaslakov> да
[12:59:33] <iliamaslakov> я так понимаю можно дату задать только через touch
[12:59:40] andrew_b вышел из конференции
[13:24:56] <iliamaslakov> slyfox^w, ау
[14:10:00] <slyfox^w> найти или задать?
[14:11:09] <slyfox^w> корроче
[14:11:25] <slyfox^w> в mc с ncurses не работает Ctrl+Home на USB клавах
[14:11:36] <slyfox^w> а со шлангом - Ъ
[14:33:23] <iliamaslakov> slyfox^w, найти с помощью find файлы заданной даты
[14:42:51] iliamaslakov вышел из конференции: offline
[14:43:00] iliamaslakov зашёл в конференцию
[15:20:54] iliamaslakov вышел из конференции: offline
[15:35:54] iliamaslakov зашёл в конференцию
[16:25:48] andrew_b зашёл в конференцию
[17:10:29] iliamaslakov вышел из конференции
[17:11:47] iliamaslakov зашёл в конференцию
[17:13:15] repolainen зашёл в конференцию
[17:15:53] <repolainen> iliamaslakov: у файла в UNIX 3.5 даты. тебя какая интересует?
[sf] ~:stat /bin/bash
...
Доступ: 2011-09-12 22:23:46.000000000 +0300
Модифицирован: 2011-01-30 10:20:43.000000000 +0200
Изменён: 2011-09-12 22:29:34.062459235 +0300
Создан: -
[17:16:30] <iliamaslakov> изменён допустим
[17:17:58] <repolainen> надо точное?
[17:18:10] <repolainen> сразу знаю есть старше N часов
[17:18:39] <repolainen> а, есть и точно :]
[17:18:45] <repolainen> -mtime n
File's data was last modified n*24 hours ago. See the comments for -atime
to understand how rounding affects the interpretation of file modification
times.
[17:20:17] <repolainen> есть еще тема заюзать find -print "дата"
[17:20:20] <repolainen> и грепнуть по ней
[17:20:24] <repolainen> с любой точностью
[17:21:27] <repolainen> find . -printf "%a\n" | grep чётам
[17:47:45] andrew_b вышел из конференции
[17:52:59] ASM вышел из конференции
[17:53:00] ASM зашёл в конференцию
[18:10:32] <iliamaslakov> тогда потом дату отрезать надо
[18:11:32] <repolainen> может какой красивше форматарг есть
[18:12:21] <repolainen> там наерна и %Y-%m-%d юзать можно
[18:12:37] <repolainen> strftime то сё
[18:30:12] ASM вышел из конференции
[18:31:54] ASM зашёл в конференцию
[19:36:10] slavazanko/h зашёл в конференцию
[20:05:36] iliamaslakov вышел из конференции: Machine going to sleep
[20:22:38] slavazanko/h вышел из конференции
[20:23:36] slavazanko/h зашёл в конференцию
[21:04:05] iliamaslakov зашёл в конференцию
[21:26:39] slavazanko/h вышел из конференции
[21:27:17] slavazanko/h зашёл в конференцию
[22:16:04] iliamaslakov вышел из конференции: Machine going to sleep
[22:50:47] slavazanko/h вышел из конференции
[22:51:28] slavazanko/h зашёл в конференцию
[23:25:09] repolainen вышел из конференции
Powered by freQ Powered by Python Valid XHTML 1.0 Transitional Valid CSS!