Как удалить запись из истории команд?

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

Latest post of the previous page:

Ау, разработчки! Имеет ли соответствующий патч реальные шансы быть принятым? Или и браться не стоит?
User avatar
zg
zero-gravity
Posts: 6036
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Re: Как удалить запись из истории команд?

Post by zg »

fml2 wrote:Ау, разработчки! Имеет ли соответствующий патч реальные шансы быть принятым? Или и браться не стоит?
неоднократно говорилось, что нет.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

zg wrote:
fml2 wrote:Ау, разработчки! Имеет ли соответствующий патч реальные шансы быть принятым? Или и браться не стоит?
неоднократно говорилось, что нет.
Вы говорите официально от имени всех? Из этой ветки я понял, что (по крайней мере насчет истории) мнение не так уж однозначно.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

Я добавил в хотелку http://bugs.farmanager.com/view.php?id=2529 два патча, которые должны привести к тому, что при вызове settings:Enum для каждой записи будет возвращаться и Id. Но опробовать патчи я не смог, т.к. не знаю, как собирать LuaFar. Может, кто-нибудь поможет?

Сам Far (с патчем) собрать я смог без каких-либо проблем.
2useven10
Posts: 5232
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 315 times

Re: Как удалить запись из истории команд?

Post by 2useven10 »

а какие проблемы с luafar?
в visual studio берёте plugins\luamacro\luafar3.vcxproj и собираете.
make файлы тоже есть и для vc и для gcc.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

Спасибо за подсказку. Я просто не знал, как вообще обращаться с "решениями"/проектами в VC++. Загрузил в хотелку подправленную версию патча для LuaFar. Вроде все работает как надо, т.е. теперь ID доступен в Луа. Осталось добавить функцию удаления.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

@shmuel: Я случайно заметил, что в файле farapi.lua дублируется файл plugin.hpp. Нельзя ли / не лучше ли было бы подгружать его с помощью #include? А то получается, что при изменении plugin.hpp нужно делать изменения в трех местах: Фар, Far-Plugins и farapi.lua.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Как удалить запись из истории команд?

Post by Shmuel »

fml2 wrote:@shmuel: Я случайно заметил, что в файле farapi.lua дублируется файл plugin.hpp. Нельзя ли / не лучше ли было бы подгружать его с помощью #include? А то получается, что при изменении plugin.hpp нужно делать изменения в трех местах: Фар, Far-Plugins и farapi.lua.
1. Не дублируется. Посмотрите внимательнее.
2. LuaJIT не поддерживает #include.
3. Для автоматического преобразования нужен скрипт, который ещё не написан.
4. В plugins\common\unicode\plugin.hpp изменений делать не надо, для этого есть update_headers.bat.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

Shmuel wrote:4. В plugins\common\unicode\plugin.hpp изменений делать не надо, для этого есть update_headers.bat.
Спасибо, не знал. Попробовал запустить, но выходит сообщение об ошибке, что какой-то файл не найден (не говорится, какой). Так что сделаю изменение вручную (тем более, что оно очень маленькое).

Кроме того, я заглянул в скрипт update_headers.m4 и увидел, что там делается svn commit. Не слишком ли это? Ведь, возможно, я в итоге и не захочу "коммитить" сделанные изменения? ОК, у меня нет прав на это, так что я ничего испортить не могу, но все равно мне это кажется немного странным.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

И еще вопросик: где находятся исходники luafar_manual? Я бы включил соответствующие изменения в патч.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Как удалить запись из истории команд?

Post by Shmuel »

fml2 wrote:где находятся исходники luafar_manual?
enc\enc_lua\luafar_manual.tsi
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: Как удалить запись из истории команд?

Post by DrKnS »

Имеется в виду, что заголовочные файлы в plugins/common/unicode править руками не надо, это часть проекта Far и править надо там. А если ваши изменения будут приняты, то принявший запустит вышеупомянутый батник и изменения попадут куда надо.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

DrKnS wrote:Имеется в виду, что заголовочные файлы в plugins/common/unicode править руками не надо, это часть проекта Far и править надо там. А если ваши изменения будут приняты, то принявший запустит вышеупомянутый батник и изменения попадут куда надо.
Понятно. Точнее, не совсем. Ведь мне, для того, чтобы сделать изменения в LuaFar, уже требуется измененный Plugins/plugin.hpp. Т.е. получается, что менять его все-таки сначала надо вручную. Или предполагается, что сначала меняется и коммитится сам Фар, а потом уже плагины? Т.е. какое-то время плагины будут "сломаны"? Я хотел все делать в одном патче, чтобы все работало всегда.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: Как удалить запись из истории команд?

Post by DrKnS »

Или предполагается, что сначала меняется и коммитится сам Фар, а потом уже плагины?
Разумеется. Нельзя пользоваться интерфейсом и функциональностью, которых ещё нет, поэтому начинать надо с фара, а не с плагина.
Ну и желательны законченные изменения, а не обрывки.
Т.е. какое-то время плагины будут "сломаны"?
С чего бы это?

Но, как уже замечалось, идея сомнительна и не находит понимания в сердцах разработчиков.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

Понятно. Ладно, если разрыв в функционировании принимается, то пожалуйста. Хотя лично я старался бы его избежать.

Насчет сомнительнсти: в чем заключается сомнительность предоставить плагинам возможность удалять записи из истории? Из всего предыдущего обсуждения я этого так и не понял.

Ладно, попробую сделать дальше, а там посмотрим.
fml2
Posts: 534
Joined: Mon 09 Jul, 2012 22:10
Has thanked: 2 times
Been thanked: 8 times

Re: Как удалить запись из истории команд?

Post by fml2 »

Что-то я не очень пойму, куда бы в плагиновский АПИ засунуть новую функцию для удаления записей из истории. Поначалу подумал, что можно "пристроиться" к apiSettingsControl, но потом подумал, что это не совсем то, что надо (т.к. опасно) и что лучше бы сделать новую функцию, что-нибудь типа

Code: Select all

apiHistoryControl(const wchar_t *HistoryName, FAR_HISTORY_CONTROL_COMMANDS Command, intptr_t Param1, void* Param2);
FAR_HISTORY_CONTROL_COMMANDS (такого еще нету, надо будет создать) может, например, содержать команды "Удалить" (с ID в качестве параметра) и "Удалить все недоступные" (без параметров).

Какие будут мнения -- исходя из того, что эта функциональность нужна? Саму нужность давайте обсудим отдельно.
Post Reply

Return to “Нужна помощь”