author | Oleksandr Gavenko <gavenkoa@gmail.com> |
Mon, 19 Oct 2015 17:04:52 +0300 | |
changeset 1769 | cadd23f8127f |
parent 1763 | d4baabd053e7 |
child 1905 | fba288d59662 |
permissions | -rw-r--r-- |
1334
9bf0d5a1f0cf
Include common header with quick links.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1032
diff
changeset
|
1 |
.. -*- coding: utf-8; -*- |
9bf0d5a1f0cf
Include common header with quick links.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1032
diff
changeset
|
2 |
.. include:: HEADER.rst |
945 | 3 |
|
4 |
====== |
|
5 |
CHM. |
|
6 |
====== |
|
7 |
.. contents:: |
|
8 |
||
9 |
Spec. |
|
10 |
===== |
|
11 |
||
12 |
http://www.nongnu.org/chmspec/ |
|
1748
f344879f1963
Unofficial CHM Specification.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1432
diff
changeset
|
13 |
HTML Help Projects. |
1763 | 14 |
http://chmspec.nongnu.org/ |
15 |
HTML Help Projects. |
|
16 |
http://chmspec.nongnu.org/latest/ |
|
1748
f344879f1963
Unofficial CHM Specification.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1432
diff
changeset
|
17 |
Unofficial (Preliminary) HTML Help Specification. |
f344879f1963
Unofficial CHM Specification.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1432
diff
changeset
|
18 |
http://savannah.nongnu.org/projects/chmspec |
f344879f1963
Unofficial CHM Specification.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1432
diff
changeset
|
19 |
Unofficial CHM Specification. |
945 | 20 |
http://www.speakeasy.org/~russotto/chm/chmformat.html |
1748
f344879f1963
Unofficial CHM Specification.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1432
diff
changeset
|
21 |
Matthew Russotto's Microsoft's HTML Help format description. |
945 | 22 |
http://msdn.microsoft.com/en-us/library/ms669980.aspx |
1748
f344879f1963
Unofficial CHM Specification.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1432
diff
changeset
|
23 |
HTML Help Frequently Asked Questions. |
1763 | 24 |
http://kb.helpwaregroup.com/ms-html-help/hh_info |
25 |
HH Info, version history |
|
26 |
http://kb.helpwaregroup.com/ms-html-help/hh-faq |
|
27 |
FAQ |
|
28 |
||
945 | 29 |
|
30 |
Alternatives. |
|
31 |
============= |
|
32 |
||
33 |
http://www.imendio.com/projects/devhelp/ |
|
1761 | 34 |
DevHelp is a GNOME based online help system aimed toward developers. |
945 | 35 |
http://en.wikipedia.org/wiki/MHTML |
1761 | 36 |
MHTML, short for MIME HTML. |
37 |
||
38 |
* https://en.wikipedia.org/wiki/Online_help |
|
39 |
* https://en.wikipedia.org/wiki/List_of_help_authoring_tools |
|
945 | 40 |
|
41 |
Microsoft HTML Help. |
|
42 |
==================== |
|
43 |
||
1763 | 44 |
https://msdn.microsoft.com/en-us/library/ms669985 |
1759
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
45 |
Microsoft HTML Help Downloads. |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
46 |
http://www.microsoft.com/en-us/download/details.aspx?id=21138 |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
47 |
HTML Help Workshop and Documentation. |
945 | 48 |
http://support.microsoft.com/kb/269766/ |
1759
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
49 |
INFO: Limited Unicode Support in HTML Help. |
1762 | 50 |
http://www.help-info.de/en/Help_Info_HTMLHelp/hh.htm |
51 |
Various links. |
|
945 | 52 |
|
1432
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
53 |
Microsoft HTML Help under Debian. |
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
54 |
================================= |
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
55 |
|
1759
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
56 |
Set Wine's Windows version to Windows 2000 (or above) via ``winecfg``. |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
57 |
|
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
58 |
Install necessary dependency:: |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
59 |
|
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
60 |
$ winetricks mfc40 |
1432
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
61 |
|
1759
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
62 |
Alternatively manually download and install `Microsoft Foundation Classes update |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
63 |
<http://activex.microsoft.com/controls/vc/mfc40.cab>`_:: |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
64 |
|
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
65 |
$ wget http://activex.microsoft.com/controls/vc/mfc40.cab |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
66 |
$ cabextract mfc40.cab |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
67 |
$ wine mfc40.exe |
1432
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
68 |
|
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
69 |
Download `Microsoft HTML Help Workshop |
1757
bf335700acbe
how fix "err:virtual:map_image failed to set 60000020 protection on section .text, noexec filesystem?"
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1753
diff
changeset
|
70 |
<https://msdn.microsoft.com/en-us/library/ms669985.aspx>`_ and install it as |
bf335700acbe
how fix "err:virtual:map_image failed to set 60000020 protection on section .text, noexec filesystem?"
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1753
diff
changeset
|
71 |
(from non-``noexec`` FS!!):: |
1432
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
72 |
|
1759
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
73 |
$ wine htmlhelp.exe |
1432
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
74 |
|
1759
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
75 |
Install ``itircl.dll`` and ``itss.dll`` from ``hhupd.exe`` which available in |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
76 |
installer or in ``~/.wine/drive_c/Program Files/HTML Help Workshop/redist``:: |
1432
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
77 |
|
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
78 |
cabextract -F hhupd.exe htmlhelp.exe |
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
79 |
cabextract -F itircl.dll hhupd.exe |
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
80 |
cabextract -F itss.dll hhupd.exe |
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
81 |
cp -a itircl.dll ~/.wine/drive_c/windows/system32/ |
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
82 |
cp -a itss.dll ~/.wine/drive_c/windows/system32/ |
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
83 |
|
1759
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
84 |
You must add exception for ``hhc.exe`` and ``hhw.exe`` to use native variant of |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
85 |
``itss.dll`` via ``winecfg``. Note: don't set ``itss.dll`` to native by default |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
86 |
becase then ``wine hh`` wouldn't work. |
1757
bf335700acbe
how fix "err:virtual:map_image failed to set 60000020 protection on section .text, noexec filesystem?"
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1753
diff
changeset
|
87 |
|
1432
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
88 |
See: |
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
89 |
|
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
90 |
* http://code.google.com/p/htmlhelp/wiki/HHW4Wine |
1759
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
91 |
* https://appdb.winehq.org/objectManager.php?sClass=version&iId=2978 |
6f62f6dccf2c
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1757
diff
changeset
|
92 |
* https://bugs.winehq.org/show_bug.cgi?id=7517 |
1432
b7a7c8e89818
Microsoft HTML Help under Debian.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1423
diff
changeset
|
93 |
|
945 | 94 |
Viewer. |
95 |
======= |
|
1423 | 96 |
:: |
945 | 97 |
|
98 |
$ sudo apt-get install xchm |
|
1423 | 99 |
$ sudo apt-get install gnochm |
945 | 100 |
|
1749 | 101 |
$ wine hh $FILE |
945 | 102 |
|
1753 | 103 |
Decompiler. |
104 |
=========== |
|
105 |
||
106 |
For Windows:: |
|
107 |
||
108 |
cmd> hh.exe -decompile %OUTDIR% %INFILE%.chm |
|
109 |
cmd> 7z x -o%OUTDIR% %INFILE%.chm |
|
110 |
||
111 |
Under Linux:: |
|
112 |
||
113 |
$ 7z x -o$OUTDIR $INFILE.chm |
|
114 |
||
115 |
$ sudo apt-get install libchm-bin |
|
116 |
$ extract_chmLib $INFILE.chm $OUTDIR |
|
117 |
||
118 |
||
1760
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
119 |
Cyrillic CHM files. |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
120 |
=================== |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
121 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
122 |
In order to show Cyrillic tests in ``hh.exe`` or ``xchm``: |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
123 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
124 |
* Use ``cp1251`` or ``cp866`` encoding for ``.html`` files. |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
125 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
126 |
* Place corresponding:: |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
127 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
128 |
<meta http-equiv="Content-Type" content="text/html; charset=cp1251"> |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
129 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
130 |
or:: |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
131 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
132 |
<meta http-equiv="Content-Type" content="text/html; charset=cp866"> |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
133 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
134 |
into into ``<head>`` tag of your ``.html`` files. |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
135 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
136 |
* Use ``cp1251`` encoding for ``.hhc`` and ``.hhk`` and ``.stp`` files. |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
137 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
138 |
* Add correcponding settings into your ``.hhp`` file:: |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
139 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
140 |
[OPTIONS] |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
141 |
Language=0x419 Russian |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
142 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
143 |
``<meta charset="cp1251">`` works for ``hh.exe`` but not for ``xchm``. |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
144 |
|
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
145 |
Because ``cp1251`` contains all Cyrillic letters while ``cp866`` only Russian |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
146 |
and content/index file require only ``cp1251`` I recommend to use only |
9504cbe2020d
Cyrillic CHM files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1759
diff
changeset
|
147 |
``cp1251`` for ``.html`` files. |
1763 | 148 |
|
149 |
See: |
|
150 |
||
151 |
* http://kb.helpwaregroup.com/ms-html-help/hh-tips-tricks/jp |
|
152 |