lcm-proj/lcm

Update man pages

Closed this issue · 1 comments

Go through and compare --help CLI output to manpages and resolve any discrepancies. For example:

$ build/lcm-java/lcm-logplayer-gui --help
LC: Disabling IPV6 support
usage: lcm-logplayer-gui [options] [log-name]

lcm-logplayer-gui is the Lightweight Communications and Marshalling
log playback tool.  It provides a graphical user interface for playing logfiles
recorded with lcm-logger.  Features include random access, different playback 
speeds, channel suppression and remapping, and more.

Options:
  -l, --lcm-url=URL      Use the specified LCM URL
  -p, --paused           Start with the log paused.
  -f, --filter=CHAN      Disable channels that match the regex in CHAN.
                         (default: "")
  -v, --invert-filter    Invert the filtering regex. Only enable channels
                         matching CHAN.
  -t, --title [LABEL]    Display LABEL in the window title.
                         Defaults to the log filename.
  --title-url            Display the LCM URL in the window title.
  -h, --help             Shows this help text and exits

versus:

$ man -l lcm-java/lcm-logplayer-gui.1
lcm-logplayer-gui(1)                                                         LCM                                                        lcm-logplayer-gui(1)

NAME
       lcm-logplayer-gui - full featured log playback and editing tool

SYNOPSIS
       lcm-logplayer-gui [options] [FILE]

DESCRIPTION
       lcm-logplayer-gui  is  the Lightweight Communications and Marshalling log playback tool.  It provides a graphical user interface for playing logfiles
       recorded with lcm-logger.  Features include random access, different playback speeds, channel suppression and remapping, and more.

       lcm-logplayer-gui is written in Java, and uses the LCM Java bindings.  Consequently, running it requires a working Java virtual machine.

OPTIONS
       The following options are provided by lcm-logplayer-gui

       -l, --lcm-url=URL
              Use the specified LCM URL

       -t, --title [LABEL]
              Display LABEL in the window title

       --title-url
              Display the LCM URL in the title

       -h, --help
              Shows some help text and exits

SEE ALSO
       lcm-logger(1) lcm-logplayer(1)

COPYRIGHT
       lcm-logplayer-gui is part of the Lightweight Communications and Marshalling (LCM) project.  Permission is granted to copy, distribute  and/or  modify
       it  under  the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at
       your option) any later version.  See the file COPYING in the LCM distribution for more details regarding distribution.

       LCM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS  FOR
       A  PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.  You should have received a copy of the GNU Lesser General Public
       License along with LCM; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

AUTHOR
       This manual page was written by Albert Huang.

LCM                                                                      2009-07-28                                                     lcm-logplayer-gui(1)

Notably, multiple CLI options are documented in the CLI help message but not in the man page.

For lcm-logger I tried

help2man --no-discard-stderr --name "LCM Logger" --version-string "1.5" --no-info --output ./lcm-logger.1 ../build/lcm-logger/lcm-logger

The formatting isn't perfect but I think its acceptable.

Cmake could be rigged up to use this tool (if installed). For source installs of LCM, I think it is acceptable to be missing man pages if the help2man tool isn't installed.