Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » FAR Manager (часть 4)

Модерирует : gyra, Maz

Maz (23-11-2017 18:57): FAR Manager (часть 5)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

   

AlViS



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

 
Предыдущие топики:  1 2 3
 
Где взять последнюю версию?
На странице загрузки скачайте MSI-инсталлятор стабильной сборки нужной вам разрядности (32 или 64 бита) или дистрибутив в виде 7z-архива и установите/распакуйте в любую папку (FAR портабелен и может работать без установки).
Там же на свой страх и риск можно взять наиболее свежую "ночную" сборку (в ночных сборках устраняются выявленные недоработки, добавляются новые функции, но могут содержаться и серьёзные ошибки).
 
Общие сведения о совместимости FAR и плагинов
 
Можно воспользоваться одной из пользовательских сборок FAR Manager
Вопросы, касающиеся сборок, следует задавать непосредственно их авторам, а не на официальном форуме.
 
Где взять дополнительные плагины, скрипты и макросы?
Плагринг. В настоящее время большинство авторов (возможно, уже и все) выкладывают плагины здесь. Кроме плагинов здесь появляется всё относящиеся к FAR: дополнения, консольные шрифты, скрипты и пр.
Анонсы плагинов на официальном форуме. Даже если автор не выкладывает по каким-либо причинам плагин на плагринге, он может дать анонс в этой теме.
Полезные скрипты и макросы.
 
Инструкции по сборке ФАРа из исходников
Набор для самостоятельной сборки ФАРа
Как собрать FAR самостоятельно (старая инструкция)  
 
Ссылки на устаревшие версии
Выдержка из Far Manager Site and Forum ‹ FAQ :
Отличия FAR 3 от FAR 2
Отличия FAR 2 от FAR 1.7
 
Примечания
 
* 13 декабря 2008 г. произошло переименование веток: ANSI-ветка 1.71 превратилась в 1.75, а Unicode-ветка получила номер версии 2.0 (вместо 1.80). Т.е. версии 1.хх это ANSI ("старый" FAR), а версии 2.хх – Unicode ("новый" FAR). Эти ветки сильно различаются по способу взаимодействия с плагинами и системой!
* При обновлении ANSI-ветки 1.хх более старые версии плагинов могут работать в более новом FAR, но более новые плагины в большинстве случаев требуют обновления FAR (см. документацию).
* Unicode-плагины в ANSI-версии FAR не работают – у них иной способ взаимодействия (API) с Far.exe, поэтому даже не пытайтесь их использовать в FAR версии ниже 1.80.
* При обновлении Unicode-версии FAR 1.80/2.0/3.0 обращайте внимание на номер сборки: следует обязательно обновить все плагины для сборок 677/680/684, иначе они не будут работать. ANSI-плагины (кроме тех, которые работают в редакторе) можно применять в Unicode-версии FAR, в меню плагинов (вызываемом по F11) они будут помечены значком [A] справа от их имени. Unicode-плагины в FAR 1.80/2.x/3.х никаким значком после имени не помечаются.
* Unicode-версия FAR 1.80/2.x/3.х требует как минимум Windows 2000, т.е. она работает только в Windows 2000/XP/2003/Vista/2008/7/8/10.
* Плагины от FAR 2 несовместимы с FAR 3 и не запустятся.
* В FAR 3 выборочно могут работать плагины от FAR 1, однако не стоит брать от FAR 1 плагины для редактора или работающие с дисками: первые портят текст в Юникоде, вторые – файловую систему.
* В любом случае разрядность плагинов должна совпадать с разрядностью FAR, иначе плагин не будет загружен.

 
Принципиальные различия между hard link, symlink и junction
Как устранить взаимное влияние запущенных копий FAR в памяти
Как запустить Lua/MoonScript из FAR
Как правильно добавить в программу нужную DLL (или иную зависимость), чтобы при обновлении ОС или иных программ она не перестала работать
 
Общие правила обращения за помощью
  1. Решаете задачу самостоятельно, при необходимости ищете ответы в теме и других источниках. Предварительное изучение документации обязательно!
  2. Если ваших знаний не хватает, то задаёте вопрос в форуме и строго следуете инструкциям тех людей, которые вам помогают.
  3. Если решить задачу, следуя пунктам 1 и 2, не удалось, то задаёте вопрос разработчикам.

Невыполнение этих правил ведёт к тому, что никто не станет помогать решать вашу задачу.

Всего записей: 2402 | Зарегистр. 03-01-2002 | Отправлено: 11:10 07-11-2015 | Исправлено: Victor_VG, 04:33 26-09-2017
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Angel_Ka

Цитата:
Не могли бы Вы усовершенствовать макрос так, чтобы число исключаемых начальных символов можно было бы задавать интерактивно, "на лету", без необходимости редактировать для этого сам макрос?  
Это можно сделать с помощью функции far.InputBox и обработки её результата.

Цитата:
Нельзя ли кроме того сделать сортировку с исключением начальных символов, предшествующих первому встречающемуся в имени файла знаку пробела, подчёркивания, минуса и т.п. ?  
Конечно, можно. Но по обеим хотелкам есть одно "но" - у меня нет времени, тем более, что этим скриптом пользуется, может быть только 2-3 человека.
 
 
 

Всего записей: 1857 | Зарегистр. 09-03-2012 | Отправлено: 16:39 15-02-2016 | Исправлено: shmuz, 16:40 15-02-2016
SSchumi

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Отлично, теперь из тотала как и раньше запускается, но ещё и хоткей работает.
start /B ConEmu64.exe /dir FarPath /icon FarPath\far.exe /cmd far.exe /w %*

Всего записей: 752 | Зарегистр. 06-04-2006 | Отправлено: 16:58 15-02-2016 | Исправлено: SSchumi, 18:47 15-02-2016
Angel_Ka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shmuz
 
Благодарю Вас за оперативный ответ!
 
Уже то хорошо, что функционал макроса CustomSortExample.lua в принципе расширить можно!
 
Будем надеяться, что кому нибудь из спецов по макросам это хотя бы из спортивного интереса сделать захочется.  
 

Всего записей: 585 | Зарегистр. 20-05-2007 | Отправлено: 17:02 15-02-2016
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Angel_Ka
Сортировки файлов в панели:
1. С вводом Offset при нажатии шорката, если вместо ввода числа нажать Enter, то будет использовано прежнее значение. Стартовое значение (по умолчанию) 0, т.е. обычная сортировка по имени.
2. C вводом Symbols аналогично п.1, значение по умолчанию "-_ ".
п.1 и п.2 с игнорированием символов - игнорируется то, что Майкрософт считает символами.
3. По группе цифр в имени файла с поиском в прямом, либо обратном направлении.
4. По подстроке, захваченной регэспом. Регэкспы можно комментировать, в этом случае первую строку начинаем с -- (2-х минусов), далее комментарий, затем перевод строки и на второй строке пишем сам регэксп. Порядок сортировки можно изменить, добавив в конец регэкспа конструкцию {!:...}, где вместо ... указываем порядок возврата захваченных групп, например {!:$3$2$1}. Для поиска каждой группы по всей строке вне зависимости от их позиции, используется конструкция {?:pat1}{?:pat2}{?:pat3}{!:$3$2$1}, где patN - характерный паттерн группы, захватывается первый совпавший.
5. По функции пользователя. Примеры:
Код:
-- by FileName length
return _G.sFuncTbl.ln1-_G.sFuncTbl.ln2

Код:
-- by FullPath length
local ffi = require'ffi'
return tonumber(ffi.C.wcslen(_G.sFuncTbl.fp1))-tonumber(ffi.C.wcslen(_G.sFuncTbl.fp2))

Код:
-- by level Folder
local ffi,BS = require'ffi',[[\\]]
local _,x1 = regex.gsubW(ffi.string(_G.sFuncTbl.fp1,tonumber(ffi.C.wcslen(_G.sFuncTbl.fp1))*2),BS,"")
local _,x2 = regex.gsubW(ffi.string(_G.sFuncTbl.fp2,tonumber(ffi.C.wcslen(_G.sFuncTbl.fp2))*2),BS,"")
return x1-x2
Рапорт позволяет оценить количество вызовов функции сравнения и затраченное время для различных режимов сортировки и их настроек.
 
Быстрая помощь по назначению поля диалога доступна по F1.
Panel.CustomSortByName.lua Подробнее...

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 17:36 15-02-2016 | Исправлено: Alexyz21, 19:18 01-05-2016
Angel_Ka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
Большое спасибо!
Первая хотелка по макросу реализована фантастически быстро!
И вторую осилите?

Всего записей: 585 | Зарегистр. 20-05-2007 | Отправлено: 18:06 15-02-2016
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
нет, нужен мастер Но если кто-нибудь подскажет, как из p1.FileName получить обычную строку, содержащую FileName, то можно попробовать.

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 18:43 15-02-2016 | Исправлено: Alexyz21, 19:05 15-02-2016
wseventeen

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если получать обычную строку, будут проблемы с производительностью.
Лучше воспользоваться, например, wcspbrk() для поиска разделителей.

Всего записей: 1415 | Зарегистр. 20-12-2007 | Отправлено: 19:13 15-02-2016
Angel_Ka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
Однако мастерами по макросам круче Вас кажется можно считать только shmuz и Jon_Dow. И оба они сейчас, похоже, круто заняты. Так что теперь вся надежда на появление новой звезды или на Ваш творческий рост...
 

Всего записей: 585 | Зарегистр. 20-05-2007 | Отправлено: 19:36 15-02-2016
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну Вы сравнили - я против означенных товарищей, этот - палец, во!

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 19:46 15-02-2016
Angel_Ka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не расслабляйте свой потенциал уничижением. Планка задана. И это полезный стимул. Удачи Вам всем нам на пользу!

Всего записей: 585 | Зарегистр. 20-05-2007 | Отправлено: 20:04 15-02-2016
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Angel_Ka
ваша лесть направлена не в ту сторону, переориентируйте её на wseventeen, он сможет.

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 20:18 15-02-2016
Angel_Ka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Это просто шутки.  
 
И то, что спектр возможностей уважаемого wseventeen намного шире, чем макросы, и так очевидно.

Всего записей: 585 | Зарегистр. 20-05-2007 | Отправлено: 20:25 15-02-2016
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хорошо бы под Индикатор сортировки выделить хотя бы 2 символа, тогда прямую и обратную сортировки можно было бы отображать +- , а первым символом шло бы обозначение режима сортировки.

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 21:14 15-02-2016
Angel_Ka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В Вашем макросе слэши я заменил на nN (работаем, как правило, в русской раскладке). Вот и получается n - это прямая сортировка (начинать с мЕньших номеров), а N - обратная (начинать с бОльших  номеров). Как и в нативных режимах сортировки.

Всего записей: 585 | Зарегистр. 20-05-2007 | Отправлено: 22:00 15-02-2016
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Angel_Ka, обновил.

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 13:04 16-02-2016
Angel_Ka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
ЗдОрово!  
Бегло ознакомился с новой версией макроса. И по первому впечатлению кажется пока наблюдаю не совсем то, что я сам себе представлял. Но надо пробовать основательнее на том материале, который есть на практике. Потому что мои ожидания ведь могут оказаться и заблуждением. А то, что получилось, может оказаться весьма пригодным, хоть и в другом, не ожидаемом раньше, ключе. Поэксперементирую больше, и доложусь. В любом случае Большое спасибо!
 
Но приметил также и пару явных шероховатостей: 1) если диалог Input Box сбросить по Esc, то он всё равно срабатывает как будто по Enter; 2) независимо от того, выбираю ли я в меню Custom: by name from 2nd word или Custom: by name from offset, индицируются соответственно O или o, а не слэши.

Всего записей: 585 | Зарегистр. 20-05-2007 | Отправлено: 16:13 16-02-2016
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
п.1 - поправил, п.2 -  такова текущая реализация в FAR3, дескрипшены, индикаторы и др. поля из макроса не перечитываются, соответственно в меню и пр. элементах будет лишь то значение, с которым FAR3 стартовал.  
 
Хотел бы также отключать изменение направления сортировки, если изменяем OFFSET, но как это реализовать из имеющейся доки не вкурил. Хотел изменять на лету RevertSorting - упёрся в п.2.
 
Если кто-то знает как победить вышеназванные вопросы - пусть поскажет.

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 17:40 16-02-2016 | Исправлено: Alexyz21, 18:07 16-02-2016
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
дескрипшены, индикаторы и др. поля из макроса не перечитываются

Индикатор не является полем макроса, и он может быть изменён функцией Panel.LoadCustomSortMode.

Всего записей: 1857 | Зарегистр. 09-03-2012 | Отправлено: 18:07 16-02-2016
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shmuz

Цитата:
он может быть изменён функцией Panel.LoadCustomSortMode.

- Как? Беру
Код:
Panel.LoadCustomSortMode (Mode, {
  Description = Description; Indicator = Indicator;
  Compare = function(p1,p2,opt) ... end;})

меняю в теле макроса
Код:
action=function() Description,Indicator = новое_значение,новое_значение
- FAR игнорит.

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 18:10 16-02-2016 | Исправлено: Alexyz21, 18:14 16-02-2016
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Хотел изменять на лету RevertSorting - упёрся в п.2.  

Но в оригинальном макрофайле оно же происходит на лету и никуда не упирается.

Всего записей: 1857 | Зарегистр. 09-03-2012 | Отправлено: 18:11 16-02-2016
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

Компьютерный форум Ru.Board » Компьютеры » Программы » FAR Manager (часть 4)
Maz (23-11-2017 18:57): FAR Manager (часть 5)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru