Пользовательский режим сортировки для панелей

Здесь обсуждается всё, что касается макросов.
Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Shmuel » Wed 14 Aug, 2013 06:01

Latest post of the previous page:

А, теперь понятно, я-то автосэйвом не пользуюсь. Это пока не предусмотрено.

Можно сделать отдельный автостартующий макрос с каким-нибудь несуществующим ключом, типа key="foo".
Если данная сортировка нужна на обеих панелях, то сделать так:
  1. action=function()
  2.   Panel.SetCustomSortMode(100,0)
  3.   Panel.SetCustomSortMode(100,1)
  4. end;

User avatar
Alexey Samlyukov
Posts: 1759
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 2 times
Contact:

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Alexey Samlyukov » Wed 14 Aug, 2013 07:50

ок. сделал так

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Shmuel » Wed 14 Aug, 2013 08:03

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

User avatar
Alexey Samlyukov
Posts: 1759
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 2 times
Contact:

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Alexey Samlyukov » Wed 14 Aug, 2013 08:08

добавил еще макрос:

Code: Select all

Macro {
  description="Sort files with StrCmpLogicalW";
  area="Shell";
  key="CtrlShiftF12";
  action=function()
    Panel.CustomSortMenu()
  end;
}

Denis
Posts: 1392
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 2 times
Been thanked: 2 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Denis » Wed 14 Aug, 2013 08:33

Попробовал использовать кастомную сортировку из примера Alexey Samlyukov, но Far ругается. lua-jit собран под VS2012 из исходников http://luajit.org/git/luajit-2.0.git, Far так же собран VS2012, Far 3.0 build 3610 x64:

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Shmuel » Wed 14 Aug, 2013 08:39

Denis, установите сегодняшнюю ночную сборку. У вас явно не последняя версия плагина LuaMacro.

Denis
Posts: 1392
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 2 times
Been thanked: 2 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Denis » Wed 14 Aug, 2013 08:44

У меня последняя версия LuaMacro.dll 3.0.225.0
Для теста заменил её на версию из Far30b3608.x64.20130814.7z
Ошибка осталась той же.

Denis
Posts: 1392
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 2 times
Been thanked: 2 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Denis » Wed 14 Aug, 2013 08:45

У меня lua5.1.dll не референсит msvcrt.dll

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Shmuel » Wed 14 Aug, 2013 11:13

Denis wrote:У меня lua5.1.dll не референсит msvcrt.dll
Да, есть проблема. Есть уже и решение (сейчас обсуждаю это на форуме LuaJIT, подожду ещё ответов).

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Shmuel » Wed 14 Aug, 2013 14:10

Denis, можете попробовать взять сейчас panelsort.lua из репозитория, по идее будет работать.

Denis
Posts: 1392
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 2 times
Been thanked: 2 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Denis » Wed 14 Aug, 2013 14:22

Shmuel wrote:Denis, можете попробовать взять сейчас panelsort.lua из репозитория, по идее будет работать.
Спасибо! Теперь работает.

Хочу лишь уточнить, что у меня lua5.1.dll имеет в зависимостях только KERNEL32.dll.

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Shmuel » Wed 14 Aug, 2013 14:42

Denis wrote:Хочу лишь уточнить, что у меня lua5.1.dll имеет в зависимостях только KERNEL32.dll.
Такого быть не может, msvcr100.dll тоже должна быть в зависимостях. Если нет - приложите длл, дайте глянуть.

Denis
Posts: 1392
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 2 times
Been thanked: 2 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Denis » Wed 14 Aug, 2013 14:50

Я сам собирал.
Last edited by Denis on Wed 14 Aug, 2013 15:09, edited 1 time in total.

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Shmuel » Wed 14 Aug, 2013 15:02

Понял, статическая сборка. Это чревато при использовании внешних DLL-модулей (могут быть падения).

Update
1. Испробовал эту DLL на своих тестах (Win7 x64) - падений не было.

2. Статическая сборка делает невидимой библиотеку run-time для внешних программ и, очевидно, сама библиотека LuaJIT FFI не может этим рантаймом воспользоваться. Это весьма неудобно. Имеет смысл проверить, можно ли при статической сборке заставить lua5.1.dll "реэкспортировать" эти функции (например wcscmp). Если можно, то после этого - проверить, увидит ли FFI эти функции.

User avatar
Alexey Samlyukov
Posts: 1759
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 2 times
Contact:

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Alexey Samlyukov » Wed 21 Aug, 2013 03:04

для билда 3620 можно теперь таким скриптом отделаться

User avatar
Alexey Samlyukov
Posts: 1759
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 2 times
Contact:

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Alexey Samlyukov » Tue 03 Sep, 2013 07:29

Shmuel

просьба, меню кастомной сортировки показывать в стандартном диалоге, т.е. через сепаратор после основных. привык я мышой по символу менять сортировочку. очччень прошу :)

Code: Select all

╔═════════════ Sort by ═════════════╗
║  Name                   Ctrl-F3   ║
║  Extension              Ctrl-F4   ║
║  Write time             Ctrl-F5   ║
║  Size                   Ctrl-F6   ║
║  Unsorted               Ctrl-F7   ║
║  Creation time          Ctrl-F8   ║
║  Access time            Ctrl-F9   ║
║  Change time                      ║
║  Descriptions           Ctrl-F10  ║
║  Owner                  Ctrl-F11  ║
║  Allocated size                   ║
║  Number of hard links             ║
║  Number of streams                ║
║  Size of streams                  ║
║  Full name                        ║
║  Custom data                      ║
╟───────────────────────────────────╢
║ + Sort files with StrCmpLogicalW  ║
╟───────────────────────────────────╢
║  Numeric sort                     ║
║  Uppercase before lowercase       ║
║  Use sort groups        Shift-F11 ║
║  Show selected first    Shift-F12 ║
║√ Show directories first           ║
╚═══════════════════════════════════╝

Shmuel
Posts: 5236
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 16 times
Been thanked: 152 times

Re: Сортировка каталогов (папок) всегда по алфавиту

Post by Shmuel » Tue 03 Sep, 2013 16:35

Alexey Samlyukov wrote:просьба, меню кастомной сортировки показывать в стандартном диалоге, т.е. через сепаратор после основных.
Прямо сейчас нет времени. Имеет смысл поместить виш на мантис, в раздел макросов.

Post Reply

Return to “Обсуждение макросов”