Compare commits
3 Commits
f4c1c54e72
...
b3d97a9232
Author | SHA1 | Date | |
---|---|---|---|
doryan | b3d97a9232 | ||
doryan | 0a1dc0c287 | ||
doryan | b8b8161b14 |
|
@ -0,0 +1 @@
|
|||
Subproject commit 27c07dddb42f05b199319a9b66473c8de7935856
|
|
@ -0,0 +1 @@
|
|||
Subproject commit c3d4e576c9c86eac62884bd47c01f6faed043fc5
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 7fed01afba9392b6392408b9a0cf888522ed7a10
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 0bab1b99041719d35e44e29d9a0dfd3d3b61cf61
|
|
@ -0,0 +1 @@
|
|||
Subproject commit e0165eaa730dd0fa321a6a6de74f092fe87630b0
|
|
@ -0,0 +1 @@
|
|||
Subproject commit f13d39a1ae84219e4ee14e77d31bb774c91f2fe3
|
|
@ -0,0 +1,99 @@
|
|||
|
||||
|
||||
# Path to your oh-my-zsh installation.
|
||||
# export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
# Set name of the theme to load --- if set to "random", it will
|
||||
# load a random theme each time oh-my-zsh is loaded, in which case,
|
||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||
#ZSH_THEME="robbyrussell"
|
||||
|
||||
# Set list of themes to pick from when loading at random
|
||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||
# a theme from this variable instead of looking in $ZSH/themes/
|
||||
# If set to an empty array, this variable will have no effect.
|
||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||
|
||||
# Uncomment the following line to use case-sensitive completion.
|
||||
# CASE_SENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Uncomment one of the following lines to change the auto-update behavior
|
||||
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||
|
||||
# Uncomment the following line to change how often to auto-update (in days).
|
||||
# zstyle ':omz:update' frequency 13
|
||||
|
||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||
|
||||
# Uncomment the following line to disable colors in ls.
|
||||
# DISABLE_LS_COLORS="true"
|
||||
|
||||
# Uncomment the following line to disable auto-setting terminal title.
|
||||
# DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to enable command auto-correction.
|
||||
# ENABLE_CORRECTION="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# You can also set it to another string to have that shown instead of the default red dots.
|
||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||
# COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Uncomment the following line if you want to disable marking untracked files
|
||||
# under VCS as dirty. This makes repository status check for large repositories
|
||||
# much, much faster.
|
||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# Uncomment the following line if you want to change the command execution time
|
||||
# stamp shown in the history command output.
|
||||
# You can set one of the optional three formats:
|
||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||
# or set a custom format using the strftime function format specifications,
|
||||
# see 'man strftime' for details.
|
||||
# HIST_STAMPS="mm/dd/yyyy"
|
||||
|
||||
# Would you like to use another custom folder than $ZSH/custom?
|
||||
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||
|
||||
# Which plugins would you like to load?
|
||||
# Standard plugins can be found in $ZSH/plugins/
|
||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
# Add wisely, as too many plugins slow down shell startup.
|
||||
|
||||
# source $ZSH/oh-my-zsh.sh
|
||||
|
||||
alias du="ncdu"
|
||||
alias cat="bat"
|
||||
alias ls="lsd"
|
||||
alias vi="~/.local/bin/lvim"
|
||||
|
||||
eval "$(starship init zsh)"
|
||||
|
||||
# To custom config.zshize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||
# ___MY_VMOPTIONS_SHELL_FILE="${HOME}/.jetbrains.vmoptions.sh"; if [ -f "${___MY_VMOPTIONS_SHELL_FILE}" ]; then . "${___MY_VMOPTIONS_SHELL_FILE}"; fi
|
||||
|
||||
bindkey "^[[1;5C" forward-word
|
||||
bindkey "^[[1;5D" backward-word
|
||||
bindkey "^[[P" delete-char
|
||||
|
||||
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
|
||||
source ~/.zsh/zsh-auto-notify/auto-notify.plugin.zsh
|
||||
source ~/.zsh/zsh-you-should-use/you-should-use.plugin.zsh
|
||||
source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||
source ~/.zsh/zsh-navigation-tools/zsh-navigation-tools.plugin.zsh
|
||||
|
||||
autoload -U compinit; compinit
|
||||
source ~/.zsh/zsh-fzf-tab/fzf-tab.plugin.zsh
|
||||
|
||||
SAVEHIST=1000
|
||||
HISTFILE=~/.zsh_history
|
|
@ -23,16 +23,14 @@ bspc config split_ratio 0.52
|
|||
bspc config borderless_monocle true
|
||||
bspc config gapless_monocle true
|
||||
|
||||
bspc config active_border_color "#ABC2AB"
|
||||
bspc config normal_border_color "#478061"
|
||||
bspc config urgent_border_color "#B58900"
|
||||
bspc config presel_border_color "#26E2FF"
|
||||
bspc config active_border_color "#FFBB53"
|
||||
bspc config normal_border_color "#FEA3A1"
|
||||
|
||||
bash $HOME/.config/polybar/launch.sh &
|
||||
sxhkd &
|
||||
picom &
|
||||
nitrogen --restore &
|
||||
dunst &
|
||||
xsetroot -cursor_name left_ptr &
|
||||
pipewire &
|
||||
pipewire-pulse
|
||||
pgrep -x polybar > /dev/null || polybar &
|
||||
pgrep -x pipewire > /dev/null || pipewire &
|
||||
pgrep -x pipewire-pulse > /dev/null || pipewire-pulse &
|
||||
|
|
|
@ -8,7 +8,7 @@ color_theme = "Default"
|
|||
theme_background = False
|
||||
|
||||
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||
truecolor = False
|
||||
truecolor = True
|
||||
|
||||
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||
|
@ -32,7 +32,7 @@ rounded_corners = True
|
|||
#* "block" has half the resolution of braille but uses more common characters.
|
||||
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||
graph_symbol = "braille"
|
||||
graph_symbol = "tty"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_cpu = "default"
|
||||
|
@ -53,7 +53,7 @@ graph_symbol_proc = "default"
|
|||
shown_boxes = "cpu mem net proc"
|
||||
|
||||
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||
update_ms = 100
|
||||
update_ms = 500
|
||||
|
||||
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||
|
|
|
@ -8,3 +8,8 @@
|
|||
2024/04/27 (01:33:15) | INFO: Logger set to INFO
|
||||
2024/04/27 (01:33:17) | INFO: Logger set to INFO
|
||||
2024/04/27 (01:33:17) | INFO: Logger set to DEBUG
|
||||
|
||||
2024/09/20 (16:23:18) | ===> btop++ v.1.3.2
|
||||
2024/09/20 (16:23:18) | INFO: Logger set to INFO
|
||||
2024/09/20 (16:23:19) | INFO: Logger set to DEBUG
|
||||
2024/09/20 (16:23:19) | INFO: Logger set to INFO
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
starship init fish | source
|
||||
|
||||
alias du="ncdu"
|
||||
alias cat="bat"
|
||||
alias ls="lsd"
|
||||
alias vi="~/.local/bin/lvim"
|
||||
|
||||
if status is-interactive
|
||||
# Commands to run in interactive sessions can go here
|
||||
end
|
|
@ -1,31 +0,0 @@
|
|||
# This file contains fish universal variable definitions.
|
||||
# VERSION: 3.0
|
||||
SETUVAR __fish_initialized:3400
|
||||
SETUVAR fish_color_autosuggestion:brblack
|
||||
SETUVAR fish_color_cancel:\x2dr
|
||||
SETUVAR fish_color_command:blue
|
||||
SETUVAR fish_color_comment:red
|
||||
SETUVAR fish_color_cwd:green
|
||||
SETUVAR fish_color_cwd_root:red
|
||||
SETUVAR fish_color_end:green
|
||||
SETUVAR fish_color_error:brred
|
||||
SETUVAR fish_color_escape:brcyan
|
||||
SETUVAR fish_color_history_current:\x2d\x2dbold
|
||||
SETUVAR fish_color_host:normal
|
||||
SETUVAR fish_color_host_remote:yellow
|
||||
SETUVAR fish_color_normal:normal
|
||||
SETUVAR fish_color_operator:brcyan
|
||||
SETUVAR fish_color_param:cyan
|
||||
SETUVAR fish_color_quote:yellow
|
||||
SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
|
||||
SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
|
||||
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
|
||||
SETUVAR fish_color_status:red
|
||||
SETUVAR fish_color_user:brgreen
|
||||
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
||||
SETUVAR fish_key_bindings:fish_default_key_bindings
|
||||
SETUVAR fish_pager_color_completion:normal
|
||||
SETUVAR fish_pager_color_description:yellow\x1e\x2di
|
||||
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
|
||||
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
|
||||
SETUVAR fish_pager_color_selected_background:\x2dr
|
|
@ -0,0 +1,10 @@
|
|||
#!/bin/bash
|
||||
|
||||
configs=("bspwm" "btop" "cava" "lvim" "picom" "polybar" "rofi" "yazi" "sxhkd")
|
||||
|
||||
for config in ${configs[@]}; do
|
||||
cp -r ./$config ~/.config/
|
||||
done
|
||||
|
||||
cp ./.zshrc ~/
|
||||
cp ./.zsh ~/
|
|
@ -11,7 +11,6 @@ vim.list_extend(lvim.lsp.automatic_configuration.skipped_servers, { "rust_analyz
|
|||
|
||||
require "plugins.init"
|
||||
require "mappings"
|
||||
require "configs.noice"
|
||||
require "configs.nvimtree"
|
||||
require "configs.bufferline"
|
||||
require "configs.dropbar"
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
"nord.nvim": { "branch": "main", "commit": "6d6bae56a002a4da507ba263776e9691f47deb5f" },
|
||||
"nui.nvim": { "branch": "main", "commit": "61574ce6e60c815b0a0c4b5655b8486ba58089a1" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "14e97371b2aab6ee70054c1070a123dfaa3e217e" },
|
||||
"nvim-bqf": { "branch": "main", "commit": "1b24dc6050c34e8cd377b6b4cd6abe40509e0187" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "cd2cf0c124d3de577fb5449746568ee8e601afc8" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "194ec600488f7c7229668d0e80bd197f3a2b84ff" },
|
||||
"nvim-dap": { "branch": "master", "commit": "13ce59d4852be2bb3cd4967947985cb0ceaff460" },
|
||||
|
|
|
@ -19,6 +19,9 @@ lvim.plugins = {
|
|||
{
|
||||
'rust-lang/rust.vim',
|
||||
},
|
||||
{
|
||||
'kevinhwang91/nvim-bqf'
|
||||
},
|
||||
{
|
||||
'MunifTanjim/prettier.nvim'
|
||||
},
|
||||
|
@ -186,14 +189,21 @@ lvim.plugins = {
|
|||
{
|
||||
"folke/noice.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
routes = {
|
||||
{
|
||||
filter = { event = "notify", find = "No information available" },
|
||||
opts = { skip = true },
|
||||
},
|
||||
},
|
||||
presets = {
|
||||
lsp_doc_border = true,
|
||||
},
|
||||
},
|
||||
dependencies = {
|
||||
-- if you lazy-load any plugin below, make sure to add proper `module="..."` entries
|
||||
"MunifTanjim/nui.nvim",
|
||||
-- OPTIONAL:
|
||||
-- `nvim-notify` is only needed, if you want to use the notification view.
|
||||
-- If not available, we use `mini` as the fallback
|
||||
"rcarriga/nvim-notify",
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
|
|
662
picom/picom.conf
662
picom/picom.conf
|
@ -1,57 +1,3 @@
|
|||
#################################
|
||||
# Animations #
|
||||
|
||||
# !These animations WILL NOT work correctly for any other wm other than phyOS-dwm fork!
|
||||
|
||||
# fly-in: Windows fly in from random directions to the screen
|
||||
# maximize: Windows pop from center of the screen to their respective positions
|
||||
# minimize: Windows minimize from their position to the center of the screen
|
||||
# slide-in-center: Windows move from upper-center of the screen to their respective positions
|
||||
# slide-out-center: Windows move to the upper-center of the screen
|
||||
# slide-left: Windows are created from the right-most window position and slide leftwards
|
||||
# slide right: Windows are created from the left-most window position and slide rightwards
|
||||
# slide-down: Windows are moved from the top of the screen and slide downward
|
||||
# slide-up: Windows are moved from their position to top of the screen
|
||||
# squeeze: Windows are either closed or created to/from their center y-position (the animation is similar to a blinking eye)
|
||||
# squeeze-bottom: Similar to squeeze, but the animation starts from bottom-most y-position
|
||||
# zoom: Windows are either created or destroyed from/to their center (not the screen center)
|
||||
|
||||
#################################
|
||||
|
||||
#enable or disable animations
|
||||
animations = true;
|
||||
#change animation speed of windows in current tag e.g open window in current tag
|
||||
animation-stiffness-in-tag = 250;
|
||||
#change animation speed of windows when tag changes
|
||||
animation-stiffness-tag-change = 90.0;
|
||||
|
||||
animation-window-mass = 0.3;
|
||||
animation-dampening = 15;
|
||||
animation-clamping = true;
|
||||
|
||||
#open windows
|
||||
animation-for-open-window = "zoom";
|
||||
#minimize or close windows
|
||||
animation-for-unmap-window = "zoom";
|
||||
#popup windows
|
||||
animation-for-transient-window = "zoom"; #available options: slide-up, slide-down, slide-left, slide-right, squeeze, squeeze-bottom, zoom
|
||||
|
||||
#set animation for windows being transitioned out while changings tags
|
||||
animation-for-prev-tag = "minimize";
|
||||
#enables fading for windows being transitioned out while changings tags
|
||||
enable-fading-prev-tag = true;
|
||||
|
||||
#set animation for windows being transitioned in while changings tags
|
||||
animation-for-next-tag = "slide-in-center";
|
||||
#enables fading for windows being transitioned in while changings tags
|
||||
enable-fading-next-tag = true;
|
||||
|
||||
animation-exclude = [
|
||||
"window_type = 'dock'",
|
||||
"class_g = 'flameshot'",
|
||||
"class_g = 'polybar'",
|
||||
];
|
||||
|
||||
#################################
|
||||
# Shadows #
|
||||
#################################
|
||||
|
@ -96,17 +42,6 @@ shadow-offset-y = -20;
|
|||
# shadow-exclude = "n:e:Notification";
|
||||
#
|
||||
# shadow-exclude = []
|
||||
shadow-exclude = [
|
||||
"name = 'Notification'",
|
||||
"class_g = 'Conky'",
|
||||
"class_g ?= 'Notify-osd'",
|
||||
"class_g = 'Cairo-clock'",
|
||||
"class_g = 'dwm'",
|
||||
"class_g = 'chromium'",
|
||||
"class_g *?= 'slop'",
|
||||
"_GTK_FRAME_EXTENTS@:c"
|
||||
];
|
||||
|
||||
# Specify a list of conditions of windows that should have no shadow painted over, such as a dock window.
|
||||
# clip-shadow-above = []
|
||||
|
||||
|
@ -129,18 +64,18 @@ shadow-exclude = [
|
|||
|
||||
# Fade windows in/out when opening/closing and when opacity changes,
|
||||
# unless no-fading-openclose is used.
|
||||
fading = true;
|
||||
fading = false;
|
||||
|
||||
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
|
||||
# fade-in-step = 0.028
|
||||
fade-in-step = 0.023;
|
||||
fade-in-step = 0.028;
|
||||
|
||||
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
|
||||
# fade-out-step = 0.03
|
||||
fade-out-step = 0.023;
|
||||
fade-out-step = 0.03;
|
||||
|
||||
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
|
||||
fade-delta = 5
|
||||
fade-delta = 10
|
||||
|
||||
# Specify a list of conditions of windows that should not be faded.
|
||||
# fade-exclude = []
|
||||
|
@ -165,7 +100,6 @@ fade-delta = 5
|
|||
|
||||
# Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows.
|
||||
# inactive-opacity-override = true
|
||||
inactive-opacity-override = true;
|
||||
|
||||
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
|
||||
# active-opacity = 1.0
|
||||
|
@ -175,9 +109,6 @@ inactive-opacity-override = true;
|
|||
|
||||
# Specify a list of conditions of windows that should never be considered focused.
|
||||
# focus-exclude = []
|
||||
focus-exclude = [
|
||||
"class_g = 'Cairo-clock'" ,
|
||||
];
|
||||
|
||||
# Use fixed inactive dim value, instead of adjusting according to window opacity.
|
||||
# inactive-dim-fixed = 1.0
|
||||
|
@ -189,7 +120,7 @@ focus-exclude = [
|
|||
# Sets the radius of rounded window corners. When > 0, the compositor will
|
||||
# round the corners of windows. Does not interact well with
|
||||
# `transparent-clipping`.
|
||||
corner-radius = 2;
|
||||
corner-radius = 10;
|
||||
|
||||
# Exclude conditions for rounded corners.
|
||||
#rounded-corners-exclude = [
|
||||
|
@ -197,27 +128,9 @@ corner-radius = 2;
|
|||
# "window_type = 'desktop'"
|
||||
#];
|
||||
|
||||
blur: {
|
||||
method = "dual_kawase";
|
||||
strength = 9;
|
||||
background = true;
|
||||
background-frame = false;
|
||||
background-fixed = false;
|
||||
}
|
||||
|
||||
|
||||
# Exclude conditions for background blur.
|
||||
# blur-background-exclude = []
|
||||
blur-background-exclude = [
|
||||
"window_type = 'dock'",
|
||||
"window_type = 'desktop'",
|
||||
"_GTK_FRAME_EXTENTS@:c",
|
||||
"class_g = 'Chromium'",
|
||||
"class_g = 'Discord'",
|
||||
"class_g = 'Dunst'",
|
||||
"class_g = 'Peek'",
|
||||
"class_g *?= 'slop'",
|
||||
];
|
||||
|
||||
|
||||
#################################
|
||||
# General Settings #
|
||||
|
@ -229,220 +142,371 @@ blur-background-exclude = [
|
|||
# Specify the backend to use: `xrender`, `glx`, `egl` or `xr_glx_hybrid`.
|
||||
# `xrender` is the default one.
|
||||
#
|
||||
backend = "egl"
|
||||
|
||||
# Use higher precision during rendering, and apply dither when presenting the
|
||||
# rendered screen. Reduces banding artifacts, but might cause performance
|
||||
# degradation. Only works with OpenGL.
|
||||
backend = "glx"
|
||||
dithered-present = false;
|
||||
|
||||
# Enable/disable VSync.
|
||||
vsync = true;
|
||||
|
||||
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
|
||||
# dbus = false
|
||||
|
||||
# Try to detect WM windows (a non-override-redirect window with no
|
||||
# child that has 'WM_STATE') and mark them as active.
|
||||
#
|
||||
# mark-wmwin-focused = false
|
||||
mark-wmwin-focused = true;
|
||||
|
||||
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
|
||||
# mark-ovredir-focused = false
|
||||
mark-ovredir-focused = true;
|
||||
|
||||
# Try to detect windows with rounded corners and don't consider them
|
||||
# shaped windows. The accuracy is not very high, unfortunately.
|
||||
#
|
||||
# detect-rounded-corners = false
|
||||
detect-rounded-corners = false;
|
||||
|
||||
# Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers
|
||||
# not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows.
|
||||
#
|
||||
# detect-client-opacity = false
|
||||
detect-client-opacity = false;
|
||||
|
||||
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
|
||||
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
|
||||
# provided that the WM supports it.
|
||||
#
|
||||
use-ewmh-active-win = true;
|
||||
|
||||
# Unredirect all windows if a full-screen opaque window is detected,
|
||||
# to maximize performance for full-screen windows. Known to cause flickering
|
||||
# when redirecting/unredirecting windows.
|
||||
#
|
||||
unredir-if-possible = false;
|
||||
|
||||
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
|
||||
# unredir-if-possible-delay = 0
|
||||
|
||||
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
|
||||
# unredir-if-possible-exclude = []
|
||||
|
||||
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
|
||||
# in the same group focused at the same time.
|
||||
#
|
||||
# detect-transient = false
|
||||
detect-client-opacity = true;
|
||||
detect-transient = true;
|
||||
|
||||
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
|
||||
# group focused at the same time. This usually means windows from the same application
|
||||
# will be considered focused or unfocused at the same time.
|
||||
# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too.
|
||||
#
|
||||
# detect-client-leader = false
|
||||
|
||||
# Resize damaged region by a specific number of pixels.
|
||||
# A positive value enlarges it while a negative one shrinks it.
|
||||
# If the value is positive, those additional pixels will not be actually painted
|
||||
# to screen, only used in blur calculation, and such. (Due to technical limitations,
|
||||
# with use-damage, those pixels will still be incorrectly painted to screen.)
|
||||
# Primarily used to fix the line corruption issues of blur,
|
||||
# in which case you should use the blur radius value here
|
||||
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
|
||||
# with a 5x5 one you use `--resize-damage 2`, and so on).
|
||||
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
|
||||
#
|
||||
# resize-damage = 1
|
||||
|
||||
# Specify a list of conditions of windows that should be painted with inverted color.
|
||||
# Resource-hogging, and is not well tested.
|
||||
#
|
||||
# invert-color-include = []
|
||||
|
||||
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
|
||||
# Might cause incorrect opacity when rendering transparent content (but never
|
||||
# practically happened) and may not work with blur-background.
|
||||
# My tests show a 15% performance boost. Recommended.
|
||||
#
|
||||
glx-no-stencil = true;
|
||||
|
||||
# GLX backend: Avoid rebinding pixmap on window damage.
|
||||
# Probably could improve performance on rapid window content changes,
|
||||
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
|
||||
# Recommended if it works.
|
||||
#
|
||||
# glx-no-rebind-pixmap = false
|
||||
|
||||
# Disable the use of damage information.
|
||||
# This cause the whole screen to be redrawn every time, instead of the part of the screen
|
||||
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
|
||||
# The opposing option is use-damage
|
||||
#
|
||||
# no-use-damage = false
|
||||
detect-client-leader = true
|
||||
glx-no-stencil = true
|
||||
glx-no-rebind-pixmap = false
|
||||
use-damage = true;
|
||||
|
||||
# Use X Sync fence to sync clients' draw calls, to make sure all draw
|
||||
# calls are finished before picom starts drawing. Needed on nvidia-drivers
|
||||
# with GLX backend for some users.
|
||||
#
|
||||
xrender-sync-fence = true;
|
||||
|
||||
# GLX backend: Use specified GLSL fragment shader for rendering window contents.
|
||||
# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
|
||||
# in the source tree for examples.
|
||||
#
|
||||
window-shader-fg = "default";
|
||||
|
||||
# Force all windows to be painted with blending. Useful if you
|
||||
# have a glx-fshader-win that could turn opaque pixels transparent.
|
||||
#
|
||||
# force-win-blend = true;
|
||||
|
||||
# Do not use EWMH to detect fullscreen windows.
|
||||
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
|
||||
#
|
||||
# no-ewmh-fullscreen = false
|
||||
|
||||
# Dimming bright windows so their brightness doesn't exceed this set value.
|
||||
# Brightness of a window is estimated by averaging all pixels in the window,
|
||||
# so this could comes with a performance hit.
|
||||
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
|
||||
#
|
||||
# max-brightness = 1.0
|
||||
|
||||
# Make transparent windows clip other windows like non-transparent windows do,
|
||||
# instead of blending on top of them.
|
||||
#
|
||||
transparent-clipping = false;
|
||||
|
||||
# Specify a list of conditions of windows that should never have transparent
|
||||
# clipping applied. Useful for screenshot tools, where you need to be able to
|
||||
# see through transparent parts of the window.
|
||||
#
|
||||
# transparent-clipping-exclude = []
|
||||
|
||||
# Set the log level. Possible values are:
|
||||
# "trace", "debug", "info", "warn", "error"
|
||||
# in increasing level of importance. Case doesn't matter.
|
||||
# If using the "TRACE" log level, it's better to log into a file
|
||||
# using *--log-file*, since it can generate a huge stream of logs.
|
||||
#
|
||||
# log-level = "debug"
|
||||
xrender-sync-fence = false
|
||||
log-level = "warn";
|
||||
|
||||
# Set the log file.
|
||||
# If *--log-file* is never specified, logs will be written to stderr.
|
||||
# Otherwise, logs will to written to the given file, though some of the early
|
||||
# logs might still be written to the stderr.
|
||||
# When setting this option from the config file, it is recommended to use an absolute path.
|
||||
#
|
||||
# log-file = "/path/to/your/log/file"
|
||||
rules = ({
|
||||
match = "WM_TRANSIENT_FOR@";
|
||||
animations = ({
|
||||
triggers = ["open", "show"];
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.1;
|
||||
delay = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
shadow-opacity = "opacity";
|
||||
scale-y = {
|
||||
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||
duration = 0.15;
|
||||
start = 0.8;
|
||||
end = 1;
|
||||
};
|
||||
offset-y = "(-window-height/2) + (window-height/2) * scale-y";
|
||||
shadow-scale-y = "scale-y";
|
||||
shadow-offset-y = "offset-y";
|
||||
saved-image-blend = 0;
|
||||
},{
|
||||
triggers = ["close", "hide"];
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "0";
|
||||
};
|
||||
blur-opacity = 0;
|
||||
shadow-opacity = "opacity";
|
||||
scale-y = {
|
||||
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||
duration = 0.15;
|
||||
start = 1;
|
||||
end = 0.7;
|
||||
};
|
||||
offset-y = "(-window-height/2) + (window-height/2) * scale-y";
|
||||
shadow-scale-y = "scale-y";
|
||||
shadow-offset-y = "offset-y";
|
||||
saved-image-blend = 0;
|
||||
});
|
||||
}, {
|
||||
match = "window_type = 'dropdown_menu' || window_type = 'popup_menu' || window_type = 'menu'";
|
||||
animations = ({
|
||||
triggers = ["open", "show"];
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.1;
|
||||
delay = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
shadow-opacity = "opacity";
|
||||
scale-y = {
|
||||
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||
duration = 0.15;
|
||||
start = 0.8;
|
||||
end = 1;
|
||||
};
|
||||
shadow-scale-y = "scale-y";
|
||||
saved-image-blend = 0;
|
||||
|
||||
# Show all X errors (for debugging)
|
||||
# show-all-xerrors = false
|
||||
},{
|
||||
triggers = ["close", "hide"];
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "0";
|
||||
};
|
||||
blur-opacity = 0;
|
||||
shadow-opacity = "opacity";
|
||||
scale-y = {
|
||||
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||
duration = 0.15;
|
||||
start = 1;
|
||||
end = 0.7;
|
||||
};
|
||||
shadow-scale-y = "scale-y";
|
||||
saved-image-blend = 0;
|
||||
|
||||
# Write process ID to a file.
|
||||
# write-pid-path = "/path/to/your/log/file"
|
||||
});
|
||||
}, {
|
||||
match = "window_type = 'dropdown_menu' || window_type = 'popup_menu' || window_type = 'menu'";
|
||||
opacity = 0.9;
|
||||
}, {
|
||||
match = "window_type = 'dock' || window_type = 'desktop'";
|
||||
blur-background = false;
|
||||
corner-radius = 0;
|
||||
}, {
|
||||
match = "class_g *= 'i3lock' || _NET_WM_STATE@[1] = '_NET_WM_STATE_FULLSCREEN' || _NET_WM_STATE@[2] = '_NET_WM_STATE_FULLSCREEN' || _NET_WM_STATE@[3] = '_NET_WM_STATE_FULLSCREEN' || _NET_WM_STATE@[4] = '_NET_WM_STATE_FULLSCREEN'";
|
||||
shadow = false;
|
||||
corner-radius = 0;
|
||||
animations = ({
|
||||
triggers = ["open", "show"];
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.1;
|
||||
delay = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
shadow-opacity = "opacity";
|
||||
saved-image-blend = 0;
|
||||
|
||||
# Window type settings
|
||||
#
|
||||
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
|
||||
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
|
||||
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
|
||||
# "tooltip", "notification", "combo", and "dnd".
|
||||
#
|
||||
# Following per window-type options are available: ::
|
||||
#
|
||||
# fade, shadow:::
|
||||
# Controls window-type-specific shadow and fade settings.
|
||||
#
|
||||
# opacity:::
|
||||
# Controls default opacity of the window type.
|
||||
#
|
||||
# focus:::
|
||||
# Controls whether the window of this type is to be always considered focused.
|
||||
# (By default, all window types except "normal" and "dialog" has this on.)
|
||||
#
|
||||
# full-shadow:::
|
||||
# Controls whether shadow is drawn under the parts of the window that you
|
||||
# normally won't be able to see. Useful when the window has parts of it
|
||||
# transparent, and you want shadows in those areas.
|
||||
#
|
||||
# clip-shadow-above:::
|
||||
# Controls whether shadows that would have been drawn above the window should
|
||||
# be clipped. Useful for dock windows that should have no shadow painted on top.
|
||||
#
|
||||
# redir-ignore:::
|
||||
# Controls whether this type of windows should cause screen to become
|
||||
# redirected again after been unredirected. If you have unredir-if-possible
|
||||
# set, and doesn't want certain window to cause unnecessary screen redirection,
|
||||
# you can set this to `true`.
|
||||
#
|
||||
wintypes:
|
||||
},{
|
||||
triggers = ["close", "hide"];
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "0";
|
||||
};
|
||||
blur-opacity = 0;
|
||||
shadow-opacity = "opacity";
|
||||
saved-image-blend = 0;
|
||||
});
|
||||
});
|
||||
|
||||
animations = ({
|
||||
triggers = ["close", "hide"];
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = "0";
|
||||
shadow-opacity = "opacity";
|
||||
offset-x = "(1 - scale-x) / 2 * window-width";
|
||||
offset-y = "(1 - scale-y) / 2 * window-height";
|
||||
scale-x = {
|
||||
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||
duration = 0.15;
|
||||
start = 1;
|
||||
end = 0.9;
|
||||
};
|
||||
scale-y = "scale-x";
|
||||
shadow-scale-x = "scale-x";
|
||||
shadow-scale-y = "scale-y";
|
||||
shadow-offset-x = "offset-x";
|
||||
shadow-offset-y = "offset-y";
|
||||
}, {
|
||||
triggers = ["open", "show"];
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.1;
|
||||
delay = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
shadow-opacity = "opacity";
|
||||
offset-x = "(1 - scale-x) / 2 * window-width";
|
||||
offset-y = "(1 - scale-y) / 2 * window-height";
|
||||
scale-x = {
|
||||
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||
duration = 0.15;
|
||||
start = 0.95;
|
||||
end = 1;
|
||||
};
|
||||
scale-y = "scale-x";
|
||||
shadow-scale-x = "scale-x";
|
||||
shadow-scale-y = "scale-y";
|
||||
shadow-offset-x = "offset-x";
|
||||
shadow-offset-y = "offset-y";
|
||||
},
|
||||
|
||||
# Half Window Size Desktop Switch
|
||||
{
|
||||
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
|
||||
dock = { shadow = false; clip-shadow-above = true; }
|
||||
dnd = { shadow = false; }
|
||||
popup_menu = { opacity = 0.8; }
|
||||
dropdown_menu = { opacity = 0.8; }
|
||||
};
|
||||
triggers = ["workspace-out"];
|
||||
offset-y = {
|
||||
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||
duration = 0.15;
|
||||
start = "0";
|
||||
end = "- window-height / 2";
|
||||
};
|
||||
scale-x = {
|
||||
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||
duration = 0.10;
|
||||
start = "0";
|
||||
end = "- window-height / 2";
|
||||
|
||||
opacity-rule = [
|
||||
"100:class_g = 'St' && focused",
|
||||
"50:class_g = 'St' && !focused",
|
||||
"100:fullscreen",
|
||||
];
|
||||
}
|
||||
shadow-offset-y = "offset-y";
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = "0";
|
||||
shadow-opacity = "opacity";
|
||||
}, {
|
||||
triggers = ["workspace-out-inverse"];
|
||||
offset-y = {
|
||||
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||
duration = 0.15;
|
||||
start = "0";
|
||||
end = "window-height / 2";
|
||||
};
|
||||
shadow-offset-y = "offset-y";
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "window-raw-opacity-before";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = "0";
|
||||
shadow-opacity = "opacity";
|
||||
}, {
|
||||
triggers = ["workspace-in"];
|
||||
offset-y = {
|
||||
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||
duration = 0.15;
|
||||
start = "window-height / 2";
|
||||
end = "0";
|
||||
};
|
||||
shadow-offset-y = "offset-y";
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "0";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.1;
|
||||
delay = 0.15;
|
||||
start = "0";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
shadow-opacity = "opacity";
|
||||
}, {
|
||||
triggers = ["workspace-in-inverse"];
|
||||
offset-y = {
|
||||
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||
duration = 0.15;
|
||||
start = "- window-height / 2";
|
||||
end = "0";
|
||||
};
|
||||
shadow-offset-y = "offset-y";
|
||||
opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.15;
|
||||
start = "0";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
blur-opacity = {
|
||||
curve = "linear";
|
||||
duration = 0.1;
|
||||
delay = 0.15;
|
||||
start = "0";
|
||||
end = "window-raw-opacity";
|
||||
};
|
||||
shadow-opacity = "opacity";
|
||||
},
|
||||
# {
|
||||
# triggers = [ "geometry" ];
|
||||
# crop-width = {
|
||||
# curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||
# duration = 0.5;
|
||||
# start = "window-width-before";
|
||||
# end = "window-width";
|
||||
# };
|
||||
# }
|
||||
|
||||
# Full Opaque Desktop Switch
|
||||
#{
|
||||
# triggers = ["workspace-out"];
|
||||
# offset-y = {
|
||||
# timing = "0.15s cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||
# start = "0";
|
||||
# end = "-window-monitor-height";
|
||||
# };
|
||||
# shadow-offset-y = "offset-y";
|
||||
# opacity = {
|
||||
# timing = "0.2s linear";
|
||||
# start = "window-raw-opacity-before";
|
||||
# end = "window-raw-opacity-before";
|
||||
# };
|
||||
# blur-opacity = "opacity";
|
||||
# shadow-opacity = "opacity";
|
||||
#}, {
|
||||
# triggers = ["workspace-out-inverse"];
|
||||
# offset-y = {
|
||||
# timing = "0.15s cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||
# start = "0";
|
||||
# end = "window-monitor-height";
|
||||
# };
|
||||
# shadow-offset-y = "offset-y";
|
||||
# opacity = {
|
||||
# timing = "0.2s linear";
|
||||
# start = "window-raw-opacity-before";
|
||||
# end = "window-raw-opacity-before";
|
||||
# };
|
||||
# blur-opacity = "opacity";
|
||||
# shadow-opacity = "opacity";
|
||||
#}, {
|
||||
# triggers = ["workspace-in"];
|
||||
# offset-y = {
|
||||
# timing = "0.15s cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||
# start = "window-monitor-height";
|
||||
# end = "0";
|
||||
# };
|
||||
# shadow-offset-y = "offset-y";
|
||||
# opacity = {
|
||||
# timing = "0.2s linear";
|
||||
# start = "window-raw-opacity";
|
||||
# end = "window-raw-opacity";
|
||||
# };
|
||||
# blur-opacity = "opacity";
|
||||
# shadow-opacity = "opacity";
|
||||
#}, {
|
||||
# triggers = ["workspace-in-inverse"];
|
||||
# offset-y = {
|
||||
# timing = "0.15s cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||
# start = "-window-monitor-height";
|
||||
# end = "0";
|
||||
# };
|
||||
# shadow-offset-y = "offset-y";
|
||||
# opacity = {
|
||||
# timing = "0.2s linear";
|
||||
# start = "window-raw-opacity";
|
||||
# end = "window-raw-opacity";
|
||||
# };
|
||||
# blur-opacity = "opacity";
|
||||
# shadow-opacity = "opacity";
|
||||
#}
|
||||
|
||||
)
|
||||
|
|
|
@ -17,18 +17,18 @@
|
|||
;==========================================================
|
||||
|
||||
[colors]
|
||||
background = #282A2E
|
||||
background-alt = #373B41
|
||||
foreground = #C5C8C6
|
||||
primary = #89A989
|
||||
secondary = #478061
|
||||
background = #353F5D
|
||||
background-alt = #414D72
|
||||
foreground = #C8C7D1
|
||||
primary = #FFCC4D
|
||||
secondary = #FF7FA3
|
||||
alert = #A54242
|
||||
disabled = #707880
|
||||
|
||||
[bar/example]
|
||||
width = 100%
|
||||
height = 18pt
|
||||
radius = 7pt
|
||||
radius = 11t
|
||||
|
||||
; dpi = 96
|
||||
|
||||
|
@ -116,12 +116,16 @@ label-unmounted-foreground = ${colors.disabled}
|
|||
[module/pulseaudio]
|
||||
type = internal/pulseaudio
|
||||
|
||||
format-volume = %{F#89A989}<ramp-volume>%{F-} <label-volume>
|
||||
ramp-volume-foreground = ${colors.primary}
|
||||
|
||||
format-volume = <ramp-volume> <label-volume>
|
||||
|
||||
label-volume = %percentage%%
|
||||
|
||||
label-muted = muted
|
||||
|
||||
click-right = ~/.config/rofi/volume/launch.sh
|
||||
|
||||
; Only applies if <ramp-volume> is used
|
||||
ramp-volume-0 =
|
||||
ramp-volume-1 =
|
||||
|
@ -156,15 +160,18 @@ label = %percentage:2%%
|
|||
[network-base]
|
||||
type = internal/network
|
||||
interval = 5
|
||||
format-connected = <label-connected>
|
||||
|
||||
|
||||
format-disconnected = <label-disconnected>
|
||||
label-disconnected = %{F#89A989} %{F#707880} disconnected
|
||||
label-disconnected = disconnected
|
||||
|
||||
[module/wlan]
|
||||
inherit = network-base
|
||||
interface-type = wireless
|
||||
|
||||
format-connected = %{F#89A989}<ramp-signal>%{F-} <label-connected>
|
||||
ramp-signal-foreground = ${colors.primary}
|
||||
|
||||
format-connected = <ramp-signal> <label-connected>
|
||||
|
||||
label-connected = %essid% %local_ip%
|
||||
|
||||
|
@ -178,7 +185,14 @@ ramp-signal-5 =
|
|||
[module/eth]
|
||||
inherit = network-base
|
||||
interface-type = wired
|
||||
label-connected = %{F#89A989} %{F-} %local_ip%
|
||||
|
||||
format-connected = %{} <label-connected>
|
||||
|
||||
format-connected-prefix =
|
||||
format-connected-prefix-foreground = ${colors.primary}
|
||||
|
||||
label-connected = %local_ip%
|
||||
label-connected-foreground = ${colors.foreground}
|
||||
|
||||
[module/date]
|
||||
type = internal/date
|
||||
|
@ -321,52 +335,9 @@ pseudo-transparency = true
|
|||
; vim:ft=dosini
|
||||
;
|
||||
[module/powermenu]
|
||||
type = custom/menu
|
||||
type = custom/text
|
||||
|
||||
expand-right = true
|
||||
content = " "
|
||||
content-foreground = ${colors.urgent}
|
||||
|
||||
format-spacing = 1
|
||||
|
||||
label-open = " "
|
||||
label-open-foreground = ${colors.urgent}
|
||||
label-close =
|
||||
label-close-foreground = ${colors.success}
|
||||
label-separator = |
|
||||
label-separator-foreground = ${colors.foreground}
|
||||
|
||||
;Powermenu
|
||||
menu-0-0 = ""
|
||||
menu-0-0-exec = menu-open-1
|
||||
menu-0-0-foreground = ${colors.urgent}
|
||||
|
||||
menu-0-1 = ""
|
||||
menu-0-1-exec = menu-open-2
|
||||
menu-0-1-foreground = ${colors.urgent}
|
||||
|
||||
menu-0-2 = " "
|
||||
menu-0-2-exec = menu-open-3
|
||||
menu-0-2-foreground = ${colors.warning}
|
||||
|
||||
;Reboot
|
||||
menu-1-0 = "Reboot"
|
||||
menu-1-0-exec = loginctl reboot
|
||||
menu-1-0-foreground = ${colors.urgent}
|
||||
menu-1-1 = "Cancel "
|
||||
menu-1-1-exec = menu-open-0
|
||||
menu-1-1-foreground = ${colors.success}
|
||||
|
||||
;Shutdown
|
||||
menu-2-0 = "Power off"
|
||||
menu-2-0-exec = loginctl poweroff
|
||||
menu-2-0-foreground = ${colors.urgent}
|
||||
menu-2-1 = "Cancel "
|
||||
menu-2-1-exec = menu-open-0
|
||||
menu-2-1-foreground = ${colors.success}
|
||||
|
||||
;Sleep
|
||||
menu-3-0 = "Sleep"
|
||||
menu-3-0-exec = loginctl suspend
|
||||
menu-3-0-foreground = ${colors.urgent}
|
||||
menu-3-1 = "Cancel "
|
||||
menu-3-1-exec = menu-open-0
|
||||
menu-3-1-foreground = ${colors.success}
|
||||
click-left = ~/.config/rofi/power/launch.sh
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
* {
|
||||
selected: #FFCC4D;
|
||||
background: #353F5D;
|
||||
foreground: #C8C7D1;
|
||||
background-alt: #414D72;
|
||||
urgent: #353F5D;
|
||||
active: #FF7FA3;
|
||||
}
|
|
@ -0,0 +1,323 @@
|
|||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Rofi Theme File
|
||||
* Rofi Version: 1.7.3
|
||||
**/
|
||||
|
||||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
modi: "drun,run,filebrowser,ssh,window";
|
||||
show-icons: false;
|
||||
display-drun: " Apps";
|
||||
display-run: " Run";
|
||||
display-filebrowser: " Files";
|
||||
display-window: " Windows";
|
||||
display-ssh: " SSH";
|
||||
drun-display-format: "{name}";
|
||||
window-format: "{w} · {c} · {t}";
|
||||
}
|
||||
|
||||
/*****----- Global Properties -----*****/
|
||||
|
||||
@import "../colors.rasi"
|
||||
|
||||
* {
|
||||
border-colour: var(selected);
|
||||
handle-colour: var(selected);
|
||||
background-colour: var(background);
|
||||
foreground-colour: var(foreground);
|
||||
alternate-background: var(background-alt);
|
||||
normal-background: var(background);
|
||||
normal-foreground: var(foreground);
|
||||
urgent-background: var(urgent);
|
||||
urgent-foreground: var(background);
|
||||
active-background: var(active);
|
||||
active-foreground: var(background);
|
||||
selected-normal-background: var(selected);
|
||||
selected-normal-foreground: var(background);
|
||||
selected-urgent-background: var(active);
|
||||
selected-urgent-foreground: var(background);
|
||||
selected-active-background: var(urgent);
|
||||
selected-active-foreground: var(background);
|
||||
alternate-normal-background: var(background);
|
||||
alternate-normal-foreground: var(foreground);
|
||||
alternate-urgent-background: var(urgent);
|
||||
alternate-urgent-foreground: var(background);
|
||||
alternate-active-background: var(active);
|
||||
alternate-active-foreground: var(background);
|
||||
}
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
/* properties for window widget */
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
width: 800px;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
/* properties for all widgets */
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 35px;
|
||||
border-color: @border-colour;
|
||||
cursor: "default";
|
||||
/* Backgroud Colors */
|
||||
background-color: @background-colour;
|
||||
/* Backgroud Image */
|
||||
//background-image: url("/path/to/image.png", none);
|
||||
/* Simple Linear Gradient */
|
||||
//background-image: linear-gradient(red, orange, pink, purple);
|
||||
/* Directional Linear Gradient */
|
||||
//background-image: linear-gradient(to bottom, pink, yellow, magenta);
|
||||
/* Angle Linear Gradient */
|
||||
//background-image: linear-gradient(45, cyan, purple, indigo);
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 20px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
children: [ "inputbar", "message", "custombox" ];
|
||||
}
|
||||
|
||||
/*****----- A Custom Box -----*****/
|
||||
custombox {
|
||||
spacing: 10px;
|
||||
background-color: @background-colour;
|
||||
text-color: @foreground-colour;
|
||||
orientation: horizontal;
|
||||
children: [ "mode-switcher", "listview" ];
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
inputbar {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 8px 12px;
|
||||
border: 0px solid;
|
||||
border-radius: 50%;
|
||||
border-color: @border-colour;
|
||||
background-color: @alternate-background;
|
||||
text-color: @foreground-colour;
|
||||
children: [ "textbox-prompt-colon", "entry" ];
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
textbox-prompt-colon {
|
||||
enabled: true;
|
||||
padding: 5px 0px;
|
||||
expand: false;
|
||||
str: "";
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
entry {
|
||||
enabled: true;
|
||||
padding: 5px 0px;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
cursor: text;
|
||||
placeholder: "Search...";
|
||||
placeholder-color: inherit;
|
||||
}
|
||||
num-filtered-rows {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
textbox-num-sep {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
str: "/";
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
num-rows {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
case-indicator {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 1;
|
||||
lines: 8;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
scrollbar: true;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 5px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
cursor: "default";
|
||||
}
|
||||
scrollbar {
|
||||
handle-width: 5px ;
|
||||
handle-color: @handle-colour;
|
||||
border-radius: 50%;
|
||||
background-color: @alternate-background;
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 10px;
|
||||
border: 0px solid;
|
||||
border-radius: 10px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
cursor: pointer;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: var(normal-background);
|
||||
text-color: var(normal-foreground);
|
||||
}
|
||||
element normal.urgent {
|
||||
background-color: var(urgent-background);
|
||||
text-color: var(urgent-foreground);
|
||||
}
|
||||
element normal.active {
|
||||
background-color: var(active-background);
|
||||
text-color: var(active-foreground);
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: var(selected-normal-background);
|
||||
text-color: var(selected-normal-foreground);
|
||||
}
|
||||
element selected.urgent {
|
||||
background-color: var(selected-urgent-background);
|
||||
text-color: var(selected-urgent-foreground);
|
||||
}
|
||||
element selected.active {
|
||||
background-color: var(selected-active-background);
|
||||
text-color: var(selected-active-foreground);
|
||||
}
|
||||
element alternate.normal {
|
||||
background-color: var(alternate-normal-background);
|
||||
text-color: var(alternate-normal-foreground);
|
||||
}
|
||||
element alternate.urgent {
|
||||
background-color: var(alternate-urgent-background);
|
||||
text-color: var(alternate-urgent-foreground);
|
||||
}
|
||||
element alternate.active {
|
||||
background-color: var(alternate-active-background);
|
||||
text-color: var(alternate-active-foreground);
|
||||
}
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 24px;
|
||||
cursor: inherit;
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
highlight: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
|
||||
/*****----- Mode Switcher -----*****/
|
||||
mode-switcher{
|
||||
enabled: true;
|
||||
expand: false;
|
||||
orientation: vertical;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 0px 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
}
|
||||
button {
|
||||
padding: 0px 20px 0px 20px;
|
||||
border: 0px solid;
|
||||
border-radius: 50%;
|
||||
border-color: @border-colour;
|
||||
background-color: @alternate-background;
|
||||
text-color: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
cursor: pointer;
|
||||
}
|
||||
button selected {
|
||||
background-color: var(selected-normal-background);
|
||||
text-color: var(selected-normal-foreground);
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
message {
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
}
|
||||
textbox {
|
||||
padding: 12px;
|
||||
border: 0px solid;
|
||||
border-radius: 8px;
|
||||
border-color: @border-colour;
|
||||
background-color: @alternate-background;
|
||||
text-color: @foreground-colour;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
highlight: none;
|
||||
placeholder-color: @foreground-colour;
|
||||
blink: true;
|
||||
markup: true;
|
||||
}
|
||||
error-message {
|
||||
padding: 10px;
|
||||
border: 2px solid;
|
||||
border-radius: 8px;
|
||||
border-color: @border-colour;
|
||||
background-color: @background-colour;
|
||||
text-color: @foreground-colour;
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
rofi -show drun -config ~/.config/rofi/launcher/app_menu.rasi -verbose
|
Binary file not shown.
After Width: | Height: | Size: 55 KiB |
|
@ -0,0 +1,105 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
## Author : Aditya Shakya (adi1090x)
|
||||
## Github : @adi1090x
|
||||
#
|
||||
## Rofi : Power Menu
|
||||
#
|
||||
## Available Styles
|
||||
#
|
||||
## style-1 style-2 style-3 style-4 style-5
|
||||
|
||||
# Current Theme
|
||||
dir="$HOME/.config/rofi/power/power_menu.rasi"
|
||||
|
||||
# CMDs
|
||||
uptime="`uptime -p | sed -e 's/up //g'`"
|
||||
host=`hostname`
|
||||
|
||||
# Options
|
||||
shutdown='⏻'
|
||||
reboot=''
|
||||
lock=''
|
||||
suspend=''
|
||||
logout=''
|
||||
yes=''
|
||||
no=''
|
||||
|
||||
# Rofi CMD
|
||||
rofi_cmd() {
|
||||
rofi -dmenu \
|
||||
-mesg " Uptime: $uptime" \
|
||||
-theme ${dir}
|
||||
}
|
||||
|
||||
# Confirmation CMD
|
||||
confirm_cmd() {
|
||||
rofi -theme-str 'window {location: center; anchor: center; fullscreen: false; width: 240px;}' \
|
||||
-theme-str 'listview {columns: 2; lines: 1;}' \
|
||||
-theme-str 'element-text {horizontal-align: 0.48;}' \
|
||||
-theme-str 'textbox {horizontal-align: 0.5;}' \
|
||||
-dmenu \
|
||||
-p 'Confirmation' \
|
||||
-mesg 'Are you Sure?' \
|
||||
-theme ${dir}
|
||||
}
|
||||
|
||||
# Ask for confirmation
|
||||
confirm_exit() {
|
||||
echo -e "$yes\n$no" | confirm_cmd
|
||||
}
|
||||
|
||||
# Pass variables to rofi dmenu
|
||||
run_rofi() {
|
||||
echo -e "$lock\n$suspend\n$logout\n$reboot\n$shutdown" | rofi_cmd
|
||||
}
|
||||
|
||||
# Execute Command
|
||||
run_cmd() {
|
||||
selected="$(confirm_exit)"
|
||||
if [[ "$selected" == "$yes" ]]; then
|
||||
if [[ $1 == '--shutdown' ]]; then
|
||||
loginctl poweroff
|
||||
elif [[ $1 == '--reboot' ]]; then
|
||||
loginctl reboot
|
||||
elif [[ $1 == '--suspend' ]]; then
|
||||
loginctl suspend
|
||||
elif [[ $1 == '--logout' ]]; then
|
||||
if [[ "$DESKTOP_SESSION" == 'openbox' ]]; then
|
||||
openbox --exit
|
||||
elif [[ "$DESKTOP_SESSION" == 'bspwm' ]]; then
|
||||
bspc quit
|
||||
elif [[ "$DESKTOP_SESSION" == 'i3' ]]; then
|
||||
i3-msg exit
|
||||
elif [[ "$DESKTOP_SESSION" == 'plasma' ]]; then
|
||||
qdbus org.kde.ksmserver /KSMServer logout 0 0 0
|
||||
fi
|
||||
fi
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
# Actions
|
||||
chosen="$(run_rofi)"
|
||||
case ${chosen} in
|
||||
$shutdown)
|
||||
run_cmd --shutdown
|
||||
;;
|
||||
$reboot)
|
||||
run_cmd --reboot
|
||||
;;
|
||||
$lock)
|
||||
if [[ -x '/usr/bin/betterlockscreen' ]]; then
|
||||
betterlockscreen -l
|
||||
elif [[ -x '/usr/bin/i3lock' ]]; then
|
||||
i3lock
|
||||
fi
|
||||
;;
|
||||
$suspend)
|
||||
run_cmd --suspend
|
||||
;;
|
||||
$logout)
|
||||
run_cmd --logout
|
||||
;;
|
||||
esac
|
|
@ -0,0 +1,138 @@
|
|||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Rofi Theme File
|
||||
* Rofi Version: 1.7.3
|
||||
**/
|
||||
|
||||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
show-icons: false;
|
||||
}
|
||||
|
||||
/*
|
||||
USE_BUTTONS=YES
|
||||
*/
|
||||
|
||||
@import "../colors.rasi"
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
width: 550px;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 20px;
|
||||
border-color: @selected;
|
||||
cursor: "default";
|
||||
background-color: @background;
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 0px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
children: [ "inputbar", "listview", "message" ];
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
inputbar {
|
||||
enabled: true;
|
||||
spacing: 0px;
|
||||
padding: 100px 80px;
|
||||
background-color: transparent;
|
||||
background-image: url("/home/doryan/.config/rofi/power/bg.png", width);
|
||||
children: [ "textbox-prompt-colon", "dummy","prompt"];
|
||||
}
|
||||
|
||||
dummy {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
textbox-prompt-colon {
|
||||
enabled: false;
|
||||
expand: false;
|
||||
str: " System";
|
||||
padding: 12px;
|
||||
border-radius: 100%;
|
||||
background-color: @selected;
|
||||
text-color: @foreground;
|
||||
}
|
||||
prompt {
|
||||
enabled: false;
|
||||
padding: 12px;
|
||||
border-radius: 100%;
|
||||
background-color: @active;
|
||||
text-color: @foreground;
|
||||
}
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 5;
|
||||
lines: 1;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
scrollbar: false;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 15px;
|
||||
margin: 15px;
|
||||
background-color: transparent;
|
||||
cursor: "default";
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
padding: 23px 10px;
|
||||
border-radius: 100%;
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
cursor: pointer;
|
||||
}
|
||||
element-text {
|
||||
font: "FiraCode Nerd Font Propo 28";
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.5;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: var(selected);
|
||||
text-color: var(background);
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
message {
|
||||
enabled: true;
|
||||
margin: 0px 15px 15px 15px;
|
||||
padding: 15px;
|
||||
border-radius: 100%;
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
}
|
||||
textbox {
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.48;
|
||||
}
|
|
@ -0,0 +1,54 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
theme_path="$HOME/.config/rofi/volume/volume_menu.rasi"
|
||||
|
||||
volume=''
|
||||
microphone=''
|
||||
pavucontrol=''
|
||||
|
||||
rofi_cmd() {
|
||||
rofi -theme "$theme_path" -dmenu -markup-rows
|
||||
}
|
||||
|
||||
# Microphone Info
|
||||
amixer get Capture | grep '\[on\]' &>/dev/null
|
||||
if [[ "$?" == 0 ]]; then
|
||||
microphone=''
|
||||
else
|
||||
microphone=''
|
||||
fi
|
||||
|
||||
# Microphone Info
|
||||
amixer get Master | grep '\[on\]' &>/dev/null
|
||||
if [[ "$?" == 0 ]]; then
|
||||
volume=''
|
||||
else
|
||||
volume=''
|
||||
fi
|
||||
|
||||
run_cmd() {
|
||||
if [[ "$1" == '--opt1' ]]; then
|
||||
amixer set Master toggle
|
||||
elif [[ "$1" == '--opt2' ]]; then
|
||||
amixer set Capture toggle
|
||||
elif [[ "$1" == '--opt3' ]]; then
|
||||
exec pavucontrol
|
||||
fi
|
||||
}
|
||||
|
||||
run() {
|
||||
echo -e "$volume\n$microphone\n$pavucontrol" | rofi_cmd
|
||||
}
|
||||
|
||||
chosen="$(run)"
|
||||
case ${chosen} in
|
||||
$volume)
|
||||
run_cmd --opt1
|
||||
;;
|
||||
$microphone)
|
||||
run_cmd --opt2
|
||||
;;
|
||||
$pavucontrol)
|
||||
run_cmd --opt3
|
||||
;;
|
||||
esac
|
|
@ -0,0 +1,83 @@
|
|||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
show-icons: false;
|
||||
}
|
||||
|
||||
/*
|
||||
USE_BUTTONS=YES
|
||||
*/
|
||||
|
||||
@import "../colors.rasi"
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
transparency: "real";
|
||||
location: east;
|
||||
anchor: east;
|
||||
fullscreen: false;
|
||||
width: 80px;
|
||||
x-offset: -20px;
|
||||
y-offset: 0px;
|
||||
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 100%;
|
||||
border-color: @selected;
|
||||
cursor: "default";
|
||||
background-color: @background;
|
||||
}
|
||||
|
||||
mainbox {
|
||||
background-color: transparent;
|
||||
children: [ "listview" ];
|
||||
}
|
||||
|
||||
inputbar {
|
||||
enable: true;
|
||||
background-color: transparent;
|
||||
children: [ "textbox-prompt-colon", "dummy", "prompt" ];
|
||||
}
|
||||
|
||||
promt {
|
||||
enable: false;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
textbox-prompt-colon {
|
||||
enable: false;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
dummy {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
listview {
|
||||
columns: 1;
|
||||
lines: 3;
|
||||
background-color: transparent;
|
||||
spacing: 10px;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
element {
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
border-radius: 100%;
|
||||
cursor: pointer;
|
||||
padding: 15px 0;
|
||||
}
|
||||
|
||||
element-text {
|
||||
font: "FiraCode Nerd Font Propo 18";
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.5;
|
||||
}
|
||||
|
||||
element selected.normal {
|
||||
background-color: @selected;
|
||||
text-color: @background;
|
||||
}
|
|
@ -10,10 +10,9 @@ Print
|
|||
# terminal emulator
|
||||
super + Return
|
||||
tabbed -r 2 st -w ''
|
||||
# program launcher
|
||||
# program launcher
|
||||
super + d
|
||||
rofi -show drun -
|
||||
|
||||
~/.config/rofi/launcher/launch.sh
|
||||
|
||||
# make sxhkd reload its configuration files:
|
||||
super + Escape
|
||||
|
|
|
@ -41,3 +41,7 @@ setup {
|
|||
-- Available values: ui.Border.PLAIN, ui.Border.ROUNDED
|
||||
type = ui.Border.ROUNDED,
|
||||
}
|
||||
|
||||
require("archivemount"):setup()
|
||||
require("chmod")
|
||||
require("starship").setup()
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
[[manager.prepend_keymap]]
|
||||
on = "<C-n>"
|
||||
run = '''
|
||||
shell 'dragon -x -i -T "$1"' --confirm
|
||||
'''
|
||||
|
||||
[[manager.prepend_keymap]]
|
||||
on = "y"
|
||||
run = [ '''
|
||||
shell 'echo "$@" | xclip -i -selection clipboard -t text/uri-list' --confirm
|
||||
''', "yank" ]
|
||||
|
||||
[[manager.prepend_keymap]]
|
||||
on = [ "m", "a" ]
|
||||
run = "plugin archivemount --args=mount"
|
||||
desc = "Mount selected archive"
|
||||
|
||||
[[manager.prepend_keymap]]
|
||||
on = [ "m", "u" ]
|
||||
run = "plugin archivemount --args=unmount"
|
||||
desc = "Unmount and save changes to original archive"
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 354a4d6df9df6187f811c9e24598351e3180e195
|
|
@ -0,0 +1,39 @@
|
|||
local selected_or_hovered = ya.sync(function()
|
||||
local tab, paths = cx.active, {}
|
||||
for _, u in pairs(tab.selected) do
|
||||
paths[#paths + 1] = tostring(u)
|
||||
end
|
||||
if #paths == 0 and tab.current.hovered then
|
||||
paths[1] = tostring(tab.current.hovered.url)
|
||||
end
|
||||
return paths
|
||||
end)
|
||||
|
||||
return {
|
||||
entry = function()
|
||||
ya.manager_emit("escape", { visual = true })
|
||||
|
||||
local urls = selected_or_hovered()
|
||||
if #urls == 0 then
|
||||
return ya.notify { title = "Chmod", content = "No file selected", level = "warn", timeout = 5 }
|
||||
end
|
||||
|
||||
local value, event = ya.input {
|
||||
title = "Chmod:",
|
||||
position = { "top-center", y = 3, w = 40 },
|
||||
}
|
||||
if event ~= 1 then
|
||||
return
|
||||
end
|
||||
|
||||
local status, err = Command("chmod"):arg(value):args(urls):spawn():wait()
|
||||
if not status or not status.success then
|
||||
ya.notify {
|
||||
title = "Chmod",
|
||||
content = string.format("Chmod with selected files failed, exit code %s", status and status.code or err),
|
||||
level = "error",
|
||||
timeout = 5,
|
||||
}
|
||||
end
|
||||
end,
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 20d5a4d4544124bade559b31d51ad41561dad92b
|
|
@ -2,5 +2,4 @@
|
|||
show_hidden = true
|
||||
|
||||
[preview]
|
||||
image_uality = 90
|
||||
|
||||
image_quality = 70
|
||||
|
|
Loading…
Reference in New Issue