Commits on Dec 30, 2017
  1. Partly revert c0a2a4d again

    ft committed Dec 30, 2017
    As it turns out, zsh has defaults on HISTSIZE and SAVEHIST. I have lost track
    off zsh defaults a long time ago. This is a reason not to do this at all.
    HISTSIZE's default is 30, SAVEHIST's default is 0. And the latter is a big
    problem: No history will be saved anymore.
    If someone wants different values for these two parameters, they can set them
    in .zshrc.local. I am NOT working around this by comparing the actual value to
    zsh's defaults.
    The combined diff of c0a2a4d and this commit looks like this:
    --- a/etc/zsh/zshrc
    +++ b/etc/zsh/zshrc
    @@ -1582,7 +1582,7 @@ function command_not_found_handler () {
     # history
     isgrmlcd && HISTSIZE=500  || HISTSIZE=5000
     isgrmlcd && SAVEHIST=1000 || SAVEHIST=10000 # useful for setopt append_history
    Closes: Github bugreport #64
Commits on Nov 28, 2017
  1. Make a couple of history parameters adhere to presets

    ft committed Nov 28, 2017
    Requested on IRC, and I don't see why not.
Commits on Sep 23, 2017
  1. Fix a bunch of typos

    mika committed Sep 23, 2017
    s/an other/another/
    s/to to/to/
Commits on Sep 7, 2017
  1. Release new version 0.14.3

    mika committed Sep 7, 2017
Commits on Aug 18, 2017
  1. Move insert-datestamp to "C-x d" from "M-d"

    ft committed Aug 18, 2017
    "M-d" is obviously used in emacs mode by default. The "C-x ..." prefix is used
    for other purposes in our setup already and this particular binding is free.
    Closes: #62
Commits on Jul 20, 2017
  1. Bind insert-datestamp to "ESC d" (Alt-d on many terminals) instead of…

    ft committed Jul 20, 2017
    … "Ctrl-e d"
    The github issue #62 for the grml-etc-core repository noted a delay with the
    default Ctrl-e binding in emacs mode. This is caused by a binding where Ctrl-e
    is a prefix. The shells waits for a timeout to figure out if the user wanted
    the "Ctrl-e" binding, or or if there's a d coming to complete the "Ctrl-e d"
    Closes: #62
Commits on May 16, 2017
  1. Release new version 0.14.2

    mika committed May 16, 2017
Commits on May 15, 2017
  1. screenrc: drop keybindings G (google) + H (

    mika committed May 15, 2017
    Those vendor specific configs shouldn't be shipped as such,
    especially since we overwrite the default log function
    which defaults to 'H', so conflicting with our HeiseTicker
    binding. Therefore remove it.
    Thanks: Ralf Moll for reporting
  2. tmux: drop deprecated status-utf8 option

    mika committed May 15, 2017
    From tmux's FAQ:
    | Since the 1.0 release, tmux will turn on UTF-8 related options automatically
    | (ie status-utf8, and utf8) if the above conditions are met.
    In tmux's upstream there's also:
    | commit 1b86f520ea1620628e569ea833c7b13306c18a4e
    | Author: nicm <nicm>
    | Date:   Thu Nov 12 11:09:11 2015 +0000
    |     Nuke the utf8 and status-utf8 options and make tmux only a UTF-8
    |     terminal. We still support non-UTF-8 terminals outside tmux, but inside
    |     it is always UTF-8 (as when the utf8 and status-utf8 options were on).
    Starting with tmux v2.2 this option is no longer supported.
    While we still have tmux 1.9-6 in Debian/jessie there's at least
    a backport of v2.3-4~bpo8+1 available in jessie-backports (and
    corresponding v2.3-4 in testing/unstable), so the best we can do
    is drop the configuration setting overall.
    Thanks: Timo Boettcher for forwarding the bug report
Commits on May 9, 2017
  1. vimrc: disable mouse usage in all modes, being the default in Vim >=8

    mika committed May 9, 2017
    People used to Vim seem to expect the existing behavior, so let's
    stick what has been present in Vim versions before 8. Otherwise
    we get different copy/paste behavior (it e.g. breaks middle-click paste).
Commits on May 5, 2017
  1. Release new version 0.14.1

    mika committed May 5, 2017
Commits on Apr 21, 2017
  1. zshrc: avoid "no matches found: abk[V]" on grml-small systems, fixup

    mika committed Apr 21, 2017
    Thanks: Frank Terbeck <>
Commits on Mar 25, 2017
  1. Release new version 0.14.0

    mika committed Mar 25, 2017
  2. Handle volatile characters in prompts with promptsubst set

    ft committed Mar 25, 2017
    We don't set that option, but users may do it in .zshrc.local or similar.
    The issue is that performing expansions on a prompt string is an exploitable
    vulnerability, if you do not contol every part the prompt string is made up of.
    This is what is demonstrated by
    Per default, the code strips [$`] from a final prompt string, so you can't
    really take advantage of prompt subst, even though you have it set. If the
    prompt_subst option is not set, the code does not kick in at all.
    If you want more control over which parts of the prompt are stripped, so you
    can take control of prompt_subst, you can do that as well.  Here's an example
    that only strips the data returned from vcs_info:
      zstyle ':prompt:grml:*:items:vcs' strip-sensitive-characters on
      zstyle ':prompt:grml:*:setup' strip-sensitive-characters off
    Now you can take advantage of prompt_subst in privately defined tokens (even
    though I'd use a token that calls a function callback instead of inserting a
    string that relies on prompt_subst — but that's just me).
    Reported-by: Joerg Jaspert <>
  3. zshrc: fix space<->tab indention issue for commit ecfca56

    mika committed Mar 25, 2017
    Time to grab a coffee…
  4. zshrc: use apt for agi/adg/ag/au aliases, fall back to apt-get

    mika committed Mar 25, 2017
    apt has colors and a progress bar and is supposed to be a
    nice UI, so let's make it our default.
    Thanks: Karl Voit for the suggestion
Commits on Feb 5, 2017
  1. Test the correct parameter for non-emptiness

    ft committed Feb 5, 2017
    I introduced this myself, when I adjusted Thilo's code.
  2. only try to autoload, when there actually is to

    Thilo Six authored and ft committed Feb 5, 2017
    This fixes a regression introduced today: Only try to autoload, when
    there actually is to autoload otherwise "autoload -U" _prints_ all
    functions that were marked for autoloading thus far.
  3. reduce unneeded filesystem seeks

    Thilo Six authored and ft committed Feb 5, 2017
    it is superflous to check existence of func files with zrcautoload
    when they are globbed beforehand.
    This way reduce unneeded filesystem seeks.
  4. small fix for sll()

    Thilo Six authored and ft committed Feb 5, 2017
    * do not pollute dirstack, use 'cd -q'
    * create interger vars with defined base
  5. also unset NO_COLOR

    Thilo Six authored and ft committed Feb 5, 2017
    also unset NO_COLOR, seems to left out
  6. add missing run-help-*

    Thilo Six authored and ft committed Feb 5, 2017
    add missing run-help-* functions
  7. use function keyword through out the code

    Thilo Six authored and ft committed Feb 5, 2017
    From man zsh:
    Note also the unhelpful interaction of  aliases  and  function  defini‐
    	alias func='noglob func'
    	func() {
    	    echo Do something with $*
    Because  aliases  are expanded in function definitions, this causes the
    following command to be executed:
    	noglob func() {
    	    echo Do something with $*
    which defines noglob as well as func as functions with the body  given.
    To  avoid this, either quote the name func or use the alternative func‐
    tion definition form `function func'.
    Therefore make use of the function keyword through out the code for
    defining shell functions. Also harmonize its usage, where it is used allready.
  8. fix usage of 'typeset -U'

    Thilo Six authored and ft committed Feb 5, 2017
    From man zsh:
    for variables with shared values  it is  therefore  recommended to set the flag
    for all interfaces, e.g. `typeset -U PATH path'.
    Otherwise one of them is not unique:
    % echo ${parameters[path]}
    % echo ${parameters[PATH]}
    % echo ${parameters[path]}
    % echo ${parameters[PATH]}
    Additionally drop a superflous for loop.
Commits on Jan 29, 2017
  1. make location of file .important_commands configurable keeping backwa…

    Thilo Six authored and ft committed Oct 10, 2015
    …rd compatibility
Commits on Jan 27, 2017
  1. Release new version 0.13.2

    mika committed Jan 27, 2017
  2. zshrc: support systems without capacity file in batterylinux() [Close…

    mika committed Jan 27, 2017
    …s: issue1333]
    Thanks: Axel Beckert for the patch
  3. zshrc: fall back to journalctl with llog + tlog aliases if /var/log/s…

    mika committed Jan 27, 2017
    …yslog doesn't exist
    Also don't make them Debian specific, instead just check for syslog
    and journalctl.
Commits on Jan 13, 2017
  1. Release new version 0.13.1

    mika committed Jan 13, 2017
  2. lsb-functions: avoid usage of SYSTEMD variable

    mika committed Jan 13, 2017
    If we're unsetting the SYSTEMD variable again this
    might influence other code which sources lsb-functions.
    Since we also have a single usage of systemd in lsb-functions
    there's no need to use a variable at all
  3. Release new version 0.13.0

    mika committed Jan 13, 2017
  4. Bump debian/compat version to 9

    mika committed Jan 13, 2017
  5. Bump Standards-Version to 3.9.8

    mika committed Jan 13, 2017