diff --git a/en_US.ISO8859-1/books/handbook/Makefile b/en_US.ISO8859-1/books/handbook/Makefile
index f11f0f4fa8..157d298b40 100644
--- a/en_US.ISO8859-1/books/handbook/Makefile
+++ b/en_US.ISO8859-1/books/handbook/Makefile
@@ -1,246 +1,244 @@
#
# $FreeBSD$
#
# Build the FreeBSD Handbook.
#
# ------------------------------------------------------------------------
#
# Handbook-specific variables
#
# WITH_PGPKEYS The print version of the handbook only prints PGP
# fingerprints by default. If you would like for the
# entire key to be displayed, then set this variable.
# This option has no affect on the HTML formats.
#
# Handbook-specific targets
#
# pgpkeyring This target will read the contents of
# pgpkeys/chapter.sgml and will extract all of
# the pgpkeys to standard out. This output can then
# be redirected into a file and distributed as a
# public keyring of FreeBSD developers that can
# easily be imported into PGP/GPG.
#
# ------------------------------------------------------------------------
MAINTAINER= doc@FreeBSD.org
DOC?= book
FORMATS?= html-split
HAS_INDEX= true
WITH_GLOSSARY?=
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
IMAGES_EN = advanced-networking/isdn-bus.eps
IMAGES_EN+= advanced-networking/isdn-twisted-pair.eps
IMAGES_EN+= advanced-networking/natd.eps
IMAGES_EN+= advanced-networking/net-routing.pic
IMAGES_EN+= install/adduser1.scr
IMAGES_EN+= install/adduser2.scr
IMAGES_EN+= install/adduser3.scr
IMAGES_EN+= install/boot-mgr.scr
IMAGES_EN+= install/console-saver1.scr
IMAGES_EN+= install/console-saver2.scr
IMAGES_EN+= install/console-saver3.scr
IMAGES_EN+= install/console-saver4.scr
IMAGES_EN+= install/desktop.scr
IMAGES_EN+= install/disklabel-auto.scr
IMAGES_EN+= install/disklabel-ed1.scr
IMAGES_EN+= install/disklabel-ed2.scr
IMAGES_EN+= install/disklabel-fs.scr
IMAGES_EN+= install/disklabel-root1.scr
IMAGES_EN+= install/disklabel-root2.scr
IMAGES_EN+= install/disklabel-root3.scr
IMAGES_EN+= install/disk-layout.eps
IMAGES_EN+= install/dist-set.scr
IMAGES_EN+= install/dist-set2.scr
IMAGES_EN+= install/docmenu1.scr
IMAGES_EN+= install/ed0-conf.scr
IMAGES_EN+= install/ed0-conf2.scr
IMAGES_EN+= install/edit-inetd-conf.scr
IMAGES_EN+= install/fdisk-drive1.scr
IMAGES_EN+= install/fdisk-drive2.scr
IMAGES_EN+= install/fdisk-edit1.scr
IMAGES_EN+= install/fdisk-edit2.scr
IMAGES_EN+= install/ftp-anon1.scr
IMAGES_EN+= install/ftp-anon2.scr
IMAGES_EN+= install/hdwrconf.scr
IMAGES_EN+= install/keymap.scr
IMAGES_EN+= install/main1.scr
IMAGES_EN+= install/mainexit.scr
IMAGES_EN+= install/main-std.scr
IMAGES_EN+= install/main-options.scr
IMAGES_EN+= install/main-doc.scr
IMAGES_EN+= install/main-keymap.scr
IMAGES_EN+= install/media.scr
IMAGES_EN+= install/mouse1.scr
IMAGES_EN+= install/mouse2.scr
IMAGES_EN+= install/mouse3.scr
IMAGES_EN+= install/mouse4.scr
IMAGES_EN+= install/mouse5.scr
IMAGES_EN+= install/mouse6.scr
IMAGES_EN+= install/mta-main.scr
IMAGES_EN+= install/net-config-menu1.scr
IMAGES_EN+= install/net-config-menu2.scr
IMAGES_EN+= install/nfs-server-edit.scr
IMAGES_EN+= install/ntp-config.scr
IMAGES_EN+= install/options.scr
IMAGES_EN+= install/pkg-cat.scr
IMAGES_EN+= install/pkg-confirm.scr
IMAGES_EN+= install/pkg-install.scr
IMAGES_EN+= install/pkg-sel.scr
IMAGES_EN+= install/probstart.scr
IMAGES_EN+= install/routed.scr
IMAGES_EN+= install/security.scr
IMAGES_EN+= install/sysinstall-exit.scr
IMAGES_EN+= install/timezone1.scr
IMAGES_EN+= install/timezone2.scr
IMAGES_EN+= install/timezone3.scr
IMAGES_EN+= install/userconfig.scr
IMAGES_EN+= install/userconfig2.scr
IMAGES_EN+= install/xf86setup.scr
IMAGES_EN+= install/example-dir1.eps
IMAGES_EN+= install/example-dir2.eps
IMAGES_EN+= install/example-dir3.eps
IMAGES_EN+= install/example-dir4.eps
IMAGES_EN+= install/example-dir5.eps
IMAGES_EN+= security/ipsec-network.pic
IMAGES_EN+= security/ipsec-crypt-pkt.pic
IMAGES_EN+= security/ipsec-encap-pkt.pic
IMAGES_EN+= security/ipsec-out-pkt.pic
IMAGES_EN+= vinum/vinum-concat.pic
IMAGES_EN+= vinum/vinum-mirrored-vol.pic
IMAGES_EN+= vinum/vinum-raid10-vol.pic
IMAGES_EN+= vinum/vinum-raid5-org.pic
IMAGES_EN+= vinum/vinum-simple-vol.pic
IMAGES_EN+= vinum/vinum-striped-vol.pic
IMAGES_EN+= vinum/vinum-striped.pic
# Images from the cross-document image library
IMAGES_LIB= callouts/1.png
IMAGES_LIB+= callouts/2.png
IMAGES_LIB+= callouts/3.png
IMAGES_LIB+= callouts/4.png
IMAGES_LIB+= callouts/5.png
IMAGES_LIB+= callouts/6.png
IMAGES_LIB+= callouts/7.png
IMAGES_LIB+= callouts/8.png
IMAGES_LIB+= callouts/9.png
IMAGES_LIB+= callouts/10.png
#
# SRCS lists the individual SGML files that make up the document. Changes
# to any of these files will force a rebuild
#
# SGML content
SRCS+= book.sgml
SRCS+= advanced-networking/chapter.sgml
SRCS+= basics/chapter.sgml
SRCS+= bibliography/chapter.sgml
SRCS+= config/chapter.sgml
SRCS+= boot/chapter.sgml
SRCS+= cutting-edge/chapter.sgml
SRCS+= disks/chapter.sgml
SRCS+= eresources/chapter.sgml
SRCS+= install/chapter.sgml
SRCS+= introduction/chapter.sgml
SRCS+= kernelconfig/chapter.sgml
SRCS+= l10n/chapter.sgml
SRCS+= linuxemu/chapter.sgml
SRCS+= mail/chapter.sgml
SRCS+= mirrors/chapter.sgml
SRCS+= multimedia/chapter.sgml
SRCS+= desktop/chapter.sgml
SRCS+= pgpkeys/chapter.sgml
SRCS+= ppp-and-slip/chapter.sgml
SRCS+= printing/chapter.sgml
SRCS+= security/chapter.sgml
SRCS+= serialcomms/chapter.sgml
SRCS+= users/chapter.sgml
SRCS+= vinum/chapter.sgml
SRCS+= x11/chapter.sgml
SRCS+= ports/chapter.sgml
SRCS+= preface/preface.sgml
SRCS+= colophon.sgml
# Entities
SRCS+= chapters.ent
SYMLINKS= ${DESTDIR} index.html handbook.html
# Turn on all the chapters.
CHAPTERS?= ${SRCS:M*chapter.sgml}
SGMLFLAGS+= ${CHAPTERS:S/\/chapter.sgml//:S/^/-i chap./}
.if defined(WITH_GLOSSARY) && !empty(WITH_GLOSSARY)
SGMLFLAGS+= -i chap.freebsd-glossary
.endif
# XXX The Handbook build currently overflows some internal, hardcoded
# limits in pdftex. Until we split the Handbook up, build the PDF
# version using ps2pdf instead of pdftex.
PS2PDF?= ${PREFIX}/bin/ps2pdf
book.tex-pdf:
${TOUCH} book.tex-pdf
book.pdf: book.ps
${PS2PDF} book.ps book.pdf
pgpkeyring: pgpkeys/chapter.sgml
@${JADE} -V nochunks ${JADEOPTS} -d ${DSLPGP} -t sgml ${MASTERDOC}
#
# Handbook-specific variables
#
.if defined(WITH_PGPKEYS)
JADEFLAGS+= -V withpgpkeys
.endif
DOC_PREFIX?= ${.CURDIR}/../../..
.for p in ftp cvsup
SRCS+= mirrors.sgml.${p}.inc
CLEANFILES+= mirrors.sgml.${p}.inc
CLEANFILES+= mirrors.sgml.${p}.inc.tmp
.endfor
SRCS+= eresources.sgml.www.inc
CLEANFILES+= eresources.sgml.www.inc
CLEANFILES+= eresources.sgml.www.inc.tmp
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
.for p in ftp cvsup
mirrors.sgml.${p}.inc: ${XML_MIRRORS} ${XSL_MIRRORS}
${XSLTPROC} ${XSLTPROCOPTS} \
-o $@.tmp \
- --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
--param 'type' "'$p'" \
--param 'proto' "'$p'" \
--param 'target' "'handbook/mirrors/chapter.sgml'" \
${XSL_MIRRORS} ${XML_MIRRORS}
${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>\1>,;s,,,'\
< $@.tmp > $@ || (${RM} -f $@ && false)
${RM} -f $@.tmp
.endfor
eresources.sgml.www.inc: ${XML_MIRRORS} ${XSL_MIRRORS}
${XSLTPROC} ${XSLTPROCOPTS} \
-o $@.tmp \
- --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
--param 'type' "'www'" \
--param 'proto' "'http'" \
--param 'target' "'handbook/eresources/chapter.sgml'" \
${XSL_MIRRORS} ${XML_MIRRORS}
${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>\1>,;s,,,'\
< $@.tmp > $@ || (${RM} -f $@ && false)
${RM} -f $@.tmp
diff --git a/ja_JP.eucJP/share/sgml/mirrors-local.xsl b/ja_JP.eucJP/share/sgml/mirrors-local.xsl
index 1a23c69216..ca0170a0ba 100644
--- a/ja_JP.eucJP/share/sgml/mirrors-local.xsl
+++ b/ja_JP.eucJP/share/sgml/mirrors-local.xsl
@@ -1,35 +1,30 @@
-
-
-
-
問題がある場合は、このドメインのホストマスタ
宛にお問い合わせください。
現在
diff --git a/ja_JP.eucJP/share/sgml/transtable-local.xsl b/ja_JP.eucJP/share/sgml/transtable-local.xsl
index d1b0e7f6b7..e4e5521c32 100644
--- a/ja_JP.eucJP/share/sgml/transtable-local.xsl
+++ b/ja_JP.eucJP/share/sgml/transtable-local.xsl
@@ -1,16 +1,12 @@
-
-
-
diff --git a/ja_JP.eucJP/share/sgml/transtable.xml b/ja_JP.eucJP/share/sgml/transtable.xml
index 3318cd3a85..ef3f2b49b8 100644
--- a/ja_JP.eucJP/share/sgml/transtable.xml
+++ b/ja_JP.eucJP/share/sgml/transtable.xml
@@ -1,272 +1,338 @@
$FreeBSD$
-
- Central Servers
- 中央サーバ
-
-
-
- Primary Mirror Sites
- 一次ミラーサイト
-
-
-
- Argentina
- アルゼンチン
-
-
-
- Australia
- オーストラリア
-
-
-
- Austria
- オーストリア
-
-
-
- Belgium
- ベルギー
-
-
-
- Brazil
- ブラジル
-
-
-
- Bulgaria
- ブルガリア
-
-
-
- Canada
- カナダ
-
-
-
- China
- 中国
-
-
-
- Croatia
- クロアチア
-
-
-
- Czech Republic
- チェコ共和国
-
-
-
- Denmark
- デンマーク
-
-
-
- Estonia
- エストニア
-
-
-
- Finland
- フィンランド
-
-
-
- France
- フランス
-
-
-
- Germany
- ドイツ
-
-
-
- Greece
- ギリシア
-
-
-
- Hong Kong
- 香港
-
-
-
- Hungary
- ハンガリー
-
-
-
- Iceland
- アイスランド
-
-
-
- Ireland
- アイルランド
-
-
-
- Italy
- イタリア
-
-
-
- Japan
- 日本
-
-
-
- Korea
- 韓国
-
-
-
- Kuwait
- クウェート
-
-
-
- Latvia
- ラトビア
-
-
-
- Lithuania
- リトアニア
-
-
-
- Netherlands
- オランダ
-
-
-
- New Zealand
- ニュージーランド
-
-
-
- Norway
- ノルウェー
-
-
-
- Philippines
- フィリピン
-
-
-
- Poland
- ポーランド
-
-
-
- Portugal
- ポルトガル
-
-
-
- Romania
- ルーマニア
-
-
-
- Russia
- ロシア
-
-
-
- San Marino
- サンマリノ
-
-
-
- Saudi Arabia
- サウジアラビア
-
-
-
- Singapore
- シンガポール
-
-
-
- Slovak Republic
- スロバキア共和国
-
-
-
- Slovenia
- スロベニア
-
-
-
- South Africa
- 南アフリカ
-
-
-
- Spain
- スペイン
-
-
-
- Sweden
- スウェーデン
-
-
-
- Switzerland
- スイス
-
-
-
- Taiwan
- 台湾
-
-
-
- Turkey
- トルコ
-
-
-
- Ukraine
- ウクライナ
-
-
-
- United Kingdom
- イギリス
-
-
-
- USA
- アメリカ合衆国
-
+
+
+ Central Servers
+ 中央サーバ
+
+
+
+ Primary Mirror Sites
+ 一次ミラーサイト
+
+
+
+ Argentina
+ アルゼンチン
+
+
+
+ Australia
+ オーストラリア
+
+
+
+ Austria
+ オーストリア
+
+
+
+ Belgium
+ ベルギー
+
+
+
+ Brazil
+ ブラジル
+
+
+
+ Bulgaria
+ ブルガリア
+
+
+
+ Canada
+ カナダ
+
+
+
+ China
+ 中国
+
+
+
+ Croatia
+ クロアチア
+
+
+
+ Czech Republic
+ チェコ共和国
+
+
+
+ Denmark
+ デンマーク
+
+
+
+ Estonia
+ エストニア
+
+
+
+ Finland
+ フィンランド
+
+
+
+ France
+ フランス
+
+
+
+ Germany
+ ドイツ
+
+
+
+ Greece
+ ギリシア
+
+
+
+ Hong Kong
+ 香港
+
+
+
+ Hungary
+ ハンガリー
+
+
+
+ Iceland
+ アイスランド
+
+
+
+ Ireland
+ アイルランド
+
+
+
+ Italy
+ イタリア
+
+
+
+ Japan
+ 日本
+
+
+
+ Korea
+ 韓国
+
+
+
+ Kuwait
+ クウェート
+
+
+
+ Latvia
+ ラトビア
+
+
+
+ Lithuania
+ リトアニア
+
+
+
+ Netherlands
+ オランダ
+
+
+
+ New Zealand
+ ニュージーランド
+
+
+
+ Norway
+ ノルウェー
+
+
+
+ Philippines
+ フィリピン
+
+
+
+ Poland
+ ポーランド
+
+
+
+ Portugal
+ ポルトガル
+
+
+
+ Romania
+ ルーマニア
+
+
+
+ Russia
+ ロシア
+
+
+
+ San Marino
+ サンマリノ
+
+
+
+ Saudi Arabia
+ サウジアラビア
+
+
+
+ Singapore
+ シンガポール
+
+
+
+ Slovak Republic
+ スロバキア共和国
+
+
+
+ Slovenia
+ スロベニア
+
+
+
+ South Africa
+ 南アフリカ
+
+
+
+ Spain
+ スペイン
+
+
+
+ Sweden
+ スウェーデン
+
+
+
+ Switzerland
+ スイス
+
+
+
+ Taiwan
+ 台湾
+
+
+
+ Turkey
+ トルコ
+
+
+
+ Ukraine
+ ウクライナ
+
+
+
+ United Kingdom
+ イギリス
+
+
+
+ USA
+ アメリカ合衆国
+
+
+
+
+
+ 1
+ 1 月
+
+
+
+ 2
+ 2 月
+
+
+
+ 3
+ 3 月
+
+
+
+ 4
+ 4 月
+
+
+
+ 5
+ 5 月
+
+
+
+ 6
+ 6 月
+
+
+
+ 7
+ 7 月
+
+
+
+ 8
+ 8 月
+
+
+
+ 9
+ 9 月
+
+
+
+ 10
+ 10 月
+
+
+
+ 11
+ 11 月
+
+
+
+ 12
+ 12 月
+
+
diff --git a/share/mk/doc.common.mk b/share/mk/doc.common.mk
index 1ccd364892..4b36bbc409 100644
--- a/share/mk/doc.common.mk
+++ b/share/mk/doc.common.mk
@@ -1,147 +1,160 @@
#
# $FreeBSD$
#
# This include file provides targets and variables for
# documents commonly used in doc/ and www/ tree.
#
+AWK?= /usr/bin/awk
+GREP?= /usr/bin/grep
+
.if defined(DOC_PREFIX) && !empty(DOC_PREFIX)
WEB_PREFIX?= ${DOC_PREFIX}/../www
.elif defined(WEB_PREFIX) && !empty(WEB_PREFIX)
DOC_PREFIX?= ${WEB_PREFIX}/../doc
.else
.error "You must define either WEB_PREFIX or DOC_PREFIX!"
.endif
# ------------------------------------------------------------------------
#
# Work out the language and encoding used for this document.
#
# Liberal default of maximum of 10 directories below to find it.
#
.if defined(DOC_PREFIX) && !empty(DOC_PREFIX)
DOC_PREFIX_NAME!= realpath ${DOC_PREFIX}
DOC_PREFIX_NAME:= ${DOC_PREFIX_NAME:T}
.else
DOC_PREFIX_NAME?= doc
.endif
.if defined(WEB_PREFIX) && !empty(WEB_PREFIX)
WWW_PREFIX_NAME!= realpath ${WEB_PREFIX}
WWW_PREFIX_NAME:= ${WWW_PREFIX_NAME:T}
.else
WWW_PREFIX_NAME?= www
.endif
.if (!defined(LANGCODE) || empty(LANGCODE)) && (!defined(WWW_LANGCODE) || empty(WWW_LANGCODE))
# Calculate _LANGCODE.
_LANGCODE:= ${.CURDIR}
.for _ in 1 2 3 4 5 6 7 8 9 10
.if !(${_LANGCODE:H:T} == ${DOC_PREFIX_NAME}) && !(${_LANGCODE:H:T} == ${WWW_PREFIX_NAME})
_LANGCODE:= ${_LANGCODE:H}
.endif
.endfor
.if (${_LANGCODE:H:T} == ${DOC_PREFIX_NAME})
# We are in doc/.
_LANGCODE:= ${_LANGCODE:T}
_WWW_LANGCODE:= .
.else
# We are in www/.
_WWW_LANGCODE:= ${_LANGCODE:T}
_LANGCODE:= .
.endif
.else
# when LANGCODE or WWW_LANGCODE is defined, use the value.
.if defined(LANGCODE) && !empty(LANGCODE)
_LANGCODE?= ${LANGCODE}
.else
_LANGCODE?= .
.endif
.if defined(WWW_LANGCODE) && !empty(WWW_LANGCODE)
_WWW_LANGCODE?= ${WWW_LANGCODE}
.else
_WWW_LANGCODE?= .
.endif
.endif
# fixup _LANGCODE
.if (${_LANGCODE} == .)
# We have a short name such as `en' in ${_WWW_LANGCODE} now.
# Guess _LANGCODE using _WWW_LANGCODE.
_LANGCODE:= ${_WWW_LANGCODE}
.if (${_LANGCODE} != .)
_LANGCODE!= ${ECHO} ${DOC_PREFIX}/${_WWW_LANGCODE}*
.for _ in 1 2 3 4 5 6 7 8 9 10
.if !(${_LANGCODE:H:T} == ${DOC_PREFIX_NAME})
_LANGCODE:= ${_LANGCODE:H}
.endif
.endfor
_LANGCODE:= ${_LANGCODE:T}
.endif
.endif
LANGCODE?= ${_LANGCODE}
# fixup _WWW_LANGCODE
.if (${_WWW_LANGCODE} == .)
# We have a long name such as `en_US.ISO8859-1' in ${LANGCODE} now.
# Guess _WWW_LANGCODE using _LANGCODE.
_WWW_LANGCODE!= ${ECHO} ${WEB_PREFIX}/*
_WWW2_LANGCODE!= ${ECHO} ${_WWW_LANGCODE:T} |\
${SED} -e 's,.*\(${LANGCODE:R:C,(..)_.*,\1,}[^. ]*\).*,\1,'
.if ${_WWW_LANGCODE:T} == ${_WWW2_LANGCODE}
_WWW_LANGCODE:= .
.else
_WWW_LANGCODE:= ${_WWW2_LANGCODE}
.endif
.undef _WWW2_LANGCODE
.endif
WWW_LANGCODE?= ${_WWW_LANGCODE}
-# ------------------------------------------------------------------------
-#
-# advisories.xml dependency.
-#
-
-XML_ADVISORIES= ${WEB_PREFIX}/share/sgml/advisories.xml
-
# ------------------------------------------------------------------------
#
# mirrors.xml dependency.
#
XML_MIRRORS_MASTER= ${DOC_PREFIX}/share/sgml/mirrors.xml
XML_MIRRORS= ${.OBJDIR}/${DOC_PREFIX:S,^${.CURDIR}/,,}/${LANGCODE}/share/sgml/mirrors.xml
XSL_MIRRORS_MASTER= ${DOC_PREFIX}/share/sgml/mirrors-master.xsl
.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/mirrors-local.xsl)
XSL_MIRRORS= ${DOC_PREFIX}/${LANGCODE}/share/sgml/mirrors-local.xsl
.else
XSL_MIRRORS= ${DOC_PREFIX}/share/sgml/mirrors-local.xsl
.endif
XSL_TRANSTABLE_MASTER= ${DOC_PREFIX}/share/sgml/transtable-master.xsl
+XSL_TRANSTABLE_COMMON= ${DOC_PREFIX}/share/sgml/transtable-common.xsl
.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable-local.xsl)
XSL_TRANSTABLE= ${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable-local.xsl
.else
XSL_TRANSTABLE= ${DOC_PREFIX}/share/sgml/transtable-local.xsl
.endif
.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable.xml)
XML_TRANSTABLE= ${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable.xml
.else
XML_TRANSTABLE= ${DOC_PREFIX}/share/sgml/transtable.xml
.endif
-${XSL_MIRRORS}: ${XSL_MIRRORS_MASTER}
+${XSL_MIRRORS}: ${XSL_MIRRORS_MASTER} ${XSL_TRANSTABLE_COMMON}
-${XML_MIRRORS}: ${XML_MIRRORS_MASTER} ${XSL_TRANSTABLE} ${XSL_TRANSTABLE_MASTER}
+${XML_MIRRORS}: ${XML_MIRRORS_MASTER} ${XSL_TRANSTABLE} ${XSL_TRANSTABLE_MASTER} ${XSL_TRANSTABLE_COMMON}
${MKDIR} -p ${@:H}
+ ${XSLTPROC} ${XSLTPROCOPTS} \
+ --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
+ --param 'transtable-target-element' "'country'" \
+ --param 'transtable-word-group' "'country'" \
+ --param 'transtable-mode' "'sortkey'" \
+ ${XSL_TRANSTABLE} ${XML_MIRRORS_MASTER} \
+ | env -i LANG="${LANGCODE}" ${SORT} -f > $@.sort.tmp
+ env -i ${GREP} "^ $@.sort
+ ${ECHO} "" >> $@.sort
+ env -i ${AWK} '/^ / {sub(/@sortkey@/, ++line); print;}' < $@.sort.tmp >> $@.sort
+ ${ECHO} '' >> $@.sort
${XSLTPROC} ${XSLTPROCOPTS} -o $@ \
--param 'transtable.xml' "'${XML_TRANSTABLE}'" \
- --param 'transtable-conv-element' "'country'" \
+ --param 'transtable-target-element' "'country'" \
+ --param 'transtable-word-group' "'country'" \
+ --param 'transtable-sortkey.xml' "'$@.sort'" \
${XSL_TRANSTABLE} ${XML_MIRRORS_MASTER}
+ ${RM} -f $@.sort $@.sort.tmp
CLEANFILES+= ${XML_MIRRORS}
+CLEANFILES+= ${XML_MIRRORS}.sort
+CLEANFILES+= ${XML_MIRRORS}.sort.tmp
diff --git a/share/sgml/mirrors-local.xsl b/share/sgml/mirrors-local.xsl
index 4fff70caa7..786463bdeb 100644
--- a/share/sgml/mirrors-local.xsl
+++ b/share/sgml/mirrors-local.xsl
@@ -1,17 +1,13 @@
-
-
-
diff --git a/share/sgml/mirrors-master.xsl b/share/sgml/mirrors-master.xsl
index cd13a0f6cf..dffb2709e2 100644
--- a/share/sgml/mirrors-master.xsl
+++ b/share/sgml/mirrors-master.xsl
@@ -1,257 +1,260 @@
()
()
In case of problems, please contact the hostmaster
for this domain.
as of
-
+
-
+
.
,
-
+
-
-
+
+
(IPv6)
diff --git a/share/sgml/transtable-common.xsl b/share/sgml/transtable-common.xsl
new file mode 100644
index 0000000000..2b9ebaedfe
--- /dev/null
+++ b/share/sgml/transtable-common.xsl
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/share/sgml/transtable-local.xsl b/share/sgml/transtable-local.xsl
index 25ae67845f..70e7a29c45 100644
--- a/share/sgml/transtable-local.xsl
+++ b/share/sgml/transtable-local.xsl
@@ -1,16 +1,21 @@
-
+
+
+
+
+
+
diff --git a/share/sgml/transtable-master.xsl b/share/sgml/transtable-master.xsl
index 2eda63fa62..0c78fe0721 100644
--- a/share/sgml/transtable-master.xsl
+++ b/share/sgml/transtable-master.xsl
@@ -1,49 +1,90 @@
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/share/sgml/transtable.xml b/share/sgml/transtable.xml
index 1d420bf067..c1a1b99950 100644
--- a/share/sgml/transtable.xml
+++ b/share/sgml/transtable.xml
@@ -1,30 +1,86 @@
$FreeBSD$
-
+
+
+ 1
+ January
+
+
+
+ 2
+ February
+
+
+
+ 3
+ March
+
+
+
+ 4
+ April
+
+
+
+ 5
+ May
+
+
+
+ 6
+ June
+
+
+
+ 7
+ July
+
+
+
+ 8
+ August
+
+
+
+ 9
+ September
+
+
+
+ 10
+ October
+
+
+
+ 11
+ November
+
+
+ 12
+ December
+
+