From e5e291ad6afc1041b782294ab2c290492ba504a0 Mon Sep 17 00:00:00 2001 From: eneller Date: Fri, 31 Mar 2023 18:09:16 +0200 Subject: [PATCH] begin using rofi --- .config/Code - OSS/User/settings.json | 6 +- .config/dunst/dunstrc | 302 ++++++++++++++++++++++++++ .config/i3/config | 9 +- .config/rofi/config.rasi | 173 +++++++++++++++ .config/shell/alias.sh | 1 + .profile | 5 +- 6 files changed, 489 insertions(+), 7 deletions(-) create mode 100644 .config/dunst/dunstrc create mode 100644 .config/rofi/config.rasi diff --git a/.config/Code - OSS/User/settings.json b/.config/Code - OSS/User/settings.json index afd1076..7c49521 100644 --- a/.config/Code - OSS/User/settings.json +++ b/.config/Code - OSS/User/settings.json @@ -3,5 +3,9 @@ "vscode-neovim.neovimExecutablePaths.linux": "/usr/bin/nvim", "terminal.explorerKind": "external", "terminal.external.linuxExec": "alacritty", - "editor.minimap.enabled": false + "editor.minimap.enabled": false, + "redhat.telemetry.enabled": false, + "[python]": { + "diffEditor.ignoreTrimWhitespace": false + } } \ No newline at end of file diff --git a/.config/dunst/dunstrc b/.config/dunst/dunstrc new file mode 100644 index 0000000..c2d242e --- /dev/null +++ b/.config/dunst/dunstrc @@ -0,0 +1,302 @@ +[global] + frame_width = 1 + frame_color = "#788388" + + font = Noto Sans 10 + + # Allow a small subset of html markup: + # bold + # italic + # strikethrough + # underline + # + # For a complete reference see + # . + # If markup is not allowed, those tags will be stripped out of the + # message. + markup = yes + + # The format of the message. Possible variables are: + # %a appname + # %s summary + # %b body + # %i iconname (including its path) + # %I iconname (without its path) + # %p progress value if set ([ 0%] to [100%]) or nothing + # Markup is allowed + format = "%s %p\n%b" + + # Sort messages by urgency. + sort = yes + + # Show how many messages are currently hidden (because of geometry). + indicate_hidden = yes + + # Alignment of message text. + # Possible values are "left", "center" and "right". + alignment = left + + # The frequency with wich text that is longer than the notification + # window allows bounces back and forth. + # This option conflicts with "word_wrap". + # Set to 0 to disable. + bounce_freq = 5 + + + # Show age of message if message is older than show_age_threshold + # seconds. + # Set to -1 to disable. + show_age_threshold = 60 + + # Split notifications into multiple lines if they don't fit into + # geometry. + word_wrap = no + + # Ignore newlines '\n' in notifications. + ignore_newline = no + + + # The geometry of the window: + # [{width}]x{height}[+/-{x}+/-{y}] + # The geometry of the message window. + # The height is measured in number of notifications everything else + # in pixels. If the width is omitted but the height is given + # ("-geometry x2"), the message window expands over the whole screen + # (dmenu-like). If width is 0, the window expands to the longest + # message displayed. A positive x is measured from the left, a + # negative from the right side of the screen. Y is measured from + # the top and down respectevly. + # The width can be negative. In this case the actual width is the + # screen width minus the width defined in within the geometry option. + geometry = "0x4-25+25" + + # Shrink window if it's smaller than the width. Will be ignored if + # width is 0. + shrink = yes + + # The transparency of the window. Range: [0; 100]. + # This option will only work if a compositing windowmanager is + # present (e.g. xcompmgr, compiz, etc.). + transparency = 15 + + # Don't remove messages, if the user is idle (no mouse or keyboard input) + # for longer than idle_threshold seconds. + # Set to 0 to disable. + # default 120 + idle_threshold = 120 + + # Which monitor should the notifications be displayed on. + monitor = 0 + + # Display notification on focused monitor. Possible modes are: + # mouse: follow mouse pointer + # keyboard: follow window with keyboard focus + # none: don't follow anything + # + # "keyboard" needs a windowmanager that exports the + # _NET_ACTIVE_WINDOW property. + # This should be the case for almost all modern windowmanagers. + # + # If this option is set to mouse or keyboard, the monitor option + # will be ignored. + follow = mouse + + # Should a notification popped up from history be sticky or timeout + # as if it would normally do. + sticky_history = yes + + # Maximum amount of notifications kept in history + history_length = 20 + + # Display indicators for URLs (U) and actions (A). + show_indicators = yes + + # The height of a single line. If the height is smaller than the + # font height, it will get raised to the font height. + # This adds empty space above and under the text. + line_height = 0 + + # Draw a line of "separator_height" pixel height between two + # notifications. + # Set to 0 to disable. + separator_height = 1 + + # Padding between text and separator. + # padding = 8 + padding = 8 + + # Horizontal padding. + horizontal_padding = 10 + + # Define a color for the separator. + # possible values are: + # * auto: dunst tries to find a color fitting to the background; + # * foreground: use the same color as the foreground; + # * frame: use the same color as the frame; + # * anything else will be interpreted as a X color. + separator_color = #263238 + + # Print a notification on startup. + # This is mainly for error detection, since dbus (re-)starts dunst + # automatically after a crash. + startup_notification = false + + # dmenu path. + dmenu = /usr/bin/dmenu -p dunst: + + # Browser for opening urls in context menu. + browser = palemoon + + # Align icons left/right/off + icon_position = left + + # Paths to default icons. + icon_path = /usr/share/icons/Adwaita/16x16/status/:/usr/share/icons/Adwaita/16x16/devices/ + + # Limit icons size. + max_icon_size=128 + +[shortcuts] + + # Shortcuts are specified as [modifier+][modifier+]...key + # Available modifiers are "ctrl", "mod1" (the alt-key), "mod2", + # "mod3" and "mod4" (windows-key). + # Xev might be helpful to find names for keys. + + # Close notification. + close = mod1+space + + # Close all notifications. + # close_all = ctrl+shift+space + close_all = ctrl+mod1+space + + # Redisplay last message(s). + # On the US keyboard layout "grave" is normally above TAB and left + # of "1". + history = ctrl+mod4+h + + # Context menu. + context = ctrl+mod1+c + +[urgency_low] + # IMPORTANT: colors have to be defined in quotation marks. + # Otherwise the "#" and following would be interpreted as a comment. + background = "#263238" + foreground = "#556064" + timeout = 10 + +[urgency_normal] + background = "#263238" + foreground = "#F9FAF9" + timeout = 10 + +[urgency_critical] + background = "#D62929" + foreground = "#F9FAF9" + timeout = 0 + + +# Every section that isn't one of the above is interpreted as a rules to +# override settings for certain messages. +# Messages can be matched by "appname", "summary", "body", "icon", "category", +# "msg_urgency" and you can override the "timeout", "urgency", "foreground", +# "background", "new_icon" and "format". +# Shell-like globbing will get expanded. +# +# SCRIPTING +# You can specify a script that gets run when the rule matches by +# setting the "script" option. +# The script will be called as follows: +# script appname summary body icon urgency +# where urgency can be "LOW", "NORMAL" or "CRITICAL". +# +# NOTE: if you don't want a notification to be displayed, set the format +# to "". +# NOTE: It might be helpful to run dunst -print in a terminal in order +# to find fitting options for rules. + +#[espeak] +# summary = "*" +# script = dunst_espeak.sh + +#[script-test] +# summary = "*script*" +# script = dunst_test.sh + +#[ignore] +# # This notification will not be displayed +# summary = "foobar" +# format = "" + +#[signed_on] +# appname = Pidgin +# summary = "*signed on*" +# urgency = low +# +#[signed_off] +# appname = Pidgin +# summary = *signed off* +# urgency = low +# +#[says] +# appname = Pidgin +# summary = *says* +# urgency = critical +# +#[twitter] +# appname = Pidgin +# summary = *twitter.com* +# urgency = normal +# +#[Claws Mail] +# appname = claws-mail +# category = email.arrived +# urgency = normal +# background = "#2F899E" +# foreground = "#FFA247" +# +#[mute.sh] +# appname = mute +# category = mute.sound +# script = mute.sh +# +#[JDownloader] +# appname = JDownloader +# category = JD +# background = "#FFA247" +# foreground = "#FFFFFF" +# +#[newsbeuter] +# summary = *Feeds* +# background = "#A8EB41" +# foreground = "#FFFFFF" +# +[irc] + appname = weechat + timeout = 0 + background = "#0033bb" + foreground = "#dddddd" +# +[weechat hl] + appname = weechat + category = weechat.HL + background = "#FF5C47" + foreground = "#FFFFFF" +# +[weechat pn] + appname = weechat + category = weechat.PM + background = "#D53B84" + foreground = "#FFFFFF" +# +#[CMUS] +# appname = CMUS +# category = cmus +# background = "#6C4AB7" +# foreground = "#FFE756" +# +# +# background = "#30AB70" +# foreground = "#F67245" +# +# vim: ft=cfg diff --git a/.config/i3/config b/.config/i3/config index ef2a69f..a6cb3c5 100644 --- a/.config/i3/config +++ b/.config/i3/config @@ -32,10 +32,10 @@ for_window [instance="bitwarden"] move scratchpad for_window [instance="bitwarden"] sticky enable bindsym $mod+p [instance="bitwarden"] scratchpad show; -exec $TERMINAL --class="dropdown_tmux" +exec $TERMINAL --class="dropdown_tmux" -e 'tmux' for_window [class="dropdown_tmux"] move scratchpad for_window [class="dropdown_tmux"] sticky enable -bindsym $mod+Shift+space [class="dropdown_tmux"] scratchpad show; +bindsym $mod+space [class="dropdown_tmux"] scratchpad show; # General dropdown window traits. The order can matter. # sticky allows windows to stay visible even when switching workspaces @@ -116,7 +116,8 @@ bindsym $mod+Shift+0 move container to workspace $ws10 # APPLICATION SHORTCUTS bindsym $mod+Return exec --no-startup-id "ulauncher-toggle" -bindsym $mod+space exec --no-startup-id $TERMINAL +bindsym $mod+Shift+Return exec --no-startup-id "rofi -show" +bindsym $mod+Shift+space exec --no-startup-id $TERMINAL bindsym $mod+w exec --no-startup-id $BROWSER bindsym $mod+Shift+w exec --no-startup-id "$BROWSER -profile ~/.mozilla/firefox/2ustnzbw.shopping" bindsym $mod+e exec --no-startup-id $EXPLORER @@ -124,7 +125,7 @@ bindsym $mod+m exec --no-startup-id $MAILCLIENT bindsym $mod+Escape exec --no-startup-id $LOCKSCREEN # TODO add import path/to/img.png to make a screenshot bindsym --release $mod+s exec "import ~/Pictures/screenshots/$(date '+%y_%m_%d-%H_%M_%S').png" -bindsym $mod+Shift+s exec "import -window root ~/Pictures/screenshots/$(date 'import ~/Pictures/screenshots/$(date '+%y_%m_%d-%H_%M_%S').png" +#bindsym $mod+Shift+s exec "import -window root ~/Pictures/screenshots/$(date 'import ~/Pictures/screenshots/$(date '+%y_%m_%d-%H_%M_%S').png" # i3lock for locking, i3-msg exit for logout # Show selection: #bindsym $mod+Insert exec --no-startup-id showclip diff --git a/.config/rofi/config.rasi b/.config/rofi/config.rasi new file mode 100644 index 0000000..ef90683 --- /dev/null +++ b/.config/rofi/config.rasi @@ -0,0 +1,173 @@ +// vim: filetype=c +// get dumps via -dump-config and -dump-theme +configuration { + modes: "combi"; + font: "mono 12"; +/* location: 0;*/ +/* yoffset: 0;*/ +/* xoffset: 0;*/ +/* fixed-num-lines: true;*/ + show-icons: true; +/* terminal: "rofi-sensible-terminal";*/ +/* ssh-client: "ssh";*/ +/* ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/ +/* run-command: "{cmd}";*/ +/* run-list-command: "";*/ +/* run-shell-command: "{terminal} -e {cmd}";*/ +/* window-command: "wmctrl -i -R {window}";*/ +/* window-match-fields: "all";*/ +/* icon-theme: ;*/ +/* drun-match-fields: "name,generic,exec,categories,keywords";*/ +/* drun-categories: ;*/ +/* drun-show-actions: false;*/ +/* drun-display-format: "{name} [({generic})]";*/ +/* drun-url-launcher: "xdg-open";*/ +/* disable-history: false;*/ +/* ignored-prefixes: "";*/ +/* sort: false;*/ +/* sorting-method: "normal";*/ +/* case-sensitive: false;*/ +/* cycle: true;*/ +/* sidebar-mode: false;*/ +/* hover-select: false;*/ +/* eh: 1;*/ +/* auto-select: false;*/ +/* parse-hosts: false;*/ +/* parse-known-hosts: true;*/ + combi-modes: "window,drun,ssh"; +/* matching: "normal";*/ +/* tokenize: true;*/ +/* m: "-5";*/ +/* filter: ;*/ +/* dpi: -1;*/ +/* threads: 0;*/ +/* scroll-method: 0;*/ +/* window-format: "{w} {c} {t}";*/ +/* click-to-exit: true;*/ +/* max-history-size: 25;*/ + combi-hide-mode-prefix: true; +/* combi-display-format: "{mode} {text}";*/ +/* matching-negate-char: '-' /* unsupported */;*/ +/* cache-dir: ;*/ +/* window-thumbnail: false;*/ +/* drun-use-desktop-cache: false;*/ +/* drun-reload-desktop-cache: false;*/ +/* normalize-match: false;*/ +/* steal-focus: false;*/ +/* application-fallback-icon: ;*/ +/* refilter-timeout-limit: 8192;*/ +/* xserver-i300-workaround: false;*/ + pid: "/run/user/1000/rofi.pid"; +/* display-window: ;*/ +/* display-windowcd: ;*/ +/* display-run: ;*/ +/* display-ssh: ;*/ +/* display-drun: ;*/ +/* display-combi: ;*/ +/* display-keys: ;*/ +/* display-filebrowser: ;*/ +/* kb-primary-paste: "Control+V,Shift+Insert";*/ +/* kb-secondary-paste: "Control+v,Insert";*/ +/* kb-clear-line: "Control+w";*/ +/* kb-move-front: "Control+a";*/ +/* kb-move-end: "Control+e";*/ +/* kb-move-word-back: "Alt+b,Control+Left";*/ +/* kb-move-word-forward: "Alt+f,Control+Right";*/ +/* kb-move-char-back: "Left,Control+b";*/ +/* kb-move-char-forward: "Right,Control+f";*/ +/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/ +/* kb-remove-word-forward: "Control+Alt+d";*/ +/* kb-remove-char-forward: "Delete,Control+d";*/ +/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/ +/* kb-remove-to-eol: "Control+k";*/ +/* kb-remove-to-sol: "Control+u";*/ +/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/ +/* kb-accept-custom: "Control+Return";*/ +/* kb-accept-custom-alt: "Control+Shift+Return";*/ +/* kb-accept-alt: "Shift+Return";*/ +/* kb-delete-entry: "Shift+Delete";*/ +/* kb-mode-next: "Shift+Right,Control+Tab";*/ +/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/ +/* kb-mode-complete: "Control+l";*/ +/* kb-row-left: "Control+Page_Up";*/ +/* kb-row-right: "Control+Page_Down";*/ +/* kb-row-up: "Up,Control+p";*/ +/* kb-row-down: "Down,Control+n";*/ +/* kb-row-tab: "";*/ +/* kb-element-next: "Tab";*/ +/* kb-element-prev: "ISO_Left_Tab";*/ +/* kb-page-prev: "Page_Up";*/ +/* kb-page-next: "Page_Down";*/ +/* kb-row-first: "Home,KP_Home";*/ +/* kb-row-last: "End,KP_End";*/ +/* kb-row-select: "Control+space";*/ +/* kb-screenshot: "Alt+S";*/ +/* kb-ellipsize: "Alt+period";*/ +/* kb-toggle-case-sensitivity: "grave,dead_grave";*/ +/* kb-toggle-sort: "Alt+grave";*/ +/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/ +/* kb-custom-1: "Alt+1";*/ +/* kb-custom-2: "Alt+2";*/ +/* kb-custom-3: "Alt+3";*/ +/* kb-custom-4: "Alt+4";*/ +/* kb-custom-5: "Alt+5";*/ +/* kb-custom-6: "Alt+6";*/ +/* kb-custom-7: "Alt+7";*/ +/* kb-custom-8: "Alt+8";*/ +/* kb-custom-9: "Alt+9";*/ +/* kb-custom-10: "Alt+0";*/ +/* kb-custom-11: "Alt+exclam";*/ +/* kb-custom-12: "Alt+at";*/ +/* kb-custom-13: "Alt+numbersign";*/ +/* kb-custom-14: "Alt+dollar";*/ +/* kb-custom-15: "Alt+percent";*/ +/* kb-custom-16: "Alt+dead_circumflex";*/ +/* kb-custom-17: "Alt+ampersand";*/ +/* kb-custom-18: "Alt+asterisk";*/ +/* kb-custom-19: "Alt+parenleft";*/ +/* ml-row-left: "ScrollLeft";*/ +/* ml-row-right: "ScrollRight";*/ +/* ml-row-up: "ScrollUp";*/ +/* ml-row-down: "ScrollDown";*/ +/* me-select-entry: "MousePrimary";*/ +/* me-accept-entry: "MouseDPrimary";*/ +/* me-accept-custom: "Control+MouseDPrimary";*/ + kb-custom-1: ""; + kb-custom-2: ""; + kb-custom-3: ""; + kb-custom-4: ""; + kb-custom-5: ""; + kb-custom-6: ""; + kb-custom-7: ""; + kb-custom-8: ""; + kb-custom-9: ""; + kb-custom-10: ""; + kb-custom-11: ""; + kb-custom-12: ""; + kb-custom-13: ""; + kb-custom-14: ""; + kb-custom-15: ""; + kb-custom-16: ""; + kb-custom-17: ""; + kb-custom-18: ""; + kb-custom-19: ""; + kb-select-1: "Alt+1"; + kb-select-2: "Alt+2"; + kb-select-3: "Alt+3"; + kb-select-4: "Alt+4"; + kb-select-5: "Alt+5"; + kb-select-6: "Alt+6"; + kb-select-7: "Alt+7"; + kb-select-8: "Alt+8"; + kb-select-9: "Alt+9"; + kb-select-10:"Alt+0"; + timeout { + action: "kb-cancel"; + delay: 0; + } + filebrowser { + directories-first: true; + sorting-method: "name"; + } +} +@theme "theme" // read theme in ./theme.rasi diff --git a/.config/shell/alias.sh b/.config/shell/alias.sh index 2225324..9aa9460 100644 --- a/.config/shell/alias.sh +++ b/.config/shell/alias.sh @@ -2,6 +2,7 @@ alias ls='exa' # make output more readable and show directories first alias ll='ls -l' alias la='ls --all' +alias less='less --use-color' alias grep='rg' # colorize grep output, set GREP_COLORS alias cp="cp -i" # Confirm before overwriting something alias df='df -h' # Human-readable sizes diff --git a/.profile b/.profile index b625b91..a25bb63 100644 --- a/.profile +++ b/.profile @@ -13,11 +13,12 @@ export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME/java" export CUDA_CACHE_PATH="$XDG_CACHE_HOME/nv" export ZDOTDIR="$XDG_CONFIG_HOME/zsh" export WGETRC="$XDG_CONFIG_HOME/wgetrc" +alias vscodium='vscodium --extensions-dir "$XDG_DATA_HOME/vscode"' +export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc-2.0" +export CARGO_HOME="$XDG_DATA_HOME/cargo" alias wget='wget --hsts-file="$XDG_CACHE_HOME/wget-hsts"' alias yarn='yarn --use-yarnrc "$XDG_CONFIG_HOME/yarn/config"' alias code='code --extensions-dir "$XDG_DATA_HOME/vscode"' -alias vscodium='vscodium --extensions-dir "$XDG_DATA_HOME/vscode"' -export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc-2.0" # THEME