use xcolor as picker, added delete color option

master
Daniel Napora 2021-10-27 14:19:54 +02:00
parent b7f55fd725
commit c332f0f21e
1 changed files with 23 additions and 11 deletions

View File

@ -6,8 +6,7 @@
# TODO notifications when copying to clipboard (imagick needed to create icon) # TODO notifications when copying to clipboard (imagick needed to create icon)
# TODO check for other color-tools like gpick,gcolor2 and add launchers to menu # TODO check for other color-tools like gpick,gcolor2 and add launchers to menu
# TODO export to .gpl (GIMP,Inkscape) # TODO export to .gpl (GIMP,Inkscape)
# TODO use xcolor as picker # DONE quicly remove colors from picked (with sed)
# TODO quicly remove colors from picked (with sed)
ME=${0##*/} ME=${0##*/}
@ -59,7 +58,12 @@ hex2rgba() {
echo "rgba($r, $g, $b, 1.0)" echo "rgba($r, $g, $b, 1.0)"
} }
pickcolor() { pickcolor() {
color=$(colorpicker --short --one-shot --preview) #color=$(colorpicker --short --one-shot --preview)
#color=$(xcolor --preview-size "${preview-size:-255}" --scale "${scale:-8}")
size=${xcolor_preview_size:-255}
scale=${xcolor_scale:-8}
command="xcolor --preview-size ${size} --scale ${scale}"
color="$(${command})"
echo "$color " > "$RECENT".tmp echo "$color " > "$RECENT".tmp
# add on top deduplicate # add on top deduplicate
awk '!x[$0]++' "$RECENT" >> "$RECENT".tmp awk '!x[$0]++' "$RECENT" >> "$RECENT".tmp
@ -175,9 +179,9 @@ position() {
mkconfigfile() { mkconfigfile() {
if [[ -f /usr/share/mbxtools/configure.inc ]];then if [[ -f /usr/share/mbxtools/configure.inc ]];then
. /usr/share/mbxtools/configure.inc . /usr/share/mbxtools/configure.inc
#elif [[ -f /usr/share/mb-jgtools/pipemenu-standalone.cfg ]];then elif [[ -f /usr/share/mb-jgtools/pipemenu-standalone.cfg ]];then
#. /usr/share/mb-jgtools/pipemenu-standalone.cfg . /usr/share/mb-jgtools/pipemenu-standalone.cfg
#. $HOME/.config/mabox/mabox.conf . $HOME/.config/mabox/mabox.conf
else else
MENU_ITEMS=$(mktemp) MENU_ITEMS=$(mktemp)
CONFIG_FILE=$(mktemp) CONFIG_FILE=$(mktemp)
@ -298,20 +302,28 @@ case "$expose" in
;; ;;
picked|*) picked|*)
out+=("^sep(<i><small>Recently picked colors:</small></i>)") out+=("^sep(<i><small>Recently picked colors:</small></i>)")
# for clear/delete
out2+=("^tag(pickeddel)")
out2+=("^sep(Clear All)")
out2+=("<b>Clear</b> all,echo > $RECENT;$ME")
out2+=("^sep(Just remove one color...)")
while read -r color name;do while read -r color name;do
# name=$(printf "%22s %s\n" "$name") # name=$(printf "%22s %s\n" "$name")
# fg=$(fgcolor $color) # fg=$(fgcolor $color)
# out+=("<tt><span bgcolor='$color' fgcolor='$fg'><sub> </sub>$color<sup>$name</sup></span></tt>,$ME getcolorcode '$color'") # out+=("<tt><span bgcolor='$color' fgcolor='$fg'><sub> </sub>$color<sup>$name</sup></span></tt>,$ME getcolorcode '$color'")
out+=("<tt><small>$color</small> <span bgcolor='$color'><sub> </sub> <sup> </sup></span></tt> ,$ME getcolorcode '$color'") out+=("<tt><small>$color</small> <span bgcolor='$color'><sub> </sub> <sup> </sup></span></tt> ,$ME getcolorcode '$color'")
out2+=("<tt><small>$color</small> <span bgcolor='$color'><sub> </sub> <sup> </sup></span></tt> ,sed -i '/${color:1:6}/d' $RECENT;$ME")
#echo "<tt><small>$color</small> <span bgcolor='$color'><sub> </sub> <sup> </sup></span></tt> ,sed '/${color:1:6}/d' $RECENT;$ME"
done < <(grep ^# $RECENT) done < <(grep ^# $RECENT)
out+=("^sep()") out+=("^sep()")
out+=("<b>New palette</b> from recently picked,$ME recent2palette;$ME") out+=("<b>New palette</b> from recently picked,$ME recent2palette;$ME")
out+=("<b>Clear</b> recently picked,echo > $RECENT;$ME") #out+=("<b>Clear</b> recently picked,echo > $RECENT;$ME")
out+=("<b>Clear</b> recently picked,^checkout(pickeddel)")
;; ;;
esac esac
@ -350,7 +362,7 @@ out2+=("<tt>$(printf "%-20s %20s" "Built-in palettes:" "[<b>$builtin_palettes</b
out2+=("^sep()") out2+=("^sep()")
out2+=("<tt>$(printf "%-20s %20s" "Position:" "[<b>$position</b>]")</tt>,^checkout(position)") out2+=("<tt>$(printf "%-20s %20s" "Position:" "[<b>$position</b>]")</tt>,^checkout(position)")
out2+=("^sep()") out2+=("^sep()")
out2+=("Reset to defaults,rm $CNF_FILE,$ME") out2+=("Reset to defaults,rm $CNF_FILE;$ME")
out2+=("^sep()") out2+=("^sep()")
out2+=("Edit config file,xdg-open $CNF_FILE") out2+=("Edit config file,xdg-open $CNF_FILE")
out2+=("Open config directory,xdg-open $CNF_DIR") out2+=("Open config directory,xdg-open $CNF_DIR")