Subject: Re: [ANNOUNCEMENT] Updated: joe 3.5-2 -- Fast and simple editor which
From: Jeff <[email-masked]>
To: [email-masked]
Date: Mon, 17 Dec 2007 07:31:16 -0800
Newsgroups: lists.cygwin
List-Id: <cygwin.cygwin.com>

On Sun, 16 Dec 2007 01:17:12 +0200,
Jari Aalto <jari[dot]aalto[at]cante[dot]net> wrote:

>CHANGES SINCE LAST RELEASE
>==========================
>
>Removed termidx.exe. According to debian 2.8-16 changelog entry:
>"Since joe doesn't use termcap (but terminfo), termidx can be removed".

Uhm... From joe-3.5.tar.gz/joe-3.5/INSTALL:

=-=-=-=-=-=-=-=-=-=-=-
Installation procedure
=-=-=-=-=-=-=-=-=-=-=-

  To create a Cygwin binary distribution, use the 'cygbuild' script.

  JOE uses the GNU Automake and Autoconf suites to build itself.

  Run configure script, type one of these:

[...]

  For Cygwin, I've found that you need to add
  "--disable-curses --disable-termcap" to the above commands.

[...]

=-=-=-=-=-=-=-=-=-=-=-=-=-
Common ./configure options
=-=-=-=-=-=-=-=-=-=-=-=-=-

  To force JOE to use /etc/termcap file using its built-in termcap file parser
  (which is useful if you want to compile JOE so that it doesn't depend on any
  libraries other than libc and libm):

        ./configure --disable-curses --disable-termcap

  (--disable-termcap prevents JOE from using the termcap emulation functions
   in the -ltermcap library.  --disable-curses prevents JOE from using the
   termcap emulation functions in the -lcurses library).

  Otherwise, JOE tries to use the terminfo database via termcap
  emulation routines: see man tgetent, tgetstr, tgoto, etc.  (JOE has its
  own implementation of "curses", so curses is not required except to get
  access to the terminfo database).

           ------------------------------------------------

In other words, when joe is built with the default options under Linux
(and most other POSIX-flavored OS's and environments), it uses
terminfo; when built for Cygwin, it is necessary to use options that
make it use termcap. So, while the comment in the Debian changelog
entry may be true for their distro of joe, it isn't true when joe is
built for Cygwin.

For other joe users who may not be familiar with it, termidx.exe is a
small utility that creates an index file for the termcap database. It
is not essential for joe to have this index in order to run. However,
joe uses it, if it is present, to help it parse the termcap database--
this translates into a quicker startup for joe. From the same INSTALL
file:

Termcap/Terminfo
=-=-=-=-=-=-=-=-

        JOE prefers to use the termcap terminal capability database.  It
attempts to find this file in:

        $HOME/.termcap          Personal .termcap in your home directory
        /etc/joe/termcap        Joe's termcap file
        /etc/termcap            Normal system termcap file

        Joe copies its own termcap file to /usr/local/lib/termcap (or
wherever the system-wide joerc file is going to go) when 'make install' is
run.

        Termcap is better than terminfo because it is a more open standard.
Programs can directly access the termcap database and future versions of
terminfo may require programs to use curses.  The only argument in
terminfo's favor is that it is faster than termcap.  To fix this problem,
JOE will use a termcap index file if it exists and if it is up to date.

        This is the procedure to make the termcap index file:

                make termidx
                ./termidx </etc/termcap >/etc/termcap.idx

           ------------------------------------------------

termidx.exe is a small but helpful utility for joe. Joe users who are
familiar with joe, who have read the docs, make use of it. If you
remove it from the Cygwin joe distro, I will need to get and build the
sources just to have it (that, or I'll save my current copy so that it
is not removed). Please put it back in. Thanks,

Jeff

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/