@ -1,3 +1,3 @@ |
|||||
# dotfiles |
 |
||||
|
 |
||||
|
|
||||
Dotfiles for i3-wm, zsh, polybar, neomutt etc. |
|
||||
@ -0,0 +1,10 @@ |
|||||
|
|
||||
|
font: |
||||
|
normal: |
||||
|
family: Envy Code R |
||||
|
size: 8.0 |
||||
|
|
||||
|
window: |
||||
|
padding: |
||||
|
x: 18 |
||||
|
y: 14 |
||||
@ -0,0 +1,326 @@ |
|||||
|
[global] |
||||
|
### Display ### |
||||
|
|
||||
|
# 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 window manager that exports the |
||||
|
# _NET_ACTIVE_WINDOW property. |
||||
|
# This should be the case for almost all modern window managers. |
||||
|
# |
||||
|
# If this option is set to mouse or keyboard, the monitor option |
||||
|
# will be ignored. |
||||
|
follow = mouse |
||||
|
|
||||
|
# 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 respectively. |
||||
|
# 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 = "400x200-30+20" |
||||
|
|
||||
|
# Show how many messages are currently hidden (because of geometry). |
||||
|
indicate_hidden = yes |
||||
|
|
||||
|
# Shrink window if it's smaller than the width. Will be ignored if |
||||
|
# width is 0. |
||||
|
shrink = no |
||||
|
|
||||
|
# The transparency of the window. Range: [0; 100]. |
||||
|
# This option will only work if a compositing window manager is |
||||
|
# present (e.g. xcompmgr, compiz, etc.). |
||||
|
transparency = 0 |
||||
|
|
||||
|
# The height of the entire notification. If the height is smaller |
||||
|
# than the font height and padding combined, it will be raised |
||||
|
# to the font height and padding. |
||||
|
notification_height = 60 |
||||
|
|
||||
|
# Draw a line of "separator_height" pixel height between two |
||||
|
# notifications. |
||||
|
# Set to 0 to disable. |
||||
|
separator_height = 2 |
||||
|
|
||||
|
# Padding between text and separator. |
||||
|
padding = 8 |
||||
|
|
||||
|
# Horizontal padding. |
||||
|
horizontal_padding = 8 |
||||
|
|
||||
|
# Defines width in pixels of frame around the notification window. |
||||
|
# Set to 0 to disable. |
||||
|
frame_width = 3 |
||||
|
|
||||
|
# Defines color of the frame around the notification window. |
||||
|
frame_color = "#000000" |
||||
|
|
||||
|
# 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 = frame |
||||
|
|
||||
|
# Sort messages by urgency. |
||||
|
sort = yes |
||||
|
|
||||
|
# 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. |
||||
|
# Transient notifications ignore this setting. |
||||
|
idle_threshold = 120 |
||||
|
|
||||
|
### Text ### |
||||
|
|
||||
|
font = Envy Code R 14 |
||||
|
|
||||
|
# The spacing between lines. If the height is smaller than the |
||||
|
# font height, it will get raised to the font height. |
||||
|
line_height = 0 |
||||
|
|
||||
|
# Possible values are: |
||||
|
# full: Allow a small subset of html markup in notifications: |
||||
|
# <b>bold</b> |
||||
|
# <i>italic</i> |
||||
|
# <s>strikethrough</s> |
||||
|
# <u>underline</u> |
||||
|
# |
||||
|
# For a complete reference see |
||||
|
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>. |
||||
|
# |
||||
|
# strip: This setting is provided for compatibility with some broken |
||||
|
# clients that send markup even though it's not enabled on the |
||||
|
# server. Dunst will try to strip the markup but the parsing is |
||||
|
# simplistic so using this option outside of matching rules for |
||||
|
# specific applications *IS GREATLY DISCOURAGED*. |
||||
|
# |
||||
|
# no: Disable markup parsing, incoming notifications will be treated as |
||||
|
# plain text. Dunst will not advertise that it has the body-markup |
||||
|
# capability if this is set as a global setting. |
||||
|
# |
||||
|
# It's important to note that markup inside the format option will be parsed |
||||
|
# regardless of what this is set to. |
||||
|
markup = full |
||||
|
|
||||
|
# 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 |
||||
|
# %n progress value if set without any extra characters |
||||
|
# %% Literal % |
||||
|
# Markup is allowed |
||||
|
format = "<b>%s</b>\n%b" |
||||
|
|
||||
|
# Alignment of message text. |
||||
|
# Possible values are "left", "center" and "right". |
||||
|
alignment = left |
||||
|
|
||||
|
# 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 = yes |
||||
|
|
||||
|
# When word_wrap is set to no, specify where to ellipsize long lines. |
||||
|
# Possible values are "start", "middle" and "end". |
||||
|
ellipsize = middle |
||||
|
|
||||
|
# Ignore newlines '\n' in notifications. |
||||
|
ignore_newline = no |
||||
|
|
||||
|
# Merge multiple notifications with the same content |
||||
|
stack_duplicates = true |
||||
|
|
||||
|
# Hide the count of merged notifications with the same content |
||||
|
hide_duplicate_count = false |
||||
|
|
||||
|
# Display indicators for URLs (U) and actions (A). |
||||
|
show_indicators = yes |
||||
|
|
||||
|
### Icons ### |
||||
|
|
||||
|
# Align icons left/right/off |
||||
|
icon_position = left |
||||
|
|
||||
|
# Scale larger icons down to this size, set to 0 to disable |
||||
|
max_icon_size = 32 |
||||
|
|
||||
|
# Paths to default icons. |
||||
|
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/ |
||||
|
|
||||
|
### History ### |
||||
|
|
||||
|
# 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 |
||||
|
|
||||
|
### Misc/Advanced ### |
||||
|
|
||||
|
# dmenu path. |
||||
|
dmenu = /usr/bin/dmenu -p dunst: |
||||
|
|
||||
|
# Browser for opening urls in context menu. |
||||
|
browser = /usr/bin/firefox -new-tab |
||||
|
|
||||
|
# Always run rule-defined scripts, even if the notification is suppressed |
||||
|
always_run_script = true |
||||
|
|
||||
|
# Define the title of the windows spawned by dunst |
||||
|
title = Dunst |
||||
|
|
||||
|
# Define the class of the windows spawned by dunst |
||||
|
class = Dunst |
||||
|
|
||||
|
# Print a notification on startup. |
||||
|
# This is mainly for error detection, since dbus (re-)starts dunst |
||||
|
# automatically after a crash. |
||||
|
startup_notification = false |
||||
|
|
||||
|
### Legacy |
||||
|
|
||||
|
# Use the Xinerama extension instead of RandR for multi-monitor support. |
||||
|
# This setting is provided for compatibility with older nVidia drivers that |
||||
|
# do not support RandR and using it on systems that support RandR is highly |
||||
|
# discouraged. |
||||
|
# |
||||
|
# By enabling this setting dunst will not be able to detect when a monitor |
||||
|
# is connected or disconnected which might break follow mode if the screen |
||||
|
# layout changes. |
||||
|
force_xinerama = false |
||||
|
|
||||
|
# Experimental features that may or may not work correctly. Do not expect them |
||||
|
# to have a consistent behaviour across releases. |
||||
|
[experimental] |
||||
|
# Calculate the dpi to use on a per-monitor basis. |
||||
|
# If this setting is enabled the Xft.dpi value will be ignored and instead |
||||
|
# dunst will attempt to calculate an appropriate dpi value for each monitor |
||||
|
# using the resolution and physical size. This might be useful in setups |
||||
|
# where there are multiple screens with very different dpi values. |
||||
|
per_monitor_dpi = false |
||||
|
|
||||
|
[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 = ctrl+space |
||||
|
|
||||
|
# Close all notifications. |
||||
|
close_all = ctrl+shift+space |
||||
|
|
||||
|
# Redisplay last message(s). |
||||
|
# On the US keyboard layout "grave" is normally above TAB and left |
||||
|
# of "1". Make sure this key actually exists on your keyboard layout, |
||||
|
# e.g. check output of 'xmodmap -pke' |
||||
|
history = ctrl+grave |
||||
|
|
||||
|
# Context menu. |
||||
|
context = ctrl+shift+period |
||||
|
|
||||
|
[urgency_low] |
||||
|
# IMPORTANT: colors have to be defined in quotation marks. |
||||
|
# Otherwise the "#" and following would be interpreted as a comment. |
||||
|
background = "#000000" |
||||
|
foreground = "#888888" |
||||
|
timeout = 10 |
||||
|
# Icon for notifications with low urgency, uncomment to enable |
||||
|
#icon = /path/to/icon |
||||
|
|
||||
|
[urgency_normal] |
||||
|
background = "#000000" |
||||
|
foreground = "#ffffff" |
||||
|
timeout = 10 |
||||
|
# Icon for notifications with normal urgency, uncomment to enable |
||||
|
#icon = /path/to/icon |
||||
|
|
||||
|
[urgency_critical] |
||||
|
background = "#900000" |
||||
|
foreground = "#ffffff" |
||||
|
frame_color = "#ff0000" |
||||
|
timeout = 0 |
||||
|
# Icon for notifications with critical urgency, uncomment to enable |
||||
|
#icon = /path/to/icon |
||||
|
|
||||
|
# 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 = "" |
||||
|
|
||||
|
#[history-ignore] |
||||
|
# # This notification will not be saved in history |
||||
|
# summary = "foobar" |
||||
|
# history_ignore = yes |
||||
|
|
||||
|
#[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 |
||||
|
# |
||||
|
# vim: ft=cfg |
||||
@ -0,0 +1,257 @@ |
|||||
|
# This file has been auto-generated by i3-config-wizard(1). |
||||
|
# It will not be overwritten, so edit it as you like. |
||||
|
# |
||||
|
# Should you change your keyboard layout some time, delete |
||||
|
# this file and re-run i3-config-wizard(1). |
||||
|
# |
||||
|
|
||||
|
# i3 config file (v4) |
||||
|
# |
||||
|
# Please see https://i3wm.org/docs/userguide.html for a complete reference! |
||||
|
|
||||
|
set $mod Mod4 |
||||
|
|
||||
|
# Font for window titles. Will also be used by the bar unless a different font |
||||
|
# is used in the bar {} block below. |
||||
|
#font pango:Iosevka Fixed Medium 0 |
||||
|
|
||||
|
# This font is widely installed, provides lots of unicode glyphs, right-to-left |
||||
|
# text rendering and scalability on retina/hidpi displays (thanks to pango). |
||||
|
font pango: Envy Code R 10 |
||||
|
|
||||
|
# The combination of xss-lock, nm-applet and pactl is a popular choice, so |
||||
|
# they are included here as an example. Modify as you see fit. |
||||
|
|
||||
|
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the |
||||
|
# screen before suspend. Use loginctl lock-session to lock your screen. |
||||
|
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork |
||||
|
|
||||
|
# NetworkManager is the most popular way to manage wireless networks on Linux, |
||||
|
# and nm-applet is a desktop environment-independent system tray GUI for it. |
||||
|
#exec --no-startup-id nm-applet |
||||
|
|
||||
|
# Use pactl to adjust volume in PulseAudio. |
||||
|
set $refresh_i3status killall -SIGUSR1 i3status |
||||
|
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status |
||||
|
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status |
||||
|
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status |
||||
|
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status |
||||
|
|
||||
|
#multimedia keys |
||||
|
bindsym XF86AudioPlay exec playerctl play-pause |
||||
|
bindsym XF86AudioNext exec playerctl next |
||||
|
bindsym XF86AudioPrev exec playerctl previous |
||||
|
# Use Mouse+$mod to drag floating windows to their wanted position |
||||
|
floating_modifier $mod |
||||
|
|
||||
|
# start a terminal |
||||
|
bindsym $mod+Return exec --no-startup-id alacritty |
||||
|
bindsym $mod+Shift+Return exec --no-startup-id st |
||||
|
|
||||
|
# kill focused window |
||||
|
bindsym $mod+Shift+q kill |
||||
|
|
||||
|
# start dmenu (a program launcher) |
||||
|
bindsym $mod+d exec rofi -show drun -theme ~/.config/rofi/menu.rasi |
||||
|
# There also is the (new) i3-dmenu-desktop which only displays applications |
||||
|
# shipping a .desktop file. It is a wrapper around dmenu, so you need that |
||||
|
# installed. |
||||
|
# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop |
||||
|
|
||||
|
# change focus |
||||
|
bindsym $mod+j focus left |
||||
|
bindsym $mod+k focus down |
||||
|
bindsym $mod+l focus up |
||||
|
bindsym $mod+semicolon focus right |
||||
|
|
||||
|
# alternatively, you can use the cursor keys: |
||||
|
bindsym $mod+Left focus left |
||||
|
bindsym $mod+Down focus down |
||||
|
bindsym $mod+Up focus up |
||||
|
bindsym $mod+Right focus right |
||||
|
|
||||
|
# move focused window |
||||
|
bindsym $mod+Shift+j move left |
||||
|
bindsym $mod+Shift+k move down |
||||
|
bindsym $mod+Shift+l move up |
||||
|
bindsym $mod+Shift+semicolon move right |
||||
|
|
||||
|
# alternatively, you can use the cursor keys: |
||||
|
bindsym $mod+Shift+Left move left |
||||
|
bindsym $mod+Shift+Down move down |
||||
|
bindsym $mod+Shift+Up move up |
||||
|
bindsym $mod+Shift+Right move right |
||||
|
|
||||
|
# split in horizontal orientation |
||||
|
bindsym $mod+h split h |
||||
|
|
||||
|
# split in vertical orientation |
||||
|
bindsym $mod+v split v |
||||
|
|
||||
|
# enter fullscreen mode for the focused container |
||||
|
bindsym $mod+f fullscreen toggle |
||||
|
|
||||
|
# window borders |
||||
|
default_border none |
||||
|
#border_radius 4 |
||||
|
|
||||
|
# change container layout (stacked, tabbed, toggle split) |
||||
|
bindsym $mod+s layout stacking |
||||
|
bindsym $mod+w layout tabbed |
||||
|
bindsym $mod+e layout toggle split |
||||
|
|
||||
|
# toggle tiling / floating |
||||
|
bindsym $mod+Shift+space floating toggle |
||||
|
|
||||
|
# change focus between tiling / floating windows |
||||
|
bindsym $mod+space focus mode_toggle |
||||
|
|
||||
|
# focus the parent container |
||||
|
bindsym $mod+a focus parent |
||||
|
|
||||
|
# focus the child container |
||||
|
#bindsym $mod+d focus child |
||||
|
|
||||
|
# Define names for default workspaces for which we configure key bindings later on. |
||||
|
# We use variables to avoid repeating the names in multiple places. |
||||
|
set $ws1 "1: " |
||||
|
set $ws2 "2: " |
||||
|
set $ws3 "3: " |
||||
|
set $ws4 "4:嗢 " |
||||
|
set $ws5 "5: " |
||||
|
set $ws6 "6: " |
||||
|
set $ws7 "7: " |
||||
|
set $ws8 "8" |
||||
|
set $ws9 "9" |
||||
|
set $ws10 "10: " |
||||
|
|
||||
|
# switch to workspace |
||||
|
bindsym $mod+1 workspace number $ws1 |
||||
|
bindsym $mod+2 workspace number $ws2 |
||||
|
bindsym $mod+3 workspace number $ws3 |
||||
|
bindsym $mod+4 workspace number $ws4 |
||||
|
bindsym $mod+5 workspace number $ws5 |
||||
|
bindsym $mod+6 workspace number $ws6 |
||||
|
bindsym $mod+7 workspace number $ws7 |
||||
|
bindsym $mod+8 workspace number $ws8 |
||||
|
bindsym $mod+9 workspace number $ws9 |
||||
|
bindsym $mod+0 workspace number $ws10 |
||||
|
|
||||
|
# move focused container to workspace |
||||
|
bindsym $mod+Shift+1 move container to workspace number $ws1 |
||||
|
bindsym $mod+Shift+2 move container to workspace number $ws2 |
||||
|
bindsym $mod+Shift+3 move container to workspace number $ws3 |
||||
|
bindsym $mod+Shift+4 move container to workspace number $ws4 |
||||
|
bindsym $mod+Shift+5 move container to workspace number $ws5 |
||||
|
bindsym $mod+Shift+6 move container to workspace number $ws6 |
||||
|
bindsym $mod+Shift+7 move container to workspace number $ws7 |
||||
|
bindsym $mod+Shift+8 move container to workspace number $ws8 |
||||
|
bindsym $mod+Shift+9 move container to workspace number $ws9 |
||||
|
bindsym $mod+Shift+0 move container to workspace number $ws10 |
||||
|
|
||||
|
#assign |
||||
|
assign [class="Firefox"] $ws2 |
||||
|
assign [class="TelegramDesktop"] $ws9 |
||||
|
assign [class="Element"] $ws7 |
||||
|
assign [class="tutanota-desktop"] $ws8 |
||||
|
assign [class="qBittorrent"] $ws10 |
||||
|
assign [class="vlc"] $ws4 |
||||
|
assign [class="thunderbird"] $ws3 |
||||
|
assign [class="Padloc"] $ws5 |
||||
|
#assign [class="Nextcloud"] $ws6 |
||||
|
|
||||
|
#back and forth |
||||
|
bindsym $mod+b workspace back_and_forth |
||||
|
|
||||
|
#sticky windows |
||||
|
bindsym $mod+Shift+s sticky toggle |
||||
|
|
||||
|
# reload the configuration file |
||||
|
bindsym $mod+Shift+c reload |
||||
|
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) |
||||
|
bindsym $mod+Shift+r restart |
||||
|
# exit i3 (logs you out of your X session) |
||||
|
bindsym $mod+Shift+e exec ~/.config/i3/logout.sh |
||||
|
|
||||
|
# resize window (you can also use the mouse for that) |
||||
|
mode "resize" { |
||||
|
# These bindings trigger as soon as you enter the resize mode |
||||
|
|
||||
|
# Pressing left will shrink the window’s width. |
||||
|
# Pressing right will grow the window’s width. |
||||
|
# Pressing up will shrink the window’s height. |
||||
|
# Pressing down will grow the window’s height. |
||||
|
bindsym j resize shrink width 10 px or 10 ppt |
||||
|
bindsym k resize grow height 10 px or 10 ppt |
||||
|
bindsym l resize shrink height 10 px or 10 ppt |
||||
|
bindsym semicolon resize grow width 10 px or 10 ppt |
||||
|
|
||||
|
# same bindings, but for the arrow keys |
||||
|
bindsym Left resize shrink width 10 px or 10 ppt |
||||
|
bindsym Down resize grow height 10 px or 10 ppt |
||||
|
bindsym Up resize shrink height 10 px or 10 ppt |
||||
|
bindsym Right resize grow width 10 px or 10 ppt |
||||
|
|
||||
|
# back to normal: Enter or Escape or $mod+r |
||||
|
bindsym Return mode "default" |
||||
|
bindsym Escape mode "default" |
||||
|
bindsym $mod+r mode "default" |
||||
|
} |
||||
|
|
||||
|
bindsym $mod+r mode "resize" |
||||
|
|
||||
|
bar { |
||||
|
status_command LC_ALL=C i3status -c ~/.config/i3/i3status/config |
||||
|
font pango:Envy Code R 10 |
||||
|
position top |
||||
|
colors { |
||||
|
background #000000 |
||||
|
# statusline #00ff00 |
||||
|
separator #ffb25a |
||||
|
active_workspace #4c7899 #4c7899 #ffffff |
||||
|
focused_workspace #ffb25a #ffb25a #000000 |
||||
|
} |
||||
|
} |
||||
|
##-c ~/.config/i3/i3status/config |
||||
|
bindsym XF86MonBrightnessUp exec xbacklight -inc 5 |
||||
|
bindsym XF86MonBrightnessDown exec xbacklight -dec 5 |
||||
|
|
||||
|
#exec_always --no-startup-id wal -i ~/Downloads/d1.png |
||||
|
exec_always --no-startup-id ~/.config/i3/low_bat.sh |
||||
|
exec_always --no-startup-id picom --config ~/.config/picom.conf |
||||
|
exec_always --no-startup-id feh --bg-center ~/Downloads/d1.png |
||||
|
#exec_always --no-startup-id xautolock -locker ~/.config/i3/lock.sh -time 3 |
||||
|
#exec_always --no-startup-id ~/.config/lowBat.sh |
||||
|
exec_always --no-startup-id setxkbmap -option caps:swapescape |
||||
|
bindsym $mod+Shift+x exec --no-startup-id ~/.config/i3/lock/lock.sh |
||||
|
|
||||
|
#client.focused #808080 #808080 #ffffff #808080 #0000ff |
||||
|
|
||||
|
#bindsym $mod+Shift+p exec --no-startup-id ~/Downloads/lw.AppImage |
||||
|
bindsym $mod+Shift+t exec --no-startup-id ~/Downloads/tutanota.AppImage --no-sandbox |
||||
|
bindsym $mod+Shift+g exec --no-startup-id signal-desktop --no-sandbox |
||||
|
bindsym $mod+Shift+u exec --no-startup-id ~/Downloads/Padloc.AppImage --no-sandbox |
||||
|
bindsym $mod+Shift+n exec --no-startup-id ~/Downloads/nextcloud.AppImage |
||||
|
|
||||
|
bindsym $mod+Shift+o exec --no-startup-id scrot |
||||
|
bindsym $mod+Shift+i exec --no-startup-id ~/.config/i3/touchpad_toggle.sh |
||||
|
bindsym $mod+Shift+m exec ( st -e cava & st -e cmus ); workspace 10; layout splitv; |
||||
|
bindsym $mod+Shift+f exec --no-startup-id st -e nnn |
||||
|
|
||||
|
### i3-gaps stuff ### |
||||
|
|
||||
|
# Necessary for i3-gaps to work properly (pixel can be any value) |
||||
|
for_window [class="^.*"] border pixel 0 |
||||
|
|
||||
|
# Smart Gaps |
||||
|
smart_gaps on |
||||
|
|
||||
|
# Smart Borders |
||||
|
smart_borders on |
||||
|
border_radius 5 |
||||
|
|
||||
|
# Set inner/outer gaps |
||||
|
gaps inner 10 |
||||
|
gaps outer 6 |
||||
|
|
||||
|
client.focused #ffffcc #000000 #ffffcc #2e9ef4 #ffffcE |
||||
|
After Width: | Height: | Size: 9.7 KiB |
@ -0,0 +1,11 @@ |
|||||
|
#!/usr/bin/env bash |
||||
|
|
||||
|
icon="$HOME/.config/i3/lock/icon.png" |
||||
|
tmpbg='/tmp/screen.png' |
||||
|
|
||||
|
(( $# )) && { icon=$1; } |
||||
|
|
||||
|
scrot "$tmpbg" |
||||
|
convert "$tmpbg" -scale 10% -scale 1000% "$tmpbg" |
||||
|
convert "$tmpbg" "$icon" -gravity center -composite -matte "$tmpbg" |
||||
|
i3lock -u -i "$tmpbg" |
||||
@ -0,0 +1,28 @@ |
|||||
|
#!/usr/bin/env bash |
||||
|
o0="" |
||||
|
o1="" |
||||
|
o2="" |
||||
|
o3="" |
||||
|
o4="" |
||||
|
a1="1" |
||||
|
a2="0" |
||||
|
option="$o4\n$o1\n$o3\n$o2\n$o0" |
||||
|
answer="$a2\n$a1" |
||||
|
chosen="$(echo -e "$option" | rofi -theme ~/.config/rofi/powermenu/powermenu.rasi -lines 5 -dmenu)" |
||||
|
if [ -z "$chosen" ]; then |
||||
|
exit |
||||
|
else |
||||
|
sure="$(echo -e "$answer" | rofi -theme ~/.config/rofi/powermenu/powermenu-confirm.rasi -lines 2 -dmenu)" |
||||
|
case $chosen$sure in |
||||
|
$o0$a1) |
||||
|
i3-msg exit;; |
||||
|
$o1$a1) |
||||
|
systemctl suspend;; |
||||
|
$o2$a1) |
||||
|
reboot;; |
||||
|
$o3$a1) |
||||
|
poweroff;; |
||||
|
$o4$a1) |
||||
|
exec bash ~/.config/i3/lock/lock.sh;; |
||||
|
esac |
||||
|
fi |
||||
@ -0,0 +1,13 @@ |
|||||
|
#!/bin/bash |
||||
|
|
||||
|
bat_percent=$(acpi -b| grep -P -o '[0-9]+(?=%)') |
||||
|
bat_status=$(acpi -b| grep -c 'Charging') |
||||
|
bat_full=$(acpi -b | grep -c "Full") |
||||
|
|
||||
|
if [ $bat_status -eq 0 -a $bat_percent -le 15 ]; then |
||||
|
exec /usr/bin/notify-send -u critical -t 10000 "Low Battery, Please Charge" |
||||
|
fi |
||||
|
if [ $bat_full -eq 1 -a $bat_percent -eq 100 ]; then |
||||
|
exec notify-send "Full Charge" |
||||
|
fi |
||||
|
|
||||
@ -0,0 +1,59 @@ |
|||||
|
general { |
||||
|
colors = true |
||||
|
interval = 5 |
||||
|
color_good = "#2AA198" |
||||
|
color_bad = "#586E75" |
||||
|
color_degraded = "#DC322F" |
||||
|
output_format = i3bar |
||||
|
} |
||||
|
|
||||
|
order += "disk /" |
||||
|
order += "cpu_usage" |
||||
|
order += "wireless wlp2s0" |
||||
|
order += "battery all" |
||||
|
order += "volume master" |
||||
|
order += "tztime local" |
||||
|
order += "time" |
||||
|
|
||||
|
disk "/" { |
||||
|
format = " %free " |
||||
|
} |
||||
|
|
||||
|
cpu_usage { |
||||
|
format = " %usage " |
||||
|
} |
||||
|
|
||||
|
wireless wlp2s0 { |
||||
|
format_up = " %essid %bitrate " |
||||
|
format_down = " 睊" |
||||
|
} |
||||
|
|
||||
|
|
||||
|
battery all { |
||||
|
format = " %status %percentage " |
||||
|
format_down = "No battery" |
||||
|
last_full_capacity = true |
||||
|
integer_battery_capacity = true |
||||
|
status_chr = "" |
||||
|
status_bat = "" |
||||
|
status_unk = "" |
||||
|
status_full = "" |
||||
|
low_threshold = 20 |
||||
|
threshold_type = percentage |
||||
|
} |
||||
|
|
||||
|
volume master { |
||||
|
format = " 墳 %volume " |
||||
|
format_muted = " ﱝ " |
||||
|
device = "default" |
||||
|
mixer = "Master" |
||||
|
mixer_idx = 0 |
||||
|
} |
||||
|
|
||||
|
tztime local { |
||||
|
format = " %A %d-%m-%Y " |
||||
|
} |
||||
|
|
||||
|
time { |
||||
|
format = " %H:%M " |
||||
|
} |
||||
@ -0,0 +1,14 @@ |
|||||
|
set pgp_default_key=0xkey |
||||
|
set pgp_sign_as=0xkey |
||||
|
set crypt_use_gpgme=yes |
||||
|
set crypt_autosign=yes |
||||
|
set crypt_verify_sig=yes |
||||
|
set crypt_replysign=yes |
||||
|
set crypt_replyencrypt=yes |
||||
|
set crypt_replysignencrypted=yes |
||||
|
set crypt_autoencrypt = yes |
||||
|
|
||||
|
|
||||
|
set pgp_check_gpg_decrypt_status_fd |
||||
|
set pgp_use_gpg_agent = yes |
||||
|
set pgp_self_encrypt = yes |
||||
@ -0,0 +1,10 @@ |
|||||
|
# HTML |
||||
|
#text/html; w3m -I %{charset} -T text/html; copiousoutput; |
||||
|
text/plain; vim %s |
||||
|
|
||||
|
#PDFs |
||||
|
application/pdf; /usr/bin/okular %s pdf |
||||
|
|
||||
|
#Images |
||||
|
image/png; /usr/bin/feh %s |
||||
|
image/jpeg; /usr/bin/feh %s |
||||
@ -0,0 +1,299 @@ |
|||||
|
# |
||||
|
# System configuration file for NeoMutt |
||||
|
# |
||||
|
|
||||
|
# Default list of header fields to weed when displaying. |
||||
|
# Ignore all lines by default... |
||||
|
ignore * |
||||
|
|
||||
|
# ... then allow these through. |
||||
|
unignore from: subject to cc date x-mailer x-url user-agent |
||||
|
|
||||
|
# Display the fields in this order |
||||
|
hdr_order date from to cc subject |
||||
|
|
||||
|
# emacs-like bindings |
||||
|
bind editor "\e<delete>" kill-word |
||||
|
bind editor "\e<backspace>" kill-word |
||||
|
|
||||
|
# map delete-char to a sane value |
||||
|
bind editor <delete> delete-char |
||||
|
|
||||
|
# some people actually like these settings |
||||
|
#set pager_stop |
||||
|
#bind pager <up> previous-line |
||||
|
#bind pager <down> next-line |
||||
|
|
||||
|
# Specifies how to sort messages in the index menu. |
||||
|
set sort=threads |
||||
|
|
||||
|
# The behavior of this option on the Debian mutt package is |
||||
|
# not the original one because exim4, the default SMTP on Debian |
||||
|
# does not strip bcc headers so this can cause privacy problems; |
||||
|
# see man muttrc for more info |
||||
|
#unset write_bcc |
||||
|
# Postfix and qmail use Delivered-To for detecting loops |
||||
|
unset bounce_delivered |
||||
|
|
||||
|
set mixmaster="mixmaster-filter" |
||||
|
|
||||
|
# System-wide CA file managed by the ca-certificates package |
||||
|
# set ssl_ca_certificates_file="/etc/ssl/certs/ca-certificates.crt" |
||||
|
|
||||
|
# imitate the old search-body function |
||||
|
macro index \eb "<search>~b " "search in message bodies" |
||||
|
|
||||
|
# simulate the old url menu |
||||
|
macro index,pager,attach,compose \cb "\ |
||||
|
<enter-command> set my_pipe_decode=\$pipe_decode pipe_decode<Enter>\ |
||||
|
<pipe-message> urlview<Enter>\ |
||||
|
<enter-command> set pipe_decode=\$my_pipe_decode; unset my_pipe_decode<Enter>" \ |
||||
|
"call urlview to extract URLs out of a message" |
||||
|
|
||||
|
# Show documentation when pressing F1 |
||||
|
macro generic,pager <F1> "<shell-escape> zcat /usr/share/doc/neomutt/manual.txt.gz | sensible-pager<enter>" "show NeoMutt documentation" |
||||
|
|
||||
|
# show the incoming mailboxes list (just like "neomutt -y") and back when pressing "y" |
||||
|
macro index y "<change-folder>?" "show incoming mailboxes list" |
||||
|
macro pager y "<exit><change-folder>?" "show incoming mailboxes list" |
||||
|
bind browser y exit |
||||
|
|
||||
|
# Handler for gzip compressed mailboxes |
||||
|
# open-hook '\.gz$' "gzip --stdout --decompress '%f' > '%t'" |
||||
|
# close-hook '\.gz$' "gzip --stdout '%t' > '%f'" |
||||
|
# append-hook '\.gz$' "gzip --stdout '%t' >> '%f'" |
||||
|
|
||||
|
# If NeoMutt is unable to determine your site's domain name correctly, you can |
||||
|
# set the default here. (better: fix /etc/mailname) |
||||
|
# |
||||
|
# set hostname=cs.hmc.edu |
||||
|
|
||||
|
# If your sendmail supports the -B8BITMIME flag, enable the following |
||||
|
# |
||||
|
# set use_8bitmime |
||||
|
|
||||
|
# Use mime.types to look up handlers for application/octet-stream. Can |
||||
|
# be undone with unmime_lookup. |
||||
|
mime_lookup application/octet-stream |
||||
|
|
||||
|
# Upgrade the progress counter every 250ms, good for mutt over SSH |
||||
|
# see http://bugs.debian.org/537746 |
||||
|
set time_inc=250 |
||||
|
|
||||
|
# Allow mutt to understand References, Cc and In-Reply-To as headers in mailto: |
||||
|
mailto_allow = cc in-reply-to references |
||||
|
|
||||
|
## |
||||
|
## *** DEFAULT SETTINGS FOR THE ATTACHMENTS PATCH *** |
||||
|
## |
||||
|
|
||||
|
## |
||||
|
## Please see the manual (section "attachments") for detailed |
||||
|
## documentation of the "attachments" command. |
||||
|
## |
||||
|
## Removing a pattern from a list removes that pattern literally. It |
||||
|
## does not remove any type matching the pattern. |
||||
|
## |
||||
|
## attachments +A */.* |
||||
|
## attachments +A image/jpeg |
||||
|
## unattachments +A */.* |
||||
|
## |
||||
|
## This leaves "attached" image/jpeg files on the allowed attachments |
||||
|
## list. It does not remove all items, as you might expect, because the |
||||
|
## second */.* is not a matching expression at this time. |
||||
|
## |
||||
|
## Remember: "unattachments" only undoes what "attachments" has done! |
||||
|
## It does not trigger any matching on actual messages. |
||||
|
|
||||
|
## Qualify any MIME part with an "attachment" disposition, EXCEPT for |
||||
|
## text/x-vcard and application/pgp parts. (PGP parts are already known |
||||
|
## to neomutt, and can be searched for with ~g, ~G, and ~k.) |
||||
|
## |
||||
|
## I've added x-pkcs7 to this, since it functions (for S/MIME) |
||||
|
## analogously to PGP signature attachments. S/MIME isn't supported |
||||
|
## in a stock neomutt build, but we can still treat it specially here. |
||||
|
## |
||||
|
attachments +A */.* |
||||
|
attachments -A text/x-vcard application/pgp.* |
||||
|
attachments -A application/x-pkcs7-.* |
||||
|
|
||||
|
## Discount all MIME parts with an "inline" disposition, unless they're |
||||
|
## text/plain. (Why inline a text/plain part unless it's external to the |
||||
|
## message flow?) |
||||
|
## |
||||
|
attachments +I text/plain |
||||
|
|
||||
|
## These two lines make NeoMutt qualify MIME containers. (So, for example, |
||||
|
## a message/rfc822 forward will count as an attachment.) The first |
||||
|
## line is unnecessary if you already have "attach-allow */.*", of |
||||
|
## course. These are off by default! The MIME elements contained |
||||
|
## within a message/* or multipart/* are still examined, even if the |
||||
|
## containers themselves don't qualify. |
||||
|
## |
||||
|
#attachments +A message/.* multipart/.* |
||||
|
#attachments +I message/.* multipart/.* |
||||
|
|
||||
|
## You probably don't really care to know about deleted attachments. |
||||
|
attachments -A message/external-body |
||||
|
attachments -I message/external-body |
||||
|
|
||||
|
## |
||||
|
source /usr/lib/neomutt/source-neomuttrc.d| |
||||
|
|
||||
|
|
||||
|
# main options |
||||
|
# set envelope_from |
||||
|
# set edit_headers # show headers when composing |
||||
|
set fast_reply # skip to compose when replying |
||||
|
# set askcc # ask for CC: |
||||
|
set fcc_attach # save attachments with the body |
||||
|
set forward_format = "Fwd: %s" # format of subject when forwarding |
||||
|
set forward_decode # decode when forwarding |
||||
|
set attribution = "On %d, %n wrote:" # format of quoting header |
||||
|
set reply_to # reply to Reply to: field |
||||
|
set reverse_name # reply as whomever it was to |
||||
|
set include # include message in replies |
||||
|
set forward_quote # include message in forwards |
||||
|
set text_flowed |
||||
|
unset sig_dashes # no dashes before sig |
||||
|
unset mime_forward # forward attachments as part of body |
||||
|
|
||||
|
# status bar, date format, finding stuff etc. |
||||
|
set status_chars = " *%A" |
||||
|
set status_format = "[ Folder: %f ] [%r%m messages%?n? (%n new)?%?d? (%d to delete)?%?t? (%t tagged)? ]%>─%?p?( %p postponed )?" |
||||
|
set date_format = "%d.%m.%Y %H:%M" |
||||
|
set sort = threads |
||||
|
set sort_aux = reverse-last-date-received |
||||
|
set uncollapse_jump |
||||
|
set sort_re |
||||
|
set reply_regex = "^(([Rr][Ee]?(\[[0-9]+\])?: *)?(\[[^]]+\] *)?)*" |
||||
|
set quote_regex = "^( {0,4}[>|:#%]| {0,4}[a-z0-9]+[>|]+)+" |
||||
|
set send_charset = "utf-8:iso-8859-1:us-ascii" |
||||
|
set charset = "utf-8" |
||||
|
set arrow_cursor = "no" # Change `color indicator` depending |
||||
|
|
||||
|
# Pager View Options |
||||
|
set pager_index_lines = 10 # Shows 10 lines of index when pager is active |
||||
|
set pager_context = 3 |
||||
|
set pager_stop |
||||
|
set menu_scroll |
||||
|
set tilde |
||||
|
unset markers |
||||
|
|
||||
|
set mailcap_path = ~/.config/neomutt/mailcap |
||||
|
set header_cache = "~/.cache/mutt" |
||||
|
set message_cachedir = "~/.cache/mutt" |
||||
|
|
||||
|
#set query_command = "khard email --parsable --search-in-source-files '%s'" |
||||
|
set mbox_type = Maildir |
||||
|
set smtp_url = "https://example.com:587 " |
||||
|
set smtp_pass = "secret" |
||||
|
set folder = "" |
||||
|
set imap_pass = "secret" |
||||
|
set realname = "Akshay Pushparaj" |
||||
|
set spoolfile = "+INBOX" |
||||
|
set ssl_starttls = yes |
||||
|
#set ssl_force_tls = yes |
||||
|
|
||||
|
mailboxes =INBOX =Sent =Drafts =Junk =Trash |
||||
|
set envelope_from_address = ".in" |
||||
|
set use_envelope_from = yes |
||||
|
set record = "=Sent" |
||||
|
set trash = "=Trash" |
||||
|
set postponed = "=Drafts" |
||||
|
set mail_check=60 |
||||
|
|
||||
|
set editor = "vim" |
||||
|
set tmpdir = "/tmp/neomutt/" |
||||
|
|
||||
|
set sidebar_width = 20 |
||||
|
set sidebar_short_path = yes |
||||
|
set sidebar_next_new_wrap = yes |
||||
|
set mail_check_stats |
||||
|
set sidebar_format = "%B%?F? [%F]?%* %?N?%N/?%S" |
||||
|
bind index,pager \Ck sidebar-prev |
||||
|
bind index,pager \Cj sidebar-next |
||||
|
bind index,pager \Co sidebar-open |
||||
|
bind index,pager \Cp sidebar-prev-new |
||||
|
bind index,pager \Cn sidebar-next-new |
||||
|
bind index,pager B sidebar-toggle-visible |
||||
|
|
||||
|
#gpg |
||||
|
source ~/.config/neomutt/gpg.rc |
||||
|
|
||||
|
#set autocrypt = yes |
||||
|
#set autocrypt_dir = "~/.neomutt/autocrypt" |
||||
|
|
||||
|
|
||||
|
|
||||
|
#set crypt_use_gpgme = yes |
||||
|
#set crypt_protected_headers_write = yes |
||||
|
#set crypt_autosign = yes |
||||
|
#set crypt_autopgp = yes |
||||
|
#set crypt_autoencrypt = yes |
||||
|
|
||||
|
# Set preffered view modes |
||||
|
auto_view text/html text/calendar application/ics # view html automatically |
||||
|
alternative_order text/html text/plain text/enriched text/* |
||||
|
|
||||
|
#colors |
||||
|
color normal default default |
||||
|
color indicator brightyellow default # currently selected message. default makes bar clear, disabled arrow to save space. |
||||
|
color sidebar_highlight red default |
||||
|
color sidebar_divider brightblack black |
||||
|
color sidebar_flagged red black |
||||
|
color sidebar_new green black |
||||
|
color normal brightyellow default |
||||
|
color error red default |
||||
|
color tilde black default |
||||
|
color message cyan default |
||||
|
color markers red white |
||||
|
color attachment white default |
||||
|
color search brightmagenta default |
||||
|
color status brightyellow black |
||||
|
color hdrdefault brightgreen default |
||||
|
color quoted green default |
||||
|
color quoted1 blue default |
||||
|
color quoted2 cyan default |
||||
|
color quoted3 yellow default |
||||
|
color quoted4 red default |
||||
|
color quoted5 brightred default |
||||
|
color signature brightgreen default |
||||
|
color bold black default |
||||
|
color underline black default |
||||
|
color normal default default |
||||
|
|
||||
|
color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses |
||||
|
color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL |
||||
|
color body green default "\`[^\`]*\`" # Green text between ` and ` |
||||
|
color body brightblue default "^# \.*" # Headings as bold blue |
||||
|
color body brightcyan default "^## \.*" # Subheadings as bold cyan |
||||
|
color body brightgreen default "^### \.*" # Subsubheadings as bold green |
||||
|
color body yellow default "^(\t| )*(-|\\*) \.*" # List items as yellow |
||||
|
color body brightcyan default "[;:][-o][)/(|]" # emoticons |
||||
|
color body brightcyan default "[;:][)(|]" # emoticons |
||||
|
color body brightcyan default "[ ][*][^*]*[*][ ]?" # more emoticon? |
||||
|
color body brightcyan default "[ ]?[*][^*]*[*][ ]" # more emoticon? |
||||
|
color body red default "(BAD signature)" |
||||
|
color body cyan default "(Good signature)" |
||||
|
color body brightblack default "^gpg: Good signature .*" |
||||
|
color body brightyellow default "^gpg: " |
||||
|
color body brightyellow red "^gpg: BAD signature from.*" |
||||
|
mono body bold "^gpg: Good signature" |
||||
|
#mohttps://neomutt.org/code/config_vars.htmlno body bold "^gpg: BAD signature from.*" |
||||
|
color body red default "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-f][0-9a-f])*@)?((([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(:[0-9]+)?)|([a-z0-9_.!~*'()$,;:@&=+-]|%[0-9a-f][0-9a-f])+)(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?(#([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?|(www|ftp)\\.(([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?(:[0-9]+)?(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?(#([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?)[^].,:;!)? \t\r\n<>\"]" |
||||
|
|
||||
|
# Default index colors: |
||||
|
color index yellow default '.*' |
||||
|
color index_author red default '.*' |
||||
|
color index_number blue default |
||||
|
color index_subject cyan default '.*' |
||||
|
|
||||
|
# For new mail: |
||||
|
color index brightyellow black "~N" |
||||
|
color index_author brightred black "~N" |
||||
|
color index_subject brightcyan black "~N" |
||||
|
|
||||
|
color progress black cyan |
||||
|
|
||||
|
|
||||
@ -0,0 +1,414 @@ |
|||||
|
################################# |
||||
|
# Shadows # |
||||
|
################################# |
||||
|
|
||||
|
|
||||
|
# Enabled client-side shadows on windows. Note desktop windows |
||||
|
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow, |
||||
|
# unless explicitly requested using the wintypes option. |
||||
|
# |
||||
|
# shadow = false |
||||
|
shadow = true; |
||||
|
|
||||
|
# The blur radius for shadows, in pixels. (defaults to 12) |
||||
|
# shadow-radius = 12 |
||||
|
shadow-radius = 7; |
||||
|
|
||||
|
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75) |
||||
|
# shadow-opacity = .75 |
||||
|
|
||||
|
# The left offset for shadows, in pixels. (defaults to -15) |
||||
|
# shadow-offset-x = -15 |
||||
|
shadow-offset-x = -7; |
||||
|
|
||||
|
# The top offset for shadows, in pixels. (defaults to -15) |
||||
|
# shadow-offset-y = -15 |
||||
|
shadow-offset-y = -7; |
||||
|
|
||||
|
# Red color value of shadow (0.0 - 1.0, defaults to 0). |
||||
|
# shadow-red = 0 |
||||
|
|
||||
|
# Green color value of shadow (0.0 - 1.0, defaults to 0). |
||||
|
# shadow-green = 0 |
||||
|
|
||||
|
# Blue color value of shadow (0.0 - 1.0, defaults to 0). |
||||
|
# shadow-blue = 0 |
||||
|
|
||||
|
# Hex string color value of shadow (#000000 - #FFFFFF, defaults to #000000). This option will override options set shadow-(red/green/blue) |
||||
|
# shadow-color = "#000000" |
||||
|
|
||||
|
# Specify a list of conditions of windows that should have no shadow. |
||||
|
# |
||||
|
# examples: |
||||
|
# shadow-exclude = "n:e:Notification"; |
||||
|
# |
||||
|
# shadow-exclude = [] |
||||
|
shadow-exclude = [ |
||||
|
"name = 'Notification'", |
||||
|
"class_g = 'Conky'", |
||||
|
"class_g ?= 'Notify-osd'", |
||||
|
"class_g = 'Cairo-clock'", |
||||
|
"_GTK_FRAME_EXTENTS@:c" |
||||
|
]; |
||||
|
|
||||
|
# Specify a X geometry that describes the region in which shadow should not |
||||
|
# be painted in, such as a dock window region. Use |
||||
|
# shadow-exclude-reg = "x10+0+0" |
||||
|
# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on. |
||||
|
# |
||||
|
# shadow-exclude-reg = "" |
||||
|
|
||||
|
# Crop shadow of a window fully on a particular Xinerama screen to the screen. |
||||
|
# xinerama-shadow-crop = false |
||||
|
|
||||
|
|
||||
|
################################# |
||||
|
# Fading # |
||||
|
################################# |
||||
|
|
||||
|
|
||||
|
# Fade windows in/out when opening/closing and when opacity changes, |
||||
|
# unless no-fading-openclose is used. |
||||
|
# fading = false |
||||
|
fading = true; |
||||
|
|
||||
|
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028) |
||||
|
# fade-in-step = 0.028 |
||||
|
fade-in-step = 0.03; |
||||
|
|
||||
|
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03) |
||||
|
# fade-out-step = 0.03 |
||||
|
fade-out-step = 0.03; |
||||
|
|
||||
|
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10) |
||||
|
# fade-delta = 10 |
||||
|
|
||||
|
# Specify a list of conditions of windows that should not be faded. |
||||
|
# fade-exclude = [] |
||||
|
|
||||
|
# Do not fade on window open/close. |
||||
|
# no-fading-openclose = false |
||||
|
|
||||
|
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc. |
||||
|
# no-fading-destroyed-argb = false |
||||
|
|
||||
|
|
||||
|
################################# |
||||
|
# Transparency / Opacity # |
||||
|
################################# |
||||
|
|
||||
|
|
||||
|
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0) |
||||
|
inactive-opacity = 0.8 |
||||
|
#inactive-opacity = 0.8; |
||||
|
|
||||
|
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default) |
||||
|
# frame-opacity = 1.0 |
||||
|
frame-opacity = 0.2; |
||||
|
|
||||
|
# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows. |
||||
|
# inactive-opacity-override = true |
||||
|
inactive-opacity-override = false; |
||||
|
|
||||
|
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0) |
||||
|
active-opacity = 1.0 |
||||
|
|
||||
|
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0) |
||||
|
# inactive-dim = 0.0 |
||||
|
|
||||
|
# 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 |
||||
|
|
||||
|
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`, |
||||
|
# like `50:name *= "Firefox"`. picom-trans is recommended over this. |
||||
|
# Note we don't make any guarantee about possible conflicts with other |
||||
|
# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows. |
||||
|
# example: |
||||
|
# opacity-rule = [ "80:class_g = 'URxvt'" ]; |
||||
|
# |
||||
|
opacity-rule = [ |
||||
|
"100:class_g = 'Dunst' && !focused " |
||||
|
] |
||||
|
|
||||
|
|
||||
|
################################# |
||||
|
# Corners # |
||||
|
################################# |
||||
|
|
||||
|
# 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 = 8 |
||||
|
|
||||
|
# Exclude conditions for rounded corners. |
||||
|
rounded-corners-exclude = [ |
||||
|
"window_type = 'dock'", |
||||
|
"window_type = 'desktop'" |
||||
|
]; |
||||
|
|
||||
|
|
||||
|
################################# |
||||
|
# Background-Blurring # |
||||
|
################################# |
||||
|
|
||||
|
|
||||
|
# Parameters for background blurring, see the *BLUR* section for more information. |
||||
|
# blur-method = |
||||
|
# blur-size = 12 |
||||
|
# |
||||
|
# blur-deviation = false |
||||
|
# |
||||
|
# blur-strength = 5 |
||||
|
|
||||
|
# Blur background of semi-transparent / ARGB windows. |
||||
|
# Bad in performance, with driver-dependent behavior. |
||||
|
# The name of the switch may change without prior notifications. |
||||
|
# |
||||
|
# blur-background = false |
||||
|
|
||||
|
# Blur background of windows when the window frame is not opaque. |
||||
|
# Implies: |
||||
|
# blur-background |
||||
|
# Bad in performance, with driver-dependent behavior. The name may change. |
||||
|
# |
||||
|
# blur-background-frame = false |
||||
|
|
||||
|
|
||||
|
# Use fixed blur strength rather than adjusting according to window opacity. |
||||
|
# blur-background-fixed = false |
||||
|
|
||||
|
|
||||
|
# Specify the blur convolution kernel, with the following format: |
||||
|
# example: |
||||
|
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; |
||||
|
# |
||||
|
# blur-kern = "" |
||||
|
blur-kern = "3x3box"; |
||||
|
|
||||
|
|
||||
|
# Exclude conditions for background blur. |
||||
|
# blur-background-exclude = [] |
||||
|
blur-background-exclude = [ |
||||
|
"window_type = 'dock'", |
||||
|
"window_type = 'desktop'", |
||||
|
"_GTK_FRAME_EXTENTS@:c" |
||||
|
]; |
||||
|
|
||||
|
################################# |
||||
|
# General Settings # |
||||
|
################################# |
||||
|
|
||||
|
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers. |
||||
|
# daemon = false |
||||
|
|
||||
|
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`. |
||||
|
# `xrender` is the default one. |
||||
|
# |
||||
|
# backend = "glx" |
||||
|
backend = "xrender"; |
||||
|
|
||||
|
# Enable/disable VSync. |
||||
|
# vsync = false |
||||
|
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 = true; |
||||
|
|
||||
|
# Detect '_NET_WM_OPACITY' on client windows, useful for window managers |
||||
|
# not passing '_NET_WM_OPACITY' of client windows to frame windows. |
||||
|
# |
||||
|
# detect-client-opacity = false |
||||
|
detect-client-opacity = true; |
||||
|
|
||||
|
# Specify refresh rate of the screen. If not specified or 0, picom will |
||||
|
# try detecting this with X RandR extension. |
||||
|
# |
||||
|
# refresh-rate = 60 |
||||
|
refresh-rate = 0; |
||||
|
|
||||
|
# 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 = false |
||||
|
|
||||
|
# 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-transient = true; |
||||
|
|
||||
|
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same |
||||
|
# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if |
||||
|
# detect-transient is enabled, too. |
||||
|
# |
||||
|
# detect-client-leader = false |
||||
|
detect-client-leader = true; |
||||
|
|
||||
|
# 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 = false |
||||
|
|
||||
|
# 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 everytime, 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 |
||||
|
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 = false |
||||
|
|
||||
|
# 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. |
||||
|
# |
||||
|
# glx-fshader-win = "" |
||||
|
|
||||
|
# 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 = false |
||||
|
|
||||
|
# 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 |
||||
|
|
||||
|
# 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" |
||||
|
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" |
||||
|
|
||||
|
# Show all X errors (for debugging) |
||||
|
# show-all-xerrors = false |
||||
|
|
||||
|
# Write process ID to a file. |
||||
|
# write-pid-path = "/path/to/your/log/file" |
||||
|
|
||||
|
# 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. |
||||
|
# |
||||
|
# 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: |
||||
|
{ |
||||
|
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; }; |
||||
|
dock = { shadow = false; } |
||||
|
dnd = { shadow = false; } |
||||
|
popup_menu = { opacity = 0.8; } |
||||
|
dropdown_menu = { opacity = 0.8; } |
||||
|
}; |
||||
@ -0,0 +1,244 @@ |
|||||
|
|
||||
|
[colors] |
||||
|
color0 = #0a0b08 |
||||
|
color1 = #675638 |
||||
|
color2 = #555B47 |
||||
|
color3 = #5A6651 |
||||
|
color4 = #6E6754 |
||||
|
color5 = #656D56 |
||||
|
color6 = #936D51 |
||||
|
color7 = #ccc0ac |
||||
|
color8 = #8e8678 |
||||
|
color9 = #675638 |
||||
|
color10 = #555B47 |
||||
|
color11 = #5A6651 |
||||
|
color12 = #6E6754 |
||||
|
color13 = #656D56 |
||||
|
color14 = #936D51 |
||||
|
color15 = #ccc0ac |
||||
|
background = #000000 |
||||
|
;background = #0c0f10 |
||||
|
background-alt = #ffb25a |
||||
|
foreground = #dfdfdf |
||||
|
foreground-alt = #bbb |
||||
|
;foreground-alt = #222 |
||||
|
;primary = #ffb52a |
||||
|
;primary = #666666 |
||||
|
primary = #abbcc8 |
||||
|
secondary = #e60053 |
||||
|
alert = #bd2c40 |
||||
|
|
||||
|
[bar/bar] |
||||
|
;monitor = ${env:MONITOR:HDMI-1} |
||||
|
width = 100% |
||||
|
height = 22 |
||||
|
;offset-x = 1% |
||||
|
;offset-y = 1% |
||||
|
radius = 0.0 |
||||
|
fixed-center = false |
||||
|
bottom = true |
||||
|
|
||||
|
background = ${colors.color0} |
||||
|
foreground = ${colors.color15} |
||||
|
|
||||
|
border-size = 1 |
||||
|
border-color = #00000000 |
||||
|
|
||||
|
padding-left = 0 |
||||
|
padding-right = 0 |
||||
|
|
||||
|
|
||||
|
font-0 = terminessTTF Nerd Font Mono:size=12;3 |
||||
|
font-1 = DejavuSansMono NF:style=Book:size=13;3 |
||||
|
|
||||
|
modules-left = i3 |
||||
|
modules-center = media |
||||
|
modules-right = wlp2s0 pulseaudio battery cpu date time |
||||
|
|
||||
|
tray-position = right |
||||
|
tray-padding = 1 |
||||
|
tray-background = ${colors.color1} |
||||
|
|
||||
|
;wm-restack = bspwm |
||||
|
wm-restack = i3 |
||||
|
|
||||
|
;override-redirect = true |
||||
|
|
||||
|
;scroll-up = bspwm-desknext |
||||
|
;scroll-down = bspwm-deskprev |
||||
|
|
||||
|
;scroll-up = i3wm-wsnext |
||||
|
;scroll-down = i3wm-wsprev |
||||
|
|
||||
|
cursor-click = pointer |
||||
|
cursor-scroll = ns-resize |
||||
|
|
||||
|
[module/i3] |
||||
|
type = internal/i3 |
||||
|
format = <label-state> <label-mode> |
||||
|
index-sort = true |
||||
|
wrapping-scroll = false |
||||
|
|
||||
|
label-mode = %mode% |
||||
|
|
||||
|
; Only show workspaces on the same output as the bar |
||||
|
;pin-workspaces = true |
||||
|
|
||||
|
label-mode-padding = 1 |
||||
|
label-mode-foreground = ${colors.colors1} |
||||
|
label-mode-background = ${colors.colors0} |
||||
|
|
||||
|
; focused = Active workspace on focused monitor |
||||
|
label-focused = %icon% |
||||
|
label-focused-foreground = ${colors.color0} |
||||
|
label-focused-background = ${colors.color1} |
||||
|
label-focused-padding = 1 |
||||
|
|
||||
|
; unfocused = Inactive workspace on any monitor |
||||
|
label-unfocused = %index% |
||||
|
label-unfocused-padding = 1 |
||||
|
|
||||
|
; visible = Active workspace on unfocused monitor |
||||
|
label-visible = %index% |
||||
|
label-visible-background = ${self.label-focused-background} |
||||
|
label-visible-padding = ${self.label-focused-padding} |
||||
|
|
||||
|
; urgent = Workspace with urgency hint set |
||||
|
label-urgent = %icon%:%index% |
||||
|
label-urgent-background = ${colors.alert} |
||||
|
label-urgent-padding = 1 |
||||
|
|
||||
|
ws-icon-0 = 1; |
||||
|
ws-icon-1 = 2; |
||||
|
ws-icon-2 = 3; |
||||
|
ws-icon-3 = 4;嗢 |
||||
|
ws-icon-4 = 5; |
||||
|
ws-icon-5 = 6; |
||||
|
ws-icon-6 = 7; |
||||
|
ws-icon-7 = 8; |
||||
|
ws-icon-8 = 9; |
||||
|
ws-icon-9 = 10; |
||||
|
|
||||
|
[module/media] |
||||
|
type = custom/script |
||||
|
exec = ~/.config/polybar/scripts/music |
||||
|
interval = 1 |
||||
|
tail = true |
||||
|
label = " %output% " |
||||
|
label-foreground = ${colors.color0} |
||||
|
label-background = ${colors.color3} |
||||
|
|
||||
|
[module/wlp2s0] |
||||
|
type = internal/network |
||||
|
interface = wlp2s0 |
||||
|
interval = 3.0 |
||||
|
label-connected-background = ${colors.color5} |
||||
|
format-connected = <label-connected> |
||||
|
label-connected = " %signal%% %essid% %downspeed% " |
||||
|
label-connected-foreground = ${colors.color0} |
||||
|
format-disconnected = <label-disconnected> |
||||
|
;label-disconnected = " 睊 " |
||||
|
|
||||
|
[module/eth] |
||||
|
type = internal/network |
||||
|
interface = eno0 |
||||
|
interval = 3.0 |
||||
|
|
||||
|
format-connected-underline = #55aa55 |
||||
|
format-connected-prefix = " " |
||||
|
format-connected-prefix-foreground = ${colors.color0} |
||||
|
label-connected = %essid% |
||||
|
format-disconnected = |
||||
|
|
||||
|
[module/pulseaudio] |
||||
|
type = internal/pulseaudio |
||||
|
|
||||
|
ramp-volume-background = ${colors.color7} |
||||
|
ramp-volume-foreground = ${colors.color0} |
||||
|
label-volume-background = ${colors.color7} |
||||
|
label-volume-foreground = ${colors.color0} |
||||
|
|
||||
|
format-volume = <ramp-volume><label-volume> |
||||
|
label-volume = "%percentage% " |
||||
|
|
||||
|
label-muted = 🔇 muted |
||||
|
label-muted-foreground = #666 |
||||
|
ramp-volume-0 = " " |
||||
|
|
||||
|
[module/battery] |
||||
|
type = internal/battery |
||||
|
battery = BAT0 |
||||
|
adapter = AC |
||||
|
full-at = 98 |
||||
|
label-charging = "%percentage% " |
||||
|
label-discharging = "%percentage% " |
||||
|
label-full = "%percentage_raw% " |
||||
|
format-charging = "<animation-charging><label-charging>" |
||||
|
format-discharging = "<ramp-capacity><label-discharging>" |
||||
|
format-full-prefix = " " |
||||
|
format-full-prefix-foreground = ${colors.color0} |
||||
|
format-full-prefix-background= ${colors.color9} |
||||
|
label-full-background = ${colors.color9} |
||||
|
label-full-foreground = ${colors.color0} |
||||
|
label-charging-background = ${colors.color9} |
||||
|
label-charging-foreground = ${colors.color0} |
||||
|
|
||||
|
label-discharging-background = ${colors.color9} |
||||
|
label-discharging-foreground = ${colors.color0} |
||||
|
ramp-capacity-0 =" " |
||||
|
ramp-capacity-1 =" " |
||||
|
ramp-capacity-2 =" " |
||||
|
ramp-capacity-3 =" " |
||||
|
ramp-capacity-4 =" " |
||||
|
ramp-capacity-5 =" " |
||||
|
ramp-capacity-6 =" " |
||||
|
ramp-capacity-7 =" " |
||||
|
ramp-capacity-8 =" " |
||||
|
ramp-capacity-9 =" " |
||||
|
|
||||
|
ramp-capacity-foreground = ${colors.color0} |
||||
|
ramp-capacity-background = ${colors.color9} |
||||
|
animation-charging-0 =" " |
||||
|
animation-charging-foreground = ${colors.color0} |
||||
|
animation-charging-background = ${colors.color9} |
||||
|
|
||||
|
[module/cpu] |
||||
|
type = internal/cpu |
||||
|
interval = 2 |
||||
|
padding = 2 |
||||
|
format-prefix = " " |
||||
|
format-background = ${colors.color11} |
||||
|
format-prefix-foreground = ${colors.color0} |
||||
|
label-background = ${colors.color11} |
||||
|
label-foreground = ${colors.color0} |
||||
|
label = "%percentage% " |
||||
|
|
||||
|
[module/date] |
||||
|
type=internal/date |
||||
|
date = " %d-%m-%Y " |
||||
|
label = %date% |
||||
|
label-background =${colors.color13} |
||||
|
label-foreground = ${colors.color0} |
||||
|
|
||||
|
[module/time] |
||||
|
type = internal/date |
||||
|
interval = 5 |
||||
|
time = " %H:%M " |
||||
|
time-alt = %H:%M:%S |
||||
|
label = %time% |
||||
|
label-background = ${colors.color14} |
||||
|
label-foreground = ${colors.color0} |
||||
|
|
||||
|
[settings] |
||||
|
screenchange-reload = true |
||||
|
;compositing-background = xor |
||||
|
;compositing-background = screen |
||||
|
;compositing-foreground = source |
||||
|
;compositing-border = over |
||||
|
;pseudo-transparency = false |
||||
|
|
||||
|
[global/wm] |
||||
|
margin-top = 1 |
||||
|
margin-bottom = 1 |
||||
|
|
||||
|
|
||||
@ -0,0 +1,16 @@ |
|||||
|
#!/bin/bash |
||||
|
|
||||
|
duration=$(cmus-remote -Q 2> /dev/null | grep duration | cut -d ' ' -f2-) |
||||
|
position=$(cmus-remote -Q 2> /dev/null | grep position | cut -d ' ' -f2-) |
||||
|
stat=$(cmus-remote -Q 2> /dev/null | grep status | cut -d ' ' -f2-) |
||||
|
artist=$(cmus-remote -Q 2> /dev/null | grep ' artist ' | cut -d ' ' -f3-) |
||||
|
song=$(cmus-remote -Q 2> /dev/null | grep title | cut -d ' ' -f3-) |
||||
|
if [ "$stat" != "" -a "$artist" != "" ]; then |
||||
|
cur=$(date -d@"$position" -u +%M:%S) |
||||
|
dur=$(date -d@"$duration" -u +%M:%S) |
||||
|
if [ "$stat" = "playing" ]; then |
||||
|
echo "$artist - $song || $cur" |
||||
|
else |
||||
|
echo "$song - $cur - paused" |
||||
|
fi |
||||
|
fi |
||||
@ -0,0 +1,4 @@ |
|||||
|
#! /usr/bin/env bash |
||||
|
killall -q polybar |
||||
|
echo "---" | tee -a /tmp/polybar1.log /tmp/polybar2.log |
||||
|
polybar bar 2>&1 | tee -a /tmp/polybar.log & disown |
||||
@ -0,0 +1,32 @@ |
|||||
|
#!/bin/bash |
||||
|
|
||||
|
# install playerctl |
||||
|
|
||||
|
none="No players found" |
||||
|
down=$(playerctl status 2>&1) |
||||
|
if [ "$down" = "$none" -o "$down" = "Stopped" ]; then |
||||
|
echo "" |
||||
|
exit |
||||
|
else |
||||
|
tracklength=$(playerctl metadata mpris:length 2>&1| sed 's/.\{6\}$//') |
||||
|
current=$(playerctl position 2>&1 | sed 's/.\{7\}$//') |
||||
|
if [ "$tracklength" -ge 3600 ]; then |
||||
|
duration=$(date -d@"$tracklength" -u +%H:%M:%S 2>&1) |
||||
|
else |
||||
|
duration=$(date -d@"$tracklength" -u +%M:%S 2>&1) |
||||
|
fi |
||||
|
if [ "$current" -ge 3600 ]; then |
||||
|
position=$(date -d@"$current" -u +%H:%M:%S 2>&1) |
||||
|
else |
||||
|
position=$(date -d@"$current" -u +%M:%S 2>&1) |
||||
|
fi |
||||
|
artist=$(playerctl metadata xesam:artist 2>&1) |
||||
|
song=$(playerctl metadata xesam:title 2>&1) |
||||
|
if [ "$down" = "Playing" ]; then |
||||
|
echo "$song | $position" |
||||
|
elif [ "$down" = "Paused" ]; then |
||||
|
echo "$song | $position | $duration | paused" |
||||
|
else |
||||
|
exit |
||||
|
fi |
||||
|
fi |
||||
@ -0,0 +1,7 @@ |
|||||
|
[redshift] |
||||
|
adjustment-method=randr |
||||
|
location-provider=manual |
||||
|
|
||||
|
[manual] |
||||
|
lat=11.25 |
||||
|
lon=75.78 |
||||
@ -0,0 +1,145 @@ |
|||||
|
############################################################################# |
||||
|
# A minimal rTorrent configuration that provides the basic features |
||||
|
# you want to have in addition to the built-in defaults. |
||||
|
# |
||||
|
# See https://github.com/rakshasa/rtorrent/wiki/CONFIG-Template |
||||
|
# for an up-to-date version. |
||||
|
############################################################################# |
||||
|
|
||||
|
|
||||
|
## Instance layout (base paths) |
||||
|
method.insert = cfg.basedir, private|const|string, (cat,"/home/akshay/Downloads/rtorrent/") |
||||
|
method.insert = cfg.download, private|const|string, (cat,(cfg.basedir),"download/") |
||||
|
method.insert = cfg.logs, private|const|string, (cat,(cfg.basedir),"log/") |
||||
|
method.insert = cfg.logfile, private|const|string, (cat,(cfg.logs),"rtorrent-",(system.time),".log") |
||||
|
method.insert = cfg.session, private|const|string, (cat,(cfg.basedir),".session/") |
||||
|
method.insert = cfg.watch, private|const|string, (cat,(cfg.basedir),"watch/") |
||||
|
|
||||
|
|
||||
|
## Create instance directories |
||||
|
execute.throw = sh, -c, (cat,\ |
||||
|
"mkdir -p \"",(cfg.download),"\" ",\ |
||||
|
"\"",(cfg.logs),"\" ",\ |
||||
|
"\"",(cfg.session),"\" ",\ |
||||
|
"\"",(cfg.watch),"/load\" ",\ |
||||
|
"\"",(cfg.watch),"/start\" ") |
||||
|
|
||||
|
|
||||
|
## Listening port for incoming peer traffic (fixed; you can also randomize it) |
||||
|
network.port_range.set = 50000-50000 |
||||
|
network.port_random.set = no |
||||
|
|
||||
|
|
||||
|
## Tracker-less torrent and UDP tracker support |
||||
|
## (conservative settings for 'private' trackers, change for 'public') |
||||
|
dht.mode.set = disable |
||||
|
protocol.pex.set = no |
||||
|
|
||||
|
trackers.use_udp.set = no |
||||
|
|
||||
|
|
||||
|
## Peer settings |
||||
|
throttle.max_downloads.global.set = 100 |
||||
|
throttle.max_uploads.global.set = 60 |
||||
|
throttle.max_downloads.set = 50 |
||||
|
throttle.max_uploads.set = 50 |
||||
|
throttle.global_down.max_rate.set_kb = 0 |
||||
|
throttle.global_up.max_rate.set_kb = 0 |
||||
|
|
||||
|
throttle.min_peers.normal.set = 1 |
||||
|
throttle.max_peers.normal.set = 400 |
||||
|
throttle.min_peers.seed.set = -1 |
||||
|
throttle.max_peers.seed.set = -1 |
||||
|
trackers.numwant.set = 80 |
||||
|
|
||||
|
protocol.encryption.set = allow_incoming,try_outgoing,enable_retry |
||||
|
|
||||
|
|
||||
|
## Limits for file handle resources, this is optimized for |
||||
|
## an `ulimit` of 1024 (a common default). You MUST leave |
||||
|
## a ceiling of handles reserved for rTorrent's internal needs! |
||||
|
network.http.max_open.set = 50 |
||||
|
network.max_open_files.set = 600 |
||||
|
network.max_open_sockets.set = 300 |
||||
|
|
||||
|
|
||||
|
## Memory resource usage (increase if you have a large number of items loaded, |
||||
|
## and/or the available resources to spend) |
||||
|
pieces.memory.max.set = 1800M |
||||
|
network.xmlrpc.size_limit.set = 4M |
||||
|
|
||||
|
|
||||
|
## Basic operational settings (no need to change these) |
||||
|
session.path.set = (cat, (cfg.session)) |
||||
|
directory.default.set = (cat, (cfg.download)) |
||||
|
log.execute = (cat, (cfg.logs), "execute.log") |
||||
|
#log.xmlrpc = (cat, (cfg.logs), "xmlrpc.log") |
||||
|
execute.nothrow = sh, -c, (cat, "echo >",\ |
||||
|
(session.path), "rtorrent.pid", " ",(system.pid)) |
||||
|
|
||||
|
|
||||
|
## Other operational settings (check & adapt) |
||||
|
encoding.add = utf8 |
||||
|
system.umask.set = 0027 |
||||
|
system.cwd.set = (directory.default) |
||||
|
network.http.dns_cache_timeout.set = 25 |
||||
|
schedule2 = monitor_diskspace, 15, 60, ((close_low_diskspace, 1000M)) |
||||
|
#pieces.hash.on_completion.set = no |
||||
|
#view.sort_current = seeding, greater=d.ratio= |
||||
|
#keys.layout.set = qwerty |
||||
|
#network.http.capath.set = "/etc/ssl/certs" |
||||
|
#network.http.ssl_verify_peer.set = 0 |
||||
|
#network.http.ssl_verify_host.set = 0 |
||||
|
|
||||
|
|
||||
|
## Some additional values and commands |
||||
|
method.insert = system.startup_time, value|const, (system.time) |
||||
|
method.insert = d.data_path, simple,\ |
||||
|
"if=(d.is_multi_file),\ |
||||
|
(cat, (d.directory), /),\ |
||||
|
(cat, (d.directory), /, (d.name))" |
||||
|
method.insert = d.session_file, simple, "cat=(session.path), (d.hash), .torrent" |
||||
|
|
||||
|
|
||||
|
## Watch directories (add more as you like, but use unique schedule names) |
||||
|
## Add torrent |
||||
|
schedule2 = watch_load, 11, 10, ((load.verbose, (cat, (cfg.watch), "load/*.torrent"))) |
||||
|
## Add & download straight away |
||||
|
schedule2 = watch_start, 10, 10, ((load.start_verbose, (cat, (cfg.watch), "start/*.torrent"))) |
||||
|
|
||||
|
|
||||
|
## Run the rTorrent process as a daemon in the background |
||||
|
## (and control via XMLRPC sockets) |
||||
|
#system.daemon.set = true |
||||
|
#network.scgi.open_local = (cat,(session.path),rpc.socket) |
||||
|
#execute.nothrow = chmod,770,(cat,(session.path),rpc.socket) |
||||
|
|
||||
|
|
||||
|
## Logging: |
||||
|
## Levels = critical error warn notice info debug |
||||
|
## Groups = connection_* dht_* peer_* rpc_* storage_* thread_* tracker_* torrent_* |
||||
|
print = (cat, "Logging to ", (cfg.logfile)) |
||||
|
log.open_file = "log", (cfg.logfile) |
||||
|
log.add_output = "info", "log" |
||||
|
#log.add_output = "tracker_debug", "log" |
||||
|
|
||||
|
|
||||
|
|
||||
|
# Create symlinks in the watch directory with a suffix indicating the download state. |
||||
|
method.set_key = event.download.resumed,link1,"d.create_link=tied,,.started" |
||||
|
method.set_key = event.download.paused,link1,"d.delete_link=tied,,.started" |
||||
|
method.set_key = event.download.finished,"d.create_link=tied,,.finished" |
||||
|
method.set_key = event.download.erased,"d.delete_link=tied,,.finished" |
||||
|
|
||||
|
# Create symlinks in the same directory as the download. |
||||
|
method.set_key = event.download.resumed,link2,"d.create_link=base_path,,.started" |
||||
|
method.set_key = event.download.paused,link2,"d.delete_link=base_path,,.started" |
||||
|
method.set_key = event.download.finished,link2,"d.create_link=base_path,,.finished" |
||||
|
method.set_key = event.download.erased,link2,"d.delete_link=base_path,,.finished" |
||||
|
|
||||
|
# Create a symlink in another directory without a suffix. |
||||
|
# You need to quote the command in this case. |
||||
|
method.set_key = event.download.finished,link3,"d.create_link=base_filename,/files," |
||||
|
|
||||
|
|
||||
|
### END of rtorrent.rc ### |
||||
|
After Width: | Height: | Size: 535 KiB |
|
After Width: | Height: | Size: 3.2 MiB |
|
After Width: | Height: | Size: 196 KiB |
|
After Width: | Height: | Size: 1.8 MiB |
|
After Width: | Height: | Size: 41 KiB |
@ -0,0 +1,13 @@ |
|||||
|
# add this to /etc/systemd/system and enable service |
||||
|
[Unit] |
||||
|
Description=i3lock on suspend |
||||
|
After=sleep.target |
||||
|
|
||||
|
[Service] |
||||
|
User=akshay |
||||
|
Type=forking |
||||
|
Environment=DISPLAY=:0 |
||||
|
ExecStart=/home/akshay/.config/i3/lock/lock.sh |
||||
|
|
||||
|
[Install] |
||||
|
WantedBy=sleep.target |
||||
@ -0,0 +1,16 @@ |
|||||
|
#!/bin/bash |
||||
|
|
||||
|
declare -i ID |
||||
|
ID=`xinput list | grep -Eio '(touchpad|glidepoint)\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'` |
||||
|
declare -i STATE |
||||
|
STATE=`xinput list-props $ID|grep 'Device Enabled'|awk '{print $4}'` |
||||
|
if [ $STATE -eq 1 ] |
||||
|
then |
||||
|
xinput disable $ID |
||||
|
# echo "Touchpad disabled." |
||||
|
# notify-send -a 'Touchpad' 'Disabled' -i /usr/share/icons/Adwaita/48x48/devices/input-touchpad.png |
||||
|
else |
||||
|
xinput enable $ID |
||||
|
# echo "Touchpad enabled." |
||||
|
# notify-send -a 'Touchpad' 'Enabled' -i /usr/share/icons/Adwaita/48x48/devices/input-touchpad.png |
||||
|
fi |
||||
@ -0,0 +1,40 @@ |
|||||
|
call plug#begin() |
||||
|
Plug 'ayu-theme/ayu-vim' |
||||
|
Plug 'scrooloose/nerdtree' |
||||
|
Plug 'ryanoasis/vim-devicons' |
||||
|
Plug 'tmsvg/pear-tree' |
||||
|
Plug 'makerj/vim-pdf' |
||||
|
Plug 'junegunn/goyo.vim' |
||||
|
Plug 'rust-lang/rust.vim' |
||||
|
Plug 'sainnhe/gruvbox-material' |
||||
|
call plug#end() |
||||
|
|
||||
|
"merdtree |
||||
|
autocmd StdinReadPre * let s:std_in=1 |
||||
|
autocmd VimEnter * if argc() == 0 && !exists('s:std_in') | NERDTree | endif |
||||
|
|
||||
|
"colorscheme |
||||
|
set background=dark |
||||
|
colorscheme gruvbox-material |
||||
|
|
||||
|
set tabstop=2 |
||||
|
set number |
||||
|
"borders and tilde |
||||
|
highlight NonText ctermfg='Black' |
||||
|
set enc=utf-8 |
||||
|
set fillchars= |
||||
|
|
||||
|
"key remap |
||||
|
map <C-n> :NERDTreeToggle<CR> |
||||
|
map <C-l> <C-w>l |
||||
|
map <C-h> <C-w>h |
||||
|
map <C-j> <C-w>j |
||||
|
map <C-k> <C-w>k |
||||
|
autocmd! bufwritepost *.h make && sudo make install |
||||
|
|
||||
|
"auto source |
||||
|
autocmd! bufwritepost .vimrc source % |
||||
|
|
||||
|
"rust syntax |
||||
|
syntax enable |
||||
|
filetype plugin indent on |
||||
@ -0,0 +1 @@ |
|||||
|
Wallpapers from [Wallhaven](https://wallhaven.cc) |
||||
|
After Width: | Height: | Size: 337 KiB |
|
After Width: | Height: | Size: 542 KiB |
|
After Width: | Height: | Size: 119 KiB |
|
After Width: | Height: | Size: 1.5 MiB |
|
After Width: | Height: | Size: 225 KiB |
|
After Width: | Height: | Size: 14 MiB |
|
After Width: | Height: | Size: 864 KiB |
|
After Width: | Height: | Size: 1.8 MiB |
|
After Width: | Height: | Size: 275 KiB |
|
After Width: | Height: | Size: 137 KiB |
|
After Width: | Height: | Size: 166 KiB |
|
After Width: | Height: | Size: 469 KiB |
|
After Width: | Height: | Size: 5.6 MiB |
|
After Width: | Height: | Size: 5.8 MiB |
|
After Width: | Height: | Size: 763 KiB |
|
After Width: | Height: | Size: 1.8 MiB |
|
After Width: | Height: | Size: 120 KiB |
@ -0,0 +1,40 @@ |
|||||
|
# Start configuration added by Zim install {{{ |
||||
|
# ------- |
||||
|
# Modules |
||||
|
# ------- |
||||
|
|
||||
|
# Sets sane Zsh built-in environment options. |
||||
|
zmodule environment |
||||
|
# Provides handy git aliases and functions. |
||||
|
zmodule git |
||||
|
# Applies correct bindkeys for input events. |
||||
|
zmodule input |
||||
|
# Sets a custom terminal title. |
||||
|
zmodule termtitle |
||||
|
# Utility aliases and functions. Adds colour to ls, grep and less. |
||||
|
zmodule utility |
||||
|
|
||||
|
# |
||||
|
# Prompt |
||||
|
# |
||||
|
# |
||||
|
zmodule gitster |
||||
|
# Exposes git repository status information to prompts. |
||||
|
zmodule git-info |
||||
|
# A customizable version of steeef's prompt theme. |
||||
|
|
||||
|
# Additional completion definitions for Zsh. |
||||
|
zmodule zsh-users/zsh-completions |
||||
|
# Enables and configures smart and extensive tab completion. |
||||
|
# completion must be sourced after zsh-users/zsh-completions |
||||
|
zmodule completion |
||||
|
# Fish-like autosuggestions for Zsh. |
||||
|
zmodule zsh-users/zsh-autosuggestions |
||||
|
# Fish-like syntax highlighting for Zsh. |
||||
|
# zsh-users/zsh-syntax-highlighting must be sourced after completion |
||||
|
zmodule zsh-users/zsh-syntax-highlighting |
||||
|
# Fish-like history search (up arrow) for Zsh. |
||||
|
# zsh-users/zsh-history-substring-search must be sourced after zsh-users/zsh-syntax-highlighting |
||||
|
zmodule zsh-users/zsh-history-substring-search |
||||
|
# }}} End configuration added by Zim install |
||||
|
|
||||
@ -0,0 +1,186 @@ |
|||||
|
# Start configuration added by Zim install {{{ |
||||
|
# |
||||
|
# User configuration sourced by interactive shells |
||||
|
# |
||||
|
|
||||
|
# ----------------- |
||||
|
# Zsh configuration |
||||
|
# ----------------- |
||||
|
|
||||
|
# |
||||
|
# History |
||||
|
# |
||||
|
|
||||
|
# Remove older command from the history if a duplicate is to be added. |
||||
|
setopt HIST_IGNORE_ALL_DUPS |
||||
|
|
||||
|
# |
||||
|
# Input/output |
||||
|
# |
||||
|
|
||||
|
# Set editor default keymap to emacs (`-e`) or vi (`-v`) |
||||
|
bindkey -e |
||||
|
|
||||
|
# Prompt for spelling correction of commands. |
||||
|
#setopt CORRECT |
||||
|
|
||||
|
# Customize spelling correction prompt. |
||||
|
#SPROMPT='zsh: correct %F{red}%R%f to %F{green}%r%f [nyae]? ' |
||||
|
|
||||
|
# Remove path separator from WORDCHARS. |
||||
|
WORDCHARS=${WORDCHARS//[\/]} |
||||
|
|
||||
|
|
||||
|
# -------------------- |
||||
|
# Module configuration |
||||
|
# -------------------- |
||||
|
|
||||
|
# |
||||
|
# completion |
||||
|
# |
||||
|
|
||||
|
# Set a custom path for the completion dump file. |
||||
|
# If none is provided, the default ${ZDOTDIR:-${HOME}}/.zcompdump is used. |
||||
|
#zstyle ':zim:completion' dumpfile "${ZDOTDIR:-${HOME}}/.zcompdump-${ZSH_VERSION}" |
||||
|
|
||||
|
# |
||||
|
# git |
||||
|
# |
||||
|
|
||||
|
# Set a custom prefix for the generated aliases. The default prefix is 'G'. |
||||
|
#zstyle ':zim:git' aliases-prefix 'g' |
||||
|
|
||||
|
# |
||||
|
# input |
||||
|
# |
||||
|
|
||||
|
# Append `../` to your input for each `.` you type after an initial `..` |
||||
|
#zstyle ':zim:input' double-dot-expand yes |
||||
|
|
||||
|
# |
||||
|
# termtitle |
||||
|
# |
||||
|
|
||||
|
# Set a custom terminal title format using prompt expansion escape sequences. |
||||
|
# See http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html#Simple-Prompt-Escapes |
||||
|
# If none is provided, the default '%n@%m: %~' is used. |
||||
|
#zstyle ':zim:termtitle' format '%1~' |
||||
|
|
||||
|
# |
||||
|
# zsh-autosuggestions |
||||
|
# |
||||
|
|
||||
|
# Customize the style that the suggestions are shown with. |
||||
|
# See https://github.com/zsh-users/zsh-autosuggestions/blob/master/README.md#suggestion-highlight-style |
||||
|
#ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=10' |
||||
|
|
||||
|
# |
||||
|
# zsh-syntax-highlighting |
||||
|
# |
||||
|
|
||||
|
# Set what highlighters will be used. |
||||
|
# See https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md |
||||
|
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets) |
||||
|
|
||||
|
# Customize the main highlighter styles. |
||||
|
# See https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md#how-to-tweak-it |
||||
|
#typeset -A ZSH_HIGHLIGHT_STYLES |
||||
|
#ZSH_HIGHLIGHT_STYLES[comment]='fg=10' |
||||
|
|
||||
|
# ------------------ |
||||
|
# Initialize modules |
||||
|
# ------------------ |
||||
|
|
||||
|
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZDOTDIR:-${HOME}}/.zimrc ]]; then |
||||
|
# Update static initialization script if it does not exist or it's outdated, before sourcing it |
||||
|
source ${ZIM_HOME}/zimfw.zsh init -q |
||||
|
fi |
||||
|
source ${ZIM_HOME}/init.zsh |
||||
|
|
||||
|
# ------------------------------ |
||||
|
# Post-init module configuration |
||||
|
# ------------------------------ |
||||
|
|
||||
|
# |
||||
|
# zsh-history-substring-search |
||||
|
# |
||||
|
|
||||
|
# Bind ^[[A/^[[B manually so up/down works both before and after zle-line-init |
||||
|
bindkey '^[[A' history-substring-search-up |
||||
|
bindkey '^[[B' history-substring-search-down |
||||
|
|
||||
|
# Bind up and down keys |
||||
|
zmodload -F zsh/terminfo +p:terminfo |
||||
|
if [[ -n ${terminfo[kcuu1]} && -n ${terminfo[kcud1]} ]]; then |
||||
|
bindkey ${terminfo[kcuu1]} history-substring-search-up |
||||
|
bindkey ${terminfo[kcud1]} history-substring-search-down |
||||
|
fi |
||||
|
|
||||
|
bindkey '^P' history-substring-search-up |
||||
|
bindkey '^N' history-substring-search-down |
||||
|
bindkey -M vicmd 'k' history-substring-search-up |
||||
|
bindkey -M vicmd 'j' history-substring-search-down |
||||
|
# }}} End configuration added by Zim install |
||||
|
|
||||
|
# 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" |
||||
|
|
||||
|
# 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. |
||||
|
|
||||
|
export LANG=en_US.UTF-8 |
||||
|
export EDITOR='vim' |
||||
|
export FZF_BASE="/usr/bin/fzf" |
||||
|
|
||||
|
alias vi="vim" |
||||
|
alias freq="watch grep \"cpu MHz\" /proc/cpuinfo" |
||||
|
alias c="clear" |
||||
|
alias cpu_p="~/.config/i3/cpu_percentage.sh" |
||||
|
alias screen="screen -U" |
||||
|
|
||||
|
#(cat ~/.cache/wal/sequences &) |
||||
|
#cat ~/.cache/wal/sequences |
||||
|
#source ~/.cache/wal/colors-tty.sh |
||||
|
|
||||
|
#source ~/git/zsh-autocomplete/zsh-autocomplete.plugin.zsh |
||||
|
|
||||
|
#nnn cofig |
||||
|
TERMINAL="alacritty" |
||||
|
BLK="0B" CHR="0B" DIR="04" EXE="06" REG="00" HARDLINK="06" SYMLINK="06" MISSING="00" ORPHAN="09" FIFO="06" SOCK="0B" OTHER="06" |
||||
|
#export NNN_COLORS='1234' |
||||
|
export NNN_FCOLORS="$BLK$CHR$DIR$EXE$REG$HARDLINK$SYMLINK$MISSING$ORPHAN$FIFO$SOCK$OTHER" |
||||
|
export NNN_PLUG='p:preview-tui;i:imgthumb;m:nmount;k:kdeconnect;g:gpg*;t:mtpmount' |
||||
|
export NNN_TRASH=1 |
||||
|
export NNN_FIFO=/tmp/nnn.fifo nnn |
||||
|
source /usr/share/doc/fzf/examples/key-bindings.zsh |
||||
|
|
||||
|
export GEM_HOME="$HOME/.gems" |
||||
|
export PATH="$HOME/.gems/bin:/usr/sbin:$PATH" |
||||
|
|
||||
|
#(cat ~/.cache/wal/sequences &) |
||||
|
|
||||
|
# Alternative (blocks terminal for 0-3ms) |
||||
|
#cat ~/.cache/wal/sequences |
||||
|
|
||||
|
# To add support for TTYs this line can be optionally added. |
||||
|
#source ~/.cache/wal/colors-tty.sh |
||||
|
|
||||
|
ffs() { |
||||
|
firefox --search $1 |
||||
|
} |
||||
|
|
||||
|
lks() { |
||||
|
search="${1}" |
||||
|
links "https://duckduckgo.com/?q=$search" |
||||
|
} |
||||
|
|
||||
|
|
||||
|
if [ -z "${DISPLAY}" ] && [ "${XDG_VTNR}" -eq 1 ]; then |
||||
|
exec startx |
||||
|
fi |
||||