diff --git a/Doxyfile.help b/Doxyfile.help
index beda7bbb1..746733827 100644
--- a/Doxyfile.help
+++ b/Doxyfile.help
@@ -241,9 +241,9 @@ ALIASES += "endfish="
ALIASES += "asis{1}=\1"
ALIASES += "blah{1}=\1"
-ALIASES += "cmnd{1}=\1"
-ALIASES += "func{1}=\1"
-ALIASES += "sbin{1}=\1"
+ALIASES += "cmnd{1}=\b \1"
+ALIASES += "func{1}=\b \1"
+ALIASES += "sbin{1}=\b \1"
ALIASES += "args{1}=\1"
ALIASES += "opts{1}=\1"
ALIASES += "vars{1}=\1"
@@ -253,18 +253,18 @@ ALIASES += "fsfo{1}=\1"
ALIASES += "path{1}=\1"
ALIASES += "clrv{1}=\1"
-ALIASES += "strg{1}=\1"
+ALIASES += "strg{1}=\1"
ALIASES += "sglq{1}=\'\1\'"
ALIASES += "dblq{1}=\"\1\""
-ALIASES += "prmt{1}="
-ALIASES += "sgst{1}=\1"
+ALIASES += "prmt{1}=\1"
+ALIASES += "sgst{1}=\1"
ALIASES += "eror{1}=\1"
-ALIASES += "curs{1}=_"
+ALIASES += "curs{1}=\1"
ALIASES += "bold{1}=\1"
ALIASES += "emph{1}=\1"
-ALIASES += "undr{1}=\1"
+ALIASES += "undr{1}=\1"
ALIASES += "span{2}=\1"
ALIASES += "spcl{2}=\1"
diff --git a/Makefile.in b/Makefile.in
index a9735fbf8..e0c892f2d 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -269,7 +269,7 @@ user_doc: $(HDR_FILES_SRC) Doxyfile.user $(HTML_SRC) $(HELP_SRC) doc.h $(HDR_FIL
#
doc: *.h *.cpp doc.h Doxyfile
- (cat Doxyfile ; echo PROJECT_NUMBER=$(FISH_BUILD_VERSION)) | doxygen - ;
+ (cat Doxyfile; echo PROJECT_NUMBER=$(FISH_BUILD_VERSION)) | doxygen - ;
#
@@ -378,7 +378,7 @@ doc_src/fish_lexicon_filter: lexicon.txt doc_src/fish_lexicon_filter.in
# Clean the filter input comments and set the shebang as sed can reside in
# /bin or /usr/bin and some versions dont allow more than one comment!.
sed <$@.in >$@.tmp -e 's|@sed@|'"`command -v sed`"'|' -e '/^[ ]*#[^!]/d'
- # Scan through the lexicon, transforming each line to something usefue to Doxygen.
+ # Scan through the lexicon, transforming each line to something useful to Doxygen.
sed >$@.tmp -n \
-e 's|^\([a-z][a-z][a-z][a-z]\) \([a-z_-]*\)$$|s,[[:<:]]\2[[:>:]],@\1{\2},g|p' \
-e '$$G;s/.*\n/b tidy/p'; \
@@ -485,11 +485,12 @@ common.o: $(COMMON_FILES)
# There ought to be something simpler.
#
-share/man: $(HELP_SRC)
+share/man: $(HELP_SRC) doc_src/fish_lexicon_filter
-mkdir share/man
touch share/man
-rm -Rf share/man/man1
- PROJECT_NUMBER=`echo $(FISH_BUILD_VERSION)| sed "s/-.*//"` ./build_tools/build_documentation.sh Doxyfile.help ./doc_src ./share
+ PROJECT_NUMBER=`echo $(FISH_BUILD_VERSION)| sed "s/-.*//"` INPUT_FILTER=doc_src/fish_lexicon_filter \
+ ./build_tools/build_documentation.sh Doxyfile.help ./doc_src ./share
#
# The build rules for installing/uninstalling fish
@@ -803,7 +804,7 @@ clean:
rm -f $(PROGRAMS) fish_tests key_reader
rm -f command_list.txt command_list_toc.txt toc.txt
rm -f doc_src/index.hdr doc_src/commands.hdr
- rm -f doc_src/fish_lexicon_filter lexicon.txt
+ rm -f doc_src/fish_lexicon_filter lexicon.txt debug-lexicon.log
rm -f FISH-BUILD-VERSION-FILE
if test "$(HAVE_DOXYGEN)" = 1; then \
rm -rf doc user_doc share/man; \
diff --git a/build_tools/build_documentation.sh b/build_tools/build_documentation.sh
index 0c4a2aac8..2705898e9 100755
--- a/build_tools/build_documentation.sh
+++ b/build_tools/build_documentation.sh
@@ -37,10 +37,12 @@ resolve_path()
# Expand relative paths
DOXYFILE=`resolve_path "$DOXYFILE"`
INPUTDIR=`resolve_path "$INPUTDIR"`
+INPUTFILTER=`resolve_path "$INPUT_FILTER"`
OUTPUTDIR=`resolve_path "$OUTPUTDIR"`
echo " doxygen file: $DOXYFILE"
echo " input directory: $INPUTDIR"
+echo " input filter: $INPUTFILTER"
echo " output directory: $OUTPUTDIR"
echo " skipping: $CONDEMNED_PAGES"
@@ -87,6 +89,7 @@ done
# This prevents doxygen from generating "documentation" for intermediate directories
DOXYPARAMS=$(cat < "${CMD_NAME}.1.tmp"
+ sed < ${CMD_NAME}.1 > ${CMD_NAME}.1.tmp \
+ -e "/.SH \"$CMD_NAME/d" \
+ -e "s/^$CMD_NAME * \\\- \([^ ]*\) /\\\fB\1\\\fP -/"
mv "${CMD_NAME}.1.tmp" "${CMD_NAME}.1"
done
-
+
# Erase condemned pages
rm -f $CONDEMNED_PAGES
-
fi
# Destroy TMPLOC