最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【记录】docbook的docbook-xls-ns-1.78.1中的webhelp:优化使得共享webhelp的(css和js等)模板文件

Docbook crifan 2671浏览 0评论

【背景】

折腾:

【记录】使用docbook的docbook-xsl-ns-1.78.1替换旧的ant改用make去编译webhelp

期间,已经使得在本地,使用docbook-xsl-ns-1.78.1,可以正常编译webhelp了。

现在接着去:

确保,本地和在线,都只有一份webhelp\template\common的内容

  • 其下包含很多子文件夹和公用文件的,比如:
  • css
    • ie.css
    • positioning.css
  • images
    • admon\
    • callouts\
  • jquery
    • jquery-1.7.2.min.js
    • jquery-ui-1.8.2.custom.min.js
  • browserDetect.js
  • main.js
  • splitterInit.js

 

【折腾过程】

1.去看了看当前生成的:

D:\tmp\tmp_dev_root\cgwin\home\CLi\develop\docbook\books\docbook_dev_note\output\webhelp\index.html

中的内容,关于common方面的路径,都是类似于:

1
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon"></link><link rel="stylesheet" type="text/css" href="common/css/positioning.css"></link><link rel="stylesheet" type="text/css" href="common/jquery/theme-redmond/jquery-ui-1.8.2.custom.css"></link><link rel="stylesheet" type="text/css" href="common/jquery/treeview/jquery.treeview.css"></link><style type="text/css">

然后又看到官网的解释:

webhelp.common.dir

所以,去加了对应参数:

1
2
3
WEBHELP_OTHER_XSLTPROC_ARGS = \
    --stringparam webhelp.base.dir $(OUTPUT_DIR_WEBHELP) \
    --stringparam webhelp.common.dir $(TOOLS_XSL_NS_WEBHELP)/common

然后也不拷贝common了:

1
2
3
4
webhelp_copyfiles:
    -rm -rf $(OUTPUT_DIR_WEBHELP)
    mkdir -p $(OUTPUT_DIR_WEBHELP)
    @#cp -r $(TOOLS_XSL_NS_WEBHELP)/template/common ${OUTPUT_DIR_WEBHELP}

结果是:

生成的html中,地址变成需要的本地的路径了:

1
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon"></link><link rel="stylesheet" type="text/css" href="D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/commoncss/positioning.css"></link><link rel="stylesheet" type="text/css" href="D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/commonjquery/theme-redmond/jquery-ui-1.8.2.custom.css"></link><link rel="stylesheet" type="text/css" href="D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/commonjquery/treeview/jquery.treeview.css"></link><style type="text/css">

但是由于不小心,少了个斜杠:

D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/commonjquery/theme-redmond/jquery-ui-1.8.2.custom.css

应该是:

D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/common/jquery/theme-redmond/jquery-ui-1.8.2.custom.css

 

所以去改makefile为:

1
2
3
WEBHELP_OTHER_XSLTPROC_ARGS = \
    --stringparam webhelp.base.dir $(OUTPUT_DIR_WEBHELP) \
    --stringparam webhelp.common.dir $(TOOLS_XSL_NS_WEBHELP)/common/

然后结果是:

地址又搞错了:

D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/common/css/positioning.css

应该是:

D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/template/common/css/positioning.css

再去makefile改为:

1
2
3
WEBHELP_OTHER_XSLTPROC_ARGS = \
    --stringparam webhelp.base.dir $(OUTPUT_DIR_WEBHELP) \
    --stringparam webhelp.common.dir $(TOOLS_XSL_NS_WEBHELP)/template/common/

结果是:

(1)Firefox还是无法正常显示侧边栏目录

firefox can not show webhelp normal_thumb

原因:

猜测是之前就遇到的:

Firefox中不支持本地css文件地址,

需要加上:

file冒号三个斜杠

的前缀才可以的。

(2)IE中,提示js被禁了

ie note JavaScript is disabled on your browser_thumb

然后去Allow Blocked content,结果:

IE也是可以正常显示侧边栏的目录的:

after allow js IE also can show ok_thumb

(3)chrome则最好,直接就支持了,可以正常显示:

chrome is ok show webhelp without notice_thumb

 

2.然后,就去为本地地址,加上

1
file冒号三个斜杠

前缀:

1
2
3
WEBHELP_OTHER_XSLTPROC_ARGS = \
    --stringparam webhelp.base.dir $(OUTPUT_DIR_WEBHELP) \
    --stringparam webhelp.common.dir file冒号三个斜杠$(TOOLS_XSL_NS_WEBHELP)/template/common/

结果是:

地址就变成:

1
file冒号三个斜杠D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/template/common/css/positioning.css

了。

(1)firefox可以正常显示了:

file 3 slash prefix firefox can show ok_thumb

(2)IE还是要开启js才可以正常显示,chrome还是正常无压力的打开。

3.然后再去看看,

原先的docbook的webhelp的生成的,本地的:

D:\tmp\tmp_dev_root\cgwin\home\CLi\develop\docbook\tools\docbook-xsl-ns-1.78.1\webhelp\docs\index.html

其结果是:

(1)Firefox可以正常显示

注意到,对应的js等文件,是:

common/css/positioning.css

的地址,即:

相对地址,所以直接显示,无需:

1
file冒号三个斜杠

前缀;

 

(2)IE中,也是需要提醒开启js:

docbook webhelp sample also ie js notice_thumb

然后才能正常显示的:

after enable js can show sidebar ok for ie_thumb

(3)chrome可以正常打开。

 

另外,对于在线的:

http://snapshots.docbook.org/xsl/webhelp/docs/

(其中:

  • 也是用的类似的webhelp的配置
  • 内部的js和css,也是相对路径

但是是:

firefox中也是可以正常显示的;

且IE也可以,不会有js被禁止的提示,直接正常显示:

docbook snapshot firefox can show webhelp_thumb

由此推断:

之后,再把webhelp上传到自己的网站时,也是会把对应的js和css等文件,都弄成相对地址的。

这样:

Firefox:js是css是相对地址,可以直接正常显示;

IE:无需被提醒js被禁止,也可以正常显示;

chrome:本身就可以正常显示;

如此以实现,可以同时支持三种浏览器;

而且无需用户去设置什么参数,无需点击运行js运行等等麻烦的操作;

4.然后继续去增加,当make编译 for 在线的webhelp,需要修改对应的路径的。

最后是用如下核心的makefile代码:

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
#===============================================================================
# Webhelp related
#===============================================================================
 
# A list of files to exclude from indexing
INDEXER_EXCLUDED_FILES = ix01.html
 
# Use this variable to pass in other stringparams
# to the xsltproc pass that generates DocBook output.
# For example:
# WEBHELP_OTHER_XSLTPROC_ARGS = --stringparam example.param ""
 
#if not set, default will be docs under current docbook book src directory
WEBHELP_OTHER_XSLTPROC_ARGS_COMMON = \
    --stringparam webhelp.base.dir $(OUTPUT_DIR_WEBHELP)
 
WEBHELP_OTHER_XSLTPROC_ARGS_LOCAL = \
    --stringparam webhelp.common.dir file:///$(TOOLS_XSL_NS_WEBHELP)/template/common/
 
WEBHELP_OTHER_XSLTPROC_ARGS_RELEASE = \
#default set to local
WEBHELP_OTHER_XSLTPROC_ARGS = $(WEBHELP_OTHER_XSLTPROC_ARGS_COMMON)
WEBHELP_OTHER_XSLTPROC_ARGS += $(WEBHELP_OTHER_XSLTPROC_ARGS_LOCAL)
 
# Profiling params. For more information on
# profiling (conditional text) and DocBook documents, see
PROFILE.ARCH = ""
PROFILE.AUDIENCE = ""
PROFILE.CONDITION = ""
PROFILE.CONFORMANCE = ""
PROFILE.LANG = ""
PROFILE.OS = ""
PROFILE.REVISION = ""
PROFILE.REVISIONFLAG = ""
PROFILE.ROLE = ""
PROFILE.SECURITY = ""
PROFILE.STATUS = ""
PROFILE.USERLEVEL = ""
PROFILE.VENDOR = ""
PROFILE.WORDSIZE = ""
PROFILE.ATTRIBUTE = ""
PROFILE.VALUE = ""
 
# =================================================
# You probably don't need to change anything below
# unless you choose to add a validation step.
# ================================================
INDEXER_JAR         := $(TOOLS_XSL_NS_EXTENSIONS)/webhelpindexer.jar
TAGSOUP_JAR         := $(TOOLS_XSL_NS_EXTENSIONS)/tagsoup-1.2.1.jar
LUCENE_ANALYZER_JAR := $(TOOLS_XSL_NS_EXTENSIONS)/lucene-analyzers-3.0.0.jar
LUCENE_CORE_JAR     := $(TOOLS_XSL_NS_EXTENSIONS)/lucene-core-3.0.0.jar
 
#WEBHELP_CLASSPATH := $(INDEXER_JAR):$(TAGSOUP_JAR):$(LUCENE_ANALYZER_JAR):$(LUCENE_CORE_JAR)
#under Windows(Cygwin), (java classpath)
#(1)path seperator is semicolon ';' (not Linux's colon ':')
#(2) command contain semicolon means multile command, so need quote
# so become -> "path1;path2;path3"
#detail can refer:
#【已解决】docbook中去make webhelp编译webhelp结果出错:Error: Could not find or load main class com.nexwave.nquindexer.IndexerMain
ifeq ($(OS_NAME_LOWCASE), cygwin)
WEBHELP_CLASSPATH := "$(INDEXER_JAR);$(TAGSOUP_JAR);$(LUCENE_ANALYZER_JAR);$(LUCENE_CORE_JAR)"
else
WEBHELP_CLASSPATH := $(INDEXER_JAR):$(TAGSOUP_JAR):$(LUCENE_ANALYZER_JAR):$(LUCENE_CORE_JAR)
endif
 
 
################################################################################
# webhelp
################################################################################
# webhelp:
#   @echo "=============================== generating ${PROJECT_NAME} webhelp =============================="
#   ant webhelp
 
#above has set this value
#webhelp: WEBHELP_OTHER_XSLTPROC_ARGS = $(WEBHELP_OTHER_XSLTPROC_ARGS_COMMON)
#webhelp: WEBHELP_OTHER_XSLTPROC_ARGS += $(WEBHELP_OTHER_XSLTPROC_ARGS_LOCAL)
webhelp: $(MAIN_SRC_FILE) $(SUB_SRC_FILES) $(MAKE_FILE) webhelp_copyfiles webhelp_chunk webhelp_index
    @echo "=============================== generating ${PROJECT_NAME} webhelp =============================="
 
webhelp_copyfiles:
    -rm -rf $(OUTPUT_DIR_WEBHELP)
    mkdir -p $(OUTPUT_DIR_WEBHELP)
    @#cp -r $(TOOLS_XSL_NS_WEBHELP)/template/common ${OUTPUT_DIR_WEBHELP}
    cp -a $(IMG_DIR) $(OUTPUT_DIR_WEBHELP)
    test ! -d $(IMG_DIR)/ || cp -a $(IMG_DIR)/ ${OUTPUT_DIR_WEBHELP}
    cp $(TOOLS_XSL_NS_WEBHELP)/template/favicon.ico ${OUTPUT_DIR_WEBHELP}/
 
webhelp_chunk:
    xsltproc \
        --xinclude --output xincluded-profiled.xml  \
          --stringparam  profile.arch ${PROFILE.ARCH} \
          --stringparam  profile.audience ${PROFILE.AUDIENCE} \
          --stringparam  profile.condition ${PROFILE.CONDITION} \
          --stringparam  profile.conformance ${PROFILE.CONFORMANCE} \
          --stringparam  profile.lang ${PROFILE.LANG} \
          --stringparam  profile.os ${PROFILE.OS} \
          --stringparam  profile.revision ${PROFILE.REVISION} \
          --stringparam  profile.revisionflag ${PROFILE.REVISIONFLAG} \
          --stringparam  profile.role ${PROFILE.ROLE} \
          --stringparam  profile.security ${PROFILE.SECURITY} \
          --stringparam  profile.status ${PROFILE.STATUS} \
          --stringparam  profile.userlevel ${PROFILE.USERLEVEL} \
          --stringparam  profile.vendor ${PROFILE.VENDOR} \
          --stringparam  profile.wordsize ${PROFILE.WORDSIZE} \
          --stringparam  profile.attribute ${PROFILE.ATTRIBUTE} \
          --stringparam  profile.value ${PROFILE.VALUE} \
          $(TOOLS_XSL_NS_PROFILING)/profile.xsl  \
          $(MAIN_SRC_FILE)
    xsltproc ${WEBHELP_OTHER_XSLTPROC_ARGS} $(TOOLS_XSL_NS_WEBHELP)/xsl/webhelp.xsl xincluded-profiled.xml
    rm xincluded-profiled.xml
 
webhelp_index:
    java \
        -DhtmlDir=$(OUTPUT_DIR_WEBHELP) \
        -DindexerLanguage=en \
        -DhtmlExtension=html \
        -DdoStem=true \
        -DindexerExcludedFiles=$(INDEXER_EXCLUDED_FILES) \
        -Dorg.xml.sax.driver=org.ccil.cowan.tagsoup.Parser \
        -Djavax.xml.parsers.SAXParserFactory=org.ccil.cowan.tagsoup.jaxp.SAXFactoryImpl \
        -classpath $(WEBHELP_CLASSPATH) \
        com.nexwave.nquindexer.IndexerMain
    mkdir -p ${OUTPUT_DIR_WEBHELP}/search
    cp -r $(TOOLS_XSL_NS_WEBHELP)/template/search/* ${OUTPUT_DIR_WEBHELP}/search
 
clean_webhelp:
    @echo "=============================== cleaning ${PROJECT_NAME} webhelp =============================="
    @#ant clean
    -rm -rf $(OUTPUT_DIR_WEBHELP)
 
#overwrite default from local to release
release_webhelp: WEBHELP_OTHER_XSLTPROC_ARGS = $(WEBHELP_OTHER_XSLTPROC_ARGS_COMMON)
release_webhelp: WEBHELP_OTHER_XSLTPROC_ARGS += $(WEBHELP_OTHER_XSLTPROC_ARGS_RELEASE)
release_webhelp: webhelp
    @echo "=============================== release ${PROJECT_NAME} webhelp =============================="
    mkdir -p $(RELEASE_DIR_WEBHELP)
    - cp -a $(OUTPUT_DIR_WEBHELP)/* $(RELEASE_DIR_WEBHELP)
    - $(COMPRESS_TOOL) $(COMPRESS_FLAG) $(RELEASE_DIR_WEBHELP)/$(PROJECT_NAME).$(subst release_,,$@).$(COMPRESS_SUF) $(OUTPUT_DIR_WEBHELP)/*
 
clean_release_webhelp:
    @echo "=============================== cleaning ${PROJECT_NAME} webhelp release =============================="
    rm -rf $(RELEASE_DIR_WEBHELP)/*

然后可以正常的各种编译和删除:

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
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
CLi@PC-CLI-1 ~/develop/docbook/books/docbook_dev_note/src
$ make webhelp
rm -rf ../output/webhelp
mkdir -p ../output/webhelp
cp -a ./images ../output/webhelp
test ! -d ./images/ || cp -a ./images/ ../output/webhelp
cp D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/template/favicon.ico ../output/webhelp/
xsltproc \
        --xinclude --output xincluded-profiled.xml  \
          --stringparam  profile.arch "" \
          --stringparam  profile.audience "" \
          --stringparam  profile.condition "" \
          --stringparam  profile.conformance "" \
          --stringparam  profile.lang "" \
          --stringparam  profile.os "" \
          --stringparam  profile.revision "" \
          --stringparam  profile.revisionflag "" \
          --stringparam  profile.role "" \
          --stringparam  profile.security "" \
          --stringparam  profile.status "" \
          --stringparam  profile.userlevel "" \
          --stringparam  profile.vendor "" \
          --stringparam  profile.wordsize "" \
          --stringparam  profile.attribute "" \
          --stringparam  profile.value "" \
          D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/profiling/profile.xsl  \
          ./docbook_dev_note.xml
xsltproc --stringparam webhelp.base.dir ../output/webhelp --stringparam webhelp.common.dir file:///D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/template/common/ D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/xsl/webhelp.xsl xincluded-profiled.xml
language: en
Writing ../output/webhelp/background_docbook_come.html for sect2(background_docbook_come)
Writing ../output/webhelp/screenshot_docbook_one_in_multi_out.html for sect3(screenshot_docbook_one_in_multi_out)
Writing ../output/webhelp/what_is_the_docbook.html for sect2(what_is_the_docbook)
Writing ../output/webhelp/what_is_docbook.html for sect1(what_is_docbook)
Writing ../output/webhelp/why_use_docbook.html for sect1(why_use_docbook)
Writing ../output/webhelp/preface.html for preface(preface)
Writing ../output/webhelp/our_target.html for sect2(our_target)
Writing ../output/webhelp/format_convert_knowledge.html for sect2(format_convert_knowledge)
Writing ../output/webhelp/should_know_before_docbook.html for sect1(should_know_before_docbook)
Writing ../output/webhelp/ch01s02s01.html for sect2
Writing ../output/webhelp/download_xsltproc_win.html for sect2(download_xsltproc_win)
Writing ../output/webhelp/download_xsl_ns.html for sect2(download_xsl_ns)
Writing ../output/webhelp/download_fop.html for sect3(download_fop)
Writing ../output/webhelp/config_fop_home.html for sect3(config_fop_home)
Writing ../output/webhelp/add_fop_xconf.html for sect3(add_fop_xconf)
Writing ../output/webhelp/download_fop_add_conf.html for sect2(download_fop_add_conf)
Writing ../output/webhelp/prepare_docbook_src_xml.html for sect2(prepare_docbook_src_xml)
Writing ../output/webhelp/prepare_xml_config.html for sect3(prepare_xml_config)
Writing ../output/webhelp/convert_xml_to_html.html for sect3(convert_xml_to_html)
Writing ../output/webhelp/from_xml_generate_html.html for sect2(from_xml_generate_html)
Writing ../output/webhelp/prepare_pdf_config.html for sect3(prepare_pdf_config)
Writing ../output/webhelp/convert_xml_to_fo.html for sect3(convert_xml_to_fo)
Writing ../output/webhelp/convert_fo_to_pdf.html for sect3(convert_fo_to_pdf)
Writing ../output/webhelp/from_xml_generate_pdf.html for sect2(from_xml_generate_pdf)
Writing ../output/webhelp/pure_win_docbook_dev_env.html for sect1(pure_win_docbook_dev_env)
Writing ../output/webhelp/install_cygwin.html for sect2(install_cygwin)
Writing ../output/webhelp/download_fop_for_cygwin.html for sect2(download_fop_for_cygwin)
Writing ../output/webhelp/cygwin_docbook_dev_env.html for sect1(cygwin_docbook_dev_env)
Writing ../output/webhelp/ch01_build_env.html for chapter(ch01_build_env)
Writing ../output/webhelp/docbook4_vs_docbook5.html for sect1(docbook4_vs_docbook5)
Writing ../output/webhelp/entity_definition.html for sect1(entity_definition)
Writing ../output/webhelp/qanda_usage.html for sect1(qanda_usage)
Writing ../output/webhelp/fop_font_config.html for sect2(fop_font_config)
Writing ../output/webhelp/fop_notes.html for sect1(fop_notes)
Writing ../output/webhelp/docbook_some_concept.html for sect1(docbook_some_concept)
Writing ../output/webhelp/docbook_id_abbrev.html for sect3(docbook_id_abbrev)
Writing ../output/webhelp/docbook_best_practice.html for sect2(docbook_best_practice)
Writing ../output/webhelp/docbook_dev_notes.html for sect1(docbook_dev_notes)
Writing ../output/webhelp/example_docbook_debug_pdf.html for sect2(example_docbook_debug_pdf)
Writing ../output/webhelp/docbook_debug.html for sect1(docbook_debug)
Writing ../output/webhelp/docbook_focus_content.html for sect2(docbook_focus_content)
Writing ../output/webhelp/docbook_vs_building.html for sect2(docbook_vs_building)
Writing ../output/webhelp/docbook_summary.html for sect1(docbook_summary)
Writing ../output/webhelp/dobook_evolution_process.html for sect1(dobook_evolution_process)
Writing ../output/webhelp/ch02_notes.html for chapter(ch02_notes)
Writing ../output/webhelp/ch03_faq.html for chapter(ch03_faq)
Writing ../output/webhelp/intro_explain_docbook_materials.html for sect1(intro_explain_docbook_materials)
Writing ../output/webhelp/docbook_refer_materials.html for sect1(docbook_refer_materials)
Writing ../output/webhelp/ch04_materials.html for chapter(ch04_materials)
Writing ../output/webhelp/unknown_code_syntax_highlight.html for sect1(unknown_code_syntax_highlight)
Writing ../output/webhelp/unknown_zhcn_hypernate.html for sect1(unknown_zhcn_hypernate)
Writing ../output/webhelp/unknown_callout_co_re_number.html for sect1(unknown_callout_co_re_number)
Writing ../output/webhelp/ch05_issues.html for chapter(ch05_issues)
Writing ../output/webhelp/example_chapter_section.html for sect1(example_chapter_section)
Writing ../output/webhelp/example_para.html for sect1(example_para)
Writing ../output/webhelp/example_figure.html for sect1(example_figure)
Writing ../output/webhelp/example_table.html for sect1(example_table)
Writing ../output/webhelp/example_callout.html for sect1(example_callout)
Writing ../output/webhelp/example_link_xref.html for sect1(example_link_xref)
Writing ../output/webhelp/example_equation.html for sect1(example_equation)
Writing ../output/webhelp/example_list.html for sect1(example_list)
Writing ../output/webhelp/example_simplelist_literallayout.html for sect1(example_simplelist_literallayout)
Writing ../output/webhelp/example_xinclude.html for sect1(example_xinclude)
Writing ../output/webhelp/example_filename.html for sect1(example_filename)
Writing ../output/webhelp/example_admonitions_note.html for sect2(example_admonitions_note)
Writing ../output/webhelp/example_admonitions_caution.html for sect2(example_admonitions_caution)
Writing ../output/webhelp/example_admonitions_warning.html for sect2(example_admonitions_warning)
Writing ../output/webhelp/example_admonitions_tip.html for sect2(example_admonitions_tip)
Writing ../output/webhelp/example_admonitions_important.html for sect2(example_admonitions_important)
Writing ../output/webhelp/example_admonitions.html for sect1(example_admonitions)
Writing ../output/webhelp/ch06_examples.html for chapter(ch06_examples)
Writing ../output/webhelp/docbook_released_basic.html for sect1(docbook_released_basic)
Writing ../output/webhelp/docbook_released_embedded.html for sect1(docbook_released_embedded)
Writing ../output/webhelp/docbook_released_upper.html for sect1(docbook_released_upper)
Writing ../output/webhelp/docbook_released_other.html for sect1(docbook_released_other)
Writing ../output/webhelp/appendix.html for appendix(appendix)
Writing ../output/webhelp/index.html for book
Writing ../output/webhelp/search/l10n.js
rm xincluded-profiled.xml
java \
        -DhtmlDir=../output/webhelp \
        -DindexerLanguage=en \
        -DhtmlExtension=html \
        -DdoStem=true \
        -DindexerExcludedFiles=ix01.html \
        -Dorg.xml.sax.driver=org.ccil.cowan.tagsoup.Parser \
        -Djavax.xml.parsers.SAXParserFactory=org.ccil.cowan.tagsoup.jaxp.SAXFactoryImpl \
        -classpath "D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/extensions/webhelpindexer.jar;D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/extensions/tagsoup-1.2.1.jar;D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/extensions/lucene-analyzers-3.0.0.jar;D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/extensions/lucene-core-3.0.0.jar" \
        com.nexwave.nquindexer.IndexerMain
Stemming enabled
The created index files are located in ..\output\webhelp\search
Indexed the contents in 1 seconds
mkdir -p ../output/webhelp/search
cp -r D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/template/search/* ../output/webhelp/search
=============================== generating docbook_dev_note webhelp ==============================
 
CLi@PC-CLI-1 ~/develop/docbook/books/docbook_dev_note/src
$ make release_webhelp
rm -rf ../output/webhelp
mkdir -p ../output/webhelp
cp -a ./images ../output/webhelp
test ! -d ./images/ || cp -a ./images/ ../output/webhelp
cp D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/template/favicon.ico ../output/webhelp/
xsltproc \
        --xinclude --output xincluded-profiled.xml  \
          --stringparam  profile.arch "" \
          --stringparam  profile.audience "" \
          --stringparam  profile.condition "" \
          --stringparam  profile.conformance "" \
          --stringparam  profile.lang "" \
          --stringparam  profile.os "" \
          --stringparam  profile.revision "" \
          --stringparam  profile.revisionflag "" \
          --stringparam  profile.role "" \
          --stringparam  profile.security "" \
          --stringparam  profile.status "" \
          --stringparam  profile.userlevel "" \
          --stringparam  profile.vendor "" \
          --stringparam  profile.wordsize "" \
          --stringparam  profile.attribute "" \
          --stringparam  profile.value "" \
          D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/profiling/profile.xsl  \
          ./docbook_dev_note.xml
xsltproc --stringparam webhelp.base.dir ../output/webhelp --stringparam webhelp.common.dir https://www.crifan.com/files/res/docbook/webhelp/template/common/ D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/xsl/webhelp.xsl xincluded-profiled.xml
language: en
Writing ../output/webhelp/background_docbook_come.html for sect2(background_docbook_come)
Writing ../output/webhelp/screenshot_docbook_one_in_multi_out.html for sect3(screenshot_docbook_one_in_multi_out)
Writing ../output/webhelp/what_is_the_docbook.html for sect2(what_is_the_docbook)
Writing ../output/webhelp/what_is_docbook.html for sect1(what_is_docbook)
Writing ../output/webhelp/why_use_docbook.html for sect1(why_use_docbook)
Writing ../output/webhelp/preface.html for preface(preface)
Writing ../output/webhelp/our_target.html for sect2(our_target)
Writing ../output/webhelp/format_convert_knowledge.html for sect2(format_convert_knowledge)
Writing ../output/webhelp/should_know_before_docbook.html for sect1(should_know_before_docbook)
Writing ../output/webhelp/ch01s02s01.html for sect2
Writing ../output/webhelp/download_xsltproc_win.html for sect2(download_xsltproc_win)
Writing ../output/webhelp/download_xsl_ns.html for sect2(download_xsl_ns)
Writing ../output/webhelp/download_fop.html for sect3(download_fop)
Writing ../output/webhelp/config_fop_home.html for sect3(config_fop_home)
Writing ../output/webhelp/add_fop_xconf.html for sect3(add_fop_xconf)
Writing ../output/webhelp/download_fop_add_conf.html for sect2(download_fop_add_conf)
Writing ../output/webhelp/prepare_docbook_src_xml.html for sect2(prepare_docbook_src_xml)
Writing ../output/webhelp/prepare_xml_config.html for sect3(prepare_xml_config)
Writing ../output/webhelp/convert_xml_to_html.html for sect3(convert_xml_to_html)
Writing ../output/webhelp/from_xml_generate_html.html for sect2(from_xml_generate_html)
Writing ../output/webhelp/prepare_pdf_config.html for sect3(prepare_pdf_config)
Writing ../output/webhelp/convert_xml_to_fo.html for sect3(convert_xml_to_fo)
Writing ../output/webhelp/convert_fo_to_pdf.html for sect3(convert_fo_to_pdf)
Writing ../output/webhelp/from_xml_generate_pdf.html for sect2(from_xml_generate_pdf)
Writing ../output/webhelp/pure_win_docbook_dev_env.html for sect1(pure_win_docbook_dev_env)
Writing ../output/webhelp/install_cygwin.html for sect2(install_cygwin)
Writing ../output/webhelp/download_fop_for_cygwin.html for sect2(download_fop_for_cygwin)
Writing ../output/webhelp/cygwin_docbook_dev_env.html for sect1(cygwin_docbook_dev_env)
Writing ../output/webhelp/ch01_build_env.html for chapter(ch01_build_env)
Writing ../output/webhelp/docbook4_vs_docbook5.html for sect1(docbook4_vs_docbook5)
Writing ../output/webhelp/entity_definition.html for sect1(entity_definition)
Writing ../output/webhelp/qanda_usage.html for sect1(qanda_usage)
Writing ../output/webhelp/fop_font_config.html for sect2(fop_font_config)
Writing ../output/webhelp/fop_notes.html for sect1(fop_notes)
Writing ../output/webhelp/docbook_some_concept.html for sect1(docbook_some_concept)
Writing ../output/webhelp/docbook_id_abbrev.html for sect3(docbook_id_abbrev)
Writing ../output/webhelp/docbook_best_practice.html for sect2(docbook_best_practice)
Writing ../output/webhelp/docbook_dev_notes.html for sect1(docbook_dev_notes)
Writing ../output/webhelp/example_docbook_debug_pdf.html for sect2(example_docbook_debug_pdf)
Writing ../output/webhelp/docbook_debug.html for sect1(docbook_debug)
Writing ../output/webhelp/docbook_focus_content.html for sect2(docbook_focus_content)
Writing ../output/webhelp/docbook_vs_building.html for sect2(docbook_vs_building)
Writing ../output/webhelp/docbook_summary.html for sect1(docbook_summary)
Writing ../output/webhelp/dobook_evolution_process.html for sect1(dobook_evolution_process)
Writing ../output/webhelp/ch02_notes.html for chapter(ch02_notes)
Writing ../output/webhelp/ch03_faq.html for chapter(ch03_faq)
Writing ../output/webhelp/intro_explain_docbook_materials.html for sect1(intro_explain_docbook_materials)
Writing ../output/webhelp/docbook_refer_materials.html for sect1(docbook_refer_materials)
Writing ../output/webhelp/ch04_materials.html for chapter(ch04_materials)
Writing ../output/webhelp/unknown_code_syntax_highlight.html for sect1(unknown_code_syntax_highlight)
Writing ../output/webhelp/unknown_zhcn_hypernate.html for sect1(unknown_zhcn_hypernate)
Writing ../output/webhelp/unknown_callout_co_re_number.html for sect1(unknown_callout_co_re_number)
Writing ../output/webhelp/ch05_issues.html for chapter(ch05_issues)
Writing ../output/webhelp/example_chapter_section.html for sect1(example_chapter_section)
Writing ../output/webhelp/example_para.html for sect1(example_para)
Writing ../output/webhelp/example_figure.html for sect1(example_figure)
Writing ../output/webhelp/example_table.html for sect1(example_table)
Writing ../output/webhelp/example_callout.html for sect1(example_callout)
Writing ../output/webhelp/example_link_xref.html for sect1(example_link_xref)
Writing ../output/webhelp/example_equation.html for sect1(example_equation)
Writing ../output/webhelp/example_list.html for sect1(example_list)
Writing ../output/webhelp/example_simplelist_literallayout.html for sect1(example_simplelist_literallayout)
Writing ../output/webhelp/example_xinclude.html for sect1(example_xinclude)
Writing ../output/webhelp/example_filename.html for sect1(example_filename)
Writing ../output/webhelp/example_admonitions_note.html for sect2(example_admonitions_note)
Writing ../output/webhelp/example_admonitions_caution.html for sect2(example_admonitions_caution)
Writing ../output/webhelp/example_admonitions_warning.html for sect2(example_admonitions_warning)
Writing ../output/webhelp/example_admonitions_tip.html for sect2(example_admonitions_tip)
Writing ../output/webhelp/example_admonitions_important.html for sect2(example_admonitions_important)
Writing ../output/webhelp/example_admonitions.html for sect1(example_admonitions)
Writing ../output/webhelp/ch06_examples.html for chapter(ch06_examples)
Writing ../output/webhelp/docbook_released_basic.html for sect1(docbook_released_basic)
Writing ../output/webhelp/docbook_released_embedded.html for sect1(docbook_released_embedded)
Writing ../output/webhelp/docbook_released_upper.html for sect1(docbook_released_upper)
Writing ../output/webhelp/docbook_released_other.html for sect1(docbook_released_other)
Writing ../output/webhelp/appendix.html for appendix(appendix)
Writing ../output/webhelp/index.html for book
Writing ../output/webhelp/search/l10n.js
rm xincluded-profiled.xml
java \
        -DhtmlDir=../output/webhelp \
        -DindexerLanguage=en \
        -DhtmlExtension=html \
        -DdoStem=true \
        -DindexerExcludedFiles=ix01.html \
        -Dorg.xml.sax.driver=org.ccil.cowan.tagsoup.Parser \
        -Djavax.xml.parsers.SAXParserFactory=org.ccil.cowan.tagsoup.jaxp.SAXFactoryImpl \
        -classpath "D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/extensions/webhelpindexer.jar;D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/extensions/tagsoup-1.2.1.jar;D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/extensions/lucene-analyzers-3.0.0.jar;D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/extensions/lucene-core-3.0.0.jar" \
        com.nexwave.nquindexer.IndexerMain
Stemming enabled
The created index files are located in ..\output\webhelp\search
Indexed the contents in 1 seconds
mkdir -p ../output/webhelp/search
cp -r D:/tmp/tmp_dev_root/cgwin/home/CLi/develop/docbook/tools/docbook-xsl-ns-1.78.1/webhelp/template/search/* ../output/webhelp/search
=============================== generating docbook_dev_note webhelp ==============================
=============================== release docbook_dev_note webhelp ==============================
mkdir -p ../release/webhelp
cp -a ../output/webhelp/* ../release/webhelp
7z a -mx9  ../release/webhelp/docbook_dev_note.webhelp.7z ../output/webhelp/*
 
7-Zip 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
Can't load '/usr/lib/p7zip/Codecs/.keep-p7zip' (Permission denied)
Scanning
 
Creating archive ../release/webhelp/docbook_dev_note.webhelp.7z
 
Compressing  favicon.ico
Compressing  add_fop_xconf.html
Compressing  appendix.html
Compressing  background_docbook_come.html
Compressing  ch01s02s01.html
Compressing  ch01_build_env.html
Compressing  ch02_notes.html
Compressing  ch03_faq.html
Compressing  ch04_materials.html
Compressing  ch05_issues.html
Compressing  ch06_examples.html
Compressing  config_fop_home.html
Compressing  convert_fo_to_pdf.html
Compressing  convert_xml_to_fo.html
Compressing  convert_xml_to_html.html
Compressing  cygwin_docbook_dev_env.html
Compressing  dobook_evolution_process.html
Compressing  docbook4_vs_docbook5.html
Compressing  docbook_best_practice.html
Compressing  docbook_debug.html
Compressing  docbook_dev_notes.html
Compressing  docbook_focus_content.html
Compressing  docbook_id_abbrev.html
Compressing  docbook_refer_materials.html
Compressing  docbook_released_basic.html
Compressing  docbook_released_embedded.html
Compressing  docbook_released_other.html
Compressing  docbook_released_upper.html
Compressing  docbook_some_concept.html
Compressing  docbook_summary.html
Compressing  docbook_vs_building.html
Compressing  download_fop.html
Compressing  download_fop_add_conf.html
Compressing  download_fop_for_cygwin.html
Compressing  download_xsltproc_win.html
Compressing  download_xsl_ns.html
Compressing  entity_definition.html
Compressing  example_admonitions.html
Compressing  example_admonitions_caution.html
Compressing  example_admonitions_important.html
Compressing  example_admonitions_note.html
Compressing  example_admonitions_tip.html
Compressing  example_admonitions_warning.html
Compressing  example_callout.html
Compressing  example_chapter_section.html
Compressing  example_docbook_debug_pdf.html
Compressing  example_equation.html
Compressing  example_figure.html
Compressing  example_filename.html
Compressing  example_link_xref.html
Compressing  example_list.html
Compressing  example_para.html
Compressing  example_simplelist_literallayout.html
Compressing  example_table.html
Compressing  example_xinclude.html
Compressing  fop_font_config.html
Compressing  fop_notes.html
Compressing  format_convert_knowledge.html
Compressing  from_xml_generate_html.html
Compressing  from_xml_generate_pdf.html
Compressing  index.html
Compressing  install_cygwin.html
Compressing  intro_explain_docbook_materials.html
Compressing  our_target.html
Compressing  preface.html
Compressing  prepare_docbook_src_xml.html
Compressing  prepare_pdf_config.html
Compressing  prepare_xml_config.html
Compressing  pure_win_docbook_dev_env.html
Compressing  qanda_usage.html
Compressing  screenshot_docbook_one_in_multi_out.html
Compressing  should_know_before_docbook.html
Compressing  unknown_callout_co_re_number.html
Compressing  unknown_code_syntax_highlight.html
Compressing  unknown_zhcn_hypernate.html
Compressing  what_is_docbook.html
Compressing  what_is_the_docbook.html
Compressing  why_use_docbook.html
Compressing  search/stemmers/de_stemmer.js
Compressing  search/stemmers/en_stemmer.js
Compressing  search/stemmers/fr_stemmer.js
Compressing  search/htmlFileInfoList.js
Compressing  search/index-1.js
Compressing  search/index-2.js
Compressing  search/index-3.js
Compressing  search/l10n.js
Compressing  search/nwSearchFnt.js
Compressing  search/default.props
Compressing  search/en-us.props
Compressing  search/es-es.props
Compressing  search/ja-jp.props
Compressing  search/punctuation.props
Compressing  images/copy_out_that_line.gif
Compressing  images/docbook_pdf.gif
Compressing  images/docbook_xml_src.gif
Compressing  images/fo_src_with_indent.gif
Compressing  images/can_found_err_pos.jpg
Compressing  images/coref_in_html.jpg
Compressing  images/ctrl_g_line_7594.jpg
Compressing  images/ctrl_g_offset_441.jpg
Compressing  images/easy_find_line_pos_within_that_simple_error_line.jpg
Compressing  images/easy_to_found_error_line.jpg
Compressing  images/error_line_7594.jpg
Compressing  images/no_hl_fo_source.jpg
Compressing  images/no_indent_one_line_too_content.jpg
Compressing  images/with_hl_fo_src.jpg
Compressing  images/can_eary_find_err_line.png
Compressing  images/ctl_g_input_line_number.png
Compressing  images/ctl_g_input_line_number_with_indent_fo.png
Compressing  images/ctl_g_input_line_offset.png
Compressing  images/docbook_html.png
Compressing  images/docbook_htmls.png
Compressing  images/docbook_multi_format.png
Compressing  images/docbook_rtf.png
Compressing  images/docbook_txt.png
Compressing  images/done_docbook_arch.png
Compressing  images/generated_html_effect.png
Compressing  images/pdf_body_no_indent.png
Compressing  images/pdf_with_bookmark.png
Compressing  images/pdf_with_toc.png
Compressing  images/self_input_offset_within_line.png
 
Everything is Ok
 
CLi@PC-CLI-1 ~/develop/docbook/books/docbook_dev_note/src
$ make clean_webhelp
=============================== cleaning docbook_dev_note webhelp ==============================
rm -rf ../output/webhelp
 
CLi@PC-CLI-1 ~/develop/docbook/books/docbook_dev_note/src
$ make clean_release_webhelp
=============================== cleaning docbook_dev_note webhelp release ==============================
rm -rf ../release/webhelp/*
 
CLi@PC-CLI-1 ~/develop/docbook/books/docbook_dev_note/src
$

5.另外,再去参考:

webhelp.autolabel

(看到目录中,可以加上章节编号)

webhelp.indexer.language

(看到有zh中文支持)

去加上这些参数:

1
2
3
4
WEBHELP_OTHER_XSLTPROC_ARGS_COMMON = \
    --stringparam webhelp.base.dir $(OUTPUT_DIR_WEBHELP) \
    --stringparam webhelp.autolabel 1 \
    --stringparam webhelp.indexer.language zh

效果为:

结果经常章节索引编号没生效。

然后语言也没生效。

关于语言部分,看到了:

-DindexerLanguage=en

所以,需要改为统一的配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#WEBHELP_INDEX_LANGUAGE = en
WEBHELP_INDEX_LANGUAGE = zh
 
#if not set, default will be docs under current docbook book src directory
WEBHELP_OTHER_XSLTPROC_ARGS_COMMON = \
    --stringparam webhelp.base.dir $(OUTPUT_DIR_WEBHELP) \
    --stringparam webhelp.autolabel 1 \
    --stringparam webhelp.indexer.language $(WEBHELP_INDEX_LANGUAGE)
     
 
webhelp_index:
    java \
        -DhtmlDir=$(OUTPUT_DIR_WEBHELP) \
        -DindexerLanguage=$(WEBHELP_INDEX_LANGUAGE) \

 

然后效果为:

好像语言部分生效了:

search support zh seem ok

但是目录索引还是没有编号:

toc still no number index

后来看到:

D:\tmp\tmp_dev_root\cgwin\home\CLi\develop\docbook\tools\docbook-xsl-ns-1.78.1\webhelp\xsl\webhelp-common.xsl

中设置了:

1
2
3
4
5
6
<xsl:param name="section.autolabel" select="0"/>
<xsl:param name="chapter.autolabel" select="0"/>
<xsl:param name="appendix.autolabel" select="0"/>
<xsl:param name="qandadiv.autolabel" select="0"/>
<xsl:param name="reference.autolabel" select="0"/>
<xsl:param name="part.autolabel" select="0"/>

但是其只是去配置正文部分的章节索引。

而对于webhelp的目录的索引,的确是:

1
2
3
4
5
6
7
8
<xsl:if test="$webhelp.autolabel=1">
    <xsl:variable name="label.markup">
        <xsl:apply-templates select="key('id',$rootid)" mode="label.markup"/>
    </xsl:variable>
    <xsl:if test="normalize-space($label.markup)">
        <xsl:value-of select="concat($label.markup,$autotoc.label.separator)"/>
    </xsl:if>
</xsl:if>

等等内容去配置的。

但是不知道此处为何通过命令行给xsltproc传递:

–stringparam webhelp.autolabel 1

没效果。

6.所以去改为:

–stringparam webhelp.autolabel "1"

和:

–stringparam webhelp.indexer.language "zh"

看看效果:

结果问题依旧。

算了,暂时不管这部分了。

还是等后续,再去合并通用的xls配置,到此webhelp的xls的配置中,再去折腾这部分的设置吧。

 

【总结】

至此,算是基本告一段落了:

可以实现根据make编译local和release的不同

而传递xsltproc不同的WEBHELP_OTHER_XSLTPROC_ARGS值,

使得模板(css和js等文件)的路径分别指向本地还是在线的地址。

且都可以正常用三种浏览器,firefox,IE,Chrome,去打开。

 

注:

暂时,由于webhelp部分的template内容,还没上传到网站上,所以此时打开release版本的webhelp,部分js或css加载异常。

需要后续上传上去再去确认才可以的。

转载请注明:在路上 » 【记录】docbook的docbook-xls-ns-1.78.1中的webhelp:优化使得共享webhelp的(css和js等)模板文件

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
82 queries in 0.600 seconds, using 22.55MB memory