Commit Graph
4 Commits
Author SHA1 Message Date
Vincent Aranega e2b14b26ad Fix potential errors from a missing escaped char in regex 2016-06-16 16:11:00 +02:00
Vincent Aranega f5a9393d4b Enhanced font detection for terminology
As 'grep -B' is a GNU extension, a more portable solution is preferable. The most direct and simple solution would be using 'awk':

    awk '/^font.name$/{print a}{a=$0}'

But a sed solution could also be applied:

    sed -n '/^font\.name$/{g;1!p;};h'
2016-06-16 15:39:30 +02:00
Vincent Aranega 90c46651d6 Add terminal font detection support for terminology
Support for terminology font name detection is based on the terminology config file. This file is always located here: `~/.config/terminology/config/standard/base.cfg` (https://github.com/billiob/terminology/blob/30cb65625bfa3b9030b80308d76ec2f30b62bd02/src/bin/config.c#L216) and is in a data/binary format. The only way I found (beside coding a dedicated extractor) is to use `strings`. The font name seems to be placed right before the `font.name` string.

    strings ~/.config/terminology/config/standard/base.cfg | grep -B1 font.name | head -1

Here are results that could be output:

    $ strings ~/.config/terminology/config/standard/base.cfg | grep -B1 font.name | head -1
    6x13.pcf
    --> (for a bitmap font) and with another font selected
    $ strings ~/.config/terminology/config/standard/base.cfg | grep -B1 font.name | head -1
    Inconsolata:style=Regular

These results are easily "parseable" in order to extract the font name for display.
2016-06-16 12:14:05 +02:00
Vincent Aranega 8334fba313 Fix for terminology: does not fallback on ascii when no wallpaper is found
When no image is set and there is no background image (or a `.xml` is detected) and the image option is set to `wall` (default), neofetch does not fallback on ascii mode.
The issue comes from the line 2310:

    if [ ! -f "$img" ] || [ ${#term_size} -le 5 ] && [ "$image_backend" != "tycat" ]; then

as `||` and `&&` have the same priority, bash does not evaluate `[ ${#term_size} -le 5 ] && [ "$image_backend" != "tycat" ]` first.

Solution is simply this

    if [ ! -f "$img" ] || ([ ${#term_size} -le 5 ] && [ "$image_backend" != "tycat" ]); then
2016-06-10 16:47:06 +02:00