[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Plans for Lenny's install-info

Hi all!

On Die, 17 Apr 2007, Nicolas François wrote:
>  + Changes in texinfo
>    - the info package (or a new install-info package) replaces
>      dpkg's install-info

should be as mentioned a new install-info package

>    - This install-info should support the current dpkg's install-info
>      options (i.e. no failures, but not necessarily registering the info
>      file)

See the attached file comparing the cmd line arguments.

Patches to make this work are welcomed.

>      IMO, this install-info should be compatible with the GNU's install
>      info, and when it detects that it is used by a old Debian package, it
>      should do nothing (or just warn and recommend using update-info-dir,
>      see below).

One idea is to leave ginstall-info in place and write a script that just
checks the cmd line arguments. If it is a GNU invocation, call
ginstall-info, if it is a Debian invocation, do:
- warn the user
- try to replace the call with GNU args
- list those args which cannot be transfered

>    - Add an update-info-dir script. This script should just delete the dir
>      file and then call the GNU's install-info with all the info files.
>      (see also the previous mails from Ian Zimmerman, and his patch for
>      --generate in install-info)

Good idea.

>    - Add support for multiple dir files in the info viewer.
>      This would permit update-info-dir to use the
>      --dir-file /usr/share/info/debian-dir option.
>      /usr/share/info/dir (and /usr/local/share/info/dir) could be used for
>      non Debian's info files.

This is already working as Karl mentioned (AFAIR)

>    - Fix some regressions from dpkg's install-info.
>      (IIRC an alignment regression was mentioned with GNU's texinfo)

Good idea.

>  * better analysis for the requirements of the install-info script in texinfo

see attached file

I also forwarded (again) the email of with the patch to GNU install-info
to Karl for his review.

Best wishes


Dr. Norbert Preining <preining@logic.at>                    Università di Siena
Debian Developer <preining@debian.org>                         Debian TeX Group
gpg DSA: 0x09C5B094      fp: 14DF 2E6C 0307 BE6D AD76  A9C0 D2BF 4AA3 09C5 B094
KERRY (n.)
The small twist of skin which separated each sausage on a string.
			--- Douglas Adams, The Meaning of Liff

Debian install-info [options] [--] filename


Debian install-info [options] [--] filename
       [--] filename
              Gives the filename of the Info file whose menu entry  is  to  be
              created,  updated or removed.  If --remove-exactly is specified,
              then filename should be the exact entry name to be removed (i.e.
              "emacs-20/emacs" or "gcc"), otherwise the basename of this file-
              name is used as the referent of the menu entry which is created,
              unless  there's  an  overriding  START-INFO-DIR entry inside the
              given file.  This file must therefore exist (or be about  to  be
              installed, or have previously existed when removing an entry) in
              the same directory as the dir file (see the --infodir option).

              If filename ends in .gz it is taken to  refer  to  a  file  com-
              pressed  with GNU gzip; if it doesn't exist, but a corresponding
              filename.gz does, the latter is used instead.

              When adding or updating entries the file must exist at the  path
              specified (possibly with an additional .gz extension).

GNU install-info [option] [INFO-FILE [DIR-FILE]]



Debian --version
	version and copyright
GNU --version



Debian --help
GNU --help


More or less OK

Debian --quiet
              Prevents the usual display of the new menu entry just before  it
              is  inserted, and of the messages announcing the replacement and
              removal of existing entries and the  creation  and  deletion  of
GNU --quiet
              suppress warnings.



Debian --remove
              Specifies that the entry for the file filename is to be removed;
              by default entries are created or updated.

              If the removal results in a section becoming empty  the  section
              heading  (and  the  spare  blank  line) will be removed as well,
              unless this is the last section in the  file  or  --keep-old  is
              specified.   See  the  --section  option  for  details about the
              expected format of the dir file.

              If there are several suitable entries in the dir file only those
              in  the  first matching contiguous group will be removed and the
              others silently ignored.

              It is not an error for no suitable entry  to  be  found,  though
              install-info  will issue a warning unless the --quiet option was

              When --remove is specified the --maxwidth, --align and  --calign
              formatting options are silently ignored.

Debian --remove-exactly
              This  option  is  essentially  the  same as --remove except that
              filename is taken as the exact entry to be removed, rather  than
              as  the  name  of  an existing file.  This can be important when
              trying to remove entries that refer to info files in subdirecto-
              ries  (i.e.  "emacs-20/emacs")  because --remove will operate on
              the basename of the given filename rather than  the  exact  name
              given.     (i.e.     --remove   "emacs-20/emacs"   would   cause
              install-info to look for "emacs", not "emacs-20/emacs").

GNU --delete = --remove
              delete existing  entries  for  INFO-FILE  from  DIR-FILE;  don't
              insert any new entries.



Debian --section regexp title
              Specifies that, if a new entry is  to  be  made,  it  should  be
              placed  in a section of the dir file whose title matches regexp.
              If no such section exists one will be created as the second last
              section in the file (see below), with title title.  A section is
              a part of the dir menu delimited by blank lines; the first  line
              is assumed to be the title.

              If  a  new  entry  is to be created install-info will attempt to
              insert it within the section according in alphabetic  order;  if
              the  entries  in the section aren't already sorted the new loca-
              tion within the section will be  unpredictable.   The  order  of
              existing entries will not be changed.

              The  default  is  to  append new entries to the end of the file.
              The last section (even if it only consists of  the  title  line)
              should  always exist, to ensure that new sections are created in
              the right place.  The final section should be titled to  reflect
              the  fact  that  Info files with no more well specified location
              are appended to it.

              If there is already an entry for the Info file  being  installed
              it is replaced in situ with the new entry.

              If  a section is specified when removing an entry the section is
              ignored and a warning is issued.

              If a section is requested when adding an entry but the file con-
              tains  no  section headings at all then install-info will create
              both the requested section and a Miscellaneous  section  at  the
              end of the file.

GNU --section
              put this file's entries in section SEC of the directory.  If you
              specify more than one section, all the entries are added in each
              of the sections.  If you don't specify any  sections,  they  are
              determined from information in the Info file itself.


Specifying the dir file

Debian --infodir=dir
              Specifies  that  the  dir file is, and the installed copy of the
              new Info file was, is  or  will  be  located  in  infodir.   The
              default is /usr/info.

GNU --dir-file=nnn
              specify file name of Info directory file.  This is equivalent to
              using the DIR-FILE argument.
GNU --info-dir=dir
              same as --dir-file=DIR/dir.


Entry specification including description

Debian --menuentry=xxx
              Specifies that the entry in the menu should be xxx.  The default
              is to use the the value specified in the Info file  itself.   If
              this  is  not present the basename of the Info file is used (any
              .info is deleted, and the entry is made mixed case).  See  above
              for  details  of  the  format expected for the menu entry in the
              Info file.

              When removing entries the value of the --menuentry  option  must
              match the actual menu entry field in the menu item to be removed
              (case not significant).  If --menuentry is omitted no  check  on
              the menu entry is done.

Debian --description=xxx
              Specifies that the description to use after the  menu  entry  in
              new  or  updated  entries be xxx.  The default is to use the the
              value specified in the  Info  file  itself;  this  is  found  by
              searching for a section of the form
              * Auto-PGP: (auto-pgp). PGP under GNU Emacs.

              If  the  entry found in the Info file itself extends across sev-
              eral lines, each giving a menu entry, the text found in the file
              is  used  verbatim.  In this case the alphabetic ordering scheme
              is turned off, and the entries are inserted at the top  of  sec-
              tion  in  question.   In  this case the --menuentry, --maxwidth,
              --align, --calign  and --menuentry options are ignored.

              If there is no dir entry in the file the  program  will  try  to
              find a paragraph early in the file starting this file documents.
              It will capitalise the first character of the remainder, and use

              It is an error for none of these methods to yield a description.

              If a description argument is given when --remove is specified it
              is ignored and a warning is issued.

GNU --entry=TEXT == --item=TEXT
              insert TEXT as an Info directory entry.  TEXT  should  have  the
              form  of  an  Info  menu item line plus zero or more extra lines
              starting with whitespace.  If you specify more than  one  entry,
              they  are all added.  If you don't specify any entries, they are
              determined from information in the Info file itself.


Options in GNU install-info NOT in Debian
	GNU --info-file=file


Options in Debian install-info NOT in GNU
	--align=nnn [deprecated]
              Specifies  that  the  first  line  of  the description should be
              indented at least nnn characters; extra spaces will be added  as
              required.   If  necessary  because of the length of the dir menu
              entry details it may be offset more.  The default is 27.

       --calign=nnn [deprecated]
              Specifies that the second and subsequent lines of  the  descrip-
              tion should be indented at least nnn characters.  The default is

       --maxwidth=nnn [deprecated]
              Specifies that the maximum width for the Info file is nnn.  This
              is  used when wordwrapping the descriptive text.  The default is

              Enables debugging mode, in which the results  of  some  internal
              processing steps are shown.

	      Enables  test  mode,  which inhibits the update of the directory

              Inhibits  the replacement of existing entries and the removal of
              empty sections.

              If the file being installed alreay has an entry in the directory
              the  old entry will be left alone instead of being replaced; the
              default is to overwrite any old entry found with the newly  gen-
              erated one.

              If  --remove is specified --keep-old will prevent the removal of
              the section heading which would otherwise happen if the  section
              is made empty by the removal.

Reply to: