add launch menu style
This commit is contained in:
parent
517794af03
commit
4a053155d7
|
@ -27,6 +27,7 @@ let
|
|||
dark = {
|
||||
background = "~/.local/share/backgrounds/assembly_dark.png";
|
||||
opacity = "98";
|
||||
opacityHex = "ee";
|
||||
color = {
|
||||
type = "dark";
|
||||
bg = "#202020";
|
||||
|
@ -57,7 +58,8 @@ let
|
|||
nerdfonts_fira_hack =
|
||||
(pkgs.nerdfonts.override { fonts = [ "FiraCode" "Hack" ]; });
|
||||
accent = accents.red;
|
||||
color = themes.dark.color;
|
||||
theme = themes.dark;
|
||||
color = theme.color;
|
||||
pulse_sink = pkgs.writeShellScriptBin "pulse_sink" ''
|
||||
#!/bin/sh
|
||||
output=$(printf "HDMI\nHeadphones" | bemenu -b)
|
||||
|
@ -72,6 +74,87 @@ let
|
|||
esac
|
||||
${pkgs.pamixer}/bin/pamixer --set-volume "$vol"
|
||||
'';
|
||||
bmenu = pkgs.writeScriptBin "bmenu" ''
|
||||
#!${pkgs.fish}/bin/fish
|
||||
|
||||
# wrapper around bemenu
|
||||
# bmenu * - use as dmenu, -p for custom prompt (man bemenu)
|
||||
# bmenu run - select from .desktop files and run it
|
||||
# bmenu start - internal option
|
||||
|
||||
set swaymsg ${pkgs.sway}/bin/swaymsg
|
||||
set swaymsg ${pkgs.sway}/bin/swaymsg
|
||||
|
||||
if test "$argv[1]" = "run"
|
||||
test -n "$argv[2]" && set t "$argv[2]" || set t "terminal"
|
||||
|
||||
test -n "$i3SOCK" && set wrapper 'i3-msg exec --'
|
||||
test -n "$SWAYSOCK" && set wrapper 'swaymsg exec --'
|
||||
|
||||
exec ${pkgs.j4-dmenu-desktop}/bin/j4-dmenu-desktop \
|
||||
--dmenu="bmenu start -p Iniciar:" \
|
||||
--term "$t" \
|
||||
--wrapper="$wrapper" \
|
||||
--no-generic
|
||||
end
|
||||
|
||||
if test -n "$SWAYSOCK"
|
||||
swaymsg -t get_tree |
|
||||
${pkgs.jq}/bin/jq -je '..|select(.focused? and .fullscreen_mode? == 1)|""' &&
|
||||
${pkgs.sway}/bin/swaymsg -q fullscreen off &&
|
||||
set fullscreen
|
||||
|
||||
${pkgs.sway}/bin/swaymsg -t get_outputs |
|
||||
${pkgs.jq}/bin/jq -r 'map(.focused)|reverse|index(true)' |
|
||||
read focused_output
|
||||
|
||||
test -n "$focused_output"
|
||||
and set focused_output "-m $focused_output"
|
||||
end
|
||||
|
||||
function clean_exit
|
||||
set -q fullscreen
|
||||
and swaymsg -q fullscreen on &
|
||||
end
|
||||
|
||||
trap clean_exit EXIT
|
||||
|
||||
# t title
|
||||
# f filter
|
||||
# n normal
|
||||
# h highlighted
|
||||
# s selected
|
||||
# sc scrollbar
|
||||
|
||||
set fn "${font.mono} ${font.size.small}"
|
||||
|
||||
set tb "${ color.bg }${theme.opacityHex}"
|
||||
set tf "${ accent.color }"
|
||||
|
||||
set fb "${ color.bg }${theme.opacityHex}"
|
||||
set ff "${ color.txt }"
|
||||
|
||||
set nb "${ color.bg }${theme.opacityHex}"
|
||||
set nf "${ color.txt }"
|
||||
set hb "${ accent.color }"
|
||||
set hf "${ accent.fg }"
|
||||
|
||||
${pkgs.dhist}/bin/dhist wrap -- ${pkgs.bemenu}/bin/bemenu \
|
||||
$focused_output\
|
||||
--ignorecase\
|
||||
--bottom\
|
||||
--no-overlap\
|
||||
--list 20\
|
||||
--prefix '>'\
|
||||
--fn "$fn"\
|
||||
--tb "$tb" --tf "$tf" \
|
||||
--fb "$fb" --ff "$ff" \
|
||||
--nb "$nb" --nf "$nf" \
|
||||
--hb "$hb" --hf "$hf" \
|
||||
$argv
|
||||
|
||||
# vim: ft=fish
|
||||
'';
|
||||
in {
|
||||
# Home Manager needs a bit of information about you and the
|
||||
# paths it should manage.
|
||||
|
@ -101,6 +184,7 @@ in {
|
|||
xfce.thunar
|
||||
pass
|
||||
dhist
|
||||
bmenu
|
||||
# media
|
||||
yt-dlp
|
||||
ffmpeg
|
||||
|
@ -455,7 +539,7 @@ in {
|
|||
keybindings = let
|
||||
mod = "Mod4";
|
||||
floating.modifier = "Mod4";
|
||||
menu = "bemenu-run --bottom";
|
||||
menu = "bmenu run";
|
||||
terminal = "alacritty";
|
||||
workspace_binds = {
|
||||
"${mod}+1" = "workspace number 1";
|
||||
|
|
Loading…
Reference in a new issue