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 (85d8f7562364f7baf74df12d37680ce35133cd4b) (12KiB) (mode 100644) [raw]
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