Фильтры

Хотите говорить о Far и не знаете, куда обратиться?
User avatar
HaRT
Moderator
Posts: 9234
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 93 times
Been thanked: 195 times

Post by HaRT »

Latest post of the previous page:

“Вот спасибо тебе, дедушка, за солнышко!” ©

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

User avatar
HaRT
Moderator
Posts: 9234
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 93 times
Been thanked: 195 times

Post by HaRT »

t-rex wrote:HaRT
Сделай свою раскраску под новую версию, если всё ок то я это комичу в фар.
Сделал: Атрибуция 2.1.
Вроде работает, как и пред(по)лагалось.

User avatar
t-rex
Страшный и ужасный
Posts: 4905
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 5 times
Contact:

Post by t-rex »

Теперь кто то возмётся описать это дело для хэлпа?

User avatar
t-rex
Страшный и ужасный
Posts: 4905
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 5 times
Contact:

Post by t-rex »

JlblC
Сделать фичу очень мощьной и комплексной всегда можно, но мне кажется что сила фара она в его относительной простоте. Фар всегда писался любителями для любителей и это то что лично мне в нём нравится. Тот же АПЙ фара если смотреть на него глазами серьёзного программиста вполне убогий, но зато плагины писать довольно просто и в силу этого их так много. У TC АПЙ тоже очень простой и это тоже важная часть его успеха (кроме GUI конечно). А вот другие файл менеджеры страдают очень комплексными АПЙ под которые не у кого нету сил писать плагины.

User avatar
daf
Posts: 27
Joined: Tue 18 Oct, 2005 07:37
Location: Украина, Донбасс
Contact:

Post by daf »

Прочитал ветку, но всё таки поведение раскраски мне непонятно. Я хочу такую простую вещь (которую сделал в build'e 2199, но никак не осилю в 2204) как пометка файлов с датой большей заданной.
В 2199 в меню настройки фильтров стоит (указываю только те опции которые отмечены крыжиком):
____________________________________________________________
1-й фильтр

[x] Маска: *|..
[x] Дата/Время модификации
>= 26.03.2007 00:00:00
<= . . : :
Опциональный символ пометки, [x] прозрачный
1. Обычное имя файла 2. Пометка
3. Помеченное имя файла 4. Пометка
5. Имя файла под курсором 6. Пометка
7. Помеченное под курсором имя файла 8. Пометка
[x] Продолжать обработку
В пунктах 1,3,5,7 внутри на фоне и тексте стоит [x] прозрачный
В пунктах 2,4,6,8 внутри на тексте стоит [x] прозрачный, а на фоне стоит [ ] прозрачный
[x] Продолжать обработку
____________________________________________________________
2-й фильтр

[x] Маска: *.exe
[ ] Дата/Время
* Опциональный символ пометки, [ ] прозрачный
1. Обычное имя файла 2. Пометка
3. Помеченное имя файла 4. Пометка
5. Имя файла под курсором 6. Пометка
7. Помеченное под курсором имя файла 8. Пометка
В пунктах 1-8 стоит в фоне и тексте стоит [ ] прозрачный и выставлены соответствующие цвета
[ ] Продолжать обработку
____________________________________________________________

В результате работы данной связки фильтров имеем:
Все файлы с расширением exe красятся нужным цветом (одинаково как для цвета и фона имени файла так и для опционального символа (у меня "*")). В случае если дата модификации файла больше или равна указанной дате (в моём случае 26.03.2007), то фон опционального символа выкрашивается в указанный в фильтре 1.
На билдах 2203 и 2204 я такого сделать не могу. Перепробовал кучу комбинаций для этих фильтров.
Может кто подскажет как сделать такое?

PS Вот кусок из реестра отвечающий за эти два фильтра:

Code: Select all

[HKEY_CURRENT_USER\Software\Far\Colors\Highlight\Group0]
"Mask"="*|.."
"IncludeAttributes"=dword:00000000
"NormalColor"=dword:0000ff97
"CursorColor"=dword:0000ff39
"IgnoreMask"=dword:00000000
"ExcludeAttributes"=dword:00000010
"SelectedColor"=dword:0000ff9e
"SelectedCursorColor"=dword:0000ff00
"MarkChar"=dword:0000ff20
"UseDate"=dword:00000001
"DateType"=dword:00000000
"DateAfter"=hex:00,c8,15,8d,20,6f,c7,01
"DateBefore"=hex:00,00,00,00,00,00,00,00
"UseSize"=dword:00000000
"SizeType"=dword:00000000
"SizeAbove"=hex(b):ff,ff,ff,ff,ff,ff,ff,ff
"SizeBelow"=hex(b):ff,ff,ff,ff,ff,ff,ff,ff
"UseAttr"=dword:00000000
"MarkCharNormalColor"=dword:00000f9b
"MarkCharSelectedColor"=dword:00000f90
"MarkCharCursorColor"=dword:00000f90
"MarkCharSelectedCursorColor"=dword:00000f90
"ContinueProcessing"=dword:00000001

[HKEY_CURRENT_USER\Software\Far\Colors\Highlight\Group1]
"Mask"="*.exe,*.com,*.bat,%PATHEXT%,*.cmd,*.vbs,*.vbe,*.js,*.jse,*.wsf,*.wsh,*.fwd,*.reg,*.mcp,*.msi"
"IncludeAttributes"=dword:00000000
"NormalColor"=dword:0000001a
"CursorColor"=dword:0000003a
"IgnoreMask"=dword:00000000
"ExcludeAttributes"=dword:00000000
"SelectedColor"=dword:00000000
"SelectedCursorColor"=dword:00000000
"MarkChar"=dword:00000007
"UseDate"=dword:00000000
"DateType"=dword:00000000
"DateAfter"=hex:00,00,00,00,00,00,00,00
"DateBefore"=hex:00,00,00,00,00,00,00,00
"UseSize"=dword:00000000
"SizeType"=dword:00000000
"SizeAbove"=hex(b):ff,ff,ff,ff,ff,ff,ff,ff
"SizeBelow"=hex(b):ff,ff,ff,ff,ff,ff,ff,ff
"UseAttr"=dword:00000000
"MarkCharNormalColor"=dword:00000000
"MarkCharSelectedColor"=dword:00000000
"MarkCharCursorColor"=dword:00000000
"MarkCharSelectedCursorColor"=dword:00000000
"ContinueProcessing"=dword:00000000

User avatar
HaRT
Moderator
Posts: 9234
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 93 times
Been thanked: 195 times

Post by HaRT »

daf
Поскольку со сборки 2203 в раскраске применяются настройки из последнего подошедшего фильтра, в Вашем случае фон символа из 1-ого фильтра затирается фоном символа из 2-ого фильтра. Поменяйте их (цвет фона символа) прозрачностью — должно помочь.

User avatar
daf
Posts: 27
Joined: Tue 18 Oct, 2005 07:37
Location: Украина, Донбасс
Contact:

Post by daf »

HaRT
Спасибо за совет, он помог мне выявить почему у меня ничего не получалось! Случайно получилось "покрасить" правильно, а при повторении ничего не вышло, вот и стал более подробно всматриваться и вспоминать что за чем делал и вот к чему пришёл в конце концов:

Нужно во 2-ом фильтре на 2,4,6,8 нужно поставить "галочку" прозрачность на фоне, НО обязательно чтобы независимо от этой "галочки" цвет текста и цвет фона не был чёрный одновременно на обоих!
В этом и было моё упущение - я "игрался" "галочками" не изменяя цвета опциональных символов, вот поэтому результатов и не было видно!

User avatar
daf
Posts: 27
Joined: Tue 18 Oct, 2005 07:37
Location: Украина, Донбасс
Contact:

Post by daf »

Вот сделал группу раскраски в меню фильтров и макросы для автоматизации
раскраски по дате в Far build 2203 и выше. Дата вставляется в группу раскраски
под номером 0. Можно её импортировать отдельно файлом
FarColors_daf_only_DateColor.reg в прилагаемом архиве.
Далее нужно выставить в остальных существующих фильтрах в разделе
"Цвета файлов" в пунктах 2, 4, 6. 8 ("пометка") проставить "Фон"
[x] Прозрачный. (Мою схему полностью можно глянуть в
FarColors_daf_with_DateColor.reg в прилагаемом архиве)
При старте Far выполняется макрос, который определяет переменные %%Today,
%%Yesterday, %%BeforeYesterday (сегодняшняя, вчерашняя и позавчерашняя
дата соответственно). Потом когда мы находимся на файловых панелях мы
можем нажать <Ctrl>+<Alt>+<1> для выставления в фильтре сегодняшней даты,
<Ctrl>+<Alt>+<2> для выставления в фильтре вчерашней даты,
<Ctrl>+<Alt>+<3> для выставления в фильтре позавчерашней даты (можно
запустить FarSave_daf_Macros4DateColor.reg из архива для импорта этих макросов).

Гляньте - может какие замечания/дополнения/улучшения будут?

Файлы в прилагаемом архиве:
FarSave_daf_Macros4DateColor.reg Макросы для "забивки" дат в меню фильтров
FarColors_daf_with_DateColor.reg Моя схема раскраски файлов
FarColors_daf_only_DateColor.reg Только фильтр для раскраски файлов по дате
Attachments
ColorDate4Far_All.rar
Готовый для использования набор для раскраски дат в Far
(4.38 KiB) Downloaded 269 times

User avatar
jbak
Posts: 609
Joined: Tue 04 Oct, 2005 15:01
Location: Одесса

Post by jbak »

Такое предложение:
Хотелось бы, чтобы пользовательские фильтры работали на всех панелях без исключения. Удобно применять фильтры к процессам, списку пользователей и прочему. Такое возможно в виде опции?

User avatar
t-rex
Страшный и ужасный
Posts: 4905
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 5 times
Contact:

Post by t-rex »

jbak
У плагиновой панели должен стоять флаг OPIF_USEFILTER.

User avatar
jbak
Posts: 609
Joined: Tue 04 Oct, 2005 15:01
Location: Одесса

Post by jbak »

Это-то понятно, но интересует фильтровать объекты на панелях уже существующих плагинов, где такого флага нету. Можно ли добавить принудительное фильтрование, которое будет в техинфо настраиваться?

Yegor
Posts: 1039
Joined: Mon 04 Apr, 2005 13:41
Location: San Ramon, CA / Kharkov, UA
Has thanked: 10 times
Been thanked: 22 times

Post by Yegor »

В диалогах "Пометка файлов" ([Grey+] / [Grey-]) есть кнопка Фильтр. Но как пользоваться фильтром конкретно в этом диалоге не совсем понятно.
А точнее чтобы там не выставлялось, на результат не влияет: либо выделяет все файлы, либо ничего.
Вопрос снимается, проблема была в том, что забыл поставить запятую между масками файлов в одном фильтре.
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин

User avatar
Вадим Захаренко
Posts: 922
Joined: Fri 18 Mar, 2005 08:59
Location: Беларусь, Мозырь
Has thanked: 7 times
Contact:

Post by Вадим Захаренко »

Yegor
А какие фильтры ты указываешь?
У меня все ОК

Yegor
Posts: 1039
Joined: Mon 04 Apr, 2005 13:41
Location: San Ramon, CA / Kharkov, UA
Has thanked: 10 times
Been thanked: 22 times

Post by Yegor »

Вадим Захаренко wrote:А какие фильтры ты указываешь?
У меня все ОК
Спасибо, у меня уже все ОК.
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин

User avatar
John Doe
Бюрократ
Posts: 12599
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 35 times
Been thanked: 260 times

Post by John Doe »

Откладывал до последнего обновление фара, потому что не хотелось переделывать отлаженную раскраску под "дистилляцию". Но этот момент таки настал.

Метафора дистилляции мне еще не вполне непонятна (хотя 10 раз топик перечитал), поэтому пока действую методом проб и ошибок. (Естественно ни черта не получается. :( )

Много сразу не прошу - покажите вгего лишь одну элементарную вещь:
как сделать так, чтобы все файлы размером более 500М помечались знаком ">" белого цвета?
(а цвет самих файлов при этом зависел бы от других правил раскраски)

User avatar
HaRT
Moderator
Posts: 9234
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 93 times
Been thanked: 195 times

Post by HaRT »

John Doe
Конкретный пример конфигурить лень, но главная идея в применении групп раскраски состоит в том, что последовательно сверху вниз применяются все фильтры, под чьи условия подходит файл, пока не будет применён тот из них, у которого не выставлено [x] Continue processing (ну или пока список не исчерпается). При этом если какая-то настройка transparent, то она остаётся от предыдущей применённой группы (если таковых нет, то по умолчанию).
Т.ч. имеет смысл задавать настройки раскраски, так сказать, нисходящей детализацией.

21:55
Исправлено, чтобы соответствовало действительности. Спасибо John Doe.

Post Reply

Return to “Обсуждение Far Manager”