Ru-Board.club
← Вернуться в раздел «Программы»

» AkelPad

Автор: Inoz2000
Дата сообщения: 24.02.2015 20:26
oshizelly

Цитата:
кодировка открываемого документа явным образом указана в командной строке.
так об этом явно написано в том же самом файле [more=AkelHelp-Rus.htm]Параметры командной строки[/more]
Автор: YuS_2
Дата сообщения: 24.02.2015 20:27
oshizelly

Цитата:
Думал, что, может, в AkelPad есть что-то похожее.

Похожее, но не совсем. Если нажимать цифровую клавишу, соответствующую начальной цифре кодировки, то будет происходить выбор кодировки по порядку между теми, которые имеют одинаковые начальные цифры... неудобно - да, но, учитывая, что список кодировок редактируется, его можно свести к необходимому минимуму.
При желании, есть клавиатурные сочетания для открытия файлов в определенных кодировках (не во всех присутствующих в системе). Кроме того, можно настругать кнопок, которые будут открывать/сохранять файлы в необходимой кодировке из списка

Цитата:
7001    Из списка кодировок, открыть в первой кодировке
7001 + n    Из списка кодировок, открыть в кодировке n
8001    Из списка кодировок, сохранить в первой кодировке
8001 + n    Из списка кодировок, сохранить в кодировке n



Цитата:
Навскидку представляю себе реализацию так:


Цитата:
/OpenFile("файл"[, Кодировка][, СигнатураBOM])
"файл" - Файл для открытия.
Кодировка - Кодировка открытия. Если -1 либо не указана, она будет определена автоматически.
СигнатураBOM - Сигнатура BOM файла. Если -1 либо не указана, она будет определена автоматически.
/OpenFile("C:\File.txt", 65001, -1)
метод открывает файл в кодировке UTF-8.



Цитата:
Значит ли это, что автодетект для такого набора кодировок нереален?

Видимо так, но это если действительно требуется разделять 1251 и 1252...
Вообще, автодетект не всегда корректно срабатывает, особенно на маленьких файлах...


Цитата:
А как выяснить, существуют ли такие скрипты?

Да как выяснить... поискать на офф.форуме или подождать ответ от тех кто знает о существовании такого скрипта. Ну, а если есть элемент срочности, то попросить о написании такого скрипта на офф. форуме. Там вполне доброжелательно относятся к таким просьбам и при наличии времени и возможностей, чаще всего, просьбы реализуют в готовый скрипт.
Автор: Inoz2000
Дата сообщения: 24.02.2015 20:28
удалю
и
удалюсь
Автор: oshizelly
Дата сообщения: 24.02.2015 20:53
YuS_2 20:27 24-02-2015
Цитата:
Похожее, но не совсем. Если нажимать цифровую клавишу, соответствующую начальной цифре кодировки, то будет происходить выбор кодировки по порядку между теми, которые имеют одинаковые начальные цифры... неудобно - да, но, учитывая, что список кодировок редактируется, его можно свести к необходимому минимуму.

Спасибо за совет. Собственно, я это уже и сам обнаружил в ходе своих экспериментов. Но практическая польза от этого трюка для меня близка к нулю, так как почти все часть используемые кодировки начинаются с одной и той же цифры "1" (1250 - 1257).
Возможно, автор AkelPad читает этот топик? Тогда прошу считать мой вопрос фиче-реквестом.


Цитата:
При желании, есть клавиатурные сочетания для открытия файлов в определенных кодировках (не во всех присутствующих в системе). Кроме того, можно настругать кнопок, которые будут открывать/сохранять файлы в необходимой кодировке из списка

Прошу прощения, не въехал, как именно настругать кнопок под мои кодировки?
А ещё лучше, как создать клавиатурные хоткеи на нужные мне кодировки (в проге дефолтные хоткеи даны только на несколько кодировок, вероятно, наиболее ходовых, но лично мне не очень нужных).


Цитата:
Навскидку представляю себе реализацию так:

Спасибо за пример, с этим теперь всё стало ясно.


Цитата:
Видимо так, но это если действительно требуется разделять 1251 и 1252...
Вообще, автодетект не всегда корректно срабатывает, особенно на маленьких файлах...

Увы, действительно требуется.
А что посоветуете выбрать из имеющихся вариантов при моём наборе используемых кодировок? Или проще будет вообще отключить автодетект?


Цитата:
поискать на офф.форуме или подождать ответ от тех кто знает о существовании такого скрипта. Ну, а если есть элемент срочности, то попросить о написании такого скрипта на офф. форуме.

Нет, срочности нет, да и вообще не вопрос жизни и смерти, можно пока и руками выбирать.
Но запрос остаётся в силе, так что если в обозримом будущем у кого-то из мастеров скриптописания найдётся пара свободных минут, чтобы решить пункт 1.2., буду весьма признателен.
Автор: YuS_2
Дата сообщения: 24.02.2015 21:33
oshizelly

Цитата:
Прошу прощения, не въехал, как именно настругать кнопок под мои кодировки?

Да, если требуются горячие клавиши, то и необязательно даже кнопки создавать, достаточно воспользоваться возможностями плагина. Есть такой плагин Hotkeys, вот его вызываем и там уже будет всё более-менее понятно, например:

Код: Имя: Команда: Клавиша(1077)
Кодировка №5 Command(7005) Alt+5
Автор: oshizelly
Дата сообщения: 24.02.2015 22:42
YuS_2 21:33 24-02-2015
Огромное спасибо за терпение, в мозгах вроде бы начинает проясняться!

Остался совсем последний вопрос (на сегодня) :

Цитата:
Отключать необязательно, но надеяться на автоматику надо осторожно и проверять её каждый раз, не помешает.

Если автоматику не отключать, то какой всё-таки вариант авто-детекта из имеющихся посоветуете выбрать, чтобы при моём наборе часто используемых кодировок Windows-1251, Windows-1252 и UTF-8 свести процент ошибочного определения кодировки к минимуму?
Автор: Skif_off
Дата сообщения: 24.02.2015 22:58
oshizelly

Цитата:
1.2) Можно ли сделать, чтобы эта "дефолтная" кодировка была разной для разных типов (расширений) файлов?

Как вы открываете файлы? Двойным кликом, броском на ярлык и т.п.
И покажите, пожалуйста, список расширений с желаемой кодировкой.
Автор: oshizelly
Дата сообщения: 24.02.2015 23:37
Skif_off 22:58 24-02-2015
Цитата:
Как вы открываете файлы? Двойным кликом, броском на ярлык и т.п.

Двойным кликом, клавишей Enter, часто также из Total Commander клавишей F4, иногда через контекстное меню.
Но если каждый из этих способов требует отдельного решения, то, конечно, это было бы уже слишком. Достаточно скрипта хотя бы для одного из способов, скажем, для Total Commander.


Цитата:
список расширений с желаемой кодировкой.

Их много разных, я потом попытаюсь подогнать под себя по образцу, если синтаксис скрипта не слишком сложный.
Из основных: RTF, REM - в большинстве случаев имеют кодировку Windows-1251.
HTM/HTML, OTS, MRS, LNK, EML - в большинстве случаев имеют кодировку UTF-8 либо Windows-1252.
Автор: Skif_off
Дата сообщения: 25.02.2015 01:17
oshizelly
Отдельное решение для каждого случая - это, конечно, лишнее. Есть CmdLineBegin.

Цитата:
в большинстве случаев имеют кодировку UTF-8 либо Windows-1252.

Либо - это не очень хорошо, т.к. будет необходимо оставить выбор за вами, что посложнее. К тому же Windows-1252 и UTF-8 без BOM похожи и надо смотреть, например, charset=.

Может быть, зайти с другой стороны? Типа такого меню, чтобы после открытия выбрать нужное при необходимости (кстати, имеет смысл увеличить буфер распознавания, т.к. чаще сказывается положительно)?
Или воспользоваться средствами ТС, создав [more=кнопки для файла под курсором]

Код: TOTALCMD#BAR#DATA
%путь к AkelPad.exe%\AkelPad.exe
/OpenFile("%P%N", 65001, -1)
%путь к AkelPad.exe%\AkelPad.exe,0
Открыть файл в кодировке UTF-8
%путь к AkelPad.exe%\

-1
Автор: YuS_2
Дата сообщения: 25.02.2015 08:47
oshizelly

Цитата:
при моём наборе часто используемых кодировок Windows-1251, Windows-1252 и UTF-8 свести процент ошибочного определения кодировки к минимуму?

В данном случае всё будет зависеть от конечной цели автоматического определения кодировок... не хочется выдумывать новые экскурсы в историю создания и использования различных кодировок, в инете их предостаточно. В общем, при такой постановке вопроса, если конечная цель получить читабельный текст и ничего более, то, конечно, лучше использовать кириллический набор (1251, OEM, KOI-8R, UTF-8) с увеличением буфера распознавания, т.к. потеря в распознанных символах будет минимальной.
Автор: oshizelly
Дата сообщения: 25.02.2015 11:24
Skif_off 01:17 25-02-2015
Цитата:
P.S. К слову, безупречным определением кодировки никто не может похвалиться.

Спасибо за кнопки для Total Commander, это уже значительно облегчит жизнь. Спецификацию кодировок 125* ещё проверю на всякий случай.

И отдельное спасибо за очень полезные ссылки на топики на офф-форуме и в мануале


Цитата:
К слову, безупречным определением кодировки никто не может похвалиться.

Я понимаю. Но хочется получить хотя бы > 50% случаев правильного авто-детекта.


Цитата:
надо смотреть, например, charset=.

Для документов HTM/HTML это было бы очень удачное решение. Некоторые другие текстовые редакторы (например, Notepad2, ещё какие-то, навскидку не скажу) умеют брать кодировку открываемого HTML-документа из заголовка из тэга charset=. Но AkelPad, как я понимаю, такого не умеет?

YuS_2 08:47 25-02-2015
Цитата:
В общем, при такой постановке вопроса, если конечная цель получить читабельный текст и ничего более,

Нет, не совсем так. После открытия файла предполагается работать с текстом (редактировать, копировать в буфер), поэтому так важна именно правильная кодировка, а не "минимальная потеря читабельности".
Автор: Skif_off
Дата сообщения: 25.02.2015 14:19
oshizelly

Цитата:
умеют брать кодировку открываемого HTML-документа из заголовка из тэга charset=. Но AkelPad, как я понимаю, такого не умеет?

Нет, не умеет.

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

А вот как решение для некоторых расширений можно повесить скрипт в CmdLineBegin, читающий начало файла и берущий кодировку из charset (HTML/PHP) или encoding (XML-образные).

В меню для кодировок вам может пригодиться ещё один пункт, чтобы не лазить по длинному меню кодировок:

Код: "Открыть как Windows-1252" OpenFile("%f", 1252)
Автор: oshizelly
Дата сообщения: 25.02.2015 15:36
Skif_off 14:19 25-02-2015
Цитата:
Честно говоря, перестал понимать, что вы хотите ... принудительное открытие с указанием кодировки вас не спасёт, т.к. вы сами пишите в большинстве случаев и либо - вполне можете слажать.

Почему же не спасёт? Когда я открываю документ вручную в определённой кодировке, то я-то знаю (или, по крайней мере, предполагаю с весьма высокой долей вероятности), что именно у него внутри и какая там кодировка. Для этого и нужны команды с принудительным выбором кодировки при передаче файла в AkelPad.
В идеале же хотелось бы сделать так, чтобы мне самому вообще не приходилось думать о выборе кодировки, а это делал бы за меня искусственный интеллект. Но, как я уже понял из предыдущих ответов, сей идеал в обозримом будущем недостижим


Цитата:
В меню для кодировок вам может пригодиться ещё один пункт, чтобы не лазить по длинному меню кодировок:

"Меню для кодировок" - это то, которое открывается по F12 или MRB-кликом по статус-бару?


Цитата:

Цитата: брать кодировку открываемого HTML-документа из заголовка из тэга charset=. Но AkelPad, как я понимаю, такого не умеет?

Нет, не умеет.
А вот как решение для некоторых расширений можно повесить скрипт в CmdLineBegin, читающий начало файла и берущий кодировку из charset (HTML/PHP) или encoding (XML-образные).
Автор: Skif_off
Дата сообщения: 25.02.2015 16:13
oshizelly
Вот опять

Цитата:
предполагаю с весьма высокой долей вероятности

AkelPad делает практически то же самое

Цитата:
Меню для кодировок

Имел в виду дополнение для этого меню с несколькими ходовыми кодировками для быстрого доступа.

Цитата:
Но наличие соответствующей встроенной фичи в некоторых других редакторах вроде бы намекает на обратное.

Скорее намекает, что некоторые редакторы косячат чаще других. У самого такая мысль была, но в конечном итоге отказался: особого смысла нет, т.к. в крайнем редком случае всегда можно увидеть теги. Есть пара мыслей, но не обещаю, а может кто из опытных подтянется.
Автор: oshizelly
Дата сообщения: 25.02.2015 21:59
Skif_off 16:13 25-02-2015
Цитата:
Есть пара мыслей, но не обещаю, а может кто из опытных подтянется.

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


Цитата:

Цитата: предполагаю с весьма высокой долей вероятности

AkelPad делает практически то же самое
Автор: DrakonHaSh
Дата сообщения: 26.02.2015 15:45
уважаемые, а есть ли в akel фича по типу браузерных ctrl-shit-t - открыть последний закрытый документ ?
Автор: Skif_off
Дата сообщения: 26.02.2015 16:08
DrakonHaSh
Посмотрите OpenClosedRecentFile.js, можно повесить и на Ctrl+Shift+T.
Есть ещё внутренние команды 5001 + n, но как работают не скажу (история отключена).

Добавлено:
Как пользоваться скриптами, в плагине Hotkeys в качестве команды использовать

Код: Call("Scripts::Main", 1, "OpenClosedRecentFile.js")
Автор: l_Instructor_l
Дата сообщения: 01.03.2015 20:20
oshizelly

Цитата:
1) Автоматическое определение кодировки:
...
1.2) Можно ли сделать, чтобы эта "дефолтная" кодировка была разной для разных типов (расширений) файлов?
AutoScript-DetectEx.js
Автор: oshizelly
Дата сообщения: 01.03.2015 21:04
l_Instructor_l 20:20 01-03-2015
Цитата:
чтобы дефолтная кодировка была разной для разных типов (расширений) файлов
AutoScript-DetectEx.js

Огромное спасибо за оперативность!

All
Я правильно понимаю, что этот скрипт надо подключать по этой инструкции?
Автор: yozhic
Дата сообщения: 01.03.2015 21:43
oshizelly

Цитата:
Я правильно понимаю, что этот скрипт надо подключать по этой инструкции?

Да. Кроме того во первых строках самого скрипта, в комментариях прочтите с какими аргументами его нужно запускать. И ещё, пожалуй, понадобится почитать файл AkelPad\AkelFiles\Docs\Scripts-Rus.txt.
Автор: Skif_off
Дата сообщения: 01.03.2015 23:32
oshizelly
После выполнения этой инструкции (в части места, куда положить скрипт), скрипт нужно добавить в CmdLineBegin (о чём написано в начале скрипта), т.к. он должен стартовать вместе с AkelPad.
Автор: ShIvADeSt
Дата сообщения: 02.03.2015 00:59
Нет информации, когда выйдет 4.9.3 (вернее языковый модуль к ней)? А то обновился на тестовую версию 4.9.3, так как были траблы с печатью нескольких копий. Теперь постоянно ругается на то, что языковый модуль от старой версии.
Автор: Skif_off
Дата сообщения: 02.03.2015 01:44
ShIvADeSt
Самый простой способ: взять файл из версии 4.9.2 и в любом редакторе ресурсов поправить 4.9.2 -> 4.9.3. Если нет возможности, залил http://rghost.ru/7SjJmhscW
Автор: ShIvADeSt
Дата сообщения: 03.03.2015 07:11
Skif_off
Теперь все отлично работает, спасибо за файл.
Автор: timsky
Дата сообщения: 04.03.2015 02:08
Обновил сабж до версии 4.92 и получил продожение проблем с горячими клавишами
Если раньше так и не удалось переназначить F5 : IDM_OPTIONS_EXEC, Command(4251) на свое действие, то теперь также отвалилось сочетание CTRL+D, на котором теперь жестко привязана вставка даты: IDM_EDIT_INSERTDATE, Command(4183).
Это можно как-то побороть?
Автор: Skif_off
Дата сообщения: 04.03.2015 02:39
timsky
Только что с помощью плагина Hotkeys назначил на F5 и Ctrl+D сначала другую внутреннюю команду, потом запуск скрипта, вообще не помню, чтобы были проблемы с заменой дефолтных действий. Возможно, вы что-то не так делаете? Посмотрите в FAQ Вариант 1, на крайний случай там же есть вариант 2.
Автор: timsky
Дата сообщения: 04.03.2015 18:28
Skif_off
Обнаружил глюк. Обновлялся с версии 4.90 и почему-то в командах вместо последенй скобки появились пробелы и пипец
Автор: oshizelly
Дата сообщения: 06.03.2015 00:51
Кто-нибудь может объяснить (или выдвинуть разумную гипотезу), почему в окне AkelPad не работает программа автозавершения слов FlashPeak IntelliComplete. (Возможно, кто-то сталкивался с ней или хотя бы представляет принцип её работы. Помимо прочего, эта программа (точнее, её модификация) поставляется по умолчанию вместе с довольно известной на просторах ex-USSR текстовым RTF-процессором PolyEdit.

Эта IntelliComplete практически всеядная. За те годы, что юзаю FlashPeak IntelliComplete, перепробовал море прог: она работала почти со всеми приложениями, где есть текстовый ввод. Впрочем, помимо сабжа есть ещё одно исключение, где IntelliComplete буксует: текстовые поля в браузере Opera. Других таких "вредных" прог вроде бы не попадалось.

А прога между тем фантастически удобная, особенно если использовать вместе с функцией атозавершения слов, предлагаемой AkelPad-овским плагином Coder. Очень бы хотелось заставить её работать.

В чём может быть дело? Может, надо где-нибудь переключить волшебный тумблер - и оно сразу заработает?

Заранее спасибо!
Автор: Skif_off
Дата сообщения: 06.03.2015 04:47
oshizelly
Если мозговой штурм, то [more=как-то так]
Сменить класс окна в параметре RichEditClass на RichEdit20 пробовали? Откючать автодополнение Coder? Возможно, утилита позволяет в настройках указать конкретные программы для работы и "не желает" работать без этого или же требует этого в некоторых случаях? Нет ли пересечений с AkelPad по горячим клавишам? Разрядности совпадают? Попробуйте вырубить антивирусник/HIPS, может быть, какой-то хитрый хук?

Первое, наверное, ничего не изменит: у AkelPad свой контрол, но автоматизация с помощью AutoIt, например, не встречает каких-то особых трудностей. Но чем чёрт не шутит?[/more]
Если всё это пробовали, то, может быть, имеет смысл написать в техподдержку? Разработчики знают свою утилиту лучше.
Автор: pennis
Дата сообщения: 06.03.2015 17:30
Блокнотик перестал работать с шаблонами. Пишет ошибку:
Как-то это решается? Стоит Win 64, 4 ядра.

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124

Предыдущая тема: SurfControl E-mail Filter for Exchange 2000/3


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.