BashStyle-NG 10.5


utilities-terminalBashStyle-NG is a graphical tool and function chain that lets you do more with GNU Bash


BashStyle-NG is a graphical tool and toolchain for changing the behaviour and look’n’feel of Bash, Readline, Vim, Nano and GIT.

Possibilities include:

  • Bash
    • 12 fancy pre-defined prompt styles
    • colors are customizable
    • random text color possible
    • random prompt style for each session possible
    • create your own prompt using UI
    • customizing pre-defined ones possible
    • alternatively monochrome prompts instead of colored
    • colored manpages (without using most)
    • colored output from ls and grep (matches)
    •  colors are customizable
    • rembering last visited directory (and restore upon new session)
    • customize bash history settings
    • lscd: customized variant of cd, showing content of directory after cd, can create directories that don’t exist, passing of customized ls parameters possible
    • un/setting shopts (shell options) for Bash 4.3 / 4.0-4.2 / 3.2+
    • customizable completion blacklist, timeout, welcome message and more
  • GIT
    • set GIT user name
    • set GIT mail address
    • set GIT editor for commit messages
    • set GIT colored output
  • Readline
    • un/set completion
    • un/set case sensitivity
    • un/set horizontal completion
    • un/set mark filetypes and folders
    • un/set include hidden files incompletion
    • customize almost 30 keybindings
  • VIM
    • un/set remember last position
    • un/set syntax highlighting
    • un/set auto indention
    • un/set case sensitive search
    • un/set incremental search
    • un/set display line numbers
    • un/set highlight current line/column
    • set dark or bright background
    • set line-wrap and tab-length
    • enable ruler/set ruler format
  • Nano
    • un/set search history
    • un/set syntax highlighting
    • un/set auto indention
    • un/set case sensitive search
    • fix backspace and numblock assignment
  • Extras
    • several extra functions for daily use
    • systemkit: show various system information, including cpu, system load, used/free/total ram and more
    • gitkit: various companion functions for GIT, like exporting the repo (like ’svn export‘), creating tar.gz/tar.bz2/tar.xz/.zip archives from repo, getting active branch/action/revision/revno from repo (for PS1)
    • math conversion functions: convasc, convbin, convdec, convhex, convoct, convtemp. Convert between ascii, binary, decimal, hexadecimal, octal or temperature units
    • random: create random strings (for example passwords) of various types
    • scripts for working with files: map (run a command on given files, for non-batch commands), basefile (extract extension, filename with/without extension or filepath from full filename, similar to basename), randomfile (perform action on a random file, also has history, multiple executions support and more)
    • and several more (see /usr/share/bashstyle-ng/rc/functions/ for all)

=== Installation ===

Installation of BashStyle-NG is straight-forward. Configure and Make are Bash scripts aswell, so no other tools needed for build. For a full list of options see:

  • ./configure –help
  • ./make –help

1)    Check dependencies:    ./configure
2)    Build translations:    ./make build
3)    Install BashStyle-NG:    sudo ./make install

Alternatively you can build a package for Debian-based distributions via

1)    apt-get install fakeroot dpkg-dev
2)    dpkg-buildpackage -rfakeroot

If there are missing dependencies either Configure or dpkg-buildpackage will
tell you. Optional dependencies are marked as recommended for Debian packages.

=== Program Icons ===

BashStyle-NG uses Oxygen icons by default (supplied), but if the icons exist in your currently active GTK+ icon theme aswell, they will be used instead.

  • 32×32 pixel icons:
    • bs-ng Application logo
    • bs-ng-advanced Icon for ‚Advanced‘ category in UI
    • bs-ng-alias Icon for ‚Alias‘ category in UI
    • bs-ng-doc Icon for ‚Documentation‘ in UI
    • bs-ng-custom Icon for ‚Custom Prompt Builder‘ in UI
    • bs-ng-git Icon for ‚GIT‘ category in UI
    • bs-ng-info Icon for ‚About Dialog‘ in UI
    • bs-ng-keys Icon for ‚Keybindings Setter‘ in UI
    • bs-ng-ls Icon for ‚LS Colors‘ category in UI
    • bs-ng-nano Icon for ‚Nano Configuration‘ in UI
    • bs-ng-readline Icon for ‚Readline Configuration‘ in UI
    • bs-ng-shopts Icon for ‚Shell Options Configuration‘ in UI
    • bs-ng-style Icon for ‚Style‘ category in UI
    • bs-ng-toolbox Icon for ‚Custom Prompt Builder Toolbox‘ in UI
    • bs-ng-vim Icon for ‚VIM Configuration‘ in UI

=== GIT Access ===

You can get the latest in-development version by running:

git clone git://github.com/Nanolx/bashstyle-ng.git

=== Translations ===

  • Current Translations:
    • de (German) (Christopher Roy Bratusek)
  • New Translations:
    • Visit https://www.transifex.com/projects/p/bs-ng/ and apply for a team or request the creation of a new one.

=== Bugs ===

Visit https://gitlab.com/Nanolx/bashstyle-ng/issues

before reporting bugs please make sure that you got the latest version of BashStyle-NG.

=== Features Requests ===

If you got an Feature Request or a new Idea for BashStyle-NG, then don’t hesitate to post it! If you can provide patches, then that’s even better.

License: GNU GPL v3
Downloads:

git file-roller deb

ChangeLog:

10.5 "Kerala"
=============

   * Bug Fixes
        - #250 (histignore): fix default value for HISTIGNORE.

        - #251 (history sync): fix 'history' not properly working when
          'history sync' is active.

        - #252 (make): fix creating pot files.

   * New Features
        - New command 'history -D COMMAND' which deletes all entries of
          a given command from the history, example:

          'history -D rm'

          will delete all occurences of 'rm' from the history.  'history
          -D' does exact matches, so for example 'rmdir' is not removed
          from history, if 'rm' is passed as 'COMMAND'.

        - History Isolation.  This will

             x prevent storing the history to file when Bash exits

             x disable history syncronization

             x disable in-session history

             x disable the builtin history command

        - New shopt 'localvar_inherit', requires Bash version 5.0.

        - New keybindings 'next-screen-line' and 'previous-screen-line',
          requires Readline version 8.0.

   * Misc.  Changes
        - Minor user interface improvements.

             x Widget adjustments and sizes improved.

             x User can now choose between standard 'cd' or BashStyle-NG
               'lscd' or 'treecd'.

             x User can now choose between standard 'history' or
               BashStyle-NG 'History Sync' or 'History Isolation'.

        - 'bashstyle -v' and About Page now show the release codename,
          too.

        - New internally used variable 'BSNG_SESSION_TIME' contains the
          BashStyle-NG startup time in '+%I-%M-%S-%N' format.

        - Updated german translation.