@c -*- texinfo -*-

@c To compile: makeinfo --no-validate  --no-headers doc/news.info > NEWS

@chapter News

This lists user-visible changes, and which releases they occurred
between. For more detailed information see the or git log.

Each release lists incompatible changes at its top.

@heading 9.2.0 ``Galvanize''
@itemize @bullet

@item Bug Fixes
@itemize @minus
@item #191 (make): gtk-update-icon-cache was not properly invoked after make
install

@item #192 (custom prompt builder): inserting prompt parts from GtkComboBoxes
did not work

@item #193 (nano): setting Nano UI Colors an Tabs to Spaces did not work

@item #194 (colors): color definitions have not been properly exported to
external scripts, which thus always displayed monochrome output

@item #195 (nx-rc): fixed filtering out @code{trap} from @code{lastcommand}
storing [Mingye Wang]

@item #196 (nx-rc): fixup @code{lastexit} value storing [Mingye Wang]

@item #197 (nano) (vim) (readline) (keybindings): fixup file existence checks
which are intended to prevent file conflicts when multiple Bash sessions are
started at the same time [Mingye Wang]

@item #198 (nx-rc): fixup detection of vendor ini version on first load of nx-rc
if no user ini exists

@item #199 (reload): fixup reload to properly restore the complete environment,
including BashStyle-NG and Bash Programmable Completion.

@item #200 (dd_opts): ensure setting DD_OPTS is properly done.

@item #201 (ls_colors): setting Tar/XZ color from UI didn't work.

@item #202 (configure): fixed last arguement passed to configure not being honoured.
@end itemize

@item Configuration File Changes
@itemize @minus
@item Additionally to factory and vendor (/etc/bs-ng_vendor.ini) configuration
BashStyle-NG now also checks for user backup ($HOME/.bs-ng.ini.save)
configuration when resetting configuration

@item Before using user backup or vendor configuration in any way do a dry-load
to ensure the files are in proper shape, if they contain errors skip them

@item When the configuration file can't be loaded due errors, let BashStyle-NG
auto-reset the configuration using user backup (if it exists) > vendor
configuration (if it exists) > factory configuration (in that order). This
prevents BashStyle-NG from crashing if there's something wrong with the
user configuration file

@item Added new Category "Configuration" which allows to:
@itemize +

@item Backup
@item Restore (from user backup configuration)
@item delete Backup configuration
@item Reset (reset from vendor or factory configuration) the configuration
@item Edit various configuration files (uses xdg-open to open files), namely:
@itemize x

@item .bashrc
@item .bashstyle.custom (bashrc-extension always loaded after BashStyle-NG,
thus can use BashStyle-NG variables and functions reliably)
@item .vimrc.custom (vimrc extension that is not managed by BashStyle-NG)
@item .inputrc.custom (inputrc extension that is not managed by BashStyle-NG)
@end itemize
@end itemize

also shows version of user, user backup, vendor and factory configuration files
(None for vendor and user backup if they don't exist)

@item icon name for this category in UI: bs-ng-config

@item after configuration is restored or reset the application is restarted
@end itemize

@item StartUp Mechanism Changes
@itemize @minus
@item Before BashStyle-NG embedded into /etc/bash.bashrc or /etc/bashrc to add
a startup entry to $HOME/.bashrc. Now if $HOME/.bashrc does not contain a
startup entry for BashStyle-NG the user is presented a tab page upon UI start
asking whether to add the entry. Also works when the startup entry for
BashStyle-NG is commented out, or if the entry is from a previous installation
of BashStyle-NG that had a different installation prefix.
@end itemize

@item Prompt Part Changes
@itemize @minus

@item PS2 / PS3 / PS4 changes: Before there's been an option for PS234. Setting
this to ">" resulted in

@itemize +
@item PS2=">"
@item PS3=">>"
@item PS4=">>>"
@end itemize

Now there's an separate option for each (including a color option each)

@item additionally PS2 / PS3 / PS4 export does now honor enable_colors setting
@end itemize

@item History Syncro Changes
@itemize @minus

@item BashStyle-NG 9.1 introduced a custom history sync functionality (for
syncing history over simultaneously running sessions), which turned out to break
Bash $HISTCONTROL, as it modified the history from outside. This is now worked
around by custom functions replacing the $HISTCONROL of Bash since it fails
due to the custom history handling functions. Please note that this might slow
down Bash a bit if you have a huge history.
@end itemize

@item New Functions
@itemize @minus

@item xmltagdelete: delete tags from xml files, see @code{xmltagdelete --help}

@item 2048.bash: 2048 game in Bash, see @code{2048.bash --help}
@end itemize

@item New Settings
@itemize @minus

@item Added option to display progressbar for @code{dd}, requires version 8.24 or newer.
@end itemize

@item Documentation
@itemize @minus

@item Add texinfo documentation describing all features of BashStyle-NG (work
in progress).
@item currently documented:
@itemize +
@item Introduction
@item News (ChangeLog)
@item Configuration file handling
@item Advanced options (UI section)
@item Style options (UI section)
@item Shell options (UI section)
@item UI icon names
@end itemize
@item Add manpage for @code{bashstyle} executable.
@item Add @code{Documentation} icon (@code{bs-ng-doc}) icon in UI, opening the
documenation using @code{xdg-open}.
@end itemize

@item Misc. Changes
@itemize @minus

@item undobuffer: enforce Gtk version 3 to be loaded (makes a startup warning
shut up
@end itemize

@item Configure
@itemize @minus

@item 4.3.7
@itemize +
@item code review
@item fixed bug #202
@end itemize

@item 4.3.6
@itemize +
@item add @code{--docdir} switch back
@item add @code{--mandir} switch
@end itemize

@item 4.3.5
@itemize +
@item remove system bashrc detection
@item remove --profiledir switch
@item remove --bashrc switch
@item minor string changes
@end itemize

@item 4.3.4
@itemize +
@item remove --quiet switch
@item globally define PYMAXVER and PYMINVER (python minimum and maximum versions)
@item globally define PYAMXVER_P and PYMINVER_P (printable python minimum and
maximum python versions for configure messages)
@item remove unused variable
@end itemize
@end itemize

@item Make
@itemize @minus

@item 1.0.9
@itemize +
@item code review
@end itemize

@item 1.0.8
@itemize +
@item compress manpages upon @code{./make build}
@item install info and html documentation upon @code{./make install}
@item install manpages upon @code{./make install}
@item add a few more strings
@item build README from doc/userdoc_introduction (@code{./make readme})
@end itemize

@item 1.0.7
@itemize +
@item build NEWS from doc/news.info (@code{./make news})
@item build doc/bashstyle.info from doc/userdoc.texi (@code{./make info})
@item build doc/html from doc/userdoc.texi (@code{./make html})
@end itemize

@item 1.0.6
@itemize +
@item fixed bug #191
@end itemize

@item 1.0.5
@itemize +
@item update for no longer installed profiledir and profile script
@item minor string changes
@end itemize
@end itemize

@item Translations
@itemize @minus

@item Updated german translation
@end itemize

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@end itemize

@c <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

@c @heading x.y.z ``Code name''
@c @itemize @bullet

@c @item Updated or New dependencies
@c @itemize @minus
@c @end itemize

@c @item Notes
@c @itemize @minus
@c @end itemize

@c @item Build and Installation
@c @itemize @minus
@c @end itemize

@c @item Bug Fixes
@c @itemize @minus
@c @end itemize

@c @item New Features
@c @itemize @minus
@c @end itemize

@c @item Miscellaneous Changes
@c @itemize @minus
@c @end itemize
@c @end itemize
