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

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

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

Post by Shmuel »

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: 1760
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 5 times
Contact:

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

Post by Alexey Samlyukov »

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

Shmuel
Posts: 6151
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 320 times

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

Post by Shmuel »

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

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

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

Post by Alexey Samlyukov »

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

Code: Select all

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

Denis
Posts: 1431
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 9 times
Been thanked: 3 times

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

Post by Denis »

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

Shmuel
Posts: 6151
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 320 times

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

Post by Shmuel »

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

Denis
Posts: 1431
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 9 times
Been thanked: 3 times

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

Post by Denis »

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

Denis
Posts: 1431
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 9 times
Been thanked: 3 times

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

Post by Denis »

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

Shmuel
Posts: 6151
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 320 times

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

Post by Shmuel »

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

Shmuel
Posts: 6151
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 320 times

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

Post by Shmuel »

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

Denis
Posts: 1431
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 9 times
Been thanked: 3 times

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

Post by Denis »

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

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

Shmuel
Posts: 6151
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 320 times

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

Post by Shmuel »

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

Denis
Posts: 1431
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 9 times
Been thanked: 3 times

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

Post by Denis »

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

Shmuel
Posts: 6151
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 320 times

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

Post by Shmuel »

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

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

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

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

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

Post by Alexey Samlyukov »

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

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

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

Post by Alexey Samlyukov »

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           ║
╚═══════════════════════════════════╝

Post Reply

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