Home

Awesome

paypal

<!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->

Table of Contents generated with DocToc

<!-- END doctoc generated TOC please keep comment here to allow auto update -->

Zsh Angel IQ System

A bunch of intelligent extensions to Zsh. Features:

  1. Smart console – a TUI application allowing to run configure & make and open editor on exact locations of reported errors.
  2. In-shell Ctags browser – list all symbols in TAGS index created with Universal Ctags and open editor on their source locations.
  3. Angel Swiss Knife
  4. An extension to Zinit plugin manager – action complete – press Alt-a to complete a name of plugin and Alt-c to complete a name of ice modifier.
  5. A set of global aliases in the form NAME…STR allowing clever tests of variable contents. The strings are:
    • EMPTYSTR[:space:][:INCOMPLETE:][:INVALID:]$'\e']# – any number of spaces, incomplete chars or invalid chars – essentially an empty string,
    • INVALIDSTR*[[:INCOMPLETE:][:INVALID:]]* – a string holding at least one invalid character,
    • EMORINSTR – empty or invalid string,
    • FUNCSTR – a string of the form: abc() {… with all possible variants (like e.g.: preceding function keyword),
    • IDSTR – a string with all characters allowed in Zsh variable name,
    • PRINTSTR – a string with all characters being printable,
    • WRONGSTR – a string either empty, invalid, control-chars only, zeroes-only or non-printable only,
    • ZEROSTR – a string with only 0 character,
    • CTRLSTR – a string consisting of only control characters.

To use the global alias do:

if [[ $var == WRONGSTR ]]; then
…
fi

There are also negation aliases, as ~NAMESTR, i.e.:

if [[ $var == ~WRONGSTR ]]; then
    print Good \$var contents
fi

Build console

A TUI frontend to configure and make. Its main feature is opening $EDITOR on exact position of an error or warning in its source file.

Angelcon

Ctags browser

A in-shell Ctags symbol browser, under the prompt (alt-w to activate):

symbrowse **

Angel usage information

Below are subcommands of the command angel, i.e.: angel {subcommand} …

Angel open console

After entering angel open (aliased to apo) a fzf-like TUI opens. It shows all files in current directory by default (configure by ANGEL_DEFAULT_COMMAND) or the lines read at standard input, if it'll be detected:

angel-open

After pressing F2, the currently selected file will be open, with syntax highlighting (requires highlight, source-highlight or bat):

preview

Pressing ENTER on any line will open $VISUAL/$EDITOR/$PAGER scrolled to that line.

Pressing F3 will open Git Diff view.

diff

Pressing ENTER on any line will open $VISUAL/$EDITOR/$PAGER scrolled to that line.

Any view can be greped – angel open starts with search prompt active, so you can enter the search-keyword to have either files, file preview contents or git diff lines filtered with it. Multiple keywords are allowed. Below is a file preview grepped:

preview-grep