commit d4c76462caa791282e6774bf2847c987e307e206 Author: Marco van Dijk Date: Tue Jul 13 17:26:13 2021 +0200 Initial Commit diff --git a/.Xdefaults b/.Xdefaults new file mode 100644 index 0000000..33b6cf4 --- /dev/null +++ b/.Xdefaults @@ -0,0 +1,80 @@ +*.foreground: #ABB2BF +*.background: #1A1C1E +*.cursorColor: #5C6370 +*.highlightColor:#3A3F4B + +!*fading: 40 +!*fadeColor: S_base03 +!*pointerColorBackground: S_base01 +!*pointerColorForeground: S_base1 + +! Normal Bright +! -------- ------- +! 0 Black 8 Black +! 1 Red 9 Red +! 2 Yellow 10 Yellow +! 3 Green 11 Green +! 4 Blue 12 Blue +! 5 Magenta 13 Magenta +! 6 Cyan 14 Cyan +! 7 White 15 White + +! Black colours +*.color0: #1A1C1E +*.color8: #151718 +! Red colours +*.color1: #E06C75 +*.color9: #E06C75 +! Yellow colours +*.color2: #98C379 +*.color10: #98C379 +! Green colours +*.color3: #D19A66 +*.color11: #D19A66 +! Blue colours +*.color4: #61AFEF +*.color12: #61AFEF +! Magenta (pink, !green) colours +*.color5: #C678DD +*.color13: #C678DD +! Cyan (blue + green) +*.color6: #56B6C2 +*.color14: #56B6C2 +! White colours +*.color7: #ABB2BF +*.color15: #FFFFFF + +! xterm.vt100.faceName: Terminus:style=Regular:size=10 +! xterm.vt100.faceNameDoublesize: Cyberbit:style=Regular:size=10 + +XTerm.vt100.bellIsUrgent: true +XTerm.vt100.alternateScroll: true +XTerm.vt100.selectToClipboard: true + +URxvt.scrollBar: false +URxvt.perl-ext-common: default,selection-to-clipboard +URxvt.clipboard.autocopy: true ! sync primary and clipboard buffers +URxvt.secondaryScreen: 1 +URxvt.secondaryScroll: 0 +URxvt.secondaryWheel: 1 +URxvt*urgentOnBell: true +URxvt*scrollTtyOutput: false +URxvt*scrollWithBuffer: true +URxvt*scrollTtyKeypress: true +URxvt.font: xft:Consolas:pixelsize=12, xft:Segoe UI Symbol:style=Regular:pixelsize=12, xft:Unifont:pixelsize=12 +URxvt.letterSpace : -2 ! Put characters slightly closer together +URxvt.termName : rxvt-unicode-256color +!Urxvt*termName: screen-256color +URxvt.iso14755 : false +URxvt.iso14755_52: false + +! transparency in i3 +!URxvt.transparent: true +!URxvt.shading:20 + +Xft.dpi: 96 +Xft.Hinting: 1 +Xft.RGBA: rgb +Xft.HintStyle: hintslight +Xft.Antialias: 1 + diff --git a/.bashrc b/.bashrc new file mode 100644 index 0000000..e74ea80 --- /dev/null +++ b/.bashrc @@ -0,0 +1,50 @@ +# +# ~/.bashrc +# + +export EDITOR=vim +export PATH=/home/$USER/bin:$PATH + +export HISTFILESIZE=10000 +export HISTCONTROL=erasedups +export HISTSIZE=10000 +export HISTIGNORE='ls:bg:fg:history:du:exit:make' + +# Set clear command to clear and display system info +alias clear='clear && neofetch | lolcat' + +if [ -e /usr/share/terminfo/s/st-256color ]; then + export TERM='st-256color' +else + export TERM='st' +fi + + + +# # If not running interactively, don't do anything +# [[ $- != *i* ]] && return + +#alias ssh='TERM=xterm ssh' +alias ls='ls --color=auto' +#prompt() { +# PS1="$(powerline-rs --shell bash --cwd-max-dir-size=6 $?)" +#} +#PROMPT_COMMAND=prompt + +powerline-daemon -q +POWERLINE_BASH_CONTINUATION=1 +POWERLINE_BASH_SELECT=1 +. /usr/share/powerline/bindings/bash/powerline.sh + +man() { + env LESS_TERMCAP_mb=$'\E[01;31m' \ + LESS_TERMCAP_md=$'\E[01;38;5;74m' \ + LESS_TERMCAP_me=$'\E[0m' \ + LESS_TERMCAP_se=$'\E[0m' \ + LESS_TERMCAP_so=$'\E[38;5;246m' \ + LESS_TERMCAP_ue=$'\E[0m' \ + LESS_TERMCAP_us=$'\E[04;38;5;146m' \ + man "$@" +} +# CD to work directory +#cd ~/Documents/ddvtech/ diff --git a/.config/kanshi/config b/.config/kanshi/config new file mode 100644 index 0000000..406ac4f --- /dev/null +++ b/.config/kanshi/config @@ -0,0 +1,10 @@ +{ + output eDP-1 enable mode 1920x1080@60.008Hz position 0,0 +} + +{ + output "Samsung Electric Company U28E590 HTPH402827" mode 3840x2160@60.000Hz position 0,0 + output eDP-1 enable mode 1920x1080@60.008Hz position 0,2160 +} + + diff --git a/.config/sway/config b/.config/sway/config new file mode 100644 index 0000000..13c9e40 --- /dev/null +++ b/.config/sway/config @@ -0,0 +1,354 @@ +######### Configuration ######### +### the easy stuff ### + + # Key to do all the things (Mod1=Alt, Mod4=Super/Windows) + set $mod Mod4 + + # Home row direction keys, like vim + set $left h + set $down j + set $up k + set $right l + + # Default Terminal + set $term urxvt + + # Autofocus on hover + focus_follows_mouse yes + + # Rebind capslock to escape + input "type:keyboard" { + xkb_options caps:escape + } + + # Include scripts or configs + include /etc/sway/config.d/* + + # Borders + # Also removes all title bars + #for_window [class="^.*"] border pixel 2 + default_border pixel 3 + + # Floating windows get no borders >:( + default_floating_border pixel 0 + + # Hide borders when you can't see them anyway + hide_edge_borders smart + + # Set colours various window states + # class border backgr. text indicator child_border + client.focused #4470ad #4470ad #ffffff #1e88e5 #4470ad + #client.focused_inactive #5c6370 #3b3228 #ffffff #5c6370 #5c6370 + #client.unfocused #5c6370 #3b3228 #ffffff #5c6370 #5c6370 + + # Gaps + # I like big gaps and I can not lie + set $default_gaps_inner 12 + set $default_gaps_outer 12 + gaps inner $default_gaps_inner + gaps outer $default_gaps_outer + gaps top 0 + # gaps bottom 10 + + # Hide gaps when there is only 1 window + smart_gaps on + + +######### Launchers ######### +### Menu for commands ### + + # Program Launcher + set $menu rofi -no-config -no-lazy-grab -show drun -modi drun -theme ~/.config/wofi/launcher.rasi + bindsym $mod+d exec $menu + + # Power menu + bindsym $mod+P exec /home/marco/.config/wofi/wofi-power.sh + + +######### Output Configuration ######### +### Monitors n shit ### + + # Wallpaper + output * bg /home/marco/Images/bliss_windows_night.png fill + + # NOTE: We are using kanshi to automagically setup screens + # See https://github.com/emersion/kanshi + + +######### Key Bindindings ######### +### (I use Arch BTW) ### + + # Start a terminal + bindsym $mod+Return exec $term + + # Switch workspace to another monitor + bindsym $mod+Shift+h move workspace to output left + bindsym $mod+Shift+Tab move workspace to output left + bindsym $mod+Shift+j move workspace to output down + bindsym $mod+Shift+k move workspace to output up + bindsym $mod+Shift+l move workspace to output right + bindsym $mod+Tab move workspace to output right + + # Kill focused window + bindsym $mod+Shift+q kill + + # Resize/move (floating and tiled) windows with $mod and left/right click + floating_modifier $mod normal + + # reload sway + bindsym $mod+Shift+c reload + + # Exit sway + bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit' + + #prev/next workspace. bind it to your mouse if you have a sticky keyboard + bindsym $mod+Shift+o workspace prev + bindsym $mod+Shift+p workspace next + + # Switch to workspace + bindsym $mod+1 workspace number 1 + bindsym $mod+2 workspace number 2 + bindsym $mod+3 workspace number 3 + bindsym $mod+4 workspace number 4 + bindsym $mod+5 workspace number 5 + bindsym $mod+6 workspace number 6 + bindsym $mod+7 workspace number 7 + bindsym $mod+8 workspace number 8 + bindsym $mod+9 workspace number 9 + bindsym $mod+0 workspace number 10 + + # Move focused container to workspace + bindsym $mod+Shift+1 move container to workspace number 1 + bindsym $mod+Shift+2 move container to workspace number 2 + bindsym $mod+Shift+3 move container to workspace number 3 + bindsym $mod+Shift+4 move container to workspace number 4 + bindsym $mod+Shift+5 move container to workspace number 5 + bindsym $mod+Shift+6 move container to workspace number 6 + bindsym $mod+Shift+7 move container to workspace number 7 + bindsym $mod+Shift+8 move container to workspace number 8 + bindsym $mod+Shift+9 move container to workspace number 9 + bindsym $mod+Shift+0 move container to workspace number 10 + + # Split direction + # NOTE: we are using autotiling based on window dimensions + # See https://github.com/nwg-piotr/autotiling + bindsym $mod+b splith + bindsym $mod+v splitv + + # Make the current focused window fullscreen + bindsym $mod+f fullscreen + + # Toggle focused window tiled/floating + bindsym $mod+Shift+t floating toggle + + # Swap focus between the tiling area and the floating area + bindsym $mod+t focus mode_toggle + + # Move the currently focused window to the scratchpad + bindsym $mod+Shift+s move scratchpad + + # Cycle through windows in the scratchpad + bindsym $mod+s scratchpad show + + # Media keys + bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +10% + bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -10% + bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle + bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle + + # Gaps + bindsym $mod+z gaps outer current plus 5 + bindsym $mod+Shift+z gaps outer current minus 5 + + # Sreen brightness controls + bindsym XF86MonBrightnessDown exec light -U 5 + bindsym XF86MonBrightnessUp exec light -A 5 + + # Screenshot / share shortcuts + bindsym Print exec "grim ~/Pictures/Screenshot-$(date -Iseconds | cut -d'+' -f1).png" + bindsym $mod+Print exec "grim -g "$(slurp)" - | wl-copy" + bindsym Shift+Print exec "wf-recorder -f ~/Pictures/Screenshot-$(date -Iseconds | cut -d'+' -f1).mp4" + + +######### Resizing Containers ######### +### $mod+mouseClick works better tho ### + + mode "resize" { + 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 + + # easier than quitting vim + bindsym Return mode "default" + bindsym Escape mode "default" + bindsym $mod+r mode "default" + } + bindsym $mod+r mode "resize" + + +######### Window Properties ######### +### Floating/Tiling / Workspaces ### + + # Wayland default floats + for_window [app_id="gnome-(calendar|calculator|power-statistics|control-center)"] floating enable + for_window [app_id="org.gnome.(Nautilus|Weather)"] floating enable + for_window [app_id="(pavucontrol|psensor)"] floating enable + for_window [app_id="evolution-alarm-notify"] floating enable + for_window [app_id="nemo"] floating disable + for_window [app_id="solaar"] floating enable + for_window [app_id="evolution" title="Compose Message"] floating enable + for_window [app_id="evolution" title="Re(.*)"] floating enable + for_window [app_id="evolution" title="Fwd(.*)"] floating enable + for_window [app_id="mpv"] floating enable + for_window [app_id="mpv"] resize set 960 540 + for_window [app_id="mpv"] border pixel 0 + for_window [app_id="firefox" title="Firefox — Sharing Indicator"] floating enable + for_window [app_id="firefox" title="Picture-in-Picture"] floating enable + for_window [app_id="firefox" title="Pushbullet – Mozilla Firefox"] floating enable + for_window [app_id="firefox" title="About Mozilla Firefox"] floating enable + + # Brave, chrome, chromium + for_window [title="Picture-in-picture"] floating enable + + # XWayland default floats + #for_window [class="[.]*"] floating enable + + # Assign programs to workspace + assign [class="firefox"] → number 2 + assign [class="code"] → number 4 + assign [class="discord"] → number 5 + assign [class="Spotify"] → number 5 + assign [class="Nemo"] → number 3 + for_window [class="Gimp"] floating disable + for_window [class="Gimp-2.10"] floating disable + + +######### Launch Programs ######### +### We need dis stuff ### + +# Applets + exec nm-applet --indicator & + exec blueman-applet & + +# Clipboard manager + exec wl-paste -t text --watch clipman store + +# fingerprint reader + exec lxsession & + +# Auto set monitor properties + exec kanshi & + +# Autotiling based on window dimensions + exec autotiling & + +# start initial programs + # TODO: We still need to something similar to i3 layouts + exec firefox & + exec code & + exec discord & + exec spotify & + +# Finally start waybar + exec /home/marco/.config/waybar/launch.sh & + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +###### Bag of Holding ###### +### remove later ### + + # Workaround for GTK apps hanging during init + # See https://github.com/swaywm/sway/wiki#gtk-applications-take-20-seconds-to-start + # See https://github.com/swaywm/sway/issues/5732 + #exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK + #exec dbus-update-activation-environment 2>/dev/null && \ + # dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK + # End of workaround + + ### Status Bar: + # + #bar { + # position top + # + # # When the status_command prints a new line to stdout, swaybar updates. + # # The default just shows the Rcurrent date and time. + # status_command while date +'%Y-%m-%d %l:%M:%S %p'; do sleep 1; done + # + # colors { + # statusline #ffffff + # background #323232 + # inactive_workspace #32323200 #32323200 #5c5c5c + # } + #} + + # set $menu wofi --show=drun --lines=5 --prompt="" --hide-scroll --insensitive --columns=2 + # bindsym $mod+d exec /home/marco/.config/wofi/launch.sh + +###### \ No newline at end of file diff --git a/.config/waybar/config b/.config/waybar/config new file mode 100644 index 0000000..3ee181d --- /dev/null +++ b/.config/waybar/config @@ -0,0 +1,122 @@ +{ + "layer": "top", + "position": "top", + "modules-left": ["sway/workspaces", "sway/mode", "sway/window"], + "modules-center": ["clock"], + "modules-right": ["custom/recorder", "tray", "pulseaudio", "backlight", "temperature", "custom/cpu_speed", "battery", "network", "custom/powermenu"], + "sway/mode": { + "format": " {}" + }, + "sway/workspaces": { + "disable-scroll": true, + "all-outputs": false, + "disable-markup": false, + "format": "{icon}", + "format-icons": { + "1": "1 ", + "2": "2 ", + "3": "3 ", + "4": "4 ", + "5": "5 ", + "6": "6 ", + "7": "6 ", + "8": "6 " + } + }, + "tray": { + "icon-size": 20, + "spacing": 10 + }, + "sway/window": { + "max-length": 60, + "tooltip": false + // "format": "( {} )" + }, + "clock": { + "format": "{:%a %d %b - %H:%M}", + "tooltip": false, + "on-click": "gnome-calendar" + }, + "custom/cpu_speed": { + "interval": 10, + "return-type": "json", + "exec": "~/.config/waybar/modules/cpu_speed.sh", + "format": "{icon} {}", + "format-icons": [""], + "escape": true, + "on-click": "urxvt -e htop" + }, + "custom/powermenu": { + "return-type": "json", + "exec": "~/.config/waybar/modules/powermenu.sh", + "format": "{icon} {}", + "format-icons": [""], + "interval": 3600, + "escape": true, + "on-click": "home/marco/.config/wofi/wofi-power.sh" + }, + "custom/recorder": { + "format": "", + "return-type": "json", + "interval": 4, + "exec": "echo '{\"class\": \"recording\"}'", + "exec-if": "pgrep wf-recorder" + }, + "battery": { + "format": "{icon} {capacity}% - {time}", + "format-icons": ["", "", "", "", ""], + "format-time": "{H}h{M}m", + "format-charging": " {icon} {capacity}% - {time}", + "format-full": " {icon} Charged", + "interval": 30, + "states": { + "warning": 25, + "critical": 10 + }, + "tooltip": false + }, + "network": { + "format": "{icon}", + "format-alt": "{ipaddr}/{cidr} {icon}", + "format-alt-click": "click-right", + "format-wifi": " {essid} ({signalStrength}%)", + "format-ethernet": " {ifname}", + "format-disconnected": "⚠ Disconnected", + "on-click": "urxvt -e /home/marco/sway/scripts/network-manager", + "tooltip": false + }, + "pulseaudio": { + "format": "{icon:2} {volume:4}%", + "format-alt": "{icon:2} {volume:4}%", + "format-alt-click": "click-right", + "format-muted": "", + "format-icons": { + "phone": [" ", " ", " ", " "], + "default": ["", "", "", ""] + }, + "scroll-step": 2, + "on-click": "pavucontrol", + "tooltip": false + }, + "backlight": { + "format": "{icon}", + "format-alt": "{percent}% {icon}", + "format-alt-click": "click-right", + "format-icons": ["", ""], + "on-scroll-up": "light -A 1", + "on-scroll-down": "light -U 1" + }, + "temperature": { + "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", + "critical-threshold": 75, + "interval": 5, + "format": "{icon} {temperatureC}°", + "format-icons": [ + "", // Icon: temperature-empty + "", // Icon: temperature-quarter + "", // Icon: temperature-half + "", // Icon: temperature-three-quarters + "" // Icon: temperature-full + ] + } +} diff --git a/.config/waybar/launch.sh b/.config/waybar/launch.sh new file mode 100755 index 0000000..db07846 --- /dev/null +++ b/.config/waybar/launch.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env sh + +# Terminate already running bar instances +killall -q waybar + +# Wait until the processes have been shut down +while pgrep -x waybar >/dev/null; do sleep 1; done + +# Launch main +waybar \ No newline at end of file diff --git a/.config/waybar/modules/cpu_speed.sh b/.config/waybar/modules/cpu_speed.sh new file mode 100755 index 0000000..9dec0b8 --- /dev/null +++ b/.config/waybar/modules/cpu_speed.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +class=cpu_speed +speed_mhz=$(lscpu | grep "CPU MHz" | sed --expression "s/CPU MHz:[[:space:]]*//g" | xargs printf "%.*f\n" 0) + +# speed_ghz=`echo $(($speed_mhz / 1000))` + +speed_ghz=`bc -l <<< "$speed_mhz / 1000"` + +info=$(echo $speed_ghz | xargs printf "%.*f\n" 2) + +echo -e "{\"text\":\""$info GHz"\", \"class\":\""$class"\"}" diff --git a/.config/waybar/modules/powermenu.sh b/.config/waybar/modules/powermenu.sh new file mode 100755 index 0000000..4671ca4 --- /dev/null +++ b/.config/waybar/modules/powermenu.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +me=`whoami` +me_name=`getent passwd ${me} | cut -d ':' -f 5 | cut -d ',' -f 1` +class=powermenu + +echo -e "{\"text\":\""$me_name"\", \"class\":\""$class"\"}" diff --git a/.config/waybar/style.css b/.config/waybar/style.css new file mode 100644 index 0000000..79bc69a --- /dev/null +++ b/.config/waybar/style.css @@ -0,0 +1,124 @@ +#waybar { + font-family: "Fira Sans SemiBold"; + font-size: 13px; +} + +#window { + padding: 0 10px; +} + +window#waybar { + border: none; + border-radius: 0; + box-shadow: none; + text-shadow: none; + transition-duration: 0s; + color: rgba(217, 216, 216, 1); + background: rgba(0, 0, 0, 0.87); +} + +#workspaces { + margin: 0 5px; +} + +#workspaces button { + padding: 0 8px; + color: rgba(217, 216, 216, 0.4); + border: 3px solid rgba(217, 216, 216, 0); + border-radius: 10px; +} + +#workspaces button.visible { + color: rgba(217, 216, 216, 1); +} + +#workspaces button.focused { + border-top: 3px solid rgba(217, 216, 216, 1); + border-bottom: 3px solid rgba(217, 216, 216, 1); +} + +#workspaces button.urgent { + background-color: #943432; + color: white; +} + +#workspaces button:hover { + box-shadow: inherit; + border-color: #d1be8b; + color: #888888; +} + +/* Repeat style here to ensure properties are overwritten as there's no !important and button:hover above resets the colour */ + +#workspaces button.focused { + color: white; +} + +#pulseaudio { + /* font-size: 26px; */ +} + +#custom-cpu_speed { + min-width: 82px; +} + +#custom-recorder { + font-size: 18px; + margin: 2px 7px 0px 7px; + color:#c9545d; +} + +#tray, +#mode, +#battery, +#temperature, +#cpu, +#memory, +#network, +#pulseaudio, +#idle_inhibitor, +#sway-language, +#backlight, +#custom-storage, +#custom-cpu_speed, +#custom-powermenu, +#custom-spotify, +#custom-weather, +#custom-mail, +#custom-media { + margin: 0px 0px 0px 10px; + padding: 0 5px; + /* border-top: 3px solid rgba(217, 216, 216, 0.5); */ +} + +/* #clock { + margin: 0px 16px 0px 10px; + min-width: 140px; +} */ + +#battery.warning { + color: rgba(255, 210, 4, 1); +} + +#battery.critical { + color: rgba(238, 46, 36, 1); +} + +#battery.charging { + color: rgba(217, 216, 216, 1); +} + +#custom-storage.warning { + color: rgba(255, 210, 4, 1); +} + +#custom-storage.critical { + color: rgba(238, 46, 36, 1); +} + +@keyframes blink { + to { + background-color: #ffffff; + color: black; + } +} diff --git a/.config/wofi/colors.rasi b/.config/wofi/colors.rasi new file mode 100644 index 0000000..78f39bb --- /dev/null +++ b/.config/wofi/colors.rasi @@ -0,0 +1,10 @@ +/* colors */ + +* { + al: #00000000; + bg: #1A1C1EFF; + bga: #151718FF; + fga: #ABB2BFFF; + fg: #ABB2BFFF; + ac: #4470adFF; +} diff --git a/.config/wofi/launch.sh b/.config/wofi/launch.sh new file mode 100755 index 0000000..c241cd9 --- /dev/null +++ b/.config/wofi/launch.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env sh + +# Terminate already running bar instances +killall -q wofi + +# Wait until the processes have been shut down +while pgrep -x wofi >/dev/null; do sleep 1; done + +# Launch main +wofi --show=drun --lines=5 --prompt="" --hide-scroll --insensitive --columns=2 \ No newline at end of file diff --git a/.config/wofi/launcher.rasi b/.config/wofi/launcher.rasi new file mode 100644 index 0000000..4fbc64b --- /dev/null +++ b/.config/wofi/launcher.rasi @@ -0,0 +1,106 @@ +configuration { + font: "Iosevka Nerd Font 10"; + show-icons: true; + icon-theme: "Papirus"; + display-drun: ""; + drun-display-format: "{name}"; + disable-history: false; + fullscreen: false; + hide-scrollbar: true; + sidebar-mode: false; +} + +@import "colors.rasi" + +window { + transparency: "real"; + background-color: @bg; + text-color: @fg; + border: 0px 0px 4px 0px; + border-color: @ac; + border-radius: 0px; + width: 600px; + location: center; + x-offset: 0; + y-offset: 0; +} + +prompt { + enabled: true; + padding: 2px 0px 0px 4px; + background-color: @al; + text-color: @fg; + font: "feather 12"; +} + +entry { + background-color: @al; + text-color: @fg; + placeholder-color: @fg; + expand: true; + horizontal-align: 0; + placeholder: "Search..."; + padding: 2px 0px 0px 6px; + blink: true; +} + +inputbar { + children: [ prompt, entry ]; + background-color: @bga; + text-color: @fg; + expand: false; + border: 0px; + border-radius: 0px; + border-color: @ac; + margin: 0px; + padding: 8px; +} + +listview { + background-color: @al; + padding: 0px; + columns: 2; + lines: 7; + spacing: 6px; + cycle: true; + dynamic: true; + layout: vertical; +} + +mainbox { + background-color: @al; + border: 0px; + border-radius: 0px; + border-color: @ac; + children: [ inputbar, listview ]; + spacing: 6px; + padding: 6px; +} + +element { + background-color: @al; + text-color: @fga; + orientation: horizontal; + border-radius: 0px; + padding: 8px; +} + +element-icon { + size: 24px; + border: 0px; +} + +element-text { + expand: true; + horizontal-align: 0; + vertical-align: 0.5; + margin: 0px 2.5px 0px 2.5px; +} + +element selected { + background-color: @bga; + text-color: @fg; + border: 0px 0px 0px 0px; + border-radius: 0px; + border-color: @ac; +} diff --git a/.config/wofi/style.css b/.config/wofi/style.css new file mode 100644 index 0000000..8babac8 --- /dev/null +++ b/.config/wofi/style.css @@ -0,0 +1,56 @@ +*{ + font-family: monospace; +} + +window { + margin: 5px; + border: 0px solid white; + background-color: rgba(48, 98, 148, 1.0); +} + +#input { + margin: 5px; + border-radius: 0px; + border: none; + border-bottom: 0px solid black; + background-color: #1A1C1E; + color: white; +} + +#inner-box { + margin: 5px; + background-color: #1A1C1E; +} + +#outer-box { + margin: 5px; + padding:20px; + background-color: #1A1C1E; +} + +#scroll { + +} + +#text { + margin: 5px; + color: white; + /* border: 2px solid cyan; */ + /* background-color: cyan; */ +} + +/* #entry:nth-child(even){ + background-color: #404552; +} */ + +#entry:selected { + background-color: #151718; +} + +#text:selected { + text-decoration-color: white; +} + + + + diff --git a/.config/wofi/wofi-power.sh b/.config/wofi/wofi-power.sh new file mode 100755 index 0000000..bcfe8f3 --- /dev/null +++ b/.config/wofi/wofi-power.sh @@ -0,0 +1,15 @@ +#!/bin/sh + + +poweroff_command="systemctl poweroff" +reboot_command="systemctl reboot" +logout_command="swaymsg exit" +hibernate_command="systemctl hibernate" +suspend_command="systemctl suspend" + +# you can customise the rofi command all you want ... +rofi_command="rofi -width 10 -hide-scrollbar -bg #586e75 -opacity 100 -padding 5 -theme ~/.config/wofi/launcher.rasi" +options=$'poweroff\nreboot\nlogout\nhibernate\nsuspend' + +# ... because the essential options (-dmenu and -p) are added here +eval \$"$(echo "$options" | $rofi_command -dmenu -p "")_command" \ No newline at end of file diff --git a/.vimrc b/.vimrc new file mode 100644 index 0000000..f662874 --- /dev/null +++ b/.vimrc @@ -0,0 +1,104 @@ +" Line numbers which change relative/absolute in insert/home mode +:set number relativenumber +:augroup numbertoggle +: autocmd! +: autocmd BufEnter,FocusGained,InsertLeave * set relativenumber +: autocmd BufLeave,FocusLost,InsertEnter * set norelativenumber +:augroup END + +" Load syntax and indentation plugins +if has('filetype') + filetype indent plugin on +endif +if has('syntax') + syntax on +endif +set autoindent + +" Display everything as utf-8 in vim +set encoding=utf-8 + +" Better command-line completion & search subdirectories as well +set path+=** +set wildmenu + +" Show partial commands in the last line of the screen +set showcmd + +" Highlight search results +set hlsearch + +" Use case insensitive search, except when using capital letters +set ignorecase +set smartcase + +" show incremental search results as you type +set incsearch + +" allow for unsaved buffers +set hidden + +" Allow backspacing over autoindent, line breaks and start of insert action +set backspace=indent,eol,start + +" When opening a new line and no filetype-specific indenting is enabled, keep +" the same indent as the line you're currently on +set nostartofline + +" Display cursor position in bottom bar +set ruler + +" Always display the status line, even if only one window is displayed +set laststatus=2 + +" Instead of failing a command because of unsaved changes, instead raise a +" dialogue asking if you wish to save changed files. +set confirm + +" Use visual bell instead of beeping when doing something wrong +set visualbell + +" And reset the terminal code for the visual bell. If visualbell is set, and +" this line is also included, vim will neither flash nor beep. If visualbell +" is unset, this does nothing. +set t_vb= + +" Enable use of the mouse for all modes +if has('mouse') + set mouse=a +endif + +" Set the command window height to 2 lines, to avoid many cases of having to +" "press to continue" +set cmdheight=2 + +" Quickly time out on keycodes, but never time out on mappings +set notimeout ttimeout ttimeoutlen=200 + +" Use to toggle between 'paste' and 'nopaste' +set pastetoggle= + +" Indentation settings for using 2 spaces instead of tabs. +set shiftwidth=2 +set softtabstop=2 +set expandtab + +" Map Y to act like D and C, i.e. to yank until EOL, rather than act as yy, +map Y y$ + +" (folder browser) netrw settings +let g:netrw_banner=0 "no top banner +let g:netrw_browse_split=4 "open in prior window +let g:netrw_altv=1 "open splits to the right +let g:netrw_liststyle=3 "tree view > list view +let g:netrw_list_hide=netrw_gitignore#Hide() +let g:netrw_list_hide.=',\(^\|\s\s\)\zs\.\S\+' + +" press jj to exit insert mode +inoremap jj + + + + + +