1 |
|
Sun Apr 6 20:28:57 BST 2003 Colin Watson <cjwatson@debian.org> |
2 |
|
|
3 |
|
Revamp locale encoding support. The old code made the incorrect |
4 |
|
assumption that the source encoding of manual pages is dependent on |
5 |
|
the locale. |
6 |
|
|
7 |
|
If MULTIBYTE_GROFF is defined then man will assume that it is using |
8 |
|
a version of groff with the multibyte patch applied, which supports |
9 |
|
some additional locales. |
10 |
|
|
11 |
|
* src/man.c (lang_table, determine_lang_table): Remove. |
12 |
|
(lang_dir): Return "C" if there is no language directory element. |
13 |
|
(make_roff_command): Find out the source encoding for the |
14 |
|
requested man page and the default device for the current locale, |
15 |
|
and use these to select a device more intelligently. Insert an |
16 |
|
iconv pipe if the source encoding differs from the input *roff |
17 |
|
encoding for the current device. |
18 |
|
* src/encodings.c: New file. There are three tables replacing the |
19 |
|
old lang_table: directory_table, charset_table, and device_table. |
20 |
|
(get_source_encoding): New function, returning the assumed source |
21 |
|
encoding for the current page from directory_table. |
22 |
|
(get_default_device): New function, returning the default *roff |
23 |
|
output device based on the current locale from charset_table. |
24 |
|
(get_roff_encoding): New function, returning the input encoding |
25 |
|
expected by *roff from device_table. This is always ISO-8859-1 |
26 |
|
unless MULTIBYTE_GROFF is defined (this is still a subject of some |
27 |
|
debate, and will be UTF-8 for all devices in groff 2). |
28 |
|
* src/encodings.h: Prototype new functions. |
29 |
|
* src/Makefile.in (man): Add encodings.o. |
30 |
|
* docs/NEWS: Document the above. |
31 |
|
|
32 |
Sun Mar 30 23:14:47 BST 2003 Colin Watson <cjwatson@debian.org> |
Sun Mar 30 23:14:47 BST 2003 Colin Watson <cjwatson@debian.org> |
33 |
|
|
34 |
* man/man1/man.man1 (SYNOPSIS): Both -H and -T take optional |
* man/man1/man.man1 (SYNOPSIS): Both -H and -T take optional |