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

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

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

Maz (15-01-2020 17:38): FAR Manager (часть 6)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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



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

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

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

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

Всего записей: 36325 | Зарегистр. 26-02-2002 | Отправлено: 18:55 23-11-2017 | Исправлено: Victor_VG, 10:00 09-09-2019
citPiks



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

Цитата:
возможно у вас будет более востребован вариант с подсветкой латиницы
На фоне массового текста русского лучше подсвечивать латиницу и наоборот. А два варианта макроса (один — латиницу подсвечивать, другой — кириллицу) может быть?

Всего записей: 360 | Зарегистр. 26-06-2016 | Отправлено: 22:01 15-08-2019 | Исправлено: citPiks, 22:04 15-08-2019
Alexyz21



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

Цитата:
два варианта макроса (один — латиницу подсвечивать, другой — кириллицу) может быть?

может - достаточно заменить маску кириллицы на латиницу и скорректировать описание, но, имхо, в вашем случае оптимальным будет вариант с подсветкой латиницы в смешанных словах, например РЮSSКИЙ, и, возможно, только с одинаковым начертанием, чтобы пропускать смешанные аббревиатуры. Но только в том случае, если Вы редактируете обычный "plain" текст в редакторе FAR.

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 22:04 15-08-2019 | Исправлено: Alexyz21, 22:12 15-08-2019
citPiks



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

Цитата:
достаточно имена масок кириллицы и латиницы обменять местами

Понятно, спасибо за подсказку.
 
Внимание!
 
Попался вариант имени файла детектируемый как e, хотя по сути должен бы быть R+E — печатьИзРедактора[print](zg)edi.moon

Всего записей: 360 | Зарегистр. 26-06-2016 | Отправлено: 22:11 15-08-2019
Alexyz21



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

Цитата:
Попался вариант имени файла детектируемый как e, хотя по сути должен бы быть R+E — печатьИзРедактора[print](zg)edi.moon

- Почему должен? - Предлагаете ИИ написать? Чтобы он мог распознавать слова, фразы, аббревиатуры на обоих языках, словари подключить? И про скорость обработки папок с большим количеством файлов не забываем. - Считаем количество кириллических букв и латиницы - каких меньше, те и ошибочные, при этом они могут перемежаться с другим языком - человек может набрать так, что любой ИИ без чётких правил впадёт в прострацию.

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 22:16 15-08-2019 | Исправлено: Alexyz21, 22:24 15-08-2019
citPiks



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

Цитата:
имхо, в вашем случае оптимальным будет вариант с подсветкой латиницы в смешанных словах

полагаю — да

Цитата:
если Вы редактируете обычный "plain" текст в редакторе FAR

не часто, не регулярно даже, но бывает
 
Добавлено:

Цитата:
Почему должен?

Потому что все буквы на своих местах, без иноязычных подстановок.

Цитата:
Предлагаете ИИ написать?

Нет, разумеется.  
 
Попристальнее присмотрюсь к результатам работы c0FName.lua на практике и потом расскажу. Хотя на тестовой выборке, вроде бы, всё хорошо получается.

Всего записей: 360 | Зарегистр. 26-06-2016 | Отправлено: 22:18 15-08-2019 | Исправлено: citPiks, 22:26 15-08-2019
Alexyz21



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

Цитата:
Потому что все буквы на своих местах, без иноязычных подстановок.

Как предлагаете это объяснить ПК? - Я вижу лишь вариант непрерывности алфавитов. Но что делать с аббревиатурами в другом языке, которые могут быть в именах, например циркулярные номера и тп., или у вас такое не в ходу? При этом не забываем, что каждое правило не должно конфиликтовать с уже имеющимися. При пересечении множеств важен будет порядок детекта.

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 22:29 15-08-2019 | Исправлено: Alexyz21, 22:34 15-08-2019
citPiks



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

Цитата:
Как предлагаете это объяснить ПК?

Да, надо подумать.  
Полагал сначала, что подстановочная буква может быть либо в начале иноязычного слова, либо внутри, обрамлённая иноязычными буквами, либо в конце иноязычного слова. И на практике в качестве ошибки такое чаще всего и встречается.  
 
Однако ведь может быть и множество других сочетаний. М-да.
 
Или м.б. ограничиться детектом только единичных вкраплений? А если две иноязычных буквы и более подряд, то считать уже смешанным вариантом R+E? И тогда результат детекта будет хоть и не всеобъемлющим, зато верным. Или это не так?

Всего записей: 360 | Зарегистр. 26-06-2016 | Отправлено: 22:45 15-08-2019 | Исправлено: citPiks, 22:47 15-08-2019
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
Глянул на ваш скрипт, увидел такое:

Код:
local _,_,quan_en = en:gsub(FName,"%1")
local _,_,quan_ru = ru:gsub(FName,"%1")
if quan_ru==0 and quan_en==0 then res="#"

Как это у вас работает, ведь gsub возвращает только 2 значения?

Всего записей: 1184 | Зарегистр. 09-03-2012 | Отправлено: 22:45 15-08-2019 | Исправлено: shmuz, 22:46 15-08-2019
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shmuz, пока никак ))), это пока оценочный вариант, за замечание спасибо - мог бы в последствии и забыть об этом. Кстати, в каких случаях он должен возвращать nil? 0 возвращает при 0 замен в пустой строке, например.
 
 
Добавлено:

Цитата:
Или м.б. ограничиться детектом только единичных вкраплений? А если две иноязычных буквы и более подряд, то считать уже смешанным вариантом R+E? И тогда результат детекта будет хоть и не всеобъемлющим, зато верным. Или это не так?

Это зависит от набирающего, наличия пробелов, предлогов и тд. По факту после неправильного переключения можно и не одну букву набрать и не заметить.

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 22:53 15-08-2019 | Исправлено: Alexyz21, 22:56 15-08-2019
shmuz

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

Цитата:
Кстати, в каких случаях он должен возвращать nil?

string.gsub (и совместимая с ней по семантике unicode.utf8.gsub) никогда не возвращают nil. Всегда возврашаются <string>,<number>. Зачем спрашивать в форуме то, что прописано в мануале Lua 5.1?

Всего записей: 1184 | Зарегистр. 09-03-2012 | Отправлено: 23:01 15-08-2019
Alexyz21



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

Цитата:
Как это у вас работает, ведь gsub возвращает только 2 значения?

не только, потому и gsub, что он возвращает количество замен, т.е. считаем буквы.
 
Добавлено:

Цитата:
Зачем спрашивать в форуме то, что прописано в мануале Lua 5.1?

)))
 

Код:
method gsub, gsubW
 
--------------------------------------------------------------------------------
 
res, nmatch, nrep = regex_object:gsub (s, repl, [n])
 
Parameters:
  s:        string
  repl:     string, or table, or function
  n:        integer
 
Returns:
  res:      string
  nmatch:   integer
  nrep:     integer
 

 
string.gsub тоже возвращал количество произведённых замен, правда уже давно этим не пользовался.

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 23:03 15-08-2019 | Исправлено: Alexyz21, 23:10 15-08-2019
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
Виноват, невнимательно читал ваш скрипт (в начало вообще не смотрел). Ещё раз сорри.
Спокойной ночи.

Всего записей: 1184 | Зарегистр. 09-03-2012 | Отправлено: 23:09 15-08-2019 | Исправлено: shmuz, 23:12 15-08-2019
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ничего не перепутал - regex.new и метод к нему, всё согласно мануала.

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 23:11 15-08-2019 | Исправлено: Alexyz21, 23:12 15-08-2019
citPiks



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

Цитата:
По факту после неправильного переключения можно и не одну букву набрать и не заметить.  
Такого рода опечатку намного легче заметить даже если и не сразу. А вот при вставке пропущенной или замене единичной буквы, по моему опыту, чаще всего и возникают огрехи. Склоняюсь к тому, что детектить нужно, прежде всего одиночек. Ориентировочно, процентов 70 ошибок приходится на одиночные буквы. А двойные и более иноязычные встречаются чаще уже преднамеренные или даже вынужденные (в индексах, например).  

Всего записей: 360 | Зарегистр. 26-06-2016 | Отправлено: 23:15 15-08-2019
Alexyz21



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

Цитата:
считать уже смешанным вариантом R+E

Границы множества возможных сочетаний очень размыты и перекрываются с множествами, определяемыми другими правилами. Здесь нет однозначных ответов - имя может принадлежать даже не 2-м, а и более множествам. Поэтому правила должны такими, чтобы формировать множества с чёткими границами, без перехлёстов с другими множествами.
 
Добавлено:

Цитата:
Ориентировочно, процентов 70 ошибок приходится на одиночные буквы.

Примерно согласен, но Вы замечаете, что двигаетесь в сторону создания ИИ? И пусть он без словарей, но он таки отнимает всё большее время. Какой "продвинутый" алгоритм классификации имени не сделай, всё равно он будет ошибаться в каком-то процентном количестве случаев, это неизбежно.

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 23:21 15-08-2019 | Исправлено: Alexyz21, 23:36 15-08-2019
citPiks



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
На текущий момент, во-первых, я склонен отказаться от формулировки "только схожие по начертанию буквы", поскольку желая нажать русскую/английскую букву, в несоответствующей раскладке получаю наоборот: английскую/русскую, чаще всего как раз не схожую с парной иноязычной.
 
Во-вторых, приоритетом, полагаю детект единичных вкраплений.  
 
И, соответственно, классификацию детекта представляю себе теперь такую:
 
r — имеется вкрапление русской буквы (возможно, не одно, но не подряд);  
 
е — имеется вкрапление английской буквы (возможно, не одно, но не подряд);  
 
# — в имени объекта есть только цифры и знаки, без букв;  
 
E — имя объекта содержит только английские буквы и ещё возможно цифры и/или знаки;  
 
R — имя объекта содержит только русские буквы и ещё возможно цифры и/или знаки;
 
E+R — имя объекта содержит и английские, и русские буквы (без иноязычных одно-буквенных вкраплений) и ещё возможно цифры и/или знаки.  
 
Если в целом это слишком сложная задача, то, м.б. пока стоит её ограничить первыми двумя-тремя пунктами?

Всего записей: 360 | Зарегистр. 26-06-2016 | Отправлено: 23:47 15-08-2019 | Исправлено: citPiks, 00:01 16-08-2019
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
citPiks, чётко сформулируйте различия между r,e,E+R

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 23:58 15-08-2019
citPiks



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

Цитата:
чётко сформулируйте различия между r,e,E+R

r — в имени файла/папки есть английские буквосочетания. К ним либо слева, либо справа вплотную или через пробел прилегают одиночные русские буквы, или одиночные русские буквы находятся внутри английских буквосочетаний, обрамлённые с обеих сторон английскими буквами. Идущие две подряд русские буквы в имени файла не встречаются.  
 
e — тоже, но базовыми являются русские буквосочетания, а английские одиночные буквы сбоку или внутри них. Идущие две подряд английские буквы в имени файла не встречаются.
 
Е+R — в имени объекта встречаются как английские буквосочетания из двух и более букв подряд, так и русские буквосочетания из двух и боле букв подряд, вне зависимости от наличия в них или вокруг них иноязычных одно-буквенных вкраплений.
 
На мой взгляд, так.  
 

Всего записей: 360 | Зарегистр. 26-06-2016 | Отправлено: 00:21 16-08-2019 | Исправлено: citPiks, 00:31 16-08-2019
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
Кстати, и такие пары часто встречаются (видюшники "любят" специально их вставлять в имена файлов где надо и не надо ): "0 - O" (ноль - буква "О" большая), латинская "b" - русский "ь", латинская "b|B" - русская "в|В", латинская "u" вместо русской "и". Эти "опечатки" я часто встречал, зачем? - копирайтовские роботы всё равно их ловят ставя тавро "Хотим денег за красивые глаза!" не глядя на чины и звания....

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")

Всего записей: 25288 | Зарегистр. 31-07-2002 | Отправлено: 00:41 16-08-2019
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
citPiks, обновил, финальный релиз, дальнейший тюнинг своими силами.

Всего записей: 2045 | Зарегистр. 16-06-2007 | Отправлено: 08:41 16-08-2019
   

Страницы: 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 (часть 5)
Maz (15-01-2020 17:38): FAR Manager (часть 6)


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

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru

Рейтинг.ru