#!/bin/bash

# my_dmenu --- Call to dmenu with Xresources colors and other options
#
# Copyright (c) 2023  Protesilaos Stavrou <info@protesilaos.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or (at
# your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <https://www.gnu.org/licenses/>.
#
### Commentary:
#
# Part of my dotfiles: <https://git.sr.ht/~protesilaos/dotfiles>.
#
### Code:

xresources="$(xrdb -query -all | sed '/*color\|foreground\|background*/!d')"

[ -n "$xresources" ] || { echo "ERROR: no xrdb query output."; exit 1; }

_get_xresource() {
    echo "$xresources" | grep -w "$1" | sed 's,.*\(#[a-zA-Z0-9]*\),\1,'
}

x_background="$(_get_xresource 'background')"
x_foreground="$(_get_xresource 'foreground')"
x_selection="$(_get_xresource 'color4')"

dmenu -nb "$x_background" -nf "$x_foreground" \
      -sb "$x_selection" -sf "$x_background" \
      -b -i "$@"
