301

Re: AutoHotkey: проект перевода, ветка #2

Руководство по программе HTML Help Workshop   http://i.imgur.com/KGyTpHR.gif

Декомпиляция
File --> Decompile.
В Destination folder назначаем папку, куда будут распакованы исходники.
В Compiled help file выбраем документ, который следует декомпилировать.
После нажатия OK в Destination folder появятся файлы «Index.hhk», «Table of Contents.hhc» и папка «docs», содержащая htm-файлы.

Компиляция
Для компиляции справки нам потребуются:

  • htm-файлы, содержащие основную информацию

  • файл - содержание

  • файл - алфавитный указатель

  • файл - проект

Как создать Файл-проект описано ниже, остальное мы получили при декомпиляции оригинальной справки.
File --> Compile.
В поле Project file выбираем файл проекта и нажимаем Compile. Готово!

Создание файла-проекта
File --> New --> Project. Программа предложит преобразовать проект старого образца. Игнорируем, нажимаем кнопку «Далее».
В поле «Specify the name of your project file…» необходимо указать путь и имя создаваемого файла. Далее.
Нам предлагают выбрать содержание, алфавитный указатель и файлы. Ставим две первые галочки. Далее.
В качестве содержания выбираем Table of Contents.hhc. Далее.
В качестве алфавитного указателя выбираем Index.hhk. Далее.

Созданный проект откроется в окне программы.
Имеем вкладки Project, Contents, и Index. Во вкладке Project нажимаем кнопку «Add/modify window definitions». Пишем имя для нового типа окон, например My_window_type. OK.
Появится окно Window Types.
Во вкладке «General» в поле «Title bar text» вбиваем заголовок будущего окна справки. К примеру “Документация по AutoHotkey. Русский перевод”.
Во вкладке «Navigation Pane» проставляем галочки «Search tab», «Advanced» и «Favorites tab». Это нам даст при компиляции Поиск (продвинутый) и Избранное. В связи с этим откроется дополнительное диалоговое окно Resolve window definition, в котором задаются опции для типа окон My_window_type. Убедимся, что стоит галочка напротив «Search tab». «Compile full-text Information» нам не требуется.
Во вкладке «Buttons» можно прикрутить дополнительные кнопки навигации по вкусу. OK.

В некоторых системах шрифт Содержания по умолчанию может отличаться. Рекомендуется во вкладке Contents нажать кнопку «Contents Properties» и выбрать шрифт MS Sans Serif 8.
В основном всё, можно сохранять файл проекта: File --> Save Project.

Чтобы в окне справки появилось главное меню и кнопка «Шрифт», нужно немного поколдовать.
Если открыть файл проекта в текстовом редакторе, то мы увидим секцию [WINDOWS] со множеством параметров. Десятый параметр записан в виде шестнадцатеричного числа. Представим его в виде двоичного, а затем поставим единичку в 17ый и 21ый бит (если считать не по номеру бита, а просто справа налево).  Теперь преобразуем его обратно в шестнадцатеричное число и подставим на место десятого параметра (если это слишком сложно, замените десятый параметр на 0x33520). Сохраняем файл - проект.
Готово!


+ Дополнительно

How To Add a Font Button to an HTML Help Window Toolbar

+ Некоторые параметры секции WINDOWS
  1. My_window_type="Title bar text" Название данного типа окон и заголовок окна

  2. "Table of Contents.hhc" файл - содержание

  3. "new.hhk" файл - алфавитный указатель

  4. "docs\AutoHotkey.htm" Страница по умолчанию

  5. "docs\AutoHotkey.htm" Переход по кнопке меню “Home”

  6. "docs\commands\index.htm" Переход по кнопке меню “Jump 1”

  7. "Commands" Надпись под кнопкой “Jump 1”

  8. "docs\Variables.htm" Переход по кнопке меню “Jump 2

  9. "Variables" Надпись под кнопкой “Jump 2”

  10. 0x33520 Опции главного меню окна, опции кнопок (в т. ч. Шрифт), опции панели навигации, позиция окна (двоичный код)

  11. [0,0,800,600] Сохраняет пользовательские размеры и позицию окна справки. Координаты левого верхнего и правого нижнего углов окна [x1,y1,x2,y2]

  12. 0x3006 неизв. (двоичный код)

  13. Стили окна (двоичный код)

  14. Расширенные стили окна (двоичный код)

Отдельная благодарность alexii и YMP за информацию по HHW!

302

Re: AutoHotkey: проект перевода, ветка #2

ypppu пишет:

а затем поставим единичку в 17ый и 21ый бит (если считать не по номеру бита, а просто справа налево).

А вот это зря. Считать биты лучше привыкнуть как положено, с 0. Иначе неизбежны недоразумения.

303

Re: AutoHotkey: проект перевода, ветка #2

ypppu пишет:

Чтобы в окне справки появилось главное меню и кнопка «Шрифт», нужно немного поколдовать.

Странно, я не колдовал, всё через меню программы. В этом хелпе кнопка «Шрифт» есть.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

304

Re: AutoHotkey: проект перевода, ветка #2

serzh82saratov, а откуда у Вас этот AutoHotkey.hhp? Может это я выкладывал готовый образец?
YMP, я так  и хотел сначала написать. Но в support.microsoft.com считают иначе. Поэтому, чтобы не лезть в дебри, я объяснил на пальцах.

305

Re: AutoHotkey: проект перевода, ветка #2

Да, что то я под забыл, сейчас попробовал заново, меню и шрифт у меня присутствуют только если 12 параметр = 0x1c200e. 10 как у вас описано.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

306

Re: AutoHotkey: проект перевода, ветка #2

Вроде нашёл неточность в русском переводе. По команде ControlGetText и другим, где требуется указывать контрол.

YMP пишет:

ControlGetText
Параметры
Control | Может задаваться как ClassNN (имя класса и номер данного экземпляра) или как имя/текст контрола.

А правильно "Может задаваться как ClassNN (имя класса и номер данного экземпляра) или как текст контрола.

307

Re: AutoHotkey: проект перевода, ветка #2

Это я переводил ещё по справке AHK basic, а там так:

Can be either ClassNN (the classname and instance number of the control) or the name/text of the control

308

Re: AutoHotkey: проект перевода, ветка #2

Действительно, там так и написано. Что же они имели в виду под name of the control?

309

Re: AutoHotkey: проект перевода, ветка #2

Возможно, это одно и то же, разница в интерпретации. Надпись на кнопке, например, будет скорее воспринята, как имя кнопки, а не текст.

310

Re: AutoHotkey: проект перевода, ветка #2

Ясно. Наверное люди путались, поэтому в новой справке решили прямо указать: "... или текст контрола".

311

Re: AutoHotkey: проект перевода, ветка #2

Оригинал статьи в AutoHotkey.chm: "Scripts", в содержании - "Scripts"
Ник переводчика: Gourmet.

Заметил, что в переводе статьи "Скрипты" (Scripts) отсутствует первый пример, имеющийся в оригинале.

; EXAMPLE #1:
Var =
(
Line 1 of the text.
Line 2 of the text. By default, a linefeed (`n) is present between lines.
)
; EXAMPLE #2:
FileAppend,  ; The comma is required in this case.
(
A line of text.
By default, the hard carriage return (Enter) between the previous line and this one will be written to the file as a linefeed (`n).
    By default, the tab to the left of this line will also be written to the file (the same is true for spaces).
By default, variable references such as %Var% are resolved to the variable's contents.
), C:\My File.txt

312

Re: AutoHotkey: проект перевода, ветка #2

Плохо, что в справке нет кнопки скопировать код.

313

Re: AutoHotkey: проект перевода, ветка #2

Androgen Belkin пишет:

Как передавать скрипту параметры командной строки

  • Примечание 3: для получения значения параметра используется выражение присвоения (например, Param := %2%). В правой части такого выражения обычно не должно быть знаков процента, но здесь они есть, и являются просто частью имени параметра.

Процитированный выше фрагмент справки утратил силу в AutoHotkey_L. Это обсуждалось в теме AHK: Способ присваивания переменной.

Malcev пишет:

А как они собираются в таком случае обходиться без знака равенства?

1 := "kkk"
a = %1%   ; как заменить на := ?
msgbox % a

314

Re: AutoHotkey: проект перевода, ветка #2

Пользуясь случаем, хочу обратиться ко всем, кто занимается переводом документации по  AutoHotkey.
Огромное спасибо вам за столь грандиозный труд!

Особое спасибо и великая благодарность тем, чьи личные знания AutoHotkey позволили отойти от оригинального текста и изложить предмет своими, более понятными чем в оригинале, предложениями и примерами.

315

Re: AutoHotkey: проект перевода, ветка #2

Вот перевод RegExMatch. Покритикуйте, возможно есть неточности в терминологии.

Ссылка на оригинал статьи.

Post's attachments

RegExMatch.zip 184.34 kb, 11 downloads since 2017-10-26 

You don't have the permssions to download the attachments of this post.

316

Re: AutoHotkey: проект перевода, ветка #2

Хочу спросить у народа. Будет ли интересна сборка справки по AutoHotKey в программе MyTetra?
В двух словах - это программа для накопления осмысленной информации древовидного типа. Хранит заметки в html, можно прикреплять файлы. Внешне очень похоже на справку в формате CHM, только в этой программе все намного проще,
удобнее и больше возможностей. Я бы сказал еще и красивее.

Я начал изучать AutoHotKey и многие команды занес в свою базу MyTetra, немного разукрасил. У меня есть несколько CHM справок (одну из них я сам сделал) но все это очень топорно и негибко. В MyTetra страница добавляется на лету - и сразу же ей можно пользоваться (есть полнотекстовый поиск, теги, ссылки на внешние и внутренние ресурсы и др.). Процесс сборки - разборки CHM меня выводит из себя. Возможно я не так хорошо владею работой с CHM но все же это лишняя волокита.

Для наглядности можете зайти в эту тему - там приведен скриншот MyTetra со страницей из справки. Кто хочет может скачать мою сборку и покрутить. Команд пока я занес немного, и не старался как-то приводить это в порядок, делал для себя.

Мои разработки: MyTetra Integrator

317 (изменено: svoboden, 2018-03-29 05:38:01)

Re: AutoHotkey: проект перевода, ветка #2

Molotok, не знаю, правильно ли я понял вопрос. Но я уже создал такую справку у себя на компьютере. Хочу выложить ее здесь на форуме (она уже доделана у меня на компе, осталось только загрузить ее в GitHub Pages). Но это очень муторно.

318

Re: AutoHotkey: проект перевода, ветка #2

svoboden это здорово - не ожидал!
Действительно, я читал инструкцию как выкладывать на гит базу MyTetra, пунктов там много, и первый раз действительно наверное муторно. Сам я этого никогда не делал. Можете просто выгрузить ветку и залить на какой-нибудь яндекс. А на гит уже будет следующим шагом.

Мои разработки: MyTetra Integrator

319 (изменено: svoboden, 2018-04-04 01:50:05)

Re: AutoHotkey: проект перевода, ветка #2

Molotok, вот, выложил на GitHub свою справку:
https://a1987zz.github.io/v1/docs/AutoHotkey.htm.
Много чего переделал от оригинальной справки, например, добавил три хоткея:
CTRL+Up ; в начало страницы.
CTRL+Down ; в конец страницы.
CTRL+left ; подкрутка к текущему элементу.

Сделал автоматическую подкрутку к нужному элементу и еще много чего добавил. Но немного битых ссылок есть, (т.к. не "замарачивался"). Смысл в том, что туда можно добавлять свои страницы, необходимую информацию, перевод и чего хочешь. T.е., по-моему, такой вариант лучше, чем прога MyTetra, там и поиск от гугла нормальный есть и можно как веб приложение потом создать. Но не этого я добивался, когда создавал справку, т.е. не доделал ее, так, червой вариант.

320

Re: AutoHotkey: проект перевода, ветка #2

svoboden
Так она же на английском! Мы ведь в тут говорим про перевод справки. Хотя мне ваша справка показалась удобной.
В MyTetra я собираю именно перевод. И ее можно потом точно так же залить на гит. Еще у mytetra есть плюшки - дополнения синхронизации с гитхабом. Когда у меня появится желание и накоплю в ней побольше материала попробую залить.

Я за то чтобы справок становилось больше и разных. В итоге будет найден лучший вариант.

Мои разработки: MyTetra Integrator

321 (изменено: zxcvbn2049, 2018-03-29 13:28:55)

Re: AutoHotkey: проект перевода, ветка #2

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

322

Re: AutoHotkey: проект перевода, ветка #2

svoboden, а в чём разница между вашей ссылкой и оригинальной?
https://autohotkey.com/docs/AutoHotkey.htm

323 (изменено: svoboden, 2018-03-30 04:39:05)

Re: AutoHotkey: проект перевода, ветка #2

Malcev, ни в чем, просто новая справка у них переделанная, была же нормальная старая версия, зачем было переделывать ее? Например, зачем было убирать гугл поиск и т.д.

P.S. Я не призываю никого пользоваться старой версией справки, если кто хочет, пусть пользуется новой. Я бы ничего не выкладывал, если бы пользователь Molotok не напомнил мне.

Molotok пишет:

В MyTetra я собираю именно перевод.

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

Molotok пишет:

Мы ведь в тут говорим про перевод справки

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

zxcvbn2049, так я и не выкладывал полный вариант, это просто справка (там нет никаких заметок, статей и т.д). Я просто показал Molotok'у свою программу и все.

324

Re: AutoHotkey: проект перевода, ветка #2

svoboden пишет:

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

У нас видимо возникло какое-то недопонимание насчет целей, задач и методов.

Мне не придется создавать никакую другую программу для справки. Вся суть этой программы в том и состоит - все собранные человеком важные данные (справочные материалы, web страницы, заметки, какие-то файлы с кодом, картинки почти все что угодно в разумных пределах конечно) хранится в одном месте. Поисковый запрос ищет сразу записи по всей базе данных (это настраивается). Можно конечно иметь под рукой файл CHM и пользоваться им. Допустим вы в справке не нашли то что искали, начинаете искать нужный код по каким-то файлам. Тратите на это лишнее время, выполняете ненужную работу. А у меня вся важная информация хранится в MyTetra и находится мгновенно.

Справка в формате CHM не имеет ничего такого - что бы не умела MyTetra. У CHM только одно преимущество - меньший размер. Но в остальном сплошные неудобства.

Что касается размещения в онлайн - то это тоже все делается. MyTetra все страницы хранит в html. Делай с ними что хочешь. Но есть уже готовые инструменты для публикации на git своих всех заметок. (даже несколько инструментов)
Вот пример заметок собранных одним человеком и размещенных в githab. Можно настроить синхронизацию своей базы (и когда я доведу более менее до ума свою справку я возможно также ее опубликую) и она будет доступна извне.

Но скажу прямо - меня в данный момент онлайн справка не сильно интересует. Таких справок существует уже много, какая-то лучше, какая-то хуже. Я делаю упор именно на OffLine.

И вот в OFF Line варианте хранить весь справочный материал во много раз лучше и удобнее в MyTetra, чем в CHM формате.
Ваш вариант безусловно хорош тоже, но это не offline.

Мои разработки: MyTetra Integrator

325

Re: AutoHotkey: проект перевода, ветка #2

Мне казалось, основная сложность с толковым переводом. Был бы перевод, а собрать его хоть в CHM, хоть во что-то ещё - не самая сложная задача.