xaizek / pinfo (License: GPLv2 only) (since 2018-12-07)
Console-based info and manual pages reader, which adds interactive navigation to man pages.
<root> / NEWS (f22bc40fdb85591dc79973f7e69c01730ed3ef4a) (14KiB) (mode 100644) [raw]
0.6.10:
  - Fix issue with handling of suspend/resume and character input
    (thanks to Scott Mcdermott for the patch)
  - Move variable declarations to the start of a block, to accomodate non-gcc
    compilers.  Thanks to Anonymous for the patches submitted to Alioth.

0.6.9
  - New maintainer: Bas Zoetekouw <bas@debian.org>
  - License is now GPL version 2 only
  - Updated German, Dutch, English, Polish, Russian, Czech translations and
    added Basque, Swedish, Viernamese and Brazilian translations.  Thanks to
    Jens Seidel, Rene van Bevern, Piarres Beobide, Krzysztof Krzyzaniak, Yuri
    Kozlov,  Eddy Petrişor, Katarína Machálková, Clytie Siddall and Felipe
    Augusto van de Wiel.
  - Nodes containing a "." are now correctly found
  - Non-ASCII man pages are displayed correctly
  - Improved the history behavior of the search input line
  - Broken tag tables are now automatically fixed
  - Don't segfault when a broken regexp is entered 
  - Fixed a number of segfaults caused by using uninitialized pointers and 
    off-by-1 errors
  - Fixed heap corruption caused by non-ascii chars in info pages
  - Fixed a lot of patch searching issues
  - Fixed text display on narrow terminals 
  - Fixed highlighting of searches
  - The default pinforc now uses the terminal's default foreground and
    background colors.  Thanks to Rob Funk for a patch.
  - Use libreadline by default;  readline version 4 is now required.
  - Better cooperation between ncurses and readline
  - Fixed some memory leaks
  - Got rid of tempnam() calls
  - Fixed -Wall and -Wshadow compiler warnings
  - Use utf8 in documentation files and fixed typoes
    
0.6.8
  Patches from Witold Filipczyk for node detection algorithms in man
  and info.
  Added default item on search prompt.
  Bugfix in info link freeing procedure, which failed on exim pages.
  Bugfix for dir page lookup when several matches are found--there was
  a double close() problem.
0.6.7    
  Added scrolling in left/right direction (!!!new config file keys).
  Fixed handling of info entries like `emacs21/emacs'--modified
  function matchfile().
  Added autmatical detection of rawfilename for filenames beginning
  with `../', `./', `/' in main().
  Added support for '(gcc)Introduction' like specification of nodes.
0.6.6    
  bugfixes for userdefined rcfile and configuration inconsistences
  added sorting of matches for the info file to display
0.6.5    
  Fixed bug in sorting of tag table links (major effect to the engine)
  Changed the file search engine to scan the directory for a matching
  pattern (instead of trying various propositions).
  Fixed minor sigsegv bug in page loader (link initializer).
  !Added switching between sections in manualviewer mode
  Highlighting code does not highlight leading spaces in splitted
  notes anymore.
  Added information when the search is not successful
  Added support for command line selected rc files
0.6.4    
  New apropos handler. It works now interactively. New option -p here.
  Doesn't highlight anymore links to itself in man viewer.
  Fixed bug with link following.
  Fixed readline emulation: it now deletes old line content,
  and handles end key
  Fixed SIGWINCH handler/curses blocking getch emulation
  Fixed searchpath routines. First of all, there is introduced a
  'context' for currently viewed file. Pinfo will search files for
  one set of infopages only in one directory--in the context directory.
  The context can be changed only when changing the set of infopages.
0.6.3   
  NLS and documentation bugfixes
  Small bugfix in keyhandler
0.6.2    
  Fixed bug with searchpath for raw filename specification (temporary
  hack).
  Fixed stupid bug with info parser, which didn't accept an
  `INFOTAG.+\n' separator for info nodes (eg. gnuplot's infopage).
  Fixd detection of first info page.
  Fixed buggy use of bkgdset()
0.6.1   
  Modified behaviour of auto-pgdn. It now expands the submenus, as in
  info.
  Fixed problem with pinforc installed to non-exsisting etc directory
  Fixed problem with black bar on first man page
  Fixed buggy whitespace-skip comparing procedure 
  Manual code can now handle hyphenated url links (it's still not
  perfect with e-mail--it only works if the `@' is in the upper line)
  Fixed buf in indirect-file search engine (a misplaced if())
  Added texinfo documentation.
  Manual code is now case insensitive as far as sections are considered
0.6.0    
  Replaced evil `myclrtoeol' with `bkgdset+clrtoeol'
  Fixed putenv handler
  Make install does not overwrite old pinforc anymore (this has it's
  bad side--you must deal alone with version incompatibilities)
  fixed sorting of dirpage matches
  fixed some small bugs
0.5.9
  Setenv()->putenv() (so pinfo can now compile without problems
  at nonlinux unices)
  Added SAFE-GROUP, and SAFE-USER config file options for defining
  users, to which we want to drop root privileges when running pinfo
  Added HIGHLIGHTREGEXP option, to allow highlighting of user defined
  regexps when viewing manuals/infos
  Search highlighting works now "professionaly" (as in less)
  Fixed sigsegv bug in search engine.
0.5.8
  Fixed some ugly bugs to prepare for world domination ;->
0.5.7    Updated man page
  Fixed `splitted manlink' code
  Added key_goto to manual code
  Fixed minor bugs, and portability misadvantages
  Modified the default info search order (./ is the last dir)
  Manual code displays now manuals with optional width != than 80 chars.
  Fixed configure --with-included-gettext (hopefuly)
  -r works now with compressed files
0.5.6    
  Fixed memory bugs
  Fixed displaying of concatenated dir pages
  Speed up alghoritms
  Transparent colors
  Manual code can now handle hyperlinks splitted by `-' sign
  Security filter for dangerous man macros (experimental)
0.5.5    
  Fixed nasty sigsegv bug in manual code.
  Speed improvements to the code.
  Many memory bugs fixed in the whole code.
  Added key for going to specified line.
  Added dir page name lookups. Now you will be able f.i. to go to 
  `textutils:cat'    after typing `pinfo cat'.
  Added support for printing. (with highlights, as in groff -Tascii).
0.5.4
  Fixed highlighting code (the handling of \t's).
  PgDn works now more `traditionaly' -- at end the last link is
  selected.
  Added FILTER-0xB7 config option.
  Fixed bug in `*note:' detection.
  Added option for enabling quit confirmation at exit (as in lynx).
  Added option for clearing screen at exit
  Added support for lightbackground
  Fixed nonblack background in displaying contents of text.
  Added support for multi-dired info dir entries.
  Finally done some simple search highlighting.
0.5.3
  Fixed stderr redirections. Now you won't get garbage on screen when
  following manual links.
  Added MAN-OPTIONS config option, which allows you to pass options
  to te `man' program.
  Added KEY_CTRL and KEY_ALT macros, which enable you to use CTRL+x
  and ALT+x combinations. (the ALT+x is probably only usable on linux
  console, but who knows ;)
  Fixed global regexp search code. It now searches every two following
  lines, to avoid returning of expressions, which are several hounderts
  lines long ;)
  Added STDERR-REDIRECTION config file option, which allows you to
  specify how do you wish to redirect stderr from plug-ins.
  Added support for long section names in manual code. Now, if your
  system supports it, you can make use of section names like
  "3ncurses", and similar, without abbreviating them to just "3". (see
  LONG-MANUAL-LINKS config option).
  Added regexp search wrapper for systems which don't support it.
0.5.2    
  Fixed one very bad bug. That's the reason for fast new-version
  release.
  Added German language support.
  Added -t option, for viewing corrupted info files.
0.5.1    
  Added support for mailto urls
  Fixed highlighting routines for info pages, which ignored
  tabulation formatting.
  Added key_pgdn(up)_auto for automatic going to the next(previous)
  node at the bottom(top) of viewed node. Also added support for
  0 key value.
  Fixed one bug in $INFOPATH handler.
  Added support for hypertextualization of weird man sections 
  (i.e. 3X11, 3Xt, etc. -- it's configurable)
  Config file allows you now to specify your web browser, and
  maileditor.
  Added national language support for Swedish and Czech.
0.5.0    
  Added support for http:// and ftp:// URLs embedded into
  man pages/info pages.
  Secured the mechanism of tmp file creation
  Added optional highlight for `quoted' text in info files
  Moved to configure (autoconf, automake)!
  Fixed sigsegv by regexp searchs.
  Added support for infos not ending with `.info*' suffix
  Added new feature to key_goto -- now when you pass there
  a name, ending with `.info', then key_goto will move you not
  to specified node, but to specified info document.
  Locale support now is working (see at the example with polish
  translation).
  Added key_dir
  Fixed support for xterm mouse.
0.4.9    
  Corrected global search code for inirect info files (that is those,
  split up across several info files). It works fine now.
0.4.8    
  You can now browse man pages from different sections.
0.4.7    
  After a week of contignous fight I've... FIXED the nasty bug, which
  caused so many sigsegvs! I'm really happy :)) And what about you? ;)
  But locales at present send sigsegvs anyway ;)
  I also added a program `testkey' for making it possible to obtain
  keycode values for weird keys for config file.
0.4.6    
  Fixed many bugs connected with v0.4.5.
  Started working on locale stuff. But for now it only causes
  unexpected segmentation faults ;)
0.4.5    
  HUGE change. I reimplemented the info handling routines so, that
  there is now possible to use links across different info files.
  Thanks to this I could also implement a handler for 'dir' page.
  Huh... I can't belive it works ;)
0.4.4    
  Made a wrapper for readline function. I just can't implement
  readline handling properly under ncurses, so you'd rather use
  this wrapper. It's not to advanced yet, but implements primary
  things, thich readline deals with (history, and line editing).
  I'm working on tab completion.
0.4.3    
  Added support for infos without tag table. Modified man page.
0.4.2    
  Modified use of readline lib. It doesn't require to use ltermcap
  anymore, and does not need to close curses screen... This was
  quite difficult task ;)
  Added support for resizing screen 'on the fly' (i.e. in x window).
  Added support for ncurses mouse (which works in xterm).
0.4.1    
  Recreated mechanism of opening info file. Now it is possible
  to add new compression methods for info by just modyfing two
  variables on the top of filehandling_functions.c. Also I've
  added support for national info pages, which may be located
  in the directory $INFOPATH/$LANG. (ie. for polish info pages
  that could be /usr/info/pl_PL/infopage.info)
  Added support for cutting off manual headers (--cut-man-headers)
  Added some nodeposition informations in status bar.
0.4.0    
  Support for apropos. Searches finally work properly.
0.3.9    
  Gnu Readline support. Now you can browse history on regexp 
  searchs    ;). Added sigblock on sigpipe. Now you can safely open
  pipes to programs which don't exist.
0.3.8    
  Added configuration file support. Fixed one bug. Expanded manual
  page :)
0.3.7    
  Added option --manual, and --raw-filename. Added support for
  8-bit characters (i.e. national characters for certain charsets).
  Modified regexp search on manuals. Bold/italic tokens are recognized
  now.
0.3.6    
  Added possibility to call shell commands from within pinfo.
  Modified a bit makefile. Source does not use the 'dangerous' ;)
  sprintf anymore. Fixed minor bugs.
0.3.5    
  Fixed some more sigsegv bugs.
0.3.4    
  Fixed some stupid bugs in manual code. Added new comments to source.
  (since I almost got lost myself ;)
0.3.3    
  Speedup modifications. I.e. window is not refreshed now when
  key buffer is not empty (to avoid scrolling, when the key is
  already depressed, and to make it work better on slow terminals).
0.3.2    
  Added support for the refresh (^L) key.
0.3.1    
  Added possibility to redefine keys (at compile-time). Modified
  man page hypertext recognization (now it recognizes everything of
  the form 'something (x) or something (xy)'. Removed bug with
  regex.h in manual.c.
0.3.0    
  Manuals can be read now as well as info files, when info cannot be
  found. Manuals can be browsed similar to infos; hyperlinks are
  the fields od form 'something (x)' (according to the common format at
  SEE ALSO section). Since the change is quite big, I've moved the
  version number to 0.3.0.
0.2.4    
  Added regexp searching -- '/' option and 's' option.
0.2.3    
  Tiny change -- added some checking for mvaddstr functions, so they
  don't drop core if there's no menu/note token.
0.2.2    
  Added support for old curses (macro definition ___OLD_CURSES___,
  enabled in Makefile. That was enough to compile this program
  under HP-UX :)
0.2.1    
  Added support for "index menus", and all other of the format
  "* blabla:[optional spaces]node.". Added cache for menu/note
  highlight positions. Also code is a bit modified; to be precise
  I started to clarify it a bit by adding macros, and other
  things, to get as close to short'n'clear procedures, as possible.
0.2.0    
  The engine for hypertext recognization is reimplemented. Support for
  notes and menus of format : node. is added. Also color support is
  added. Also added some cache for menuchecking and notechecking
  functs.
0.1.5    
  Fixed bug with not deleting files from /tmp; added $INFOPATH support
0.1.4    
  Added 'g' key
0.1.3    
  Added pgdn/pgup/home/end keys
0.1.2    
  Added support for notes of kind note::
0.1.1    
  First working engine; menus of kind menu:: are supported [12.III.1999]
0.0.0    
  I'm angry, because the only docs considering my problem (gtk) are in
  info format, and I just can't work with standard info ;-)
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/pinfo

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/pinfo

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master