blob: 39208afb324e88eba50c759c8296679fa55c74b0 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001#
2# Makefile for the Vim documentation on Unix
3#
4# If you get "don't know how to make scratch", first run make in the source
5# directory. Or remove the include below.
6
7AWK = awk
8
9# Set to $(VIMTARGET) when executed from src/Makefile.
10VIMEXE = vim
11
12# include the config.mk from the source directory. It's only needed to set
13# AWK, used for "make html". Comment this out if the include gives problems.
14include ../../src/auto/config.mk
15
16DOCS = \
17 arabic.txt \
18 autocmd.txt \
19 change.txt \
20 cmdline.txt \
21 debugger.txt \
22 develop.txt \
23 diff.txt \
24 digraph.txt \
25 editing.txt \
26 eval.txt \
27 farsi.txt \
28 filetype.txt \
29 fold.txt \
30 gui.txt \
31 gui_w16.txt \
32 gui_w32.txt \
33 gui_x11.txt \
34 hangulin.txt \
35 hebrew.txt \
36 help.txt \
37 howto.txt \
38 if_cscop.txt \
Bram Moolenaar293ee4d2004-12-09 21:34:53 +000039 if_mzsch.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000040 if_ole.txt \
41 if_perl.txt \
42 if_pyth.txt \
43 if_ruby.txt \
44 if_sniff.txt \
45 if_tcl.txt \
46 indent.txt \
47 index.txt \
48 insert.txt \
49 intro.txt \
50 map.txt \
51 message.txt \
52 motion.txt \
53 mbyte.txt \
54 mlang.txt \
55 netbeans.txt \
56 options.txt \
57 os_390.txt \
58 os_amiga.txt \
59 os_beos.txt \
60 os_dos.txt \
61 os_mac.txt \
62 os_mint.txt \
63 os_msdos.txt \
64 os_os2.txt \
65 os_qnx.txt \
66 os_risc.txt \
67 os_unix.txt \
68 os_vms.txt \
69 os_win32.txt \
70 pattern.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000071 pi_gzip.txt \
72 pi_netrw.txt \
73 pi_spec.txt \
Bram Moolenaar8299df92004-07-10 09:47:34 +000074 print.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000075 quickfix.txt \
76 quickref.txt \
77 quotes.txt \
78 recover.txt \
79 remote.txt \
80 repeat.txt \
81 rileft.txt \
82 russian.txt \
83 scroll.txt \
84 sign.txt \
85 sponsor.txt \
86 starting.txt \
87 syntax.txt \
88 tagsrch.txt \
89 term.txt \
90 tips.txt \
91 todo.txt \
92 uganda.txt \
93 undo.txt \
94 usr_01.txt \
95 usr_02.txt \
96 usr_03.txt \
97 usr_04.txt \
98 usr_05.txt \
99 usr_06.txt \
100 usr_07.txt \
101 usr_08.txt \
102 usr_09.txt \
103 usr_10.txt \
104 usr_11.txt \
105 usr_12.txt \
106 usr_20.txt \
107 usr_21.txt \
108 usr_22.txt \
109 usr_23.txt \
110 usr_24.txt \
111 usr_25.txt \
112 usr_26.txt \
113 usr_27.txt \
114 usr_28.txt \
115 usr_29.txt \
116 usr_30.txt \
117 usr_31.txt \
118 usr_40.txt \
119 usr_41.txt \
120 usr_42.txt \
121 usr_43.txt \
122 usr_44.txt \
123 usr_45.txt \
124 usr_90.txt \
125 usr_toc.txt \
126 various.txt \
127 version4.txt \
128 version5.txt \
129 version6.txt \
Bram Moolenaar8299df92004-07-10 09:47:34 +0000130 version7.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000131 vi_diff.txt \
132 visual.txt \
133 windows.txt \
134 workshop.txt
135
136HTMLS = \
137 arabic.html \
138 autocmd.html \
139 change.html \
140 cmdline.html \
141 debugger.html \
142 develop.html \
143 diff.html \
144 digraph.html \
145 editing.html \
146 eval.html \
147 farsi.html \
148 filetype.html \
149 fold.html \
150 gui.html \
151 gui_w16.html \
152 gui_w32.html \
153 gui_x11.html \
154 hangulin.html \
155 hebrew.html \
156 help.html \
157 howto.html \
158 if_cscop.html \
Bram Moolenaar293ee4d2004-12-09 21:34:53 +0000159 if_mzsch.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000160 if_ole.html \
161 if_perl.html \
162 if_pyth.html \
163 if_ruby.html \
164 if_sniff.html \
165 if_tcl.html \
166 indent.html \
167 index.html \
168 insert.html \
169 intro.html \
170 map.html \
171 message.html \
172 motion.html \
173 mbyte.html \
174 mlang.html \
175 netbeans.html \
176 options.html \
177 os_390.html \
178 os_amiga.html \
179 os_beos.html \
180 os_dos.html \
181 os_mac.html \
182 os_mint.html \
183 os_msdos.html \
184 os_os2.html \
185 os_qnx.html \
186 os_risc.html \
187 os_unix.html \
188 os_vms.html \
189 os_win32.html \
190 pattern.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000191 pi_gzip.html \
192 pi_netrw.html \
193 pi_spec.html \
Bram Moolenaar8299df92004-07-10 09:47:34 +0000194 print.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000195 quickfix.html \
196 quickref.html \
197 quotes.html \
198 recover.html \
199 remote.html \
200 repeat.html \
201 rileft.html \
202 russian.html \
203 scroll.html \
204 sign.html \
205 sponsor.html \
206 starting.html \
207 syntax.html \
208 tagsrch.html \
209 tags.html \
210 term.html \
211 tips.html \
212 todo.html \
213 uganda.html \
214 undo.html \
215 usr_01.html \
216 usr_02.html \
217 usr_03.html \
218 usr_04.html \
219 usr_05.html \
220 usr_06.html \
221 usr_07.html \
222 usr_08.html \
223 usr_09.html \
224 usr_10.html \
225 usr_11.html \
226 usr_12.html \
227 usr_20.html \
228 usr_21.html \
229 usr_22.html \
230 usr_23.html \
231 usr_24.html \
232 usr_25.html \
233 usr_26.html \
234 usr_27.html \
235 usr_28.html \
236 usr_29.html \
237 usr_30.html \
238 usr_31.html \
239 usr_40.html \
240 usr_41.html \
241 usr_42.html \
242 usr_43.html \
243 usr_44.html \
244 usr_45.html \
245 usr_90.html \
246 usr_toc.html \
247 various.html \
248 version4.html \
249 version5.html \
250 version6.html \
Bram Moolenaar8299df92004-07-10 09:47:34 +0000251 version7.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000252 vi_diff.html \
253 visual.html \
254 windows.html \
255 workshop.html
256
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000257CONVERTED = \
258 vim-it.UTF-8.1 \
259 evim-it.UTF-8.1 \
260 vimdiff-it.UTF-8.1 \
261 vimtutor-it.UTF-8.1 \
262 xxd-it.UTF-8.1 \
263 vim-ru.UTF-8.1 \
264 evim-ru.UTF-8.1 \
265 vimdiff-ru.UTF-8.1 \
266 vimtutor-ru.UTF-8.1 \
267 xxd-ru.UTF-8.1 \
268
Bram Moolenaar071d4272004-06-13 20:20:40 +0000269.SUFFIXES:
270.SUFFIXES: .c .o .txt .html
271
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000272all: tags vim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000273
274# Use Vim to generate the tags file. Can only be used when Vim has been
275# compiled and installed. Supports multiple languages.
276vimtags: $(DOCS)
277 $(VIMEXE) -u NONE -esX -c "helptags ." -c quit
278
279# Use "doctags" to generate the tags file. Only works for English!
280tags: doctags $(DOCS)
281 ./doctags $(DOCS) | LANG=C LC_ALL=C sort >tags
282 uniq -d -2 tags
283
284doctags: doctags.c
285 $(CC) doctags.c -o doctags
286
287vim.man: vim.1
288 nroff -man vim.1 | sed -e s/.//g > vim.man
289
290vimdiff.man: vimdiff.1
291 nroff -man vimdiff.1 | sed -e s/.//g > vimdiff.man
292
293vimtutor.man: vimtutor.1
294 nroff -man vimtutor.1 | sed -e s/.//g > vimtutor.man
295
296xxd.man: xxd.1
297 nroff -man xxd.1 | sed -e s/.//g > xxd.man
298
299uganda.nsis.txt: uganda.txt
300 sed -e 's/[ ]*\*[-a-zA-Z0-9.]*\*//g' -e 's/vim:tw=78://' \
301 uganda.txt | uniq >uganda.nsis.txt
302
303# Awk version of .txt to .html conversion.
304html: noerrors tags tags.ref $(HTMLS)
305 @if test -f errors.log; then more errors.log; fi
306
307noerrors:
308 -rm -f errors.log
309
310.txt.html:
311 $(AWK) -f makehtml.awk $< >$@
312
313tags.ref tags.html: tags
314 $(AWK) -f maketags.awk tags >tags.html
315
316# Perl version of .txt to .html conversion.
317# There can't be two rules to produce a .html from a .txt file.
318# Just run over all .txt files each time one changes. It's fast anyway.
319perlhtml: tags $(DOCS)
320 ./vim2html.pl tags $(DOCS)
321
322clean:
323 -rm doctags *.html tags.ref
324
325# These files are in the extra archive, skip if not present
326
327arabic.txt:
328 touch arabic.txt
329
330farsi.txt:
331 touch farsi.txt
332
333hebrew.txt:
334 touch hebrew.txt
335
336russian.txt:
337 touch russian.txt
338
339gui_w16.txt:
340 touch gui_w16.txt
341
342gui_w32.txt:
343 touch gui_w32.txt
344
345if_ole.txt:
346 touch if_ole.txt
347
348os_390.txt:
349 touch os_390.txt
350
351os_amiga.txt:
352 touch os_amiga.txt
353
354os_beos.txt:
355 touch os_beos.txt
356
357os_dos.txt:
358 touch os_dos.txt
359
360os_mac.txt:
361 touch os_mac.txt
362
363os_mint.txt:
364 touch os_mint.txt
365
366os_msdos.txt:
367 touch os_msdos.txt
368
369os_os2.txt:
370 touch os_os2.txt
371
372os_qnx.txt:
373 touch os_qnx.txt
374
375os_risc.txt:
376 touch os_risc.txt
377
378os_win32.txt:
379 touch os_win32.txt
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000380
381vim-it.UTF-8.1: vim-it.1
382 iconv -f latin1 -t utf-8 $< >$@
383
384evim-it.UTF-8.1: evim-it.1
385 iconv -f latin1 -t utf-8 $< >$@
386
387vimdiff-it.UTF-8.1: vimdiff-it.1
388 iconv -f latin1 -t utf-8 $< >$@
389
390vimtutor-it.UTF-8.1: vimtutor-it.1
391 iconv -f latin1 -t utf-8 $< >$@
392
393xxd-it.UTF-8.1: xxd-it.1
394 iconv -f latin1 -t utf-8 $< >$@
395
396vim-ru.UTF-8.1: vim-ru.1
397 iconv -f KOI8-R -t utf-8 $< >$@
398
399evim-ru.UTF-8.1: evim-ru.1
400 iconv -f KOI8-R -t utf-8 $< >$@
401
402vimdiff-ru.UTF-8.1: vimdiff-ru.1
403 iconv -f KOI8-R -t utf-8 $< >$@
404
405vimtutor-ru.UTF-8.1: vimtutor-ru.1
406 iconv -f KOI8-R -t utf-8 $< >$@
407
408xxd-ru.UTF-8.1: xxd-ru.1
409 iconv -f KOI8-R -t utf-8 $< >$@