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

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

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

Maz (26-09-2022 12:52): FAR Manager (часть 7)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 200

   

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Far Manager
 
   

 
Предыдущие топики:  1 2 3 4 5  
 
Где взять последнюю версию?
На странице загрузки скачайте MSI-инсталлятор стабильной сборки нужной вам разрядности (32 или 64 бита) или дистрибутив в виде 7z-архива и установите/распакуйте в любую папку (FAR портабелен и может работать без установки).
Там же на свой страх и риск можно взять наиболее свежую "ночную" сборку (в ночных сборках устраняются выявленные недоработки, добавляются новые функции, но могут содержаться и серьёзные ошибки).
Архив всех предыдущих ночных сборок FAR
Last release на github - собирается практически сразу (в течение получаса) после каждого коммита.
 
Общие сведения о совместимости FAR и плагинов
 
Можно воспользоваться одной из пользовательских сборок FAR Manager
Вопросы, касающиеся сборок, следует задавать непосредственно их авторам, а не на официальном форуме.
 
Где взять дополнительные плагины, скрипты и макросы?
Плагринг. В настоящее время большинство авторов (возможно, уже и все) выкладывают плагины здесь. Кроме плагинов здесь появляется всё относящиеся к FAR: дополнения, консольные шрифты, скрипты и пр.
Анонсы плагинов на официальном форуме. Даже если автор не выкладывает по каким-либо причинам плагин на плагринге, он может дать анонс в этой теме.
Полезные скрипты и макросы.
Шрифт TTF, аналог Terminal 10x18
 
Инструкции по сборке ФАРа из исходников
Набор для самостоятельной сборки ФАРа
Как собрать FAR самостоятельно (старая инструкция)  
 
Ссылки на устаревшие версии
 
Прочее
Портабелизация в FAR 3 плагинов для FAR 1
Выдержка из 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, иначе плагин не будет загружен.
* Блондинку на скриншоте зовут Tommie Jo.

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

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

Всего записей: 39148 | Зарегистр. 26-02-2002 | Отправлено: 17:36 15-01-2020 | Исправлено: Luber, 12:33 31-05-2022
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно, но тогда результат нужно выводить на временную панель, а я ей не пользуюсь - стрёмная она - перепутаешь и удалишь не с неё, а в FS, поднимай потом файлы, папки R-Studio - в сад.

Всего записей: 3693 | Зарегистр. 16-06-2007 | Отправлено: 20:06 21-07-2021 | Исправлено: Alexyz21, 20:07 21-07-2021
shmuz

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

Цитата:
на временную панель, а я ей не пользуюсь - стрёмная она - перепутаешь и удалишь не с неё, а в FS

Фар ведь запрашивает подтверждение удаления, это уже надо дважды облажаться, чтобы по ошибке удалить физический файл.
Временной панелью пользуюсь постоянно и не помню, чтобы что-то не то удалил.

Всего записей: 1905 | Зарегистр. 09-03-2012 | Отправлено: 20:20 21-07-2021
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WWWaiyter
 
не я его писал, но могу свой сваять или Lua скрипт сделать для той же цели. Нужно? Если Да, скажи и немного подожди - напишу.
 
 
Добавлено:
Alexyz21
 
Так и на реальной панели не глядя можно не то стереть, а это уже невнимательность. shmuz верно сказал - временная панель безопасна если не жать не глядя ShiftF8/F8. Чтобы удалить с неё объект нужно нажать F7 и только из выводимого на временной панели списка будут удалены или текущий или все выделенные на ней объекты, а на реальной ФС все они останутся.  


----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 34483 | Зарегистр. 31-07-2002 | Отправлено: 20:28 21-07-2021
WWWaiyter



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Victor_VG, не помешает, хочу только русский язык оставить в сабже.. ))

Всего записей: 4355 | Зарегистр. 26-12-2019 | Отправлено: 21:32 21-07-2021
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WWWaiyter
 
Сделаю и пришлю, не проблема.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 34483 | Зарегистр. 31-07-2002 | Отправлено: 01:55 22-07-2021
kraeved



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
По клавише F2 выходит меню пользовательских макросов, нажатие там Ins приводит к созданию макроса.
Если я хочу обработать командой выбранный файл, то заменяю имя файла на "!\!.!", а что написать, чтобы
Фар показал диалоговое окно для ввода текста, который далее подставил в команду?

Всего записей: 1000 | Зарегистр. 01-03-2003 | Отправлено: 07:21 23-07-2021
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
kraeved
F2 - F1 - ткнуть ссылку метасимволы и почитать про !?<title>?<init>!

Всего записей: 12833 | Зарегистр. 11-03-2002 | Отправлено: 07:39 23-07-2021
kraeved



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Pasha_ZZZ
Спасибо, получилось.
В частности, макрос powershell -c '!?Enter date?!'.split('-')[2..0] -join '-' обратил 01-03-2003 в 2003-03-01.
Товарищи, а как переписать этот макрос на Lua (с которым дружит Фар), чтобы обойтись без PowerShell?

Всего записей: 1000 | Зарегистр. 01-03-2003 | Отправлено: 14:35 23-07-2021 | Исправлено: kraeved, 14:40 23-07-2021
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved
если нужно переформатировать дату из dd-mm-yyyy в yyyy-mm-dd, то можно так:
lua:('!?Enter date?!'):gsub('(%d%d-)%-(%d%d-)%-(%d%d+)','%3-%2-%1')

Всего записей: 3693 | Зарегистр. 16-06-2007 | Отправлено: 15:06 23-07-2021 | Исправлено: Alexyz21, 15:50 23-07-2021
kraeved



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
К сожалению, ваш вариант выдаёт ошибку:
[string "'15-07-2021':gsub('(%d%d-)%-(%d%d-)%-(%d%d+)'..."]:1: unexpected symbol near ''15-07-2021''
Если использовать группы, то работает lua:print(string.gsub('!?Enter date?!', '(..)(....)(....)', '%3%2%1'))
Возможно, кто-то предложит вариант покороче, всё-таки Олимпиада на дворе — время для прорывов.
 
Пока остановился на lua:print(('!?Enter date?!'):gsub('(%d*)-(%d*)-(%d*)','%3-%2-%1'),'')

Всего записей: 1000 | Зарегистр. 01-03-2003 | Отправлено: 15:39 23-07-2021 | Исправлено: kraeved, 16:18 24-07-2021
shmuz

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

Цитата:
Возможно, кто-то предложит вариант покороче

Сильно покороче не получится, а убрать слово string и использовать двоеточие как у Alexyz21 сократит текст на 6 символов.

Всего записей: 1905 | Зарегистр. 09-03-2012 | Отправлено: 15:50 23-07-2021
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved, поправил, () забыл

Всего записей: 3693 | Зарегистр. 16-06-2007 | Отправлено: 15:51 23-07-2021
kraeved



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Макрос выше, использующий PowerShell, мог отдать результат в буфер обмена с помощью | clip на конце.
Огорчало мигание окна во время запуска. А тут надо менять lua:print(...) на lua:far.CopyToClipboard(...), верно?

Всего записей: 1000 | Зарегистр. 01-03-2003 | Отправлено: 16:21 23-07-2021 | Исправлено: kraeved, 16:27 23-07-2021
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shmuz
Есть ли возможность исполнять в луа куски ассемблернного кода, либо скомпилированных кусков кода типа Tiny C, обмениваться данными между ними?

Всего записей: 3693 | Зарегистр. 16-06-2007 | Отправлено: 16:47 23-07-2021
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved Верно.
Alexyz21 Мне такая возможность неизвестна.
 

Всего записей: 1905 | Зарегистр. 09-03-2012 | Отправлено: 16:53 23-07-2021
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kraeved
 
1) Мелькание устраняется добавлением первым символом комстроки знака "@". Например:
 
если:
 
lua:test.lua --- мелькает;
 
меняем на  
 
@lua:test.lua --- мелькание подавлено  
 
2) Да, используем mf.clip() - она проще в управлении, хотя сделает то же - передать/считать данные в/из буфера обмена.
 
 
Добавлено:
Alexyz21
 
Вставка ассемблерного кода не столь простая задача, но иногда необходимая, например для связи написанных на несовместимых по API языках кусков программы или в задачах реального времени. А так к ней прибегают редко из-за трудоёмкости кодирования.  
 
С Луа/Моон если использовать ассемблерные вставки, то придётся или компилировать ассемблерный код "на лету", что снизит общую скорость программы, или вызывать готовые бинарники, что по смыслу равносильно работе с FFI либо комстрокой.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 34483 | Зарегистр. 31-07-2002 | Отправлено: 16:54 23-07-2021 | Исправлено: Victor_VG, 16:55 23-07-2021
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Почему налету? - Скомпилировать чем-нибудь типа FASM быстрый кусок ассемблерного кода в модуль, подключить его к нашему луа скрипту и получить удобство и скорость в 1 флаконе. Тоже касается и С кода - каким-нибудь Tiny C, либо Digital Mars скомпилировать модуль - красота.

Всего записей: 3693 | Зарегистр. 16-06-2007 | Отправлено: 17:55 23-07-2021
kraeved



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Victor_VG
@powershell -c '!?Enter date?!'.split('-')[2..0] -join '-' | clip и powershell -c … мигают одинаково,
отличие первого варианта лишь в том, что в консоли не упоминается запущенная команда.
 
Замена lua:far.CopyToClipboard(...) на lua:mf.clip(...) не работает — работает lua:mf.clip(1, ...)
Надеюсь, знание этой детали сэкономит время и нервы тем, кто будет читать тему позднее.
 
А что такое mf, что сокращали?

Всего записей: 1000 | Зарегистр. 01-03-2003 | Отправлено: 17:58 23-07-2021 | Исправлено: kraeved, 18:03 23-07-2021
Alexyz21



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

Цитата:
А что такое mf, что сокращали?

библиотека функций макро в фар.
 
у меня lua:far.CopyToClipboard("zzz") помещает zzz в клипбоард.

Всего записей: 3693 | Зарегистр. 16-06-2007 | Отправлено: 18:13 23-07-2021
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
В случае предкомпиляции это готовый бинарник, а значит по смыслу работы с ним аналог FFI/комстроки.
 
kraeved
 
mf - сокращение от Macro Function описанное в мануале LuaFar. И естественно, что вызов mf.clip() должен быть развёрнут т.к. "()" в данном случае указывают что это функция которой передаются параметры. Такая форма записи общепринята для того, чтобы мы видели что имеем дело не с переменной или оператором входного языка, а с функцией. Например:

Код:
      if sem then
       local hsum,cbs = "hashsum";
       if tg == "f" then
        if fca > 1 then
         hsum = ""..dsv.."\\".."hashsum"..ext..""
        else
         hsum = ""..dsv.."\\"..win.GetFileInfo(name).FileName..ext..""
        end;
        if Panel.FExist(hsum,0) >= 1 then
         win.DeleteFile(hsum)
        end;
        local sum = io.open(hsum,"wb");
        if sum ~= nil then
         sum:write(suma);
         sum:flush();
         sum:close();
        else
         local dMsg="Can\'t write hash to file. Do your like copy it to clipboard?\nAlso hash is be show on screen.";
         if far.Message(dMsg,"Can\'t write hash file",";OkCancel","w",nil,nil) == 1 then
          cbs=mf.clip(5,1);
          mf.clip(suma);
          if cbs == 2 then
           mf.clip(5,2)
          end;
         end;
          far.Show(suma);
        end;
       elseif tg == "c" then
        cbs = mf.clip(5,1);
        mf.clip(1,suma);
        if cbs == 2 then
         mf.clip(5,2)
        end;
       else
        far.Show(suma)
       end;
 
 
фрагмент из IntCheckerRun.lua показывает, что hsum это переменная, а mf.clip() это функция которой мы передаём параметры изменяющие её поведение в зависимости от нужного фрагмента алгоритма.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 34483 | Зарегистр. 31-07-2002 | Отправлено: 18:18 23-07-2021 | Исправлено: Victor_VG, 18:19 23-07-2021
   

Страницы: 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 200

Компьютерный форум Ru.Board » Компьютеры » Программы » FAR Manager (часть 6)
Maz (26-09-2022 12:52): FAR Manager (часть 7)


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru