├── i3 ├── notes_script.sh ├── i3blocks-scripts │ └── time ├── config-i3blocks ├── README.md ├── 40-libinput.conf.mouseconfig ├── config-i3-statusbar-version2 ├── compton.conf ├── XRESOURCES-for-all ├── config-i3-statusbar ├── dunst │ └── dunstrc ├── config-i3-with-i3blocks └── config-i3 ├── stable ├── GUI_configurations │ ├── i3blocks-scripts │ │ ├── mae.sh │ │ ├── cpu │ │ ├── Powerbutton │ │ ├── time │ │ ├── volume │ │ ├── wifi │ │ ├── battery │ │ ├── weather │ │ ├── memory │ │ └── cpu_usage │ ├── linkpolybar.sh │ ├── polybar │ ├── i3blocks.conf │ ├── i3status │ ├── compton │ ├── XRESOURCES-for-all │ ├── polybar_config.conf │ └── dunst ├── README.md ├── fullbuild_for_ubuntu.sh ├── i3 │ ├── bar_polybar.partofconfig_i3 │ ├── variables.partofconfig_i3 │ ├── i3gaps.partofconfig_i3 │ ├── features.partofconfig_i3 │ ├── rules.partofconfig_i3 │ ├── movement.partofconfig_i3 │ ├── bar_i3blocks.partofconfig_i3 │ ├── bar_i3status.partofconfig_i3 │ ├── workspaces.partofconfig_i3 │ ├── binds.partofconfig_i3 │ └── i3conf_14-02-20#23:25 ├── 40-libinput.conf.mouseconfig ├── update_links.sh └── build_install.sh ├── img ├── Hyper.png ├── Xterm.png ├── Alacritty.png └── Doom_Emacs.png ├── link_i3-with-i3status ├── link_i3-with-i3blocks ├── .gitignore ├── readytopush.sh ├── TODO ├── onlyconfig.sh ├── terminals ├── xfce4-terminalrc ├── Xresources-xterm ├── config_tilda ├── hyper.js └── alacritty.yml ├── editors ├── doom.d │ ├── config.el │ ├── packages.el │ └── init.el ├── neovimrc └── vimrc ├── i3-rainy_manual.md ├── README.md ├── tmux.conf ├── install_programms_arch.sh ├── zshrc ├── i3wm_install.sh ├── install_programms_ubuntu.sh ├── ProgrammerTweaker_modules.py └── ProgrammerTweaker.py /i3/notes_script.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/mae.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | chmod +x ./* 3 | -------------------------------------------------------------------------------- /img/Hyper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Username77177/Configurations/HEAD/img/Hyper.png -------------------------------------------------------------------------------- /img/Xterm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Username77177/Configurations/HEAD/img/Xterm.png -------------------------------------------------------------------------------- /img/Alacritty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Username77177/Configurations/HEAD/img/Alacritty.png -------------------------------------------------------------------------------- /img/Doom_Emacs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Username77177/Configurations/HEAD/img/Doom_Emacs.png -------------------------------------------------------------------------------- /link_i3-with-i3status: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | ln -sfr ~/Configurations/i3/config-i3 ~/.config/i3/config 3 | -------------------------------------------------------------------------------- /link_i3-with-i3blocks: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | ln -sfr ~/Configurations/i3/config-i3-with-i3blocks ~/.config/i3/config 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | somecodes 2 | readytopush.sh 3 | __pycache__ 4 | .oh-my-zsh 5 | ProgrammerTweaker.py 6 | stable/i3conf_* 7 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/cpu: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | case $BLOCK_BUTTON in 4 | 1) notify-send "CPU USE" `mpstat` 5 | esac 6 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/Powerbutton: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | case $BLOCK_BUTTON in 4 | 1) shutdown -h now;; 5 | 2) shutdown -r now;; 6 | 3) systemctl suspend 7 | esac 8 | -------------------------------------------------------------------------------- /stable/GUI_configurations/linkpolybar.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mkdir ~/.config/polybar 4 | ln -sfr ./polybar $HOME/.config/polybar/launch.sh 5 | ln -sfr ./polybar_config.conf ~/.config/polybar/config 6 | -------------------------------------------------------------------------------- /stable/README.md: -------------------------------------------------------------------------------- 1 | # Стабильная версия + tar.gz 2 | Тут хранится стабильная версия i3-rainy. 3 | Установка: `curl https://www.github.com/username77177/Configurations/master/stable/stable-release.tar.gz` 4 | -------------------------------------------------------------------------------- /stable/fullbuild_for_ubuntu.sh: -------------------------------------------------------------------------------- 1 | ./build_install.sh 2 | ln -sfr 40-libinput.conf.mouseconfig /usr/share/X11/xorg.conf.d/40-libibput.conf 3 | ln -s /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/40-libinput.conf 4 | cd ~/Configurations 5 | ./install_programms_ubuntu.sh 6 | -------------------------------------------------------------------------------- /i3/i3blocks-scripts/time: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | DATE=$(date +"%d %b, %R:%S") 3 | echo $DATE 4 | # Что произойдёт, если кликнуть на блок (левый клик; колесо; правый клик) 5 | case $BLOCK_BUTTON in 6 | 1) date ;; # left click = previous so 7 | esac 8 | 9 | #case $BLOCK_BUTTON in 10 | #1) ;; #ЛЕВЫЙ 11 | #2) ;; #СРЕДНИЙ 12 | #3) ;; #ПРАВЫЙ 13 | #esac 14 | -------------------------------------------------------------------------------- /i3/config-i3blocks: -------------------------------------------------------------------------------- 1 | separator_block_width=15 2 | markup=pango 3 | # Переменной $BLOCK_NAME присваивается имя блока, в котором она выполняется 4 | command=~/Configurations/i3/i3blocks-scripts/$BLOCK_NAME 5 | # Для вставки в span'ы 6 | 7 | 8 | [time] 9 | # Тут просто будет исполняться файл time в ~/Configurations/i3/i3blocks-scripts/ 10 | 11 | full_text=$command 12 | 13 | interval=5 14 | -------------------------------------------------------------------------------- /stable/GUI_configurations/polybar: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Terminate already running bar instances 4 | killall -q polybar 5 | # If all your bars have ipc enabled, you can also use 6 | polybar-msg cmd quit 7 | 8 | # Launch bar1 and bar2 9 | echo "---" | tee -a /tmp/polybar1.log /tmp/polybar2.log 10 | polybar bar1 >>/tmp/polybar1.log 2>&1 & 11 | polybar bar2 >>/tmp/polybar2.log 2>&1 & 12 | 13 | echo "Bars launched..." 14 | -------------------------------------------------------------------------------- /readytopush.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | clear 3 | git add ./ 4 | git status 5 | sleep 1 6 | echo "Commit? (1 - yes, anything else - no)" 7 | read yon 8 | dt=$(date '+%d/%m/%Y %H:%M:%S'); 9 | if [[ $yon = "1" ]] 10 | then 11 | echo "Maybe some comment? (Not necessarily)" 12 | read comment 13 | if [[ $comment = "" ]] 14 | then 15 | git commit -m "$dt" 16 | else 17 | git commit -m "$dt | $comment" 18 | fi 19 | 20 | echo "Push? (1 - Yes, 0 - No)" 21 | read yon 22 | if [[ $yon = "1" ]] 23 | then 24 | xclip -sel clip ./somecodes 25 | git push origin master 26 | fi 27 | fi 28 | 29 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/time: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | DATE=$(date +"%d %b, %R:%S") 3 | echo $DATE 4 | # Что произойдёт, если кликнуть на блок (левый клик; колесо; правый клик) 5 | case $BLOCK_BUTTON in 6 | 1) notify-send "Информация о сегодняшнем дне" "Сегодня: $(date +%d/%m/%Y)\nДень недели: $(date +%A)\nТочное время: $(date +%R:%S)\n";; 7 | 2) ;; 8 | 3) i3-msg workspace "Near Zero: Float Desktop"; exec gnome-calendar; floatting enable ;; 9 | esac 10 | 11 | #case $BLOCK_BUTTON in 12 | #1) ;; #ЛЕВЫЙ 13 | #2) ;; #СРЕДНИЙ 14 | #3) ;; #ПРАВЫЙ 15 | #4) ;; #КОЛЕСИКО ВВЕРХ 16 | #5) ;; #КОЛЕСИКО ВНИЗ 17 | #esac 18 | -------------------------------------------------------------------------------- /TODO: -------------------------------------------------------------------------------- 1 | # Что нужно сделать 2 | 3 | - Портировать скрипт i3 на Arch 4 | + Выложить обновление на Github 5 | + Сделать пустой воркспейс с клавишей Win+X, для того, чтобы показать рабочий стол 6 | + Сделать воркспейсы для приложений заметок, и отдельный воркспейс для Nautilus, чтобы он сразу слаживался табами 7 | + Сделать Rofi полупрозрачным 8 | + Сделать воркспейс, где все окна превращаются в float, а также лёгкую возможность переносить их туда 9 | + Пофиксить перенос окон 10 | - Сделать дополнительный вариант топ-бара на i3blocks 11 | - Написать скрипт для заметок (их вывода через сообщение на $mod + T (tasks), а также быстрого вычёркивания их из списка и занесение в него) 12 | -------------------------------------------------------------------------------- /onlyconfig.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #TMUX 3 | mv ~/.{tmux.conf,tmux.conf.old} 4 | ln -sfr ./tmux.conf ~/.tmux.conf 5 | #SPACEMACS 6 | echo "If you do not have Spacemacs, error - normal situation with mv" 7 | mv ~/.{spacemacs,spacemacs.old} 8 | ln -sfr ./editors/spacemacs ~/.spacemacs 9 | #DOOM EMACS 10 | echo "If you do not have Doom Emacs, error - normal situation with mv and ~/.doom.d/bin/doom refresh" 11 | mv ~/.doom.d/ ~/.doom.d.old 12 | ln -sfr ./editors/doom.d ~/.doom.d 13 | ~/.emacs.d/bin/doom refresh 14 | #VIM 15 | mv ~/.{vimrc,vimrc.old} 16 | ln -sfr ./editors/vimrc ~/.vimrc 17 | #NEOVIM 18 | mv ~/.config/nvim/init.vim ~/.config/nvim/init.old 19 | ln -sfr ./editors/neovimrc ~/.config/nvim/init.vim 20 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/volume: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # From https://github.com/LukeSmithxyz/voidrice/blob/master/.local/bin/statusbar/volume 3 | case $BLOCK_BUTTON in 4 | 2) amixer sset Master toggle ;; 5 | 4) amixer sset Master 5%+ >/dev/null 2>/dev/null ;; 6 | 5) amixer sset Master 5%- >/dev/null 2>/dev/null ;; 7 | esac 8 | 9 | volstat="$(amixer get Master)" 10 | 11 | echo "$volstat" | grep "\[off\]" >/dev/null && printf "🔇\\n" && exit 12 | 13 | vol=$(echo "$volstat" | grep -o "\[[0-9]\+%\]" | sed 's/[^0-9]*//g') 14 | 15 | if [ "$vol" -gt "70" ]; then 16 | icon="🔊" 17 | elif [ "$vol" -lt "30" ]; then 18 | icon="🔈" 19 | else 20 | icon="🔉" 21 | fi 22 | 23 | printf "%s %s%%\\n" "$icon" "$vol" 24 | -------------------------------------------------------------------------------- /i3/README.md: -------------------------------------------------------------------------------- 1 | # Для чего нужны эти файлы? 2 | 3 | * config-i3 - *главная конфигурация i3* 4 | * config-i3-with-i3blocks - *та же конфигурация, только вместо i3status, мы установили i3blocks* 5 | * 40-libinput.conf.mouseconfig - *конфигурация тачпада для ноутбуков* 6 | * XRESOURCES-for-all - *темы для Xterm и Rofi, а также фишки для них (по типу копирования, которого по умолчанию нет в Xterm)* 7 | * notes_script.sh - *скрипт для создания заметок* 8 | * compton.conf - *настройки для compton (утилита для анимаций переходов и так далее)* 9 | * dunst -*конфигурации для dunst (отвечает за уведомления)* 10 | * config-i3-statusbar - *конфигурация i3status* 11 | * config-i3-statusbar-version2 - *конфигурация i3status с сплошными цветами (чуть более красивая)* 12 | * i3blocks-scripts - скрипты для i3blocks 13 | -------------------------------------------------------------------------------- /stable/i3/bar_polybar.partofconfig_i3: -------------------------------------------------------------------------------- 1 | # ____ 2 | #| __ ) __ _ _ __ 3 | #| _ \ / _` || '__| 4 | #| |_) || (_| || | 5 | #|____/ \__,_||_| 6 | # Настройка топ-бара ( polybar ) 7 | 8 | exec_always --no-startup-id ~/.config/polybar/launch.sh 9 | # Color Palette https://flatuicolors.com/palette/us 10 | 11 | # Темы для границ окон 12 | # Thanks, addy-dclxvi 13 | # https://github.com/addy-dclxvi/i3-starterpack/blob/master/.config/i3/config 14 | 15 | # colour of border, background, text, indicator, and child_border 16 | client.focused #bf616a #2f343f #d8dee8 #bf616a #d8dee8 17 | client.focused_inactive #2f343f #2f343f #d8dee8 #2f343f #2f343f 18 | client.unfocused #2f343f #2f343f #d8dee8 #2f343f #2f343f 19 | client.urgent #2f343f #2f343f #d8dee8 #2f343f #2f343f 20 | client.placeholder #2f343f #2f343f #d8dee8 #2f343f #2f343f 21 | client.background #2f343f 22 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/wifi: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | name=`nmcli dev wifi | awk '/*/ {print $2}'` 3 | # If wifi not connected (nmcli == "") 4 | if [[ $name = "" ]] 5 | then 6 | echo Wifi is not connected 7 | fi 8 | 9 | quality=$(nmcli dev wifi | awk '/*/ {print $8}') 10 | if [[ $quality = "▂▄▆█" ]] 11 | then 12 | quality=''$quality'' 13 | 14 | elif [[ $quality = "▂▄▆_" ]] 15 | then 16 | quality=''$quality'' 17 | elif [[ $quality = "▂▄__" ]] 18 | then 19 | quality=''$quality'' 20 | elif [[ $quality = "▂___" ]] 21 | then 22 | quality=''$quality'' 23 | fi 24 | echo $name $quality 25 | 26 | case $BLOCK_BUTTON in 27 | 1) if [[ $name = "" ]] 28 | then 29 | notify-send "Connection" "Please, enter nmcli con up NAME_OF_YOUR_WIFI in terminal" 30 | fi;; 31 | 3) nmcli con down $name;; 32 | esac 33 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks.conf: -------------------------------------------------------------------------------- 1 | command=~/Configurations/stable/GUI_configurations/i3blocks-scripts/$BLOCK_NAME 2 | separator_block_width=15 3 | markup=full 4 | color=#ffffff 5 | 6 | 7 | [volume] 8 | # Громкость 9 | # https://github.com/LukeSmithxyz/voidrice/blob/master/.local/bin/statusbar/volume 10 | signal=10 11 | interval=once 12 | 13 | [language] 14 | # Переключение языка 15 | [memory] 16 | interval=10 17 | label=🧠 Mem: 18 | markup=full 19 | # RAM сколько исполльзовано и сколько осталось 20 | 21 | [cpu_usage] 22 | # See https://github.com/vivien/i3blocks-contrib/tree/master/cpu_usage 23 | interval=10 24 | label=🚀 CPU: 25 | 26 | [wifi] 27 | #READY 28 | label=🌎 29 | interval=10 30 | markup=pango 31 | signal=1 32 | 33 | [battery] 34 | #READY 35 | interval=5 36 | 37 | [time] 38 | #READY 39 | # Левый клик - информация 40 | # Правый клик - календарь 41 | label=🕒 42 | interval=5 43 | 44 | [Powerbutton] 45 | # Выключение, перезагрузка, сон 46 | full_text=⏻⭘⏾ 47 | -------------------------------------------------------------------------------- /stable/i3/variables.partofconfig_i3: -------------------------------------------------------------------------------- 1 | # _ _____ __ _ 2 | #(_)|___ / ___ ___ _ __ / _|(_) __ _ 3 | #| | |_ \ / __| / _ \ | '_ \ | |_ | | / _` | 4 | #|_||____/ \___| \___/ |_| |_||_| |_| \__, | 5 | # |___/ 6 | # 7 | # 8 | # 9 | #__ __ _ _ _ 10 | #\ \ / / __ _ _ __ (_) __ _ | |__ | | ___ ___ 11 | # \ \ / / / _` || '__|| | / _` || '_ \ | | / _ \/ __| 12 | # \ V / | (_| || | | || (_| || |_) || || __/\__ \ 13 | # \_/ \__,_||_| |_| \__,_||_.__/ |_| \___||___/ 14 | #Variables 15 | 16 | ### 17 | # Переменные, которые потом будут использоваться повсеместно 18 | # 19 | # 20 | set $workspace1 "1: Web And Telegram" 21 | set $workspace2 "2: Terminals" 22 | set $workspace3 "3: Editors" 23 | set $workspace4 "4: File Manager" 24 | set $workspace5 "5: Other Things" 25 | set $workspaceFD "Near Zero: Float Desktop" 26 | ### 27 | 28 | ###################################### 29 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/battery: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if [[ $(cat /sys/class/power_supply/BAT0/status) = "Full" ]] 4 | then 5 | B=$(acpi | awk '{print $3" "$4}') 6 | echo ⚡$B 7 | elif [[ $(cat /sys/class/power_supply/BAT0/status) = "Discharging" ]] 8 | then 9 | B=$(acpi | awk '{print $3" "$4}' | sed 's/.$//g') 10 | echo 🔋$B 11 | elif [[ $(cat /sys/class/power_supply/BAT0/status) = "Charging" ]] 12 | then 13 | echo 🔌$(acpi | awk '{print $3" "$4" "$5}') 14 | fi 15 | 16 | 17 | case $BLOCK_BUTTON in 18 | 1) if [[ $(cat /sys/class/power_supply/BAT0/status) = "Full" ]] 19 | then 20 | notify-send "Battery Status" "Full" 21 | elif [[ $(cat /sys/class/power_supply/BAT0/status) = "Discharging" ]] 22 | then 23 | notify-send "Battery Status" "Discharging\nCapacity level: $(cat /sys/class/power_supply/BAT0/capacity)" 24 | elif [[ $(cat /sys/class/power_supply/BAT0/status) = "Charging" ]] 25 | then 26 | notify-send "Battery Status" "Charging\nCapacity level: $(cat /sys/class/power_supply/BAT0/capacity)" 27 | fi 28 | ;; 29 | esac 30 | -------------------------------------------------------------------------------- /stable/i3/i3gaps.partofconfig_i3: -------------------------------------------------------------------------------- 1 | # ___ _____ ____ 2 | #|_ _||___ / / ___| __ _ _ __ ___ 3 | # | | |_ \ _____ | | _ / _` || '_ \ / __| 4 | # | | ___) ||_____|| |_| || (_| || |_) |\__ \ 5 | #|___||____/ \____| \__,_|| .__/ |___/ 6 | # |_| 7 | #i3-gaps ( дополнение для того, чтобы между окнами было пространство ) 8 | 9 | 10 | # Margins 11 | for_window [class="^.*"] border pixel 2 # Рамка для всех окон в 2px 12 | # smart_gaps on 13 | gaps inner 10 # Отступы между окнами 14 | gaps outer 2 # Отступы от экрана 15 | #Keybinds 16 | # Inner gaps 17 | bindcode $mod+mod1+21 gaps inner current plus 5 18 | bindcode $mod+mod1+20 gaps inner current minus 5 19 | bindcode $mod+mod1+19 gaps inner current set 0 20 | # Outer gaps 21 | bindcode $mod+Ctrl+21 gaps outer current plus 5 22 | bindcode $mod+Ctrl+20 gaps outer current minus 5 23 | bindcode $mod+Ctrl+19 gaps outer current set 0 24 | 25 | # Standard Gaps [ Win+Ctrl+Alt+0 ] 26 | bindcode $mod+Ctrl+mod1+19 gaps inner current set 10; gaps outer current set 2 27 | 28 | 29 | ################################################################# i3-gaps end 30 | -------------------------------------------------------------------------------- /terminals/xfce4-terminalrc: -------------------------------------------------------------------------------- 1 | [Configuration] 2 | FontName=Fira Code Medium 15 3 | MiscAlwaysShowTabs=FALSE 4 | MiscBell=FALSE 5 | MiscBellUrgent=FALSE 6 | MiscBordersDefault=TRUE 7 | MiscCursorBlinks=FALSE 8 | MiscCursorShape=TERMINAL_CURSOR_SHAPE_BLOCK 9 | MiscDefaultGeometry=maximize 10 | MiscInheritGeometry=TRUE 11 | MiscMenubarDefault=TRUE 12 | MiscMouseAutohide=FALSE 13 | MiscMouseWheelZoom=TRUE 14 | MiscToolbarDefault=FALSE 15 | MiscConfirmClose=TRUE 16 | MiscCycleTabs=TRUE 17 | MiscTabCloseButtons=TRUE 18 | MiscTabCloseMiddleClick=TRUE 19 | MiscTabPosition=GTK_POS_TOP 20 | MiscHighlightUrls=TRUE 21 | MiscMiddleClickOpensUri=FALSE 22 | MiscCopyOnSelect=FALSE 23 | MiscShowRelaunchDialog=TRUE 24 | MiscRewrapOnResize=TRUE 25 | MiscUseShiftArrowsToScroll=FALSE 26 | MiscSlimTabs=FALSE 27 | MiscNewTabAdjacent=FALSE 28 | 29 | # Theme from https://github.com/chriskempson/base16-xfce4-terminal/blob/master/base16-default.dark.terminalrc 30 | ColorCursor=#d8d8d8 31 | ColorForeground=#d8d8d8 32 | ColorBackground=#181818 33 | ColorPalette=#181818;#ab4642;#a1b56c;#f7ca88;#7cafc2;#ba8baf;#86c1b9;#d8d8d8;#585858;#ab4642;#a1b56c;#f7ca88;#7cafc2;#ba8baf;#86c1b9;#f8f8f8 34 | -------------------------------------------------------------------------------- /stable/i3/features.partofconfig_i3: -------------------------------------------------------------------------------- 1 | # _____ _ 2 | #| ___| ___ __ _ | |_ _ _ _ __ ___ ___ 3 | #| |_ / _ \ / _` || __|| | | || '__| / _ \/ __| 4 | #| _| | __/| (_| || |_ | |_| || | | __/\__ \ 5 | #|_| \___| \__,_| \__| \__,_||_| \___||___/ 6 | #Features ( полезные штуки ) 7 | 8 | # Сетуем клавишу мода на Win 9 | set $mod Mod4 10 | 11 | # Compton ( эффекты ) 12 | exec_always --no-startup-id "killall -q compton; compton --config ~/.config/compton.conf" 13 | 14 | # Dunst 15 | exec killall -q notify-osd 16 | exec --no-startup-id dunst -config ~/Configurations/stable/GUI_configurations/dunst 17 | 18 | # Меняем язык через Mod + Space 19 | exec --no-startup-id setxkbmap -model pc105 -layout us,ru -option grp:win_space_toggle 20 | 21 | ##### Автозапуск приложений 22 | exec alacritty 23 | exec "emacs26 -fs -fn 'Fira Code'" 24 | ##### 25 | 26 | # Обои 27 | # Первый вариант просто сетует обои, второй же делает обои из гифок 28 | exec xwinwrap -g 1920x1080 -ov -ni -s -nf -- gifview -w WID ~/wallpaper.gif -a #2 29 | 30 | # Шрифт 31 | font pango: Fira Code 10 32 | 33 | 34 | ######################################################### Конец раздела фич 35 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/weather: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | location="$1"; [ -z "$location" ] || { location="$location+" && rm -f "$HOME/.local/share/weatherreport" ;} 4 | 5 | getforecast() { ping -q -c 1 1.1.1.1 >/dev/null || exit 1 6 | curl -s "wttr.in/$location" > "$HOME/.local/share/weatherreport" || exit 1 ;} 7 | 8 | showweather() { printf "%s" "$(sed '16q;d' "$HOME/.local/share/weatherreport" | grep -wo "[0-9]*%" | sort -n | sed -e '$!d' | sed -e "s/^/☔ /g" | tr -d '\n')" 9 | sed '13q;d' "$HOME/.local/share/weatherreport" | grep -o "m\\(-\\)*[0-9]\\+" | sort -n -t 'm' -k 2n | sed -e 1b -e '$!d' | tr '\n|m' ' ' | awk '{print " ❄️",$1 "°","🌞",$2 "°"}' ;} 10 | 11 | case $BLOCK_BUTTON in 12 | 1) $TERMINAL -e less -S "$HOME/.local/share/weatherreport" ;; 13 | 2) getforecast && showweather ;; 14 | 3) pgrep -x dunst >/dev/null && notify-send "🌈 Weather module" "\- Left click for full forecast. 15 | - Middle click to update forecast. 16 | ☔: Chance of rain/snow 17 | ❄: Daily low 18 | 🌞: Daily high" ;; 19 | esac 20 | 21 | if [ "$(stat -c %y "$HOME/.local/share/weatherreport" >/dev/null 2>&1 | awk '{print $1}')" != "$(date '+%Y-%m-%d')" ] 22 | then getforecast && showweather 23 | else showweather 24 | fi -------------------------------------------------------------------------------- /terminals/Xresources-xterm: -------------------------------------------------------------------------------- 1 | ! Ctrl + / Ctrl - для того, чтобы изменить размер шрифта 2 | ! Скрипт от https://askubuntu.com/questions/161652/how-to-change-the-default-font-size-of-xterm 3 | XTerm.vt100.translations: #override \n\ 4 | Ctrl minus: smaller-vt-font() \n\ 5 | Ctrl plus: larger-vt-font() 6 | 7 | ! Ctrl + C и Ctrl + V 8 | xterm*translations: #override \ 9 | Ctrl Shift C: copy-selection(CLIPBOARD) \n\ 10 | Ctrl Shift V: insert-selection(CLIPBOARD) 11 | ! При выделении текста мышью, он переносится в буфер обмена 12 | XTerm*selectToClipboard: true 13 | 14 | ! Шрифт 15 | xterm*faceName: Fira Code 16 | xterm*faceSize: 15 17 | 18 | ! Dracula Xresources palette https://github.com/dracula/xresources 19 | *.foreground: #F8F8F2 20 | *.background: #282A36 21 | *.color0: #000000 22 | *.color8: #4D4D4D 23 | *.color1: #FF5555 24 | *.color9: #FF6E67 25 | *.color2: #50FA7B 26 | *.color10: #5AF78E 27 | *.color3: #F1FA8C 28 | *.color11: #F4F99D 29 | *.color4: #BD93F9 30 | *.color12: #CAA9FA 31 | *.color5: #FF79C6 32 | *.color13: #FF92D0 33 | *.color6: #8BE9FD 34 | *.color14: #9AEDFE 35 | *.color7: #BFBFBF 36 | *.color15: #E6E6E6 37 | -------------------------------------------------------------------------------- /i3/40-libinput.conf.mouseconfig: -------------------------------------------------------------------------------- 1 | # Match on all types of devices but joysticks 2 | Section "InputClass" 3 | Identifier "libinput pointer catchall" 4 | MatchIsPointer "on" 5 | MatchDevicePath "/dev/input/event*" 6 | Driver "libinput" 7 | EndSection 8 | 9 | Section "InputClass" 10 | Identifier "libinput keyboard catchall" 11 | MatchIsKeyboard "on" 12 | MatchDevicePath "/dev/input/event*" 13 | Driver "libinput" 14 | EndSection 15 | 16 | Section "InputClass" 17 | Identifier "libinput touchpad catchall" 18 | MatchIsTouchpad "on" 19 | MatchDevicePath "/dev/input/event*" 20 | Option "ClickMethod" "clickfinger" 21 | Option "NaturalScrolling" "true" 22 | Option "Tapping" "True" 23 | Driver "libinput" 24 | 25 | EndSection 26 | 27 | Section "InputClass" 28 | Identifier "libinput touchscreen catchall" 29 | MatchIsTouchscreen "on" 30 | MatchDevicePath "/dev/input/event*" 31 | Driver "libinput" 32 | EndSection 33 | 34 | Section "InputClass" 35 | Identifier "libinput tablet catchall" 36 | MatchIsTablet "on" 37 | MatchDevicePath "/dev/input/event*" 38 | Driver "libinput" 39 | EndSection 40 | -------------------------------------------------------------------------------- /stable/40-libinput.conf.mouseconfig: -------------------------------------------------------------------------------- 1 | # Match on all types of devices but joysticks 2 | Section "InputClass" 3 | Identifier "libinput pointer catchall" 4 | MatchIsPointer "on" 5 | MatchDevicePath "/dev/input/event*" 6 | Driver "libinput" 7 | EndSection 8 | 9 | Section "InputClass" 10 | Identifier "libinput keyboard catchall" 11 | MatchIsKeyboard "on" 12 | MatchDevicePath "/dev/input/event*" 13 | Driver "libinput" 14 | EndSection 15 | 16 | Section "InputClass" 17 | Identifier "libinput touchpad catchall" 18 | MatchIsTouchpad "on" 19 | MatchDevicePath "/dev/input/event*" 20 | Option "ClickMethod" "clickfinger" 21 | Option "NaturalScrolling" "true" 22 | Option "Tapping" "True" 23 | Driver "libinput" 24 | 25 | EndSection 26 | 27 | Section "InputClass" 28 | Identifier "libinput touchscreen catchall" 29 | MatchIsTouchscreen "on" 30 | MatchDevicePath "/dev/input/event*" 31 | Driver "libinput" 32 | EndSection 33 | 34 | Section "InputClass" 35 | Identifier "libinput tablet catchall" 36 | MatchIsTablet "on" 37 | MatchDevicePath "/dev/input/event*" 38 | Driver "libinput" 39 | EndSection 40 | -------------------------------------------------------------------------------- /stable/i3/rules.partofconfig_i3: -------------------------------------------------------------------------------- 1 | # ____ _ 2 | #| _ \ _ _ | | ___ ___ 3 | #| |_) || | | || | / _ \/ __| 4 | #| _ < | |_| || || __/\__ \ 5 | #|_| \_\ \__,_||_| \___||___/ 6 | #Rules ( правила ) 7 | 8 | assign [class="Firefox|TelegramDesktop"] $workspace1 9 | assign [class="Alacritty"] $workspace2 10 | assign [class="Emacs|Gvim|vim|Code"] $workspace3 11 | assign [class="Nautilus|Thunar"] $workspace4 12 | assign [class="Alacritty|Firefox|TelegramDesktop|Code|Emacs|Nautilus"] focus 13 | # Тут for_window используется потому что class у ranger - alacritty (терминал, в котором он исполняется) 14 | # Чтобы перенести Ranger на отдельный воркспейс я просто уточняю, что все окна с заголовком "ranger" переносятся в 4 воркспейс 15 | for_window [title="ranger"] move container to workspace $workspace4 16 | # По умолчанию терминал появляется не на полный экран, тут мы это исправляем, причём делаем все терминалы на полный экран только во второй рабочей области 17 | for_window [workspace=$workspace2]fullscreen toggle 18 | 19 | ################################## 20 | # Внегласные правила 21 | # Все приложения запускаются через Win + Shift + Первая буква приложения 22 | # 1 рабочий стол - telegram и firefox, 2 - терминал, 3 - редакторы, 4 - файловые менеджеры 23 | 24 | 25 | ##### 26 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/memory: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Copyright (C) 2014 Julien Bonjean 3 | 4 | # This program is free software: you can redistribute it and/or modify 5 | # it under the terms of the GNU General Public License as published by 6 | # the Free Software Foundation, either version 3 of the License, or 7 | # (at your option) any later version. 8 | 9 | # This program is distributed in the hope that it will be useful, 10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | # GNU General Public License for more details. 13 | 14 | # You should have received a copy of the GNU General Public License 15 | # along with this program. If not, see . 16 | 17 | TYPE="${BLOCK_INSTANCE:-mem}" 18 | 19 | awk -v type=$TYPE ' 20 | /^MemTotal:/ { 21 | mem_total=$2 22 | } 23 | /^MemFree:/ { 24 | mem_free=$2 25 | } 26 | /^Buffers:/ { 27 | mem_free+=$2 28 | } 29 | /^Cached:/ { 30 | mem_free+=$2 31 | } 32 | /^SwapTotal:/ { 33 | swap_total=$2 34 | } 35 | /^SwapFree:/ { 36 | swap_free=$2 37 | } 38 | END { 39 | # full text 40 | if (type == "swap") 41 | printf("%.1fG\n", (swap_total-swap_free)/1024/1024) 42 | else 43 | printf("%.1fG\n", mem_free/1024/1024) 44 | # TODO: short text 45 | # TODO: color (if less than X%) 46 | } 47 | ' /proc/meminfo -------------------------------------------------------------------------------- /stable/i3/movement.partofconfig_i3: -------------------------------------------------------------------------------- 1 | # __ __ _ 2 | #| \/ | ___ __ __ ___ _ __ ___ ___ _ __ | |_ 3 | #| |\/| | / _ \ \ \ / / / _ \| '_ ` _ \ / _ \| '_ \ | __| 4 | #| | | || (_) | \ V / | __/| | | | | || __/| | | || |_ 5 | #|_| |_| \___/ \_/ \___||_| |_| |_| \___||_| |_| \__| 6 | # Movement ( передвижение окон и их размерность ) 7 | 8 | 9 | # Перемещение между окнами 10 | bindsym $mod+h focus left 11 | bindsym $mod+j focus down 12 | bindsym $mod+k focus up 13 | bindsym $mod+l focus right 14 | 15 | # Перемещать окна 16 | bindsym $mod+Shift+h move left 20px 17 | bindsym $mod+Shift+j move down 20px 18 | bindsym $mod+Shift+k move up 20px 19 | bindsym $mod+Shift+l move right 20px 20 | 21 | # Меняем размер окон 22 | bindsym $mod+Ctrl+Left resize shrink width 20 px or 20 ppt 23 | bindsym $mod+Ctrl+Down resize grow height 20 px or 20 ppt 24 | bindsym $mod+Ctrl+Up resize shrink height 20 px or 20 ppt 25 | bindsym $mod+Ctrl+Right resize grow width 20 px or 20 ppt 26 | 27 | # 2-й вариaнт 28 | bindsym $mod+Ctrl+h resize shrink width 20 px or 20 ppt 29 | bindsym $mod+Ctrl+j resize grow height 20 px or 20 ppt 30 | bindsym $mod+Ctrl+k resize shrink height 20 px or 20 ppt 31 | bindsym $mod+Ctrl+l resize grow width 20 px or 20 ppt 32 | 33 | 34 | ############################################################################# Конец раздела передвижения и размещения 35 | -------------------------------------------------------------------------------- /stable/i3/bar_i3blocks.partofconfig_i3: -------------------------------------------------------------------------------- 1 | # ____ 2 | #| __ ) __ _ _ __ 3 | #| _ \ / _` || '__| 4 | #| |_) || (_| || | 5 | #|____/ \__,_||_| 6 | # Настройка топ-бара ( i3blocks ) 7 | 8 | 9 | # Color Palette https://flatuicolors.com/palette/us 10 | bar { 11 | font pango:mono 10 12 | status_command i3blocks -c ~/Configurations/stable/GUI_configurations/i3blocks.conf 13 | position top 14 | mode dock 15 | modifier None 16 | colors { 17 | background #2d3436 # Фон всей панели 18 | separator #636e72 # Фон разделителей 19 | statusline #000000 # Цвет текста дополнительной панели 20 | 21 | # Цвет: Граница, фон, текст 22 | #Неактивные бары 23 | #Бар на котором вы сейас находитесь 24 | #? 25 | #Бар на котором новое приложение 26 | inactive_workspace #2f343f #403952 #dfe6e9 27 | focused_workspace #6c5cc9 #6c5ce7 #e9f1f5 28 | active_workspace #000000 #000000 #ffffff 29 | urgent_workspacei #ff7979 #403952 #ffffff 30 | } 31 | } 32 | 33 | # Темы для границ окон 34 | # Thanks, addy-dclxvi 35 | # https://github.com/addy-dclxvi/i3-starterpack/blob/master/.config/i3/config 36 | 37 | # colour of border, background, text, indicator, and child_border 38 | client.focused #bf616a #2f343f #d8dee8 #bf616a #d8dee8 39 | client.focused_inactive #2f343f #2f343f #d8dee8 #2f343f #2f343f 40 | client.unfocused #2f343f #2f343f #d8dee8 #2f343f #2f343f 41 | client.urgent #2f343f #2f343f #d8dee8 #2f343f #2f343f 42 | client.placeholder #2f343f #2f343f #d8dee8 #2f343f #2f343f 43 | client.background #2f343f 44 | 45 | ############################################ Конец раздела топбара 46 | -------------------------------------------------------------------------------- /stable/i3/bar_i3status.partofconfig_i3: -------------------------------------------------------------------------------- 1 | # ____ 2 | #| __ ) __ _ _ __ 3 | #| _ \ / _` || '__| 4 | #| |_) || (_| || | 5 | #|____/ \__,_||_| 6 | # Настройка топ-бара ( i3-status ) 7 | 8 | 9 | #bar { 10 | #position top 11 | #status_command i3status 12 | #font pango:Noto Sans 12 13 | ###} 14 | 15 | 16 | # Color Palette https://flatuicolors.com/palette/us 17 | bar { 18 | i3bar_command i3bar --transparency 19 | status_command i3status 20 | 21 | position top 22 | 23 | separator_symbol "|" 24 | 25 | colors { 26 | background #2d3436 # Фон всей панели 27 | separator #636e72 # Фон разделителей 28 | statusline #000000 # Цвет текста дополнительной панели 29 | 30 | # Цвет: Граница, фон, текст 31 | #Неактивные бары 32 | #Бар на котором вы сейас находитесь 33 | #? 34 | #Бар на котором новое приложение 35 | inactive_workspace #2f343f #403952 #dfe6e9 36 | focused_workspace #6c5cc9 #6c5ce7 #e9f1f5 37 | active_workspace #000000 #000000 #ffffff 38 | urgent_workspacei #ff7979 #403952 #ffffff 39 | } 40 | # У самого последнего разметка: Фон, шрифт, граница 41 | } 42 | 43 | # Темы для границ окон 44 | # Thanks, addy-dclxvi 45 | # https://github.com/addy-dclxvi/i3-starterpack/blob/master/.config/i3/config 46 | 47 | # colour of border, background, text, indicator, and child_border 48 | client.focused #bf616a #2f343f #d8dee8 #bf616a #d8dee8 49 | client.focused_inactive #2f343f #2f343f #d8dee8 #2f343f #2f343f 50 | client.unfocused #2f343f #2f343f #d8dee8 #2f343f #2f343f 51 | client.urgent #2f343f #2f343f #d8dee8 #2f343f #2f343f 52 | client.placeholder #2f343f #2f343f #d8dee8 #2f343f #2f343f 53 | client.background #2f343f 54 | 55 | ############################################ Конец раздела топбара 56 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3blocks-scripts/cpu_usage: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # 3 | # Copyright 2014 Pierre Mavro 4 | # Copyright 2014 Vivien Didelot 5 | # Copyright 2014 Andreas Guldstrand 6 | # 7 | # Licensed under the terms of the GNU GPL v3, or any later version. 8 | 9 | use strict; 10 | use warnings; 11 | use utf8; 12 | use Getopt::Long; 13 | 14 | # default values 15 | my $t_warn = $ENV{T_WARN} // 50; 16 | my $t_crit = $ENV{T_CRIT} // 80; 17 | my $cpu_usage = -1; 18 | my $decimals = $ENV{DECIMALS} // 2; 19 | my $label = $ENV{LABEL} // ""; 20 | 21 | sub help { 22 | print "Usage: cpu_usage [-w ] [-c ] [-d ]\n"; 23 | print "-w : warning threshold to become yellow\n"; 24 | print "-c : critical threshold to become red\n"; 25 | print "-d : Use decimals for percentage (default is $decimals) \n"; 26 | exit 0; 27 | } 28 | 29 | GetOptions("help|h" => \&help, 30 | "w=i" => \$t_warn, 31 | "c=i" => \$t_crit, 32 | "d=i" => \$decimals, 33 | ); 34 | 35 | # Get CPU usage 36 | $ENV{LC_ALL}="en_US"; # if mpstat is not run under en_US locale, things may break, so make sure it is 37 | open (MPSTAT, 'mpstat 1 1 |') or die; 38 | while () { 39 | if (/^.*\s+(\d+\.\d+)[\s\x00]?$/) { 40 | $cpu_usage = 100 - $1; # 100% - %idle 41 | last; 42 | } 43 | } 44 | close(MPSTAT); 45 | 46 | $cpu_usage eq -1 and die 'Can\'t find CPU information'; 47 | 48 | # Print short_text, full_text 49 | print "${label}"; 50 | printf "%.${decimals}f%%\n", $cpu_usage; 51 | print "${label}"; 52 | printf "%.${decimals}f%%\n", $cpu_usage; 53 | 54 | # Print color, if needed 55 | if ($cpu_usage >= $t_crit) { 56 | print "#FF0000\n"; 57 | exit 33; 58 | } elsif ($cpu_usage >= $t_warn) { 59 | print "#FFFC00\n"; 60 | } 61 | 62 | exit 0; 63 | -------------------------------------------------------------------------------- /i3/config-i3-statusbar-version2: -------------------------------------------------------------------------------- 1 | # i3status configuration file. 2 | # see "man i3status" for documentation. 3 | 4 | # It is important that this file is edited as UTF-8. 5 | # The following line should contain a sharp s: 6 | # ß 7 | # If the above line is not correctly displayed, fix your editor first! 8 | general { 9 | output_format = "i3bar" 10 | colors = false 11 | markup = pango 12 | interval = 1 13 | } 14 | 15 | order += "cpu_temperature 0" 16 | order += "cpu_usage" 17 | order += "disk /" 18 | order += "wireless _first_" 19 | order += "volume master" 20 | order += "battery 1" 21 | order += "tztime local" 22 | cpu_temperature 0 { 23 | format = " 💻CPU: %degrees°C " 24 | path = "/sys/class/thermal/thermal_zone0/temp" 25 | } 26 | 27 | disk "/" { 28 | format = " 💿 Space: %free Free " 29 | } 30 | 31 | wireless _first_ { 32 | format_up = "  %essid |%quality " 33 | format_down = " " 34 | } 35 | 36 | volume master { 37 | format = " 🔊 %volume " 38 | format_muted = " 🔈 Muted " 39 | device = "default" 40 | mixer = "Master" 41 | mixer_idx = 0 42 | } 43 | 44 | tztime local { 45 | format = " ⏱ %time " 46 | format_time = "%a %-d %b %H:%M" 47 | } 48 | 49 | battery 1 { 50 | last_full_capacity = true 51 | format = " %status %percentage " 52 | format_down = "❌ No Battery" 53 | status_chr = "⚡ Charging" 54 | status_bat = "🔋 Battery" 55 | status_unk = "❓ Unknown" 56 | status_full = "👌 Charged" 57 | path = "/sys/class/power_supply/BAT0/uevent" 58 | low_threshold = 10 59 | } 60 | 61 | cpu_usage { 62 | format = " 🍑 CPU use: %usage " 63 | } 64 | -------------------------------------------------------------------------------- /stable/GUI_configurations/i3status: -------------------------------------------------------------------------------- 1 | # i3status configuration file. 2 | # see "man i3status" for documentation. 3 | 4 | # It is important that this file is edited as UTF-8. 5 | # The following line should contain a sharp s: 6 | # ß 7 | # If the above line is not correctly displayed, fix your editor first! 8 | general { 9 | output_format = "i3bar" 10 | colors = false 11 | markup = pango 12 | interval = 1 13 | } 14 | 15 | order += "cpu_temperature 0" 16 | order += "cpu_usage" 17 | order += "disk /" 18 | order += "wireless _first_" 19 | order += "volume master" 20 | order += "battery 1" 21 | order += "tztime local" 22 | cpu_temperature 0 { 23 | format = " 💻CPU: %degrees°C " 24 | path = "/sys/class/thermal/thermal_zone0/temp" 25 | } 26 | 27 | disk "/" { 28 | format = " 💿 Space: %free Free " 29 | } 30 | 31 | wireless _first_ { 32 | format_up = "  %essid |%quality " 33 | format_down = " " 34 | } 35 | 36 | volume master { 37 | format = " 🔊 %volume " 38 | format_muted = " 🔈 Muted " 39 | device = "default" 40 | mixer = "Master" 41 | mixer_idx = 0 42 | } 43 | 44 | tztime local { 45 | format = " ⏱ %time " 46 | format_time = "%a %-d %b %H:%M" 47 | } 48 | 49 | battery 1 { 50 | last_full_capacity = true 51 | format = " %status %percentage " 52 | format_down = "❌ No Battery" 53 | status_chr = "⚡ Charging" 54 | status_bat = "🔋 Battery" 55 | status_unk = "❓ Unknown" 56 | status_full = "👌 Charged" 57 | path = "/sys/class/power_supply/BAT0/uevent" 58 | low_threshold = 10 59 | } 60 | 61 | cpu_usage { 62 | format = " 🍑 CPU use: %usage " 63 | } 64 | -------------------------------------------------------------------------------- /editors/doom.d/config.el: -------------------------------------------------------------------------------- 1 | ;;; $DOOMDIR/config.el -*- lexical-binding: t; -*- 2 | 3 | ;; Place your private configuration here! Remember, you do not need to run 'doom 4 | ;; refresh' after modifying this file! 5 | 6 | 7 | ;; Some functionality uses this to identify you, e.g. GPG configuration, email 8 | ;; clients, file templates and snippets. 9 | (setq user-full-name "John Doe" 10 | user-mail-address "john@doe.com") 11 | 12 | ;; Doom exposes five (optional) variables for controlling fonts in Doom. Here 13 | ;; are the three important ones: 14 | ;; 15 | ;; + `doom-font' 16 | ;; + `doom-variable-pitch-font' 17 | ;; + `doom-big-font' -- used for `doom-big-font-mode' 18 | ;; 19 | ;; They all accept either a font-spec, font string ("Input Mono-12"), or xlfd 20 | ;; font string. You generally only need these two: 21 | (setq doom-font (font-spec :family "Fira Code" :size 16)) 22 | 23 | ;; There are two ways to load a theme. Both assume the theme is installed and 24 | ;; available. You can either set `doom-theme' or manually load a theme with the 25 | ;; `load-theme' function. These are the defaults. 26 | (setq doom-theme 'doom-gruvbox) 27 | 28 | ;; If you intend to use org, it is recommended you change this! 29 | (setq org-directory "~/org/") 30 | 31 | ;; If you want to change the style of line numbers, change this to `relative' or 32 | ;; `nil' to disable it: 33 | (setq display-line-numbers-type t) 34 | 35 | 36 | ;; Here are some additional functions/macros that could help you configure Doom: 37 | ;; 38 | ;; - `load!' for loading external *.el files relative to this one 39 | ;; - `use-package' for configuring packages 40 | ;; - `after!' for running code after a package has loaded 41 | ;; - `add-load-path!' for adding directories to the `load-path', where Emacs 42 | ;; looks when you load packages with `require' or `use-package'. 43 | ;; - `map!' for binding new keys 44 | ;; 45 | ;; To get information about any of these functions/macros, move the cursor over 46 | ;; the highlighted symbol at press 'K' (non-evil users must press 'C-c g k'). 47 | ;; This will open documentation for it, including demos of how they are used. 48 | ;; 49 | ;; You can also try 'gd' (or 'C-c g d') to jump to their definition and see how 50 | ;; they are implemented. 51 | -------------------------------------------------------------------------------- /i3/compton.conf: -------------------------------------------------------------------------------- 1 | shadow = true; 2 | no-dnd-shadow = true; 3 | no-dock-shadow = true; 4 | clear-shadow = true; 5 | shadow-radius = 10; 6 | shadow-offset-x = -5; 7 | shadow-offset-y = -10; 8 | shadow-opacity = 0.5; 9 | shadow-exclude = [ "class_g = 'Cairo-clock'" , 10 | "name = 'Notification'", 11 | "class_g = 'Conky'", 12 | "class_g ?= 'Notify-osd'", 13 | "class_g = 'Cairo-clock'", 14 | "class_g = 'CoverGloobus'", 15 | "class_g = 'Firefox'", 16 | "class_g = 'Firefox-esr'", 17 | "_GTK_FRAME_EXTENTS@:c" 18 | ]; 19 | 20 | # https://github.com/Airblader/dotfiles-manjaro/blob/master/.compton.conf 21 | # Duplicating the _NET_WM_STATE entries because compton cannot deal with atom arrays :-/ 22 | opacity-rule = [ 23 | "97:class_g = 'Termite' && !_NET_WM_STATE@:32a", 24 | 25 | "0:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_HIDDEN'", 26 | "0:_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_HIDDEN'", 27 | "0:_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_HIDDEN'", 28 | "0:_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_HIDDEN'", 29 | "0:_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_HIDDEN'", 30 | 31 | "90:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_STICKY'", 32 | "90:_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_STICKY'", 33 | "90:_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_STICKY'", 34 | "90:_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_STICKY'", 35 | "90:_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_STICKY'" 36 | ]; 37 | 38 | fading = true; 39 | fade-delta = 7; 40 | fade-in-step = 0.05; 41 | fade-out-step = 0.05; 42 | fade-exclude = []; 43 | 44 | blur-background-fixed = true; 45 | blur-kern = "7x7box"; 46 | blur-background-exclude = [ 47 | "class_g = 'i3-frame'", 48 | "window_type = 'dock'", 49 | "window_type = 'desktop'", 50 | "_GTK_FRAME_EXTENTS@:c" 51 | ]; 52 | 53 | mark-wmwin-focused = true; 54 | mark-ovredir-focused = true; 55 | use-ewmh-active-win = true; 56 | detect-rounded-corners = true; 57 | # detect-client-opacity = true; 58 | refresh-rate = 0; 59 | dbe = false; 60 | unredir-if-possible = false; 61 | focus-exclude = []; 62 | detect-transient = true; 63 | detect-client-leader = true; 64 | invert-color-include = []; 65 | 66 | wintypes: { 67 | tooltip = { fade = true; shadow = false; opacity = 1.00; focus = true; }; 68 | dock = { shadow = false }; 69 | dnd = { shadow = false }; 70 | }; 71 | 72 | vsync = true; 73 | -------------------------------------------------------------------------------- /stable/GUI_configurations/compton: -------------------------------------------------------------------------------- 1 | shadow = true; 2 | no-dnd-shadow = true; 3 | no-dock-shadow = true; 4 | clear-shadow = true; 5 | shadow-radius = 10; 6 | shadow-offset-x = -5; 7 | shadow-offset-y = -10; 8 | shadow-opacity = 0.5; 9 | shadow-exclude = [ "class_g = 'Cairo-clock'" , 10 | "name = 'Notification'", 11 | "class_g = 'Conky'", 12 | "class_g ?= 'Notify-osd'", 13 | "class_g = 'Cairo-clock'", 14 | "class_g = 'CoverGloobus'", 15 | "class_g = 'Firefox'", 16 | "class_g = 'Firefox-esr'", 17 | "_GTK_FRAME_EXTENTS@:c" 18 | ]; 19 | 20 | # https://github.com/Airblader/dotfiles-manjaro/blob/master/.compton.conf 21 | # Duplicating the _NET_WM_STATE entries because compton cannot deal with atom arrays :-/ 22 | opacity-rule = [ 23 | "97:class_g = 'Termite' && !_NET_WM_STATE@:32a", 24 | 25 | "0:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_HIDDEN'", 26 | "0:_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_HIDDEN'", 27 | "0:_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_HIDDEN'", 28 | "0:_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_HIDDEN'", 29 | "0:_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_HIDDEN'", 30 | 31 | "90:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_STICKY'", 32 | "90:_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_STICKY'", 33 | "90:_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_STICKY'", 34 | "90:_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_STICKY'", 35 | "90:_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_STICKY'" 36 | ]; 37 | 38 | fading = true; 39 | fade-delta = 7; 40 | fade-in-step = 0.05; 41 | fade-out-step = 0.05; 42 | fade-exclude = []; 43 | 44 | blur-background-fixed = true; 45 | blur-kern = "7x7box"; 46 | blur-background-exclude = [ 47 | "class_g = 'i3-frame'", 48 | "window_type = 'dock'", 49 | "window_type = 'desktop'", 50 | "_GTK_FRAME_EXTENTS@:c" 51 | ]; 52 | 53 | mark-wmwin-focused = true; 54 | mark-ovredir-focused = true; 55 | use-ewmh-active-win = true; 56 | detect-rounded-corners = true; 57 | # detect-client-opacity = true; 58 | refresh-rate = 0; 59 | dbe = false; 60 | unredir-if-possible = false; 61 | focus-exclude = []; 62 | detect-transient = true; 63 | detect-client-leader = true; 64 | invert-color-include = []; 65 | 66 | wintypes: { 67 | tooltip = { fade = true; shadow = false; opacity = 1.00; focus = true; }; 68 | dock = { shadow = false }; 69 | dnd = { shadow = false }; 70 | }; 71 | 72 | vsync = true; 73 | -------------------------------------------------------------------------------- /i3/XRESOURCES-for-all: -------------------------------------------------------------------------------- 1 | !!!!!!!!!!!!!!!!!!!!!!!XTERM!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2 | ! Ctrl + / Ctrl - для того, чтобы изменить размер шрифта 3 | ! Скрипт от https://askubuntu.com/questions/161652/how-to-change-the-default-font-size-of-xterm 4 | XTerm.vt100.translations: #override \n\ 5 | Ctrl minus: smaller-vt-font() \n\ 6 | Ctrl plus: larger-vt-font() 7 | ! Ctrl + C и Ctrl + V 8 | xterm*translations: #override \ 9 | Ctrl Shift C: copy-selection(CLIPBOARD) \n\ 10 | Ctrl Shift V: insert-selection(CLIPBOARD) 11 | ! При выделении текста мышью, он переносится в буфер обмена 12 | XTerm*selectToClipboard: true 13 | 14 | ! Шрифт 15 | xterm*faceName: Fira Code 16 | xterm*faceSize: 15 17 | 18 | ! Dracula Xresources palette https://github.com/dracula/xresources 19 | *.foreground: #F8F8F2 20 | *.background: #282A36 21 | *.color0: #000000 22 | *.color8: #4D4D4D 23 | *.color1: #FF5555 24 | *.color9: #FF6E67 25 | *.color2: #50FA7B 26 | *.color10: #5AF78E 27 | *.color3: #F1FA8C 28 | *.color11: #F4F99D 29 | *.color4: #BD93F9 30 | *.color12: #CAA9FA 31 | *.color5: #FF79C6 32 | *.color13: #FF92D0 33 | *.color6: #8BE9FD 34 | *.color14: #9AEDFE 35 | *.color7: #BFBFBF 36 | *.color15: #E6E6E6 37 | 38 | 39 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!Rofi!!!!!!!!!!!!!!!!!!!!!!! 40 | 41 | rofi.location: 0 42 | rofi.color-enabled: true 43 | ! Фон и рамка 44 | ! Alpha|R|G|B - argb; hex: transparent|R|G|B 45 | 46 | rofi.color-window: #ef2d3436, #d92d3436, #d92d3436 47 | !Фон, шрифт, альтернатива фону, hlbg, hlfg 48 | ! Первое - просто список меню. 49 | ! Второе - срочное (которое тут не часто) 50 | ! Третье - цвет выбора 51 | 52 | !Третий столбец - цвет чётных элементов (как я понял) 53 | rofi.color-normal: #00000000, #ebf2f5, #00000000, #d92d3436, #0984e3, #fefefe, #ffffff 54 | rofi.color-urgent: #00000000, #ebf2f5, #00000000, #d92d3436, #fefefe, 55 | rofi.color-active: #2d3436, #ebf2f5, #d92d3436, #d92d3436, #fefefe 56 | rofi.separator-style: dash 57 | rofi.fullscreen: false 58 | rofi.padding: 70 59 | rofi.hide-scrollbar: true 60 | rofi.line-margin: 10 61 | rofi.fake-transparency: false 62 | rofi.yoffset: 0 63 | rofi.xoffset: 0 64 | rofi.opacity: 50 65 | rofi.font: Fira Code Regular 15 66 | -------------------------------------------------------------------------------- /i3/config-i3-statusbar: -------------------------------------------------------------------------------- 1 | # i3status configuration file. 2 | # see "man i3status" for documentation. 3 | 4 | # It is important that this file is edited as UTF-8. 5 | # The following line should contain a sharp s: 6 | # ß 7 | # If the above line is not correctly displayed, fix your editor first! 8 | general { 9 | output_format = "i3bar" 10 | colors = false 11 | markup = pango 12 | interval = 1 13 | } 14 | 15 | order += "cpu_temperature 0" 16 | order += "cpu_usage" 17 | order += "disk /" 18 | order += "wireless _first_" 19 | order += "volume master" 20 | order += "battery 1" 21 | order += "tztime local" 22 | cpu_temperature 0 { 23 | format = " 💻CPU: %degrees°C " 24 | path = "/sys/class/thermal/thermal_zone0/temp" 25 | } 26 | 27 | disk "/" { 28 | format = " 💿 Space: %free Free " 29 | } 30 | 31 | wireless _first_ { 32 | format_up = " %essid |%quality " 33 | format_down = " " 34 | } 35 | 36 | volume master { 37 | format = " 🔊 %volume " 38 | format_muted = " 🔈 Muted " 39 | device = "default" 40 | mixer = "Master" 41 | mixer_idx = 0 42 | } 43 | 44 | tztime local { 45 | format = " %time " 46 | format_time = "%a %-d %b %H:%M" 47 | } 48 | 49 | battery 1 { 50 | last_full_capacity = true 51 | format = " %status %percentage " 52 | format_down = "❌ No Battery" 53 | status_chr = "⚡ Charging" 54 | status_bat = "🔋 Battery" 55 | status_unk = "❓ Unknown" 56 | status_full = "👌 Charged" 57 | path = "/sys/class/power_supply/BAT0/uevent" 58 | low_threshold = 10 59 | } 60 | 61 | cpu_usage { 62 | format = " 🍑 CPU use: %usage " 63 | } 64 | -------------------------------------------------------------------------------- /stable/GUI_configurations/XRESOURCES-for-all: -------------------------------------------------------------------------------- 1 | !!!!!!!!!!!!!!!!!!!!!!!XTERM!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2 | ! Ctrl + / Ctrl - для того, чтобы изменить размер шрифта 3 | ! Скрипт от https://askubuntu.com/questions/161652/how-to-change-the-default-font-size-of-xterm 4 | XTerm.vt100.translations: #override \n\ 5 | Ctrl minus: smaller-vt-font() \n\ 6 | Ctrl plus: larger-vt-font() 7 | ! Ctrl + C и Ctrl + V 8 | xterm*translations: #override \ 9 | Ctrl Shift C: copy-selection(CLIPBOARD) \n\ 10 | Ctrl Shift V: insert-selection(CLIPBOARD) 11 | ! При выделении текста мышью, он переносится в буфер обмена 12 | XTerm*selectToClipboard: true 13 | 14 | ! Шрифт 15 | xterm*faceName: Fira Code 16 | xterm*faceSize: 15 17 | 18 | ! Dracula Xresources palette https://github.com/dracula/xresources 19 | *.foreground: #F8F8F2 20 | *.background: #282A36 21 | *.color0: #000000 22 | *.color8: #4D4D4D 23 | *.color1: #FF5555 24 | *.color9: #FF6E67 25 | *.color2: #50FA7B 26 | *.color10: #5AF78E 27 | *.color3: #F1FA8C 28 | *.color11: #F4F99D 29 | *.color4: #BD93F9 30 | *.color12: #CAA9FA 31 | *.color5: #FF79C6 32 | *.color13: #FF92D0 33 | *.color6: #8BE9FD 34 | *.color14: #9AEDFE 35 | *.color7: #BFBFBF 36 | *.color15: #E6E6E6 37 | 38 | 39 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!Rofi!!!!!!!!!!!!!!!!!!!!!!! 40 | 41 | rofi.location: 0 42 | rofi.color-enabled: true 43 | ! Фон и рамка 44 | ! Alpha|R|G|B - argb; hex: transparent|R|G|B 45 | 46 | rofi.color-window: #ef2d3436, #d92d3436, #d92d3436 47 | !Фон, шрифт, альтернатива фону, hlbg, hlfg 48 | ! Первое - просто список меню. 49 | ! Второе - срочное (которое тут не часто) 50 | ! Третье - цвет выбора 51 | 52 | !Третий столбец - цвет чётных элементов (как я понял) 53 | rofi.color-normal: #00000000, #ebf2f5, #00000000, #d92d3436, #0984e3, #fefefe, #ffffff 54 | rofi.color-urgent: #00000000, #ebf2f5, #00000000, #d92d3436, #fefefe, 55 | rofi.color-active: #2d3436, #ebf2f5, #d92d3436, #d92d3436, #fefefe 56 | rofi.separator-style: dash 57 | rofi.fullscreen: false 58 | rofi.padding: 70 59 | rofi.hide-scrollbar: true 60 | rofi.line-margin: 10 61 | rofi.fake-transparency: false 62 | rofi.yoffset: 0 63 | rofi.xoffset: 0 64 | rofi.opacity: 50 65 | rofi.font: Fira Code Regular 15 66 | -------------------------------------------------------------------------------- /editors/doom.d/packages.el: -------------------------------------------------------------------------------- 1 | ;; -*- no-byte-compile: t; -*- 2 | ;;; $DOOMDIR/packages.el 3 | 4 | ;; This is where you install packages, by declaring them with the `package!' 5 | ;; macro, then running 'doom refresh' on the command line. You'll need to 6 | ;; restart Emacs for your changes to take effect! Or at least, run M-x 7 | ;; `doom/reload'. 8 | ;; 9 | ;; WARNING: Don't disable core packages listed in ~/.emacs.d/core/packages.el. 10 | ;; Doom requires these, and disabling them may have terrible side effects. 11 | ;; 12 | ;; Here are a couple examples: 13 | 14 | 15 | ;; All of Doom's packages are pinned to a specific commit, and updated from 16 | ;; release to release. To un-pin all packages and live on the edge, do: 17 | ;(setq doom-pinned-packages nil) 18 | 19 | ;; ...but to unpin a single package: 20 | ;(package! pinned-package :pin nil) 21 | 22 | 23 | ;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror: 24 | ;(package! some-package) 25 | 26 | ;; To install a package directly from a particular repo, you'll need to specify 27 | ;; a `:recipe'. You'll find documentation on what `:recipe' accepts here: 28 | ;; https://github.com/raxod502/straight.el#the-recipe-format 29 | ;(package! another-package 30 | ; :recipe (:host github :repo "username/repo")) 31 | 32 | ;; If the package you are trying to install does not contain a PACKAGENAME.el 33 | ;; file, or is located in a subdirectory of the repo, you'll need to specify 34 | ;; `:files' in the `:recipe': 35 | ;(package! this-package 36 | ; :recipe (:host github :repo "username/repo" 37 | ; :files ("some-file.el" "src/lisp/*.el"))) 38 | 39 | ;; If you'd like to disable a package included with Doom, for whatever reason, 40 | ;; you can do so here with the `:disable' property: 41 | ;(package! builtin-package :disable t) 42 | 43 | ;; You can override the recipe of a built in package without having to specify 44 | ;; all the properties for `:recipe'. These will inherit the rest of its recipe 45 | ;; from Doom or MELPA/ELPA/Emacsmirror: 46 | ;(package! builtin-package :recipe (:nonrecursive t)) 47 | ;(package! builtin-package-2 :recipe (:repo "myfork/package")) 48 | 49 | ;; Specify a `:branch' to install a package from a particular branch or tag. 50 | ;; This is required for some packages whose default branch isn't 'master' (which 51 | ;; our package manager can't deal with; see raxod502/straight.el#279) 52 | ;(package! builtin-package :recipe (:branch "develop")) 53 | -------------------------------------------------------------------------------- /stable/i3/workspaces.partofconfig_i3: -------------------------------------------------------------------------------- 1 | #__ __ _ 2 | #\ \ / / ___ _ __ | | __ ___ _ __ __ _ ___ ___ ___ 3 | # \ \ /\ / / / _ \ | '__|| |/ // __|| '_ \ / _` | / __| / _ \/ __| 4 | # \ V V / | (_) || | | < \__ \| |_) || (_| || (__ | __/\__ \ 5 | # \_/\_/ \___/ |_| |_|\_\|___/| .__/ \__,_| \___| \___||___/ 6 | # |_| 7 | # _____ _ 8 | #|_ _|__ __ ___ __ _ | | __ ___ 9 | # | | \ \ /\ / / / _ \ / _` || |/ // __| 10 | # | | \ V V / | __/| (_| || < \__ \ 11 | # |_| \_/\_/ \___| \__,_||_|\_\|___/ 12 | # 13 | # Workspaces Tweaks ( Настройки рабочих пространств ) 14 | 15 | 16 | # Переключение между рабочими областями 17 | bindcode $mod+87 workspace $workspace1 18 | bindcode $mod+88 workspace $workspace2 19 | 20 | # Редакторы никогда не должны плавать 21 | bindcode $mod+89 workspace $workspace3; floating disable 22 | 23 | #Сделали так, чтобы все окна на рабочем столе 4 были отображены как табы 24 | bindcode $mod+83 workspace $workspace4; layout tabbed 25 | 26 | bindcode $mod+84 workspace $workspace5 27 | bindcode $mod+85 workspace 6 28 | bindcode $mod+79 workspace 7 29 | bindcode $mod+80 workspace 8 30 | bindcode $mod+81 workspace 9 31 | 32 | # Воркспейс, где все окна находятся в режиме float (летают, как на обычном десктопе) 33 | bindcode $mod+91 workspace $workspaceFD; floating enable 34 | 35 | # Перенос окон в этот воркспейс 36 | bindcode $mod+Shift+91 move container to workspace $workspaceFD 37 | 38 | # Переключение между последними рабочими областями 39 | bindsym $mod+Tab workspace next 40 | bindsym $mod+Shift+Tab workspace prev 41 | 42 | # Показать экран без ничего 43 | bindsym $mod+x workspace Desktop 44 | 45 | # M + Shift + цифра 46 | # Перемещать выделенное окно между областями 47 | bindcode $mod+Shift+87 move container to workspace $workspace1 48 | bindcode $mod+Shift+88 move container to workspace $workspace2 49 | bindcode $mod+Shift+89 move container to workspace $workspace3 50 | bindcode $mod+Shift+83 move container to workspace $workspace4 51 | bindcode $mod+Shift+84 move container to workspace $workspace5 52 | bindcode $mod+Shift+85 move container to workspace 6 53 | bindcode $mod+Shift+79 move container to workspace 7 54 | bindcode $mod+Shift+80 move container to workspace 8 55 | bindcode $mod+Shift+81 move container to workspace 9 56 | 57 | # Scratchpad ( летающие float окна поверх других ) 58 | bindcode $mod+105 scratchpad show 59 | 60 | ####################################################### Конец раздела настройки рабочих пространств 61 | -------------------------------------------------------------------------------- /i3-rainy_manual.md: -------------------------------------------------------------------------------- 1 | # Мануал к i3-rainy 2 | 3 | **i3-rainy** - набор конфигураций к оконному менеджеру i3-gaps 4 | Данные конфигурации делают переход с не тиллинговых оконных менеджеров на i3 довольно гладким. 5 | 6 | 7 | ### Содержание 8 | 9 | - Горячие клавиши (хоткеи) 10 | - Общая информация к каждому файлу 11 | 12 | ## Горячие клавиши 13 | 14 | Главная клавиша в i3-rainy - клавиша `Win` (*далее помечается как **$***) 15 | 16 | С помощью неё вы можете переключаться на другие рабочие области (*см. далее*), и многое другое 17 | 18 | #### Запуск приложений 19 | В i3-rainy я придерживаюсь строгой философии: если есть что-то, что запускается, то там должна быть задействованы клавиша Shift. 20 | (Кроме терминала и файлового менеджера, ибо их мы запускаем часто) 21 | 22 | `$+Enter` - запустить терминал 23 | 24 | `$+Shift+F` - запустить Firefox 25 | 26 | `$+Shift+E` - запустить Emacs 27 | 28 | `$+Shift+V` - запустить Vim (*для NeoVim раскоментируйте* `#bindsym $mod+Shift+v exec alacritty -t "Vim" -e nvim`) 29 | 30 | `$+Shift+N` - запустить Nautilus 31 | 32 | `PrintScreen` - запустить scrot и сделать скриншот 33 | 34 | `$+M` - запустить ranger (тут сокращений от file Manager, ибо я использую ranger, как основной FM) 35 | 36 | #### Переключение между рабочими столами 37 | Рабочий стол (Workspace) - один из ключевых моментов в i3, вы можете переключаться между ними. На каждом рабочем столе содержится только определенный набор программ. 38 | Для нас это: 39 | 40 | - 1. Браузер и менеджеры 41 | - 2. Терминал 42 | - 3. Редакторы 43 | - 4. Файловые менеджеры + ПО для просмотра медиа-файлов 44 | - 5. Все остальное 45 | - "Возле нуля" - рабочий стол, где все окна летают 46 | - "Рабочий стол" - просто рабочий стол, где можно что-то запустить, но нельзя ничего переносить (в него) 47 | 48 | Собственно сами комбинации передвижения между рабочими столами: 49 | 50 | - `$+NumPad цифра (1-9)` - Переключение между основными рабочими столами 51 | - `$+NumPad .` - переключиться на рабочий стол "Возле нуля" 52 | - `$+CTRL_R` - открыть Scratchpad ( рабочий стол, который отображается поверх 53 | всех окон ) 54 | - `$+x` - чистый рабочий стол 55 | - `$+Tab` - переключиться на следующий рабочий стол 56 | - `$+Shift+Tab` - переключиться на предыдущий рабочий стол 57 | 58 | Комбинации для перемещения окон из одного рабочего стола в другой: 59 | 60 | - `$+Shift+NumPad (1-9)` - переместить окно на котором вы сфокусированы на 1-9 рабочий стол соответственно 61 | - `$+Shift+NumPad .` - переместить в рабочий стол "Возле нуля" 62 | - `$+Numpad * ` - сделать окно "липким" (*будет отображаться на всех рабочих 63 | столах*) 64 | 65 | 66 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Configurations 2 | 3 | ##### Конфигурации к Alacritty, vim, tmux, xterm, hyper 4 | 5 | # О репозитории 6 | 7 | В этом репозитории лежат файлы конфигурации к различным консольным программам 8 | Созданы они для того, что стандартные настройки показались мне достаточно грубыми. В этом репозитории почти все файлы заточены на vi-подобные хоткеи 9 | 10 | ```bash 11 | git clone https://www.github.com/username77177/Configurations/ ~/Configurations 12 | ``` 13 | 14 | # О i3 15 | 16 | i3 - прекрасный тайловый менеджер окон, однако его настройка у меня вызвала некоторые проблемы. Я позаимствовал настройки у [addy-dclxvi](https://github.com/addy-dclxvi/) 17 | Также, хочу приложить [ссылку на его замечательный репозиторий](https://github.com/addy-dclxvi/i3-starterpack) 18 | 19 | # Мануал 20 | 21 | ### Терминалы 22 | 23 | #### [Alacritty](https://raw.github.com/alacritty/alacritty) 24 | 25 | ![Alacritty Image](https://raw.github.com/Username77177/Configurations/master/img/Alacritty.png) 26 | 27 | Пока что, наилучший терминал, который я видел. Пройдемся по основным изменениям, которые я сделал в файле конфигурации: 28 | 29 | - Всё что обведено мышью сразу же идёт в буфер обмена 30 | - Терминал изначально запускается в полноэкранном режиме 31 | - Начальный шрифт [Fira Code](https://github.com/tonsky/FiraCode) 32 | - Размер шрифта 14px 33 | - Цветовая схема ["Base16 Dark"](https://github.com/eendroroy/alacritty-theme) 34 | - Начальная оболочка Bash с tmux при старте 35 | 36 | #### xterm 37 | 38 | ![Xterm Image](https://raw.github.com/Username77177/Configurations/master/img/Xterm.png) 39 | 40 | Стандартный терминал, который настроен как и все остальные терминалы, однако работает с минимальными настройками 41 | 42 | - Начальный шрифт [Fira Code](https://github.com/tonsky/FiraCode) 43 | - Размер шрифта 15px 44 | - Тема [Dracula](https://github.com/dracula/xresources) 45 | - Копирование при выделении 46 | - Начальная оболочка Bash/zsh/fish 47 | 48 | #### [Hyper](https://hyper.is/) 49 | 50 | ![Hyper Image](https://raw.github.com/Username77177/Configurations/master/img/Hyper.png) 51 | 52 | Терминал, построенный на веб-технологиях 53 | 54 | - Начальный шрифт [Fira Code](https://github.com/tonsky/FiraCode) 55 | - Размер шрифта 16px 56 | - Терминал при старте: zsh 57 | - Копирование при выделении мышью 58 | - 6 плагинов, которые отвечают за стилизацию панелей, вставку текста и так далее 59 | - Hyper tmux не требуется, он и сам умеет делить окна 60 | 61 | ### Редакторы 62 | 63 | #### [NeoVim](https://neovim.io/) 64 | 65 | Улучшенная версия Vim 66 | 67 | - Множество плагинов для упрощения работы 68 | - [Emmet](https://github.com/mattn/emmet-vim) 69 | - [NERDTree](https://github.com/preservim/nerdtree) 70 | - [LightLine](https://github.com/itchyny/lightline.vim) 71 | - [Syntastic](https://github.com/scrooloose/syntastic) 72 | - [Vim-Closetag](https://github.com/alvan/vim-closetag) 73 | - [Vim-prettier](https://github.com/prettier/vim-prettier) 74 | - Хоткеи на удобную работу с табами 75 | -------------------------------------------------------------------------------- /editors/neovimrc: -------------------------------------------------------------------------------- 1 | call plug#begin() 2 | 3 | " FuzzyFinder (для быстрого поиска) (sudo npm install fzf) 4 | Plug 'junegunn/fzf.vim' 5 | " NERDTree - быстрый просмотр файлов 6 | Plug 'preservim/nerdtree' 7 | " Линия статуса 8 | Plug 'itchyny/lightline.vim' 9 | " Темы 10 | Plug 'cocopon/iceberg.vim' 11 | " Проверка Синтаксиса 12 | Plug 'scrooloose/syntastic' 13 | " Плагин для закрытия скобок 14 | Plug 'alvan/vim-closetag' 15 | " Emmet для Vim 16 | Plug 'mattn/emmet-vim' 17 | " Плагин для причесывания кода (sudo npm install prettier) 18 | Plug 'prettier/vim-prettier', { 19 | \ 'do': 'sudo npm install', 20 | \ 'for': ['javascript', 'typescript', 'css', 'less', 'scss', 'json', 'graphql', 'markdown', 'vue', 'yaml', 'html'] } 21 | call plug#end() 22 | 23 | 24 | " Делаем Vim более функциональным 25 | set nocompatible 26 | set t_Co=256 27 | 28 | " Конфигурация prettier 29 | autocmd BufWritePre *.js,*.jsx,*.mjs,*.ts,*.tsx,*.css,*.less,*.scss,*.json,*.graphql,*.md,*.vue,*.yaml,*.html Prettier 30 | 31 | " Конфигурация Emmet 32 | let g:user_emmet_leader_key='' " Хоткей для того, чтобы активировать Emmet (на самом деле - ) 33 | let g:user_emmet_mode='a' " Emmet теперь доступен во всех режимах 34 | let g:user_emmet_install_global = 0 " Emmet не будет активироваться во всех файлах 35 | autocmd FileType html,css EmmetInstall " Emmet активируется только в файлах с расширением .html и .css 36 | 37 | " Автодополнение командной строки 38 | set wildignorecase 39 | set wildmode=full 40 | set wildmode=list:longest 41 | set completeopt=menuone,preview 42 | 43 | " Указываем расширения файлов в которых работает автодополнение тегов 44 | let g:closetag_filenames = '*.html,*.xhtml,*.phtml' 45 | 46 | " Автодополнение тегов HTML по умолчанию 47 | autocmd FileType html set omnifunc=htmlcomplete#CompleteTags 48 | 49 | " Комбинация клавиш jkl - действует как Escape в режиме Insert 50 | inoremap jkl 51 | 52 | " Делаем так, чтобы навигация работала на русском языке 53 | nmap о j 54 | nmap л k 55 | nmap р h 56 | nmap д l 57 | nmap ш i 58 | nmap ф a 59 | nmap в d 60 | 61 | " В нормальном режиме Ctrl+f вызывает :NERDTree 62 | nmap :NERDTreeToggle 63 | vmap ++ NERDCommenterToggle 64 | nmap ++ NERDCommenterToggl 65 | 66 | let g:NERDTreeGitStatusWithFlags = 1 67 | let g:NERDTreeIgnore = ['^node_modules$'] 68 | 69 | " Тема для **NeoVim** 70 | syntax on 71 | colorscheme iceberg 72 | 73 | " Переключения табов 74 | nmap :tabprevious 75 | nmap :tabnext 76 | nmap :tabnew 77 | nnoremap :tabclose 78 | 79 | " Линия статуса: конфигурация 80 | set noshowmode " Табличка --INSERT-- больше не выводится на экран 81 | set laststatus=2 82 | let g:lightline = { 83 | \ 'colorscheme': 'iceberg', 84 | \ 'active': { 85 | \ 'left': [ [ 'mode', 'paste' ], 86 | \ [ 'gitbranch', 'readonly', 'filename', 'modified' ] ] 87 | \ }, 88 | \ 'component_function': { 89 | \ 'gitbranch': 'fugitive#head' 90 | \ }, 91 | \ } 92 | 93 | -------------------------------------------------------------------------------- /stable/update_links.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo "1: i3status or 2: i3-blocks" 3 | echo "1 or 2" 4 | read fos 5 | if [[ $fos = "1" ]] 6 | then 7 | mkdir ~/.config/i3status 8 | ln -sfr ~/Configurations/stable/GUI_configurations/i3status ~/.config/i3status/config 9 | fi 10 | 11 | #Compton, Xresources (Xterm, Rofi) and Dunst 12 | ln -sfr ~/Configurations/stable/GUI_configurations/compton ~/.config/compton.conf 13 | ln -sfr ~/Configurations/stable/GUI_configurations/XRESOURCES-for-all ~/.Xresources 14 | mkdir ~/.config/dunst 15 | ln -sfr ~/Configurations/stable/GUI_configurations/dunstrc ~/.config/dunst/dunstrc 16 | 17 | # From buildfile 18 | #################### 19 | # Bold Font 20 | B="\e[1m" 21 | # Normal Font 22 | N="\e[0m" 23 | 24 | # Green Color 25 | R='\033[1;31m' 26 | # Red Color 27 | G="\033[1;32m" 28 | # White Color 29 | W='\033[0m' 30 | 31 | # I3 INSTALL 32 | ## 33 | # 34 | 35 | #Variables 36 | CONFIG_NAME="i3conf_`date +%d-%m-%y#%H:%M`" 37 | # I3 configuration 38 | mkdir ~/.config/i3 39 | rm -rf ~/Configurations/stabl/i3conf_* 40 | touch ~/Configurations/stable/$CONFIG_NAME 41 | echo "Writing variables module into $CONFIG_NAME" 42 | 43 | cat ~/Configurations/stable/i3/variables.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 44 | 45 | echo -e "${W}Writing Features module into $CONFIG_NAME" 46 | cat ~/Configurations/stable/i3/features.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 47 | 48 | echo -e "${W}Writing Workspaces Tweaks module into $CONFIG_NAME" 49 | cat ~/Configurations/stable/i3/workspaces.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 50 | 51 | echo -e "${W}Writing Rules module into $CONFIG_NAME" 52 | cat ~/Configurations/stable/i3/rules.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 53 | 54 | echo -e "${W}Writing I3-gaps module into $CONFIG_NAME" 55 | cat ~/Configurations/stable/i3/i3gaps.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 56 | 57 | echo -e "${W}Writing Bar module into $CONFIG_NAME" 58 | echo -e "${B}Which bar do you prefer?" 59 | echo "1. i3status (Default)" 60 | echo "2. i3-blocks" 61 | read status 62 | 63 | if [[ $status = "2" ]] 64 | then 65 | cat ~/Configurations/stable/i3/bar_i3blocks.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 66 | else 67 | cat ~/Configurations/stable/i3/bar_i3status.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 68 | fi 69 | 70 | echo -e "${N}Writing Movement module into $CONFIG_NAME" 71 | cat ~/Configurations/stable/i3/movement.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 72 | 73 | echo -e "${W}Writing Binds module into $CONFIG_NAME" 74 | cat ~/Configurations/stable/i3/binds.partofconfig_i3 >> $CONFIG_NAME && echo -e "${G}Succesfull!" || echo -e "${R}Fail!" 75 | 76 | echo -e "${W} ${B}CONFIG GENERATING for I3 END${N}" 77 | 78 | # Делаем файл только читаемым 79 | chattr -i $CONFIG_NAME 80 | ### 81 | ln -sfr ~/Configurations/stable/i3conf_* ~/.config/i3/config 82 | -------------------------------------------------------------------------------- /terminals/config_tilda: -------------------------------------------------------------------------------- 1 | tilda_config_version="1.4.1" 2 | # command="" 3 | font="Monospace 11" 4 | key="g" 5 | addtab_key="t" 6 | fullscreen_key="F11" 7 | toggle_transparency_key="F12" 8 | toggle_searchbar_key="f" 9 | closetab_key="w" 10 | nexttab_key="Page_Down" 11 | prevtab_key="Page_Up" 12 | movetableft_key="Page_Up" 13 | movetabright_key="Page_Down" 14 | gototab_1_key="1" 15 | gototab_2_key="2" 16 | gototab_3_key="3" 17 | gototab_4_key="4" 18 | gototab_5_key="5" 19 | gototab_6_key="6" 20 | gototab_7_key="7" 21 | gototab_8_key="8" 22 | gototab_9_key="9" 23 | gototab_10_key="0" 24 | copy_key="c" 25 | paste_key="v" 26 | quit_key="q" 27 | title="Tilda" 28 | background_color="white" 29 | # working_dir="" 30 | web_browser="x-www-browser" 31 | increase_font_size_key="equal" 32 | decrease_font_size_key="minus" 33 | normalize_font_size_key="0" 34 | # show_on_monitor="" 35 | word_chars="-A-Za-z0-9,./?%&#:_" 36 | lines=5000 37 | max_width=1853 38 | max_height=210 39 | min_width=1 40 | min_height=1 41 | x_pos=70 42 | y_pos=27 43 | tab_pos=1 44 | expand_tabs=false 45 | show_single_tab=false 46 | backspace_key=0 47 | delete_key=1 48 | d_set_title=3 49 | command_exit=2 50 | scheme=0 51 | slide_sleep_usec=20000 52 | animation_orientation=0 53 | timer_resolution=200 54 | auto_hide_time=2000 55 | on_last_terminal_exit=0 56 | prompt_on_exit=false 57 | palette_scheme=0 58 | non_focus_pull_up_behaviour=0 59 | cursor_shape=0 60 | # show_on_monitor_number=0 61 | # title_max_length_flag=false 62 | title_max_length=25 63 | palette = {11822, 13364, 13878, 52428, 0, 0, 20046, 39578, 1542, 50372, 41120, 0, 13364, 25957, 42148, 30069, 20560, 31611, 1542, 38944, 39578, 54227, 55255, 53199, 21845, 22359, 21331, 61423, 10537, 10537, 35161, 58108, 24405, 64764, 59881, 20303, 30443, 34031, 58545, 44461, 32639, 43176, 13364, 58082, 58082, 61166, 61166, 60652} 64 | scrollbar_pos=2 65 | back_red=16384 66 | back_green=16384 67 | back_blue=16384 68 | text_red=13364 69 | text_green=25957 70 | text_blue=42148 71 | cursor_red=65535 72 | cursor_green=65535 73 | cursor_blue=65535 74 | scroll_history_infinite=false 75 | scroll_on_output=false 76 | notebook_border=true 77 | antialias=true 78 | scrollbar=false 79 | grab_focus=true 80 | above=true 81 | notaskbar=true 82 | bold=true 83 | blinks=true 84 | scroll_on_key=true 85 | bell=false 86 | run_command=false 87 | pinned=true 88 | animation=false 89 | hidden=true 90 | set_as_desktop=false 91 | centered_horizontally=false 92 | centered_vertically=false 93 | enable_transparency=true 94 | # double_buffer=false 95 | auto_hide_on_focus_lost=false 96 | auto_hide_on_mouse_leave=false 97 | title_behaviour=2 98 | inherit_working_dir=true 99 | command_login_shell=false 100 | start_fullscreen=false 101 | confirm_close_tab=false 102 | # image="" 103 | # scroll_background=false 104 | # use_image=false 105 | transparency=0 106 | back_alpha=55695 107 | -------------------------------------------------------------------------------- /stable/GUI_configurations/polybar_config.conf: -------------------------------------------------------------------------------- 1 | ;========================================================== 2 | ; 3 | ; 4 | ; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗ 5 | ; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗ 6 | ; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝ 7 | ; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗ 8 | ; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║ 9 | ; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ 10 | ; 11 | ; 12 | ; To learn more about how to configure Polybar 13 | ; go to https://github.com/polybar/polybar 14 | ; 15 | ; The README contains a lot of information 16 | ; 17 | ;========================================================== 18 | 19 | [settings] 20 | screenchange-reload = true 21 | 22 | [global/wm] 23 | margin-top = 5 24 | margin-bottom = 5 25 | 26 | [colors] 27 | background = #2d3436 28 | background-alt = #d4d4d4 29 | foreground = #dfe6e9 30 | foreground-alt = #b2bec3 31 | primary = #74b9ff 32 | secondary = #e60053 33 | alert = #ff7675 34 | 35 | [bar/bar1] 36 | width = 100% 37 | height = 30 38 | fixed-center = true 39 | background = ${colors.background} 40 | foreground = ${colors.foreground} 41 | line-size = 3 42 | line-color = #f00 43 | border-size = 4 44 | border-color = #00000000 45 | ;padding-left = 2 46 | ; padding-right = 2 47 | module-margin-left = 2 48 | module-margin-right = 2 49 | font-0 = Terminus:pixelsize=12;1 50 | font-1 = "Noto Color Emoji:pixelsize=16:style=Regular;2" 51 | modules-left = i3 52 | modules-center = mpd 53 | modules-right = cpu temperature memory xkeyboard wlan pulseaudio battery date powermenu 54 | tray-position = right 55 | tray-padding = 0 56 | wm-restack = i3 57 | scroll-up = i3wm-wsnext 58 | scroll-down = i3wm-wsprev 59 | cursor-click = pointer 60 | cursor-scroll = ns-resize 61 | 62 | [module/i3] 63 | ;READY 64 | type = internal/i3 65 | format = 66 | index-sort = true 67 | wrapping-scroll = false 68 | 69 | ; focused = Active workspace on focused monitor 70 | label-focused = %index% 71 | label-focused-background = ${colors.background-alt} 72 | label-focused-underline= ${colors.primary} 73 | label-focused-foreground = #2f2f2f 74 | label-focused-padding = 1 75 | 76 | ; unfocused = Inactive workspace on any monitor 77 | label-unfocused = %index% 78 | label-unfocused-padding = 1 79 | 80 | ; visible = Active workspace on unfocused monitor 81 | label-visible = %index% 82 | label-visible-background = ${self.label-focused-background} 83 | label-visible-underline = ${self.label-focused-underline} 84 | label-visible-padding = ${self.label-focused-padding} 85 | 86 | ; urgent = Workspace with urgency hint set 87 | label-urgent = %index% 88 | label-urgent-background = ${colors.alert} 89 | label-urgent-padding = 2 90 | 91 | ; Separator in between workspaces 92 | label-separator = - 93 | 94 | [module/date] 95 | ;READY 96 | type = internal/date 97 | format =