Add initial dotfiles
This commit is contained in:
commit
f748e588ae
11 changed files with 1182 additions and 0 deletions
80
.config/alacritty/alacritty.toml
Normal file
80
.config/alacritty/alacritty.toml
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
[colors]
|
||||||
|
draw_bold_text_with_bright_colors = true
|
||||||
|
|
||||||
|
[env]
|
||||||
|
TERM = "xterm-256color"
|
||||||
|
|
||||||
|
[terminal]
|
||||||
|
shell = "/bin/zsh"
|
||||||
|
|
||||||
|
[font]
|
||||||
|
size = 11.0
|
||||||
|
|
||||||
|
[font.bold]
|
||||||
|
family = "Hack"
|
||||||
|
style = "Bold"
|
||||||
|
|
||||||
|
[font.bold_italic]
|
||||||
|
family = "Hack"
|
||||||
|
style = "Bold Italic"
|
||||||
|
|
||||||
|
[font.italic]
|
||||||
|
family = "Hack"
|
||||||
|
style = "Italic"
|
||||||
|
|
||||||
|
[font.normal]
|
||||||
|
family = "Hack"
|
||||||
|
style = "Regular"
|
||||||
|
|
||||||
|
[font.offset]
|
||||||
|
x = 0
|
||||||
|
y = 1
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "Paste"
|
||||||
|
key = "V"
|
||||||
|
mods = "Control|Shift"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "Copy"
|
||||||
|
key = "C"
|
||||||
|
mods = "Control|Shift"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "ScrollPageUp"
|
||||||
|
key = "PageUp"
|
||||||
|
mods = "Shift"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "ScrollPageDown"
|
||||||
|
key = "PageDown"
|
||||||
|
mods = "Shift"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "ScrollToTop"
|
||||||
|
key = "Home"
|
||||||
|
mods = "Shift"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "ScrollToBottom"
|
||||||
|
key = "End"
|
||||||
|
mods = "Shift"
|
||||||
|
|
||||||
|
[scrolling]
|
||||||
|
history = 5000
|
||||||
|
|
||||||
|
[window]
|
||||||
|
opacity = 1
|
||||||
|
title = "Alacritty"
|
||||||
|
|
||||||
|
[window.class]
|
||||||
|
general = "Alacritty"
|
||||||
|
instance = "Alacritty"
|
||||||
|
|
||||||
|
[window.dimensions]
|
||||||
|
columns = 133
|
||||||
|
lines = 40
|
||||||
|
|
||||||
|
[window.padding]
|
||||||
|
x = 6
|
||||||
|
y = 6
|
12
.config/discord/settings.json
Normal file
12
.config/discord/settings.json
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"chromiumSwitches": {},
|
||||||
|
"IS_MAXIMIZED": false,
|
||||||
|
"IS_MINIMIZED": false,
|
||||||
|
"WINDOW_BOUNDS": {
|
||||||
|
"x": 110,
|
||||||
|
"y": 68,
|
||||||
|
"width": 1283,
|
||||||
|
"height": 726
|
||||||
|
},
|
||||||
|
"SKIP_HOST_UPDATE": true
|
||||||
|
}
|
246
.config/i3/config
Normal file
246
.config/i3/config
Normal file
|
@ -0,0 +1,246 @@
|
||||||
|
# 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:monospace 8
|
||||||
|
|
||||||
|
# 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:DejaVu Sans Mono 8
|
||||||
|
|
||||||
|
# Start XDG autostart .desktop files using dex. See also
|
||||||
|
# https://wiki.archlinux.org/index.php/XDG_Autostart
|
||||||
|
exec --no-startup-id dex --autostart --environment i3
|
||||||
|
|
||||||
|
# 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-fancy --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
|
||||||
|
|
||||||
|
exec_always --no-startup-id picom
|
||||||
|
exec_always --no-startup-id nitrogen --restore
|
||||||
|
exec_always --no-startup-id dunst
|
||||||
|
exec_always --no-startup-id xborders --disable-version-warning --border-red 79 --border-green 190 --border-blue 217 --border-radius 15
|
||||||
|
exec_always --no-startup-id nextcloud --background
|
||||||
|
exec --no-startup-id polybar -r
|
||||||
|
exec --no-startup-id "sh /home/vylpes/.screenlayout/default.sh"
|
||||||
|
|
||||||
|
exec --no-startup-id /usr/bin/gnome-keyring-daemon --start --components=ssh,secrets,pkcs11
|
||||||
|
|
||||||
|
# Use pactl to adjust volume in PulseAudio.
|
||||||
|
# Add "&& $refresh_i3status" if needed
|
||||||
|
set $refresh_i3status killall -SIGUSR1 polybar
|
||||||
|
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5%
|
||||||
|
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5%
|
||||||
|
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle
|
||||||
|
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
||||||
|
|
||||||
|
# Use playerctl to control playback
|
||||||
|
bindsym XF86AudioPlay exec playerctl play-pause
|
||||||
|
bindsym XF86AudioPause exec playerctl play-pause
|
||||||
|
bindsym XF86AudioNext exec playerctl next
|
||||||
|
bindsym XF86AudioPrev exec playerctl previous
|
||||||
|
|
||||||
|
# Use brightnessctl to adjust brightness
|
||||||
|
bindsym XF86MonBrightnessUp exec brightnessctl set 10%+
|
||||||
|
bindsym XF86MonBrightnessDown exec brightnessctl set 10%-
|
||||||
|
|
||||||
|
# Use Mouse+$mod to drag floating windows to their wanted position
|
||||||
|
floating_modifier $mod
|
||||||
|
|
||||||
|
# Custom keybinds
|
||||||
|
bindsym $mod+s exec --no-startup-id flameshot gui -p ~/Pictures/captures --clipboard
|
||||||
|
bindsym $mod+f exec --no-startup-id firefox
|
||||||
|
bindsym $mod+u exec --no-startup-id autorandr -c
|
||||||
|
bindsym $mod+Shift+f exec --no-startup-id firefox --private-window
|
||||||
|
bindsym $mod+Shift+z exec --no-startup-id i3lock-fancy -g -t "System Locked" -f Hack-Regular
|
||||||
|
# =====
|
||||||
|
|
||||||
|
# start a terminal
|
||||||
|
bindsym $mod+a exec alacritty
|
||||||
|
|
||||||
|
# kill focused window
|
||||||
|
bindsym $mod+Shift+c kill
|
||||||
|
|
||||||
|
# start dmenu (a program launcher)
|
||||||
|
bindsym $mod+p exec --no-startup-id "rofi -combi-modi window,drun,ssh -theme Arc-Dark -font 'hack 18' -show combi"
|
||||||
|
|
||||||
|
bindsym $mod+o exec --no-startup-id "keepmenu"
|
||||||
|
# A more modern dmenu replacement is rofi:
|
||||||
|
# bindcode $mod+40 exec "rofi -modi drun,run -show drun"
|
||||||
|
# There also is i3-dmenu-desktop which only displays applications shipping a
|
||||||
|
# .desktop file. It is a wrapper around dmenu, so you need that installed.
|
||||||
|
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
|
||||||
|
|
||||||
|
bindsym $mod+Shift+F11 exec --no-startup-id "pactl set-default-sink 0 && sh ~/.scripts/audio/get-sink-name.sh > ~/.cache/scripts/get-sink-name.txt"
|
||||||
|
bindsym $mod+Shift+F12 exec --no-startup-id "pactl set-default-sink 1 && sh ~/.scripts/audio/get-sink-name.sh > ~/.cache/scripts/get-sink-name.txt"
|
||||||
|
|
||||||
|
# change focus
|
||||||
|
bindsym $mod+h focus left
|
||||||
|
bindsym $mod+j focus down
|
||||||
|
bindsym $mod+k focus up
|
||||||
|
bindsym $mod+l 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
|
||||||
|
|
||||||
|
# change focus across monitors
|
||||||
|
bindsym $mod+period focus output right
|
||||||
|
bindsym $mod+comma focus output left
|
||||||
|
|
||||||
|
# move focused window
|
||||||
|
bindsym $mod+Shift+h move left
|
||||||
|
bindsym $mod+Shift+j move down
|
||||||
|
bindsym $mod+Shift+k move up
|
||||||
|
bindsym $mod+Shift+l 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
|
||||||
|
|
||||||
|
# move focused window across monitors
|
||||||
|
bindsym $mod+Shift+greater move container to output right
|
||||||
|
bindsym $mod+Shift+less move container to output left
|
||||||
|
|
||||||
|
# split in horizontal orientation
|
||||||
|
bindsym $mod+Shift+b split h
|
||||||
|
|
||||||
|
# split in vertical orientation
|
||||||
|
bindsym $mod+Shift+v split v
|
||||||
|
|
||||||
|
# enter fullscreen mode for the focused container
|
||||||
|
bindsym $mod+Mod1+f fullscreen toggle
|
||||||
|
|
||||||
|
# change container layout (stacked, tabbed, toggle split)
|
||||||
|
bindsym $mod+Mod1+s layout stacking
|
||||||
|
bindsym $mod+Mod1+w layout tabbed
|
||||||
|
bindsym $mod+Mod1+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+Mod1+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
|
||||||
|
|
||||||
|
# keyboard layouts
|
||||||
|
bindsym $mod+Shift+F1 exec --no-startup-id setxkbmap -layout us
|
||||||
|
bindsym $mod+Shift+F2 exec --no-startup-id setxkbmap -layout gb
|
||||||
|
|
||||||
|
# reload the configuration file
|
||||||
|
bindsym $mod+Mod1+r 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 "bash /home/vylpes/scripts/system/power.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 h resize shrink width 10 px or 10 ppt
|
||||||
|
bindsym j resize grow height 10 px or 10 ppt
|
||||||
|
bindsym k resize shrink height 10 px or 10 ppt
|
||||||
|
bindsym l 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"
|
||||||
|
|
||||||
|
# Windows to force floating
|
||||||
|
for_window [class="Plexamp"] floating enable
|
||||||
|
|
||||||
|
# Start i3bar to display a workspace bar (plus the system information i3status
|
||||||
|
# finds out, if available)
|
||||||
|
|
||||||
|
# Gaps
|
||||||
|
gaps inner 5
|
||||||
|
gaps outer -5
|
||||||
|
gaps horizontal 5
|
||||||
|
gaps vertical 5
|
||||||
|
gaps top 5
|
||||||
|
gaps right 5
|
||||||
|
gaps bottom 5
|
||||||
|
gaps left 5
|
||||||
|
|
||||||
|
default_border pixel 1
|
||||||
|
client.focused #555555 #555555 #ffffff #2e9ef4 #63C5DA
|
||||||
|
|
9
.config/nvim/coc-settings.json
Normal file
9
.config/nvim/coc-settings.json
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
"languageserver": {
|
||||||
|
"csharp_ls": {
|
||||||
|
"command": "csharp-ls",
|
||||||
|
"filetypes": ["cs"],
|
||||||
|
"rootPatterns": ["*.csproj", ".vim/", ".git/", ".hg/"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
143
.config/nvim/init.vim
Normal file
143
.config/nvim/init.vim
Normal file
|
@ -0,0 +1,143 @@
|
||||||
|
let mapleader = " "
|
||||||
|
let g:copilot_enabled = v:false
|
||||||
|
|
||||||
|
set nocompatible
|
||||||
|
set showmatch
|
||||||
|
set ignorecase
|
||||||
|
set mouse=v
|
||||||
|
set hlsearch
|
||||||
|
set incsearch
|
||||||
|
set tabstop=4
|
||||||
|
set softtabstop=4
|
||||||
|
set expandtab
|
||||||
|
set shiftwidth=4
|
||||||
|
set autoindent
|
||||||
|
set number
|
||||||
|
set relativenumber
|
||||||
|
set wildmode=longest,list
|
||||||
|
set cc=80
|
||||||
|
filetype plugin indent on
|
||||||
|
syntax on
|
||||||
|
set mouse=a
|
||||||
|
set clipboard=unnamedplus
|
||||||
|
filetype plugin on
|
||||||
|
set cursorline
|
||||||
|
set ttyfast
|
||||||
|
set nofixeol
|
||||||
|
|
||||||
|
let data_dir = has('nvim') ? stdpath('data') . '/site' : '~/.vim'
|
||||||
|
if empty(glob(data_dir . '/autoload/plug.vim'))
|
||||||
|
silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
|
||||||
|
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
|
||||||
|
endif
|
||||||
|
|
||||||
|
call plug#begin("~/.vim/plugged")
|
||||||
|
Plug 'dracula/vim'
|
||||||
|
Plug 'ryanoasis/vim-devicons'
|
||||||
|
" Plug 'SirVer/ultisnips'
|
||||||
|
Plug 'honza/vim-snippets'
|
||||||
|
Plug 'scrooloose/nerdtree'
|
||||||
|
Plug 'preservim/nerdcommenter'
|
||||||
|
Plug 'mhinz/vim-startify'
|
||||||
|
Plug 'neoclide/coc.nvim', {'branch': 'release'}
|
||||||
|
Plug 'nvim-lua/plenary.nvim'
|
||||||
|
Plug 'ThePrimeagen/harpoon'
|
||||||
|
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
|
||||||
|
Plug 'junegunn/fzf.vim'
|
||||||
|
Plug 'neovim/nvim-lspconfig'
|
||||||
|
Plug 'jose-elias-alvarez/null-ls.nvim'
|
||||||
|
Plug 'MunifTanjim/prettier.nvim'
|
||||||
|
Plug 'github/copilot.vim'
|
||||||
|
Plug 'CopilotC-Nvim/CopilotChat.nvim', { 'branch': 'main' }
|
||||||
|
call plug#end()
|
||||||
|
|
||||||
|
lua << EOF
|
||||||
|
local prompts = require('CopilotChat.prompts')
|
||||||
|
local select = require('CopilotChat.select')
|
||||||
|
|
||||||
|
require("CopilotChat").setup {
|
||||||
|
debug = false,
|
||||||
|
|
||||||
|
question_header = '## User ',
|
||||||
|
answer_header = '## Copilot ',
|
||||||
|
error_header = '## Error ',
|
||||||
|
separator = '---',
|
||||||
|
|
||||||
|
selection = function(source)
|
||||||
|
return select.visual(source) or select.line(source)
|
||||||
|
end,
|
||||||
|
|
||||||
|
window = {
|
||||||
|
layout = 'float',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
if (has("termguicolors"))
|
||||||
|
set termguicolors
|
||||||
|
endif
|
||||||
|
syntax enable
|
||||||
|
colorscheme dracula
|
||||||
|
|
||||||
|
set splitright
|
||||||
|
set splitbelow
|
||||||
|
|
||||||
|
inoremap <A-j> <Esc>:m .+1<CR>==gi
|
||||||
|
inoremap <A-k> <Esc>:m .-2<CR>==gi
|
||||||
|
vnoremap <A-j> :m '>+1<CR>gv=gv
|
||||||
|
vnoremap <A-k> :m '<-2<CR>gv=gv
|
||||||
|
|
||||||
|
nnoremap <A-h> <C-W>H
|
||||||
|
nnoremap <A-j> <C-W>J
|
||||||
|
nnoremap <A-k> <C-W>K
|
||||||
|
nnoremap <A-l> <C-W>L
|
||||||
|
|
||||||
|
nnoremap <C-h> <C-w>h
|
||||||
|
nnoremap <C-j> <C-w>j
|
||||||
|
nnoremap <C-k> <C-w>k
|
||||||
|
nnoremap <C-l> <C-w>l
|
||||||
|
|
||||||
|
nnoremap gf :vert winc f<cr>
|
||||||
|
|
||||||
|
inoremap <silent><expr> <cr> coc#pum#visible() ? coc#_select_confirm() : "\<C-g>u\<CR>"
|
||||||
|
inoremap <expr> <Tab> coc#pum#visible() ? coc#pum#next(1) : "\<Tab>"
|
||||||
|
inoremap <expr> <S-Tab> coc#pum#visible() ? coc#pum#prev(1) : "\<S-Tab>"
|
||||||
|
|
||||||
|
nnoremap <leader>n :NERDTreeFocus<CR>
|
||||||
|
nnoremap <C-n> :NERDTree<CR>
|
||||||
|
nnoremap <C-t> :NERDTreeToggle<CR>
|
||||||
|
nnoremap <C-f> :NERDTreeFind<CR>
|
||||||
|
nnoremap <leader>ee :Ex<CR>
|
||||||
|
|
||||||
|
nnoremap <leader>ha <cmd>lua require("harpoon.mark").add_file()<CR>
|
||||||
|
nnoremap <leader>hh <cmd>lua require("harpoon.ui").toggle_quick_menu()<CR>
|
||||||
|
nnoremap <leader>1 <cmd>lua require("harpoon.ui").nav_file(1)<CR>
|
||||||
|
nnoremap <leader>2 <cmd>lua require("harpoon.ui").nav_file(2)<CR>
|
||||||
|
nnoremap <leader>3 <cmd>lua require("harpoon.ui").nav_file(3)<CR>
|
||||||
|
nnoremap <leader>4 <cmd>lua require("harpoon.ui").nav_file(4)<CR>
|
||||||
|
nnoremap <A-[> <cmd>lua require("harpoon.ui").nav_prev()<CR>
|
||||||
|
nnoremap <A-]> <cmd>lua require("harpoon.ui").nav_next()<CR>
|
||||||
|
|
||||||
|
nnoremap <leader>ff :FZF<CR>
|
||||||
|
|
||||||
|
nnoremap mm :nohl<CR>
|
||||||
|
nnoremap ml :%s/\r//g<CR>
|
||||||
|
|
||||||
|
nnoremap <leader>yb :!yarn build<CR>
|
||||||
|
nnoremap <leader>yi :!yarn install<CR>
|
||||||
|
nnoremap <leader>ys :!yarn start<CR>
|
||||||
|
nnoremap <leader>yt :!yarn test<CR>
|
||||||
|
|
||||||
|
nnoremap <leader>dr :!dotnet run<CR>
|
||||||
|
|
||||||
|
nnoremap <leader>p <Plug>(prettier-format)<CR>
|
||||||
|
|
||||||
|
nnoremap <C-p> :CopilotChatToggle<CR>
|
||||||
|
nnoremap <leader>ps :CopilotChatStop<CR>
|
||||||
|
nnoremap <leader>pr :CopilotChatReset<CR>
|
||||||
|
vnoremap <leader>pe :CopilotChatExplain<CR>
|
||||||
|
vnoremap <leader>pr :CopilotChatReview<CR>
|
||||||
|
vnoremap <leader>pf :CopilotChatFix<CR>
|
||||||
|
vnoremap <leader>po :CopilotChatOptimize<CR>
|
||||||
|
vnoremap <leader>pd :CopilotChatDocs<CR>
|
||||||
|
vnoremap <leader>pt :CopilotChatTests<CR>
|
431
.config/picom/picom.conf
Normal file
431
.config/picom/picom.conf
Normal file
|
@ -0,0 +1,431 @@
|
||||||
|
#################################
|
||||||
|
# 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 = false;
|
||||||
|
|
||||||
|
# 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;
|
||||||
|
|
||||||
|
# Avoid drawing shadows on dock/panel windows. This option is deprecated,
|
||||||
|
# you should use the *wintypes* option in your config file instead.
|
||||||
|
#
|
||||||
|
# no-dock-shadow = false
|
||||||
|
|
||||||
|
# Don't draw shadows on drag-and-drop windows. This option is deprecated,
|
||||||
|
# you should use the *wintypes* option in your config file instead.
|
||||||
|
#
|
||||||
|
# no-dnd-shadow = false
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Do not paint shadows on shaped windows. Note shaped windows
|
||||||
|
# here means windows setting its shape through X Shape extension.
|
||||||
|
# Those using ARGB background is beyond our control.
|
||||||
|
# Deprecated, use
|
||||||
|
# shadow-exclude = 'bounding_shaped'
|
||||||
|
# or
|
||||||
|
# shadow-exclude = 'bounding_shaped && !rounded_corners'
|
||||||
|
# instead.
|
||||||
|
#
|
||||||
|
# shadow-ignore-shaped = ''
|
||||||
|
|
||||||
|
# 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 = 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.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 = 1
|
||||||
|
inactive-opacity = 1;
|
||||||
|
|
||||||
|
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
|
||||||
|
# frame-opacity = 1.0
|
||||||
|
frame-opacity = 0.7;
|
||||||
|
|
||||||
|
# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
|
||||||
|
# menu-opacity = 1.0
|
||||||
|
|
||||||
|
# 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 always 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 = []
|
||||||
|
|
||||||
|
#################################
|
||||||
|
# Corners #
|
||||||
|
#################################
|
||||||
|
|
||||||
|
corner-radius = 15
|
||||||
|
|
||||||
|
|
||||||
|
#################################
|
||||||
|
# Background-Blurring #
|
||||||
|
#################################
|
||||||
|
|
||||||
|
|
||||||
|
# Parameters for background blurring, see the *BLUR* section for more information.
|
||||||
|
# blur-method =
|
||||||
|
# blur-size = 12
|
||||||
|
#
|
||||||
|
# blur-deviation = false
|
||||||
|
|
||||||
|
# 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",
|
||||||
|
"role = 'xborder'",
|
||||||
|
];
|
||||||
|
|
||||||
|
#################################
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
|
||||||
|
# boost performance. This should not be used with
|
||||||
|
# vsync drm/opengl/opengl-oml
|
||||||
|
# as they essentially does sw-opti's job already,
|
||||||
|
# unless you wish to specify a lower refresh rate than the actual value.
|
||||||
|
#
|
||||||
|
# sw-opti =
|
||||||
|
|
||||||
|
# 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; }
|
||||||
|
};
|
||||||
|
|
208
.config/polybar/config.ini
Normal file
208
.config/polybar/config.ini
Normal file
|
@ -0,0 +1,208 @@
|
||||||
|
;==========================================================
|
||||||
|
;
|
||||||
|
;
|
||||||
|
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
|
||||||
|
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
|
||||||
|
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
|
||||||
|
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
|
||||||
|
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
|
||||||
|
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
|
||||||
|
;
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/polybar/polybar
|
||||||
|
;
|
||||||
|
; The README contains a lot of information
|
||||||
|
;
|
||||||
|
;==========================================================
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
background = #282A2E
|
||||||
|
background-alt = #373B41
|
||||||
|
foreground = #C5C8C6
|
||||||
|
primary = #63C5DA
|
||||||
|
secondary = #8ABEB7
|
||||||
|
alert = #A54242
|
||||||
|
disabled = #707880
|
||||||
|
|
||||||
|
[bar/top]
|
||||||
|
width = 100%
|
||||||
|
height = 24pt
|
||||||
|
radius = 6
|
||||||
|
|
||||||
|
; dpi = 96
|
||||||
|
|
||||||
|
background = ${colors.background}
|
||||||
|
foreground = ${colors.foreground}
|
||||||
|
|
||||||
|
line-size = 3pt
|
||||||
|
|
||||||
|
border-size = 4pt
|
||||||
|
border-bottom-size = 0pt
|
||||||
|
border-color = #00000000
|
||||||
|
|
||||||
|
padding-left = 0
|
||||||
|
padding-right = 1
|
||||||
|
|
||||||
|
module-margin = 1
|
||||||
|
|
||||||
|
separator = |
|
||||||
|
separator-foreground = ${colors.disabled}
|
||||||
|
|
||||||
|
font-0 = Hack;2
|
||||||
|
font-1 = Font Awesome 6 Free:style=Regular;2
|
||||||
|
font-2 = Font Awesome 6 Free:style=Solid;2
|
||||||
|
|
||||||
|
modules-left = xworkspaces xwindow
|
||||||
|
modules-right = filesystem pulseaudio-control-output xkeyboard memory cpu battery tray date
|
||||||
|
|
||||||
|
cursor-click = pointer
|
||||||
|
cursor-scroll = ns-resize
|
||||||
|
|
||||||
|
enable-ipc = true
|
||||||
|
|
||||||
|
; tray-position = right
|
||||||
|
|
||||||
|
; wm-restack = generic
|
||||||
|
; wm-restack = bspwm
|
||||||
|
; wm-restack = i3
|
||||||
|
|
||||||
|
; override-redirect = true
|
||||||
|
|
||||||
|
[module/xworkspaces]
|
||||||
|
type = internal/xworkspaces
|
||||||
|
|
||||||
|
label-active = %name%
|
||||||
|
label-active-background = ${colors.background-alt}
|
||||||
|
label-active-underline= ${colors.primary}
|
||||||
|
label-active-padding = 1
|
||||||
|
|
||||||
|
label-occupied = %name%
|
||||||
|
label-occupied-padding = 1
|
||||||
|
|
||||||
|
label-urgent = %name%
|
||||||
|
label-urgent-background = ${colors.alert}
|
||||||
|
label-urgent-padding = 1
|
||||||
|
|
||||||
|
label-empty = %name%
|
||||||
|
label-empty-foreground = ${colors.disabled}
|
||||||
|
label-empty-padding = 1
|
||||||
|
|
||||||
|
[module/xwindow]
|
||||||
|
type = internal/xwindow
|
||||||
|
label = %title:0:60:...%
|
||||||
|
|
||||||
|
[module/filesystem]
|
||||||
|
type = internal/fs
|
||||||
|
interval = 25
|
||||||
|
|
||||||
|
mount-0 = /
|
||||||
|
|
||||||
|
label-mounted = %{F#63C5DA}%mountpoint%%{F-} %percentage_used%%
|
||||||
|
|
||||||
|
label-unmounted = %mountpoint% not mounted
|
||||||
|
label-unmounted-foreground = ${colors.disabled}
|
||||||
|
|
||||||
|
[module/pulseaudio]
|
||||||
|
type = internal/pulseaudio
|
||||||
|
|
||||||
|
format-volume-prefix = "VOL "
|
||||||
|
format-volume-prefix-foreground = ${colors.primary}
|
||||||
|
format-volume = <label-volume>
|
||||||
|
|
||||||
|
label-volume = %percentage%%
|
||||||
|
|
||||||
|
label-muted = muted
|
||||||
|
label-muted-foreground = ${colors.disabled}
|
||||||
|
|
||||||
|
[module/pulseaudio-control-output]
|
||||||
|
type = custom/script
|
||||||
|
tail = true
|
||||||
|
exec = pulseaudio-control --format 'VOL $VOL_LEVEL%' listen
|
||||||
|
|
||||||
|
click-right = exec pavucontrol &
|
||||||
|
click-left = pulseaudio-control togmute
|
||||||
|
click-middle = pulseaudio-control next-node
|
||||||
|
scroll-up = pulseaudio-control --volume-max 100 up
|
||||||
|
scroll-down = pulseaudio-control --volume-max 100 down
|
||||||
|
|
||||||
|
[module/xkeyboard]
|
||||||
|
type = internal/xkeyboard
|
||||||
|
blacklist-0 = num lock
|
||||||
|
|
||||||
|
label-layout = %layout%
|
||||||
|
label-layout-foreground = ${colors.primary}
|
||||||
|
|
||||||
|
label-indicator-padding = 2
|
||||||
|
label-indicator-margin = 1
|
||||||
|
label-indicator-foreground = ${colors.background}
|
||||||
|
label-indicator-background = ${colors.secondary}
|
||||||
|
|
||||||
|
[module/memory]
|
||||||
|
type = internal/memory
|
||||||
|
interval = 2
|
||||||
|
format-prefix = "RAM "
|
||||||
|
format-prefix-foreground = ${colors.primary}
|
||||||
|
label = %percentage_used:2%%
|
||||||
|
|
||||||
|
[module/cpu]
|
||||||
|
type = internal/cpu
|
||||||
|
interval = 2
|
||||||
|
format-prefix = "CPU "
|
||||||
|
format-prefix-foreground = ${colors.primary}
|
||||||
|
label = %percentage:2%%
|
||||||
|
|
||||||
|
[network-base]
|
||||||
|
type = internal/network
|
||||||
|
interval = 5
|
||||||
|
format-connected = <label-connected>
|
||||||
|
format-disconnected = <label-disconnected>
|
||||||
|
label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected
|
||||||
|
|
||||||
|
[module/eth]
|
||||||
|
inherit = network-base
|
||||||
|
interface-type = wired
|
||||||
|
label-connected = %{F#63C5DA}%ifname%%{F-} %local_ip%
|
||||||
|
|
||||||
|
[module/battery]
|
||||||
|
type = internal/battery
|
||||||
|
; ls -1 /sys/class/power_supply/
|
||||||
|
battery = BAT1
|
||||||
|
adapter = ACAD
|
||||||
|
|
||||||
|
format-charging = <ramp-capacity> <label-charging>
|
||||||
|
format-discharging = <ramp-capacity> <label-discharging>
|
||||||
|
|
||||||
|
label-charging = %{T3}%{T-} %percentage%
|
||||||
|
label-discharging = %percentage%
|
||||||
|
label-full = Fully charged
|
||||||
|
label-low = BATTERY LOW
|
||||||
|
|
||||||
|
ramp-capacity-0 = %{T3}%{T-}
|
||||||
|
ramp-capacity-1 = %{T3}%{T-}
|
||||||
|
ramp-capacity-2 = %{T3}%{T-}
|
||||||
|
ramp-capacity-3 = %{T3}%{T-}
|
||||||
|
ramp-capacity-4 = %{T3}%{T-}
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 1
|
||||||
|
|
||||||
|
date = %a %d %b %H:%M
|
||||||
|
date-alt = %Y-%m-%d %H:%M:%S
|
||||||
|
|
||||||
|
label = %date%
|
||||||
|
label-foreground = ${colors.primary}
|
||||||
|
|
||||||
|
[module/tray]
|
||||||
|
type = internal/tray
|
||||||
|
|
||||||
|
format-margin = 8px
|
||||||
|
tray-spacing = 8px
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
screenchange-reload = true
|
||||||
|
pseudo-transparency = true
|
||||||
|
|
||||||
|
; vim:ft=dosini
|
||||||
|
|
22
.config/yt-dlp/config
Normal file
22
.config/yt-dlp/config
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
# Output format: album/tracks.format
|
||||||
|
-o "%(album,playlist_title)U/%(track_number,playlist_index)s - %(title)U.%(ext)s"
|
||||||
|
--windows-filenames
|
||||||
|
# --restrict-filenames
|
||||||
|
|
||||||
|
# Extract audio
|
||||||
|
-f bestaudio
|
||||||
|
--extract-audio
|
||||||
|
--audio-format mp3
|
||||||
|
|
||||||
|
# Thumbnail squared
|
||||||
|
--convert-thumbnails png
|
||||||
|
--ppa "ThumbnailsConvertor+ffmpeg_o:-c:v png -vf crop=\"'if(gt(ih,iw),iw,ih)':'if(gt(iw,ih),ih,iw)'\""
|
||||||
|
--embed-thumbnail
|
||||||
|
|
||||||
|
# Metadata, with playlist number as track number if the latter is missing
|
||||||
|
--embed-metadata
|
||||||
|
--parse-metadata "playlist_index:%(track_number)s"
|
||||||
|
|
||||||
|
# Misc
|
||||||
|
--no-overwrites
|
||||||
|
--concurrent-fragments 4
|
1
.xinitrc
Normal file
1
.xinitrc
Normal file
|
@ -0,0 +1 @@
|
||||||
|
exec i3
|
12
scripts/audio/get-sink-name.sh
Normal file
12
scripts/audio/get-sink-name.sh
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
SINK=$(pactl get-default-sink)
|
||||||
|
|
||||||
|
if [ $SINK = "alsa_output.pci-0000_1f_00.3.analog-stereo" ]; then
|
||||||
|
echo "Speakers"
|
||||||
|
elif [ $SINK = "alsa_output.usb-C-Media_Electronics_Inc._USB_Audio_Device-00.analog-stereo" ]; then
|
||||||
|
echo "Headphones"
|
||||||
|
else
|
||||||
|
echo "-"
|
||||||
|
fi
|
||||||
|
|
18
scripts/system/power.sh
Normal file
18
scripts/system/power.sh
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
option=$(printf "sleep\nlogout\nshutdown\nrestart" | rofi -dmenu -theme Arc-Dark -font 'hack 18')
|
||||||
|
|
||||||
|
if [ "$option" = "sleep" ];
|
||||||
|
then
|
||||||
|
i3lock-fancy -g -t "System Locked" -f Hack-Regular
|
||||||
|
systemctl suspend
|
||||||
|
elif [ "$option" = "logout" ];
|
||||||
|
then
|
||||||
|
i3-msg exit
|
||||||
|
elif [ "$option" = "shutdown" ];
|
||||||
|
then
|
||||||
|
poweroff
|
||||||
|
elif [ "$option" = "restart" ];
|
||||||
|
then
|
||||||
|
reboot
|
||||||
|
fi
|
Loading…
Reference in a new issue