BashStyle-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:
ChangeLog:
10.9 (20240811) "New Eridu" =========================== • New Features − Add ability to add manual options for ‘grep’. − Remove utilization of ‘GREP_COLOR’ and use more versatible ‘GREP_COLORS’ envvar, with eight separate color settings. − Add ability to choose sort order for files for ‘batchrename’. • Misc. Changes − Update user interface to remove deprecated Gtk+3 definitions. − Fixed most ‘PEP8’ issues as reported by ‘pycodestyle’, except E501 (line too long). − Fix many warnings as reported by ‘shellcheck’. − Update user interface to reflect new icon names. • configure 4.5.1 − simplfy python module check. − check for explicit ‘gi.repository.Gtk’ version ‘3.0’. − make it possible to check for alternative name of an application (eg. ‘bat’ is called ‘batcat’ on Debian).