This commit is contained in:
Out Of Ideas 2024-03-24 00:06:07 -05:00
parent 0cfeeea6d6
commit 68d4d48276
26 changed files with 2730 additions and 0 deletions

12
ash/.ashrc Normal file
View File

@ -0,0 +1,12 @@
###########
# Aliases #
###########
alias lynx="~/.local/bin/lynx"
alias e="ls"
#############
# Autostart #
#############
fastfetch

23
ash/.profile Normal file
View File

@ -0,0 +1,23 @@
#######
# ASH #
#######
ENV="$HOME/.ashrc"
export ENV
. $ENV
. .ashrc
###################
# XDG_RUNTIME_DIR #
###################
# Set $XDG_RUNTIME_DIR
if test -z "${XDG_RUNTIME_DIR}"; then
export XDG_RUNTIME_DIR=/tmp/${UID}-runtime-dir
if ! test -d "${XDG_RUNTIME_DIR}"; then
mkdir "${XDG_RUNTIME_DIR}"
chmod 0700 "${XDG_RUNTIME_DIR}"
fi
fi
if [ -e /home/vehementham/.nix-profile/etc/profile.d/nix.sh ]; then . /home/vehementham/.nix-profile/etc/profile.d/nix.sh; fi # added by Nix installer

60
eww/eww.scss Normal file
View File

@ -0,0 +1,60 @@
* {
all: unset; /* Unsets everything so you can style everything from scratch */
}
/* Global Styles */
.bar0 {
font-size: 18px;
background-color: #1d1f21;
color: #c5c8c6;
padding: 10px;
border-radius: 16px;
} .bar1 {
font-size: 18px;
background-color: #1d1f21;
color: #c5c8c6;
padding: 10px;
border-radius: 16px;
}
/* Styles on classes (see eww.yuck for more information) */
.left_status {
all: unset;
margin-left: 12px;
}
.right_status slider {
all: unset;
color: #1d1f21;
}
.right_status button {
all: unset;
color: #1d2594;
margin-right: 23px;
font-size: 30px;
}
} .metric scale trough highlight {
all: unset;
background-color: #cc6666;
background-image: linear-gradient(to right, #81a2be, #8abeb7, #b294bb);
border-radius: 10px;
min-width: 7px;
} .metric scale trough {
all: unset;
background-color: #373b41;
border-radius: 50px;
min-height: 10px;
min-width: 100px;
margin-left: 13px;
margin-right: 15px;
}
.workspaces button {
color: #c5c8c6;
font-size: 17px;
} .workspaces button:hover {
color: #cc6666;
}

159
eww/eww.yuck Normal file
View File

@ -0,0 +1,159 @@
;; Bars
;; Variables
(defpoll volume :interval "1s"
"pactl get-sink-volume $(pactl get-default-sink) | awk '{print $5}' | head -n1")
(defpoll time :interval "10s"
"date '+%H:%M %b %d, %Y'")
(defvar logo "")
(deflisten music :initial ""
"playerctl --follow metadata --format '{{ artist }} - {{ title }}' || true")
;; workspaces
;; monitor 0
(defvar workspace_1_monitor_0 "")
(defvar workspace_2_monitor_0 "")
(defvar workspace_3_monitor_0 "")
(defvar workspace_4_monitor_0 "")
(defvar workspace_5_monitor_0 "")
(defvar workspace_6_monitor_0 "")
(defvar workspace_7_monitor_0 "")
(defvar workspace_8_monitor_0 "")
(defvar workspace_9_monitor_0 "")
;; monitor 1
(defvar workspace_1_monitor_1 "")
(defvar workspace_2_monitor_1 "")
(defvar workspace_3_monitor_1 "")
(defvar workspace_4_monitor_1 "")
(defvar workspace_5_monitor_1 "")
(defvar workspace_6_monitor_1 "")
(defvar workspace_7_monitor_1 "")
(defvar workspace_8_monitor_1 "")
(defvar workspace_9_monitor_1 "")
;; Full Bar
;; monitor 0
(defwidget bar0 []
(centerbox :orientation "h"
(left_status)
(workspaces_monitor_0)
;;(music)
(right_status)))
;; monitor 1
(defwidget bar1 []
(centerbox :orientation "h"
(left_status)
(workspaces_monitor_1)
;;(music)
(right_status)))
;; Bar Sections
;; left
(defwidget left_status []
(box :class "left_status" :orientation "h" :space-evenly false :halign "start"
time))
;; right
(defwidget right_status []
(box :class "right_status" :orientation "h" :space-evenly false :halign "end"
(metric :label "󰋋"
:value volume
:onchange "pactl set-sink-volume $(pactl get-default-sink) {}%")
(metric :label ""
:value {EWW_RAM.used_mem_perc}
:onchange "")
(metric :label ""
:value {EWW_CPU.avg}
:onchange "")
(button :onclick "echo" "")))
;; monitor 0
(defwidget workspaces_monitor_0 []
(box :class "workspaces"
:orientation "h"
:space-evenly false
:halign "center"
:spacing 10
(button :onclick "scripts/change-workspace.sh 1" "${workspace_1_monitor_0}" )
(button :onclick "scripts/change-workspace.sh 2" "${workspace_2_monitor_0}" )
(button :onclick "scripts/change-workspace.sh 3" "${workspace_3_monitor_0}" )
(button :onclick "scripts/change-workspace.sh 4" "${workspace_4_monitor_0}" )
(button :onclick "scripts/change-workspace.sh 5" "${workspace_5_monitor_0}" )
(button :onclick "scripts/change-workspace.sh 6" "${workspace_6_monitor_0}" )
(button :onclick "scripts/change-workspace.sh 7" "${workspace_7_monitor_0}" )
(button :onclick "scripts/change-workspace.sh 8" "${workspace_8_monitor_0}" )
(button :onclick "scripts/change-workspace.sh 9" "${workspace_9_monitor_0}" )))
;; monitor 1
(defwidget workspaces_monitor_1 []
(box :class "workspaces"
:orientation "h"
:space-evenly false
:halign "center"
:spacing 10
(button :onclick "scripts/change-workspace.sh 1" "${workspace_1_monitor_1}" )
(button :onclick "scripts/change-workspace.sh 2" "${workspace_2_monitor_1}" )
(button :onclick "scripts/change-workspace.sh 3" "${workspace_3_monitor_1}" )
(button :onclick "scripts/change-workspace.sh 4" "${workspace_4_monitor_1}" )
(button :onclick "scripts/change-workspace.sh 5" "${workspace_5_monitor_1}" )
(button :onclick "scripts/change-workspace.sh 6" "${workspace_6_monitor_1}" )
(button :onclick "scripts/change-workspace.sh 7" "${workspace_7_monitor_1}" )
(button :onclick "scripts/change-workspace.sh 8" "${workspace_8_monitor_1}" )
(button :onclick "scripts/change-workspace.sh 9" "${workspace_9_monitor_1}" )))
;; Bar Modules
(defwidget music []
(box :class "music"
:orientation "h"
:space-evenly false
:halign "center"
{music != "" ? "🎵${music}" : ""}))
(defwidget metric [label value onchange]
(box :orientation "h"
:class "metric"
:space-evenly false
(box :class "label" label)
(scale :min 0
:max 101
:active {onchange != ""}
:value value
:onchange onchange)))
;; logo
(defwidget logo [text]
(box :orientation "h"
:class "logo"
(scale :min 0
:max 101)))
;; Total Window definitions
;; monitor 0
(defwindow bar0
:monitor 0
:windowtype "dock"
:geometry (geometry :x "0%"
:y "5px"
:width "98%"
:height "35px"
:anchor "top center")
:exclusive true
:reserve (struts :side "top" :distance "4%")
(bar0))
;; monitor 1
(defwindow bar1
:monitor 1
:geometry (geometry :x "0%"
:y "5px"
:width "98%"
:height "35px"
:anchor "top center")
:exclusive true
:reserve (struts :side "top" :distance "4%")
(bar1))

View File

@ -0,0 +1,3 @@
#!/bin/sh
hyprctl dispatch workspace $1
$HOME/.config/eww/scripts/workspaces.sh

42
eww/scripts/workspaces.sh Executable file
View File

@ -0,0 +1,42 @@
#!/bin/sh
ACTIVE_MONITOR=$(hyprctl activeworkspace | grep "monitorID:" | awk '{print $2}')
ACTIVE_WORKSPACE=$(hyprctl monitors | grep -A 6 "(ID ${ACTIVE_MONITOR})" | tail -n1 | awk '{print $4}' | sed 's/(//' | sed 's/)//')
NUMBER_OF_MONITORS=$(expr $(hyprctl monitors | grep " " | wc -l) / 17 - 1)
i=0
while [ "$i" -le "$NUMBER_OF_MONITORS" ]; do
if [ "$ACTIVE_MONITOR" -eq "$i" ]; then
WORKSPACE_1=""
WORKSPACE_2=""
WORKSPACE_3=""
WORKSPACE_4=""
WORKSPACE_5=""
WORKSPACE_6=""
WORKSPACE_7=""
WORKSPACE_8=""
WORKSPACE_9=""
if [ $ACTIVE_WORKSPACE -eq 1 ]; then WORKSPACE_1=""; fi
if [ $ACTIVE_WORKSPACE -eq 2 ]; then WORKSPACE_2=""; fi
if [ $ACTIVE_WORKSPACE -eq 3 ]; then WORKSPACE_3=""; fi
if [ $ACTIVE_WORKSPACE -eq 4 ]; then WORKSPACE_4=""; fi
if [ $ACTIVE_WORKSPACE -eq 5 ]; then WORKSPACE_5=""; fi
if [ $ACTIVE_WORKSPACE -eq 6 ]; then WORKSPACE_6=""; fi
if [ $ACTIVE_WORKSPACE -eq 7 ]; then WORKSPACE_7=""; fi
if [ $ACTIVE_WORKSPACE -eq 8 ]; then WORKSPACE_8=""; fi
if [ $ACTIVE_WORKSPACE -eq 9 ]; then WORKSPACE_9=""; fi
eww update workspace_1_monitor_${i}=$WORKSPACE_1
eww update workspace_2_monitor_${i}=$WORKSPACE_2
eww update workspace_3_monitor_${i}=$WORKSPACE_3
eww update workspace_4_monitor_${i}=$WORKSPACE_4
eww update workspace_5_monitor_${i}=$WORKSPACE_5
eww update workspace_6_monitor_${i}=$WORKSPACE_6
eww update workspace_7_monitor_${i}=$WORKSPACE_7
eww update workspace_8_monitor_${i}=$WORKSPACE_8
eww update workspace_9_monitor_${i}=$WORKSPACE_9
fi
i=$(expr $i + 1)
done
# Create a set of workspace variables in eww config for each monitor

View File

@ -0,0 +1,36 @@
[cursor]
color=1d1f21 aeafad
[colors]
alpha=1
foreground=c5c8c6
background=1d1f21
regular0=1d1f21
regular1=912226
regular2=778900
regular3=ae7b00
regular4=1d2594
regular5=682a9b
regular6=2b6651
regular7=929593
bright0=969896
bright1=cc6666
bright2=b5bd68
bright3=f0c674
bright4=81a2be
bright5=b294bb
bright6=8abeb7
bright7=ecebec
[scrollback]
indicator-position=none
[main]
shell=nu -e fastfetch
pad=10x10
font=Mononoki Nerd Font Mono:size=11
font-bold=Mononoki Nerd Font Mono:size=11:weight=bold
font-italic=Mononoki Nerd Font Mono:size=11:stant=italic
font-bold-italic=Mononoki Nerd Font Mono:size=11:weight=bold:slant=italic

View File

@ -0,0 +1,214 @@
monitor = eDP-1, 1920x1080@60, 0x0, 1
monitor = DP-2, 1920x1080@60, 1920x0, 1
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
# Execute your favorite apps at launch
exec-once = hyprpaper
# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf
# Some default env vars.
env = XCURSOR_SIZE,24
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
kb_layout = us
kb_variant =
kb_model =
kb_options =
kb_rules =
follow_mouse = 1
touchpad {
natural_scroll = no
}
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}
general {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
gaps_in = 10
gaps_out = 40
border_size = 2
col.active_border = rgba(56B6C2ee) rgba(56B6c2ee) rgba(C678DDee) 45deg
col.inactive_border = rgba(1e2127aa)
layout = dwindle
}
decoration {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
rounding = 36
blur {
enabled = true
size = 3
passes = 1
}
drop_shadow = yes
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
}
animations {
enabled = yes
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default
}
dwindle {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
}
master {
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
new_is_master = true
}
gestures {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
workspace_swipe = off
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
device:epic-mouse-v1 {
sensitivity = -0.5
}
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = ALT
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Q, exec, kitty
bind = $mainMod SHIFT, Q, exec, firefox
bind = $mainMod SHIFT, E, exec, ArmCord
bind = $mainMod, C, killactive,
bind = $mainMod SHIFT, X, exit,
bind = $mainMod, E, exec, dolphin
bind = $mainMod, V, togglefloating,
bind = $mainMod, D, exec, wofi --show drun
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, S, togglesplit, # dwindle
bind = $mainMod, M, fullscreen, 1
bind = $mainMod SHIFT, M, fullscreen
# Move focus with mainMod + arrow keys
bind = $mainMod, H, movefocus, l
bind = $mainMod, L, movefocus, r
bind = $mainMod, K, movefocus, u
bind = $mainMod, J, movefocus, d
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
bind = $mainMod SHIFT, H, movewindow, l
bind = $mainMod SHIFT, L, movewindow, r
bind = $mainMod SHIFT, K, movewindow, u
bind = $mainMod SHIFT, J, movewindow, d
bind = $mainMod SHIFT, left, movewindow, l
bind = $mainMod SHIFT, right, movewindow, r
bind = $mainMod SHIFT, up, movewindow, u
bind = $mainMod SHIFT, down, movewindow, d
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with CTRL + [0-9]
bind = CTRL, 1, movetoworkspace, 1
bind = CTRL, 2, movetoworkspace, 2
bind = CTRL, 3, movetoworkspace, 3
bind = CTRL, 4, movetoworkspace, 4
bind = CTRL, 5, movetoworkspace, 5
bind = CTRL, 6, movetoworkspace, 6
bind = CTRL, 7, movetoworkspace, 7
bind = CTRL, 8, movetoworkspace, 8
bind = CTRL, 9, movetoworkspace, 9
bind = CTRL, 0, movetoworkspace, 10
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Resize #
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# will switch to a submap called resize
bind = $mainMod, R, submap, resize
# will start a submap called "resize"
submap = resize
# sets repeatable binds for resizing the active window
binde= , right, resizeactive, 10 0
binde= , left, resizeactive, -10 0
binde= , up, resizeactive, 0 -10
binde= , down, resizeactive, 0 10
binde = , L, resizeactive, 10 0
binde = , H, resizeactive, -10 0
binde = , K, resizeactive, 0 -10
binde = , J, resizeactive, 0 10
# use reset to go back to the global submap
bind = , escape, submap, reset
# will reset the submap, meaning end the current one and return to the global one
submap = reset
# Screenshots #
# Print: Current window
# SHIFT+PRINT: Select area
# Alt+PRINT: Current output
# Ctrl+PRINT: All outputs
bind = , PRINT, exec, grimblast save active
bind = SHIFT, PRINT, exec, grimblast save area
bind = $mainMod, PRINT, exec, grimblast save output
bind = $mainMod SHIFT, PRINT, exec, grimblast save scree
# Environmental Variables #
env = WLR_NO_HARDWARE_CURSORS, 1

View File

@ -0,0 +1,239 @@
monitor = eDP-1, 1920x1080@60, 0x0, 1
monitor = HDMI-A-2, 1920x1080@60, 1920x0, 1
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
# Some default env vars.
env = XCURSOR_SIZE, 24
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
kb_layout = us
kb_variant = dvorak
kb_model =
kb_options =
kb_rules =
follow_mouse = 1
touchpad {
natural_scroll = no
}
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}
general {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
gaps_in = 10
gaps_out = 40
border_size = 3
col.active_border = rgba(8abeb7ee) rgba(b294bbee) rgba(81a2beee) 45deg
col.inactive_border = rgba(373b41f0)
layout = dwindle
}
decoration {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
rounding = 3
blur {
enabled = true
size = 0
passes = 3
}
drop_shadow = yes
shadow_range = 7
shadow_render_power = 3
col.shadow = rgba(1d1f21ee)
}
animations {
enabled = yes
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default
}
dwindle {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
}
master {
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
new_is_master = true
}
gestures {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
workspace_swipe = off
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
#device:epic-mouse-v1 {
# sensitivity = -0.5
#}
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = ALT
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Q, exec, foot
bind = $mainMod SHIFT, Q, exec, qutebrowser
bind = $mainMod SHIFT, E, exec, element-desktop
bind = $mainMod, K, killactive,
bind = $mainMod SHIFT, X, exit,
#bind = $mainMod, E, exec, dolphin
bind = $mainMod, V, togglefloating,
bind = $mainMod, P, exec, fuzzel
bind = $mainMod, A, exec, ~/.config/fuzzel/scripts/pipewire.sh
bind = $mainMod, O, exec, ~/.config/hypr/scripts/monitor.sh
bind = $mainMod, W, pseudo, # dwindle
bind = $mainMod, S, togglesplit, # dwindle
bind = $mainMod, M, fullscreen, 1
bind = $mainMod SHIFT, M, fullscreen
# Move focus with mainMod + arrow keys
bind = $mainMod, D, movefocus, l
bind = $mainMod, H, movefocus, d
bind = $mainMod, T, movefocus, u
bind = $mainMod, N, movefocus, r
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, d
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, r
bind = $mainMod SHIFT, D, movewindow, l
bind = $mainMod SHIFT, H, movewindow, d
bind = $mainMod SHIFT, T, movewindow, u
bind = $mainMod SHIFT, N, movewindow, r
bind = $mainMod SHIFT, left, movewindow, l
bind = $mainMod SHIFT, down, movewindow, d
bind = $mainMod SHIFT, up, movewindow, u
bind = $mainMod SHIFT, right, movewindow, r
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 1, exec, ~/.config/eww/scripts/workspaces.sh
bind = $mainMod, 2, exec, ~/.config/eww/scripts/workspaces.sh
bind = $mainMod, 3, exec, ~/.config/eww/scripts/workspaces.sh
bind = $mainMod, 4, exec, ~/.config/eww/scripts/workspaces.sh
bind = $mainMod, 5, exec, ~/.config/eww/scripts/workspaces.sh
bind = $mainMod, 6, exec, ~/.config/eww/scripts/workspaces.sh
bind = $mainMod, 7, exec, ~/.config/eww/scripts/workspaces.sh
bind = $mainMod, 8, exec, ~/.config/eww/scripts/workspaces.sh
bind = $mainMod, 9, exec, ~/.config/eww/scripts/workspaces.sh
# Move active window to a workspace with CTRL + [0-9]
bind = CTRL, 1, movetoworkspace, 1
bind = CTRL, 2, movetoworkspace, 2
bind = CTRL, 3, movetoworkspace, 3
bind = CTRL, 4, movetoworkspace, 4
bind = CTRL, 5, movetoworkspace, 5
bind = CTRL, 6, movetoworkspace, 6
bind = CTRL, 7, movetoworkspace, 7
bind = CTRL, 8, movetoworkspace, 8
bind = CTRL, 9, movetoworkspace, 9
bind = CTRL, 1, exec, ~/.config/eww/scripts/workspaces.sh
bind = CTRL, 2, exec, ~/.config/eww/scripts/workspaces.sh
bind = CTRL, 3, exec, ~/.config/eww/scripts/workspaces.sh
bind = CTRL, 4, exec, ~/.config/eww/scripts/workspaces.sh
bind = CTRL, 5, exec, ~/.config/eww/scripts/workspaces.sh
bind = CTRL, 6, exec, ~/.config/eww/scripts/workspaces.sh
bind = CTRL, 7, exec, ~/.config/eww/scripts/workspaces.sh
bind = CTRL, 8, exec, ~/.config/eww/scripts/workspaces.sh
bind = CTRL, 9, exec, ~/.config/eww/scripts/workspaces.sh
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Resize #
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# will switch to a submap called resize
bind = $mainMod, R, submap, resize
# will start a submap called "resize"
submap = resize
# sets repeatable binds for resizing the active window
binde= , right, resizeactive, 10 0
binde= , left, resizeactive, -10 0
binde= , up, resizeactive, 0 -10
binde= , down, resizeactive, 0 10
binde = , N, resizeactive, 10 0
binde = , D, resizeactive, -10 0
binde = , T, resizeactive, 0 -10
binde = , H, resizeactive, 0 10
# use reset to go back to the global submap
bind = , escape, submap, reset
# will reset the submap, meaning end the current one and return to the global one
submap = reset
# Screenshots #
# Print: Current window
# SHIFT+PRINT: Select area
# Alt+PRINT: Current output
# Ctrl+PRINT: All outputs
bind = , PRINT, exec, grimblast copysave active
bind = SHIFT, PRINT, exec, grimblast copysave area
bind = $mainMod, PRINT, exec, grimblast copysave output
bind = $mainMod SHIFT, PRINT, exec, grimblast copysave screen
# Environmental Variables #
#env = WLR_NO_HARDWARE_CURSORS, 1
# Autostart
exec-once="pipewire"
exec-once="pipewire-pulse"
exec-once="wireplumber"
exec-once=wbg ~/.local/share/wallpapers/wallpaper.jpg
exec-once=eww daemon
exec-once=eww open bar0
exec-once=eww open bar1

View File

@ -0,0 +1 @@
true

View File

@ -0,0 +1,11 @@
#!/bin/sh
STATUS_FILE="$HOME/.config/hypr/scripts/.monitor_status"
status=$(cat $STATUS_FILE)
if $status ; then
echo false > $STATUS_FILE
wlr-randr --output eDP-1 --off
else
echo true > $STATUS_FILE
wlr-randr --output eDP-1 --on
fi

843
nushell/config.nu Normal file
View File

@ -0,0 +1,843 @@
# Nushell Config File
#
# version = "0.90.1"
# For more information on defining custom themes, see
# https://www.nushell.sh/book/coloring_and_theming.html
# And here is the theme collection
# https://github.com/nushell/nu_scripts/tree/main/themes
let dark_theme = {
# color for nushell primitives
separator: white
leading_trailing_space_bg: { attr: n } # no fg, no bg, attr none effectively turns this off
header: green_bold
empty: blue
# Closures can be used to choose colors for specific values.
# The value (in this case, a bool) is piped into the closure.
# eg) {|| if $in { 'light_cyan' } else { 'light_gray' } }
bool: light_cyan
int: white
filesize: cyan
duration: white
date: purple
range: white
float: white
string: white
nothing: white
binary: white
cell-path: white
row_index: green_bold
record: white
list: white
block: white
hints: dark_gray
search_result: {bg: red fg: white}
shape_and: purple_bold
shape_binary: purple_bold
shape_block: blue_bold
shape_bool: light_cyan
shape_closure: green_bold
shape_custom: green
shape_datetime: cyan_bold
shape_directory: cyan
shape_external: cyan
shape_externalarg: green_bold
shape_external_resolved: light_yellow_bold
shape_filepath: cyan
shape_flag: blue_bold
shape_float: purple_bold
# shapes are used to change the cli syntax highlighting
shape_garbage: { fg: white bg: red attr: b}
shape_globpattern: cyan_bold
shape_int: purple_bold
shape_internalcall: cyan_bold
shape_keyword: cyan_bold
shape_list: cyan_bold
shape_literal: blue
shape_match_pattern: green
shape_matching_brackets: { attr: u }
shape_nothing: light_cyan
shape_operator: yellow
shape_or: purple_bold
shape_pipe: purple_bold
shape_range: yellow_bold
shape_record: cyan_bold
shape_redirection: purple_bold
shape_signature: green_bold
shape_string: green
shape_string_interpolation: cyan_bold
shape_table: blue_bold
shape_variable: purple
shape_vardecl: purple
}
let light_theme = {
# color for nushell primitives
separator: dark_gray
leading_trailing_space_bg: { attr: n } # no fg, no bg, attr none effectively turns this off
header: green_bold
empty: blue
# Closures can be used to choose colors for specific values.
# The value (in this case, a bool) is piped into the closure.
# eg) {|| if $in { 'dark_cyan' } else { 'dark_gray' } }
bool: dark_cyan
int: dark_gray
filesize: cyan_bold
duration: dark_gray
date: purple
range: dark_gray
float: dark_gray
string: dark_gray
nothing: dark_gray
binary: dark_gray
cell-path: dark_gray
row_index: green_bold
record: dark_gray
list: dark_gray
block: dark_gray
hints: dark_gray
search_result: {fg: white bg: red}
shape_and: purple_bold
shape_binary: purple_bold
shape_block: blue_bold
shape_bool: light_cyan
shape_closure: green_bold
shape_custom: green
shape_datetime: cyan_bold
shape_directory: cyan
shape_external: cyan
shape_externalarg: green_bold
shape_external_resolved: light_purple_bold
shape_filepath: cyan
shape_flag: blue_bold
shape_float: purple_bold
# shapes are used to change the cli syntax highlighting
shape_garbage: { fg: white bg: red attr: b}
shape_globpattern: cyan_bold
shape_int: purple_bold
shape_internalcall: cyan_bold
shape_keyword: cyan_bold
shape_list: cyan_bold
shape_literal: blue
shape_match_pattern: green
shape_matching_brackets: { attr: u }
shape_nothing: light_cyan
shape_operator: yellow
shape_or: purple_bold
shape_pipe: purple_bold
shape_range: yellow_bold
shape_record: cyan_bold
shape_redirection: purple_bold
shape_signature: green_bold
shape_string: green
shape_string_interpolation: cyan_bold
shape_table: blue_bold
shape_variable: purple
shape_vardecl: purple
}
# External completer example
# let carapace_completer = {|spans|
# carapace $spans.0 nushell ...$spans | from json
# }
# The default config record. This is where much of your global configuration is setup.
$env.config = {
show_banner: false # true or false to enable or disable the welcome banner at startup
ls: {
use_ls_colors: true # use the LS_COLORS environment variable to colorize output
clickable_links: true # enable or disable clickable links. Your terminal has to support links.
}
rm: {
always_trash: false # always act as if -t was given. Can be overridden with -p
}
table: {
mode: rounded # basic, compact, compact_double, light, thin, with_love, rounded, reinforced, heavy, none, other
index_mode: always # "always" show indexes, "never" show indexes, "auto" = show indexes when a table has "index" column
show_empty: true # show 'empty list' and 'empty record' placeholders for command output
padding: { left: 1, right: 1 } # a left right padding of each column in a table
trim: {
methodology: wrapping # wrapping or truncating
wrapping_try_keep_words: true # A strategy used by the 'wrapping' methodology
truncating_suffix: "..." # A suffix used by the 'truncating' methodology
}
header_on_separator: false # show header text on separator/border line
# abbreviated_row_count: 10 # limit data rows from top and bottom after reaching a set point
}
error_style: "fancy" # "fancy" or "plain" for screen reader-friendly error messages
# datetime_format determines what a datetime rendered in the shell would look like.
# Behavior without this configuration point will be to "humanize" the datetime display,
# showing something like "a day ago."
datetime_format: {
# normal: '%a, %d %b %Y %H:%M:%S %z' # shows up in displays of variables or other datetime's outside of tables
# table: '%m/%d/%y %I:%M:%S%p' # generally shows up in tabular outputs such as ls. commenting this out will change it to the default human readable datetime format
}
explore: {
status_bar_background: {fg: "#1D1F21", bg: "#C4C9C6"},
command_bar_text: {fg: "#C4C9C6"},
highlight: {fg: "black", bg: "yellow"},
status: {
error: {fg: "white", bg: "red"},
warn: {}
info: {}
},
table: {
split_line: {fg: "#404040"},
selected_cell: {bg: light_blue},
selected_row: {},
selected_column: {},
},
}
history: {
max_size: 100_000 # Session has to be reloaded for this to take effect
sync_on_enter: true # Enable to share history between multiple sessions, else you have to close the session to write history to file
file_format: "plaintext" # "sqlite" or "plaintext"
isolation: false # only available with sqlite file_format. true enables history isolation, false disables it. true will allow the history to be isolated to the current session using up/down arrows. false will allow the history to be shared across all sessions.
}
completions: {
case_sensitive: false # set to true to enable case-sensitive completions
quick: true # set this to false to prevent auto-selecting completions when only one remains
partial: true # set this to false to prevent partial filling of the prompt
algorithm: "prefix" # prefix or fuzzy
external: {
enable: true # set to false to prevent nushell looking into $env.PATH to find more suggestions, `false` recommended for WSL users as this look up may be very slow
max_results: 100 # setting it lower can improve completion performance at the cost of omitting some options
completer: null # check 'carapace_completer' above as an example
}
}
filesize: {
metric: false # true => KB, MB, GB (ISO standard), false => KiB, MiB, GiB (Windows standard)
format: "auto" # b, kb, kib, mb, mib, gb, gib, tb, tib, pb, pib, eb, eib, auto
}
cursor_shape: {
emacs: line # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (line is the default)
vi_insert: block # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (block is the default)
vi_normal: underscore # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (underscore is the default)
}
color_config: $dark_theme # if you want a more interesting theme, you can replace the empty record with `$dark_theme`, `$light_theme` or another custom record
use_grid_icons: true
footer_mode: "25" # always, never, number_of_rows, auto
float_precision: 2 # the precision for displaying floats in tables
buffer_editor: "" # command that will be used to edit the current line buffer with ctrl+o, if unset fallback to $env.EDITOR and $env.VISUAL
use_ansi_coloring: true
bracketed_paste: true # enable bracketed paste, currently useless on windows
edit_mode: emacs # emacs, vi
shell_integration: false # enables terminal shell integration. Off by default, as some terminals have issues with this.
render_right_prompt_on_last_line: false # true or false to enable or disable right prompt to be rendered on last line of the prompt.
use_kitty_protocol: false # enables keyboard enhancement protocol implemented by kitty console, only if your terminal support this.
highlight_resolved_externals: false # true enables highlighting of external commands in the repl resolved by which.
plugins: {} # Per-plugin configuration. See https://www.nushell.sh/contributor-book/plugins.html#configuration.
hooks: {
pre_prompt: [{ null }] # run before the prompt is shown
pre_execution: [{ null }] # run before the repl input is run
env_change: {
PWD: [{|before, after| null }] # run if the PWD environment is different since the last repl input
}
display_output: "if (term size).columns >= 100 { table -e } else { table }" # run to display the output of a pipeline
command_not_found: { null } # return an error message when a command is not found
}
menus: [
# Configuration for default nushell menus
# Note the lack of source parameter
{
name: completion_menu
only_buffer_difference: false
marker: "| "
type: {
layout: columnar
columns: 4
col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
col_padding: 2
}
style: {
text: green
selected_text: {attr: r}
description_text: yellow
match_text: {attr: u}
selected_match_text: {attr: ur}
}
}
{
name: ide_completion_menu
only_buffer_difference: false
marker: "| "
type: {
layout: ide
min_completion_width: 0,
max_completion_width: 50,
# max_completion_height: 10, # will be limited by the available lines in the terminal
padding: 0,
border: true,
cursor_offset: 0,
description_mode: "prefer_right"
min_description_width: 0
max_description_width: 50
max_description_height: 10
description_offset: 1
# If true, the cursor pos will be corrected, so the suggestions match up with the typed text
#
# C:\> str
# str join
# str trim
# str split
correct_cursor_pos: false
}
style: {
text: green
selected_text: {attr: r}
description_text: yellow
match_text: {attr: u}
selected_match_text: {attr: ur}
}
}
{
name: history_menu
only_buffer_difference: true
marker: "? "
type: {
layout: list
page_size: 10
}
style: {
text: green
selected_text: green_reverse
description_text: yellow
}
}
{
name: help_menu
only_buffer_difference: true
marker: "? "
type: {
layout: description
columns: 4
col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
col_padding: 2
selection_rows: 4
description_rows: 10
}
style: {
text: green
selected_text: green_reverse
description_text: yellow
}
}
]
keybindings: [
{
name: completion_menu
modifier: none
keycode: tab
mode: [emacs vi_normal vi_insert]
event: {
until: [
{ send: menu name: completion_menu }
{ send: menunext }
{ edit: complete }
]
}
}
{
name: ide_completion_menu
modifier: control
keycode: char_n
mode: [emacs vi_normal vi_insert]
event: {
until: [
{ send: menu name: ide_completion_menu }
{ send: menunext }
{ edit: complete }
]
}
}
{
name: history_menu
modifier: control
keycode: char_r
mode: [emacs, vi_insert, vi_normal]
event: { send: menu name: history_menu }
}
{
name: help_menu
modifier: none
keycode: f1
mode: [emacs, vi_insert, vi_normal]
event: { send: menu name: help_menu }
}
{
name: completion_previous_menu
modifier: shift
keycode: backtab
mode: [emacs, vi_normal, vi_insert]
event: { send: menuprevious }
}
{
name: next_page_menu
modifier: control
keycode: char_x
mode: emacs
event: { send: menupagenext }
}
{
name: undo_or_previous_page_menu
modifier: control
keycode: char_z
mode: emacs
event: {
until: [
{ send: menupageprevious }
{ edit: undo }
]
}
}
{
name: escape
modifier: none
keycode: escape
mode: [emacs, vi_normal, vi_insert]
event: { send: esc } # NOTE: does not appear to work
}
{
name: cancel_command
modifier: control
keycode: char_c
mode: [emacs, vi_normal, vi_insert]
event: { send: ctrlc }
}
{
name: quit_shell
modifier: control
keycode: char_d
mode: [emacs, vi_normal, vi_insert]
event: { send: ctrld }
}
{
name: clear_screen
modifier: control
keycode: char_l
mode: [emacs, vi_normal, vi_insert]
event: { send: clearscreen }
}
{
name: search_history
modifier: control
keycode: char_q
mode: [emacs, vi_normal, vi_insert]
event: { send: searchhistory }
}
{
name: open_command_editor
modifier: control
keycode: char_o
mode: [emacs, vi_normal, vi_insert]
event: { send: openeditor }
}
{
name: move_up
modifier: none
keycode: up
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: menuup}
{send: up}
]
}
}
{
name: move_down
modifier: none
keycode: down
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: menudown}
{send: down}
]
}
}
{
name: move_left
modifier: none
keycode: left
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: menuleft}
{send: left}
]
}
}
{
name: move_right_or_take_history_hint
modifier: none
keycode: right
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: historyhintcomplete}
{send: menuright}
{send: right}
]
}
}
{
name: move_one_word_left
modifier: control
keycode: left
mode: [emacs, vi_normal, vi_insert]
event: {edit: movewordleft}
}
{
name: move_one_word_right_or_take_history_hint
modifier: control
keycode: right
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: historyhintwordcomplete}
{edit: movewordright}
]
}
}
{
name: move_to_line_start
modifier: none
keycode: home
mode: [emacs, vi_normal, vi_insert]
event: {edit: movetolinestart}
}
{
name: move_to_line_start
modifier: control
keycode: char_a
mode: [emacs, vi_normal, vi_insert]
event: {edit: movetolinestart}
}
{
name: move_to_line_end_or_take_history_hint
modifier: none
keycode: end
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: historyhintcomplete}
{edit: movetolineend}
]
}
}
{
name: move_to_line_end_or_take_history_hint
modifier: control
keycode: char_e
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: historyhintcomplete}
{edit: movetolineend}
]
}
}
{
name: move_to_line_start
modifier: control
keycode: home
mode: [emacs, vi_normal, vi_insert]
event: {edit: movetolinestart}
}
{
name: move_to_line_end
modifier: control
keycode: end
mode: [emacs, vi_normal, vi_insert]
event: {edit: movetolineend}
}
{
name: move_up
modifier: control
keycode: char_p
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: menuup}
{send: up}
]
}
}
{
name: move_down
modifier: control
keycode: char_t
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{send: menudown}
{send: down}
]
}
}
{
name: delete_one_character_backward
modifier: none
keycode: backspace
mode: [emacs, vi_insert]
event: {edit: backspace}
}
{
name: delete_one_word_backward
modifier: control
keycode: backspace
mode: [emacs, vi_insert]
event: {edit: backspaceword}
}
{
name: delete_one_character_forward
modifier: none
keycode: delete
mode: [emacs, vi_insert]
event: {edit: delete}
}
{
name: delete_one_character_forward
modifier: control
keycode: delete
mode: [emacs, vi_insert]
event: {edit: delete}
}
{
name: delete_one_character_forward
modifier: control
keycode: char_h
mode: [emacs, vi_insert]
event: {edit: backspace}
}
{
name: delete_one_word_backward
modifier: control
keycode: char_w
mode: [emacs, vi_insert]
event: {edit: backspaceword}
}
{
name: move_left
modifier: none
keycode: backspace
mode: vi_normal
event: {edit: moveleft}
}
{
name: newline_or_run_command
modifier: none
keycode: enter
mode: emacs
event: {send: enter}
}
{
name: move_left
modifier: control
keycode: char_b
mode: emacs
event: {
until: [
{send: menuleft}
{send: left}
]
}
}
{
name: move_right_or_take_history_hint
modifier: control
keycode: char_f
mode: emacs
event: {
until: [
{send: historyhintcomplete}
{send: menuright}
{send: right}
]
}
}
{
name: redo_change
modifier: control
keycode: char_g
mode: emacs
event: {edit: redo}
}
{
name: undo_change
modifier: control
keycode: char_z
mode: emacs
event: {edit: undo}
}
{
name: paste_before
modifier: control
keycode: char_y
mode: emacs
event: {edit: pastecutbufferbefore}
}
{
name: cut_word_left
modifier: control
keycode: char_w
mode: emacs
event: {edit: cutwordleft}
}
{
name: cut_line_to_end
modifier: control
keycode: char_k
mode: emacs
event: {edit: cuttoend}
}
{
name: cut_line_from_start
modifier: control
keycode: char_u
mode: emacs
event: {edit: cutfromstart}
}
{
name: swap_graphemes
modifier: control
keycode: char_t
mode: emacs
event: {edit: swapgraphemes}
}
{
name: move_one_word_left
modifier: alt
keycode: left
mode: emacs
event: {edit: movewordleft}
}
{
name: move_one_word_right_or_take_history_hint
modifier: alt
keycode: right
mode: emacs
event: {
until: [
{send: historyhintwordcomplete}
{edit: movewordright}
]
}
}
{
name: move_one_word_left
modifier: alt
keycode: char_b
mode: emacs
event: {edit: movewordleft}
}
{
name: move_one_word_right_or_take_history_hint
modifier: alt
keycode: char_f
mode: emacs
event: {
until: [
{send: historyhintwordcomplete}
{edit: movewordright}
]
}
}
{
name: delete_one_word_forward
modifier: alt
keycode: delete
mode: emacs
event: {edit: deleteword}
}
{
name: delete_one_word_backward
modifier: alt
keycode: backspace
mode: emacs
event: {edit: backspaceword}
}
{
name: delete_one_word_backward
modifier: alt
keycode: char_m
mode: emacs
event: {edit: backspaceword}
}
{
name: cut_word_to_right
modifier: alt
keycode: char_d
mode: emacs
event: {edit: cutwordright}
}
{
name: upper_case_word
modifier: alt
keycode: char_u
mode: emacs
event: {edit: uppercaseword}
}
{
name: lower_case_word
modifier: alt
keycode: char_l
mode: emacs
event: {edit: lowercaseword}
}
{
name: capitalize_char
modifier: alt
keycode: char_c
mode: emacs
event: {edit: capitalizechar}
}
{
name: copy_selection
modifier: control_shift
keycode: char_c
mode: emacs
event: { edit: copyselection }
}
{
name: cut_selection
modifier: control_shift
keycode: char_x
mode: emacs
event: { edit: cutselection }
}
{
name: select_all
modifier: control_shift
keycode: char_a
mode: emacs
event: { edit: selectall }
}
{
name: paste
modifier: control_shift
keycode: char_v
mode: emacs
event: { edit: pastecutbufferbefore }
}
]
}
# Starship
use ~/.cache/starship/init.nu

105
nushell/env.nu Normal file
View File

@ -0,0 +1,105 @@
# Nushell Environment Config File
#
# version = "0.90.1"
def create_left_prompt [] {
let home = $nu.home-path
# Perform tilde substitution on dir
# To determine if the prefix of the path matches the home dir, we split the current path into
# segments, and compare those with the segments of the home dir. In cases where the current dir
# is a parent of the home dir (e.g. `/home`, homedir is `/home/user`), this comparison will
# also evaluate to true. Inside the condition, we attempt to str replace `$home` with `~`.
# Inside the condition, either:
# 1. The home prefix will be replaced
# 2. The current dir is a parent of the home dir, so it will be uneffected by the str replace
let dir = (
if ($env.PWD | path split | zip ($home | path split) | all { $in.0 == $in.1 }) {
($env.PWD | str replace $home "~")
} else {
$env.PWD
}
)
let path_color = (if (is-admin) { ansi red_bold } else { ansi green_bold })
let separator_color = (if (is-admin) { ansi light_red_bold } else { ansi light_green_bold })
let path_segment = $"($path_color)($dir)"
$path_segment | str replace --all (char path_sep) $"($separator_color)(char path_sep)($path_color)"
}
def create_right_prompt [] {
# create a right prompt in magenta with green separators and am/pm underlined
let time_segment = ([
(ansi reset)
(ansi magenta)
(date now | format date '%x %X %p') # try to respect user's locale
] | str join | str replace --regex --all "([/:])" $"(ansi green)${1}(ansi magenta)" |
str replace --regex --all "([AP]M)" $"(ansi magenta_underline)${1}")
let last_exit_code = if ($env.LAST_EXIT_CODE != 0) {([
(ansi rb)
($env.LAST_EXIT_CODE)
] | str join)
} else { "" }
([$last_exit_code, (char space), $time_segment] | str join)
}
# Use nushell functions to define your right and left prompt
$env.PROMPT_COMMAND = {|| create_left_prompt }
# FIXME: This default is not implemented in rust code as of 2023-09-08.
$env.PROMPT_COMMAND_RIGHT = {|| create_right_prompt }
# The prompt indicators are environmental variables that represent
# the state of the prompt
$env.PROMPT_INDICATOR = {|| "> " }
$env.PROMPT_INDICATOR_VI_INSERT = {|| ": " }
$env.PROMPT_INDICATOR_VI_NORMAL = {|| "> " }
$env.PROMPT_MULTILINE_INDICATOR = {|| "::: " }
# If you want previously entered commands to have a different prompt from the usual one,
# you can uncomment one or more of the following lines.
# This can be useful if you have a 2-line prompt and it's taking up a lot of space
# because every command entered takes up 2 lines instead of 1. You can then uncomment
# the line below so that previously entered commands show with a single `🚀`.
# $env.TRANSIENT_PROMPT_COMMAND = {|| "🚀 " }
# $env.TRANSIENT_PROMPT_INDICATOR = {|| "" }
# $env.TRANSIENT_PROMPT_INDICATOR_VI_INSERT = {|| "" }
# $env.TRANSIENT_PROMPT_INDICATOR_VI_NORMAL = {|| "" }
# $env.TRANSIENT_PROMPT_MULTILINE_INDICATOR = {|| "" }
# $env.TRANSIENT_PROMPT_COMMAND_RIGHT = {|| "" }
# Specifies how environment variables are:
# - converted from a string to a value on Nushell startup (from_string)
# - converted from a value back to a string when running external commands (to_string)
# Note: The conversions happen *after* config.nu is loaded
$env.ENV_CONVERSIONS = {
"PATH": {
from_string: { |s| $s | split row (char esep) | path expand --no-symlink }
to_string: { |v| $v | path expand --no-symlink | str join (char esep) }
}
"Path": {
from_string: { |s| $s | split row (char esep) | path expand --no-symlink }
to_string: { |v| $v | path expand --no-symlink | str join (char esep) }
}
}
# Directories to search for scripts when calling source or use
# The default for this is $nu.default-config-dir/scripts
$env.NU_LIB_DIRS = [
($nu.default-config-dir | path join 'scripts') # add <nushell-config-dir>/scripts
]
# Directories to search for plugin binaries when calling register
# The default for this is $nu.default-config-dir/plugins
$env.NU_PLUGIN_DIRS = [
($nu.default-config-dir | path join 'plugins') # add <nushell-config-dir>/plugins
]
# To add entries to PATH (on Windows you might use Path), you can use the following pattern:
# $env.PATH = ($env.PATH | split row (char esep) | prepend '/some/path')
# Starship
mkdir ~/.cache/starship
starship init nu | save -f ~/.cache/starship/init.nu

291
nushell/history.txt Normal file
View File

@ -0,0 +1,291 @@
ls
alias e=ls
alias e = ls
e
e -a
clear && fastfetch
clear and fastfetch
clear; and fastfetch
clear; fastfetch
clear fastfetch
clear && fastfetch
clear; fastfetch
vis .config/foot/foot.ini
cd .config/nushell/env.nu
cd .config/nushell/
ls
mkdir Langs
mv TI/ Shell/ HTML/ Langs/
mv TI Shell HTML/ Langs/
mv --help
mv TI Shell HTML/ Langs/
mv TI Langs/
mv Shell/ Langs/
mv HTML/ Langs/
ls
mv C Langs/
mv Lua/ Langs/
ls
mv Recipies/ Documents/
mv Thumbnails/ Pictures/
mkdir Notes
mv `Video Ideas/` Notes/
ls
alias e = ls
e
e Downloads/
e Downloads2/
mv `Downloads2/Mericoï (alias Eric M.)/` Music/Artists/
mv Downloads2/* Downloads/
tree
ls
!?e
^e^ls^
ls -a
ls | sort
cd
ls -a | awk '{print $2}'
ls -a
ls -a | awk '{print $4}'
ls -a | awk '{print $3}'
netsurf https://www.nushell.sh/book/quick_tour.html
cd .config/nushell/
ls
vis config.nu
vis env.nu
ls | sort-by size | reversie
ls | sort-by size | reverse
ls | where size > 1kb
fastfetch
cd
ls
ls | sort-by size | reverse
ls | where size > 1kb
3ps
ps
ps | less
ps | vis
cd .config/eww/
ls
cd scripts/
e
ls
cd .config/eww/
ls
clear; fastfetch
cat .config/foot/foot.ini
vis eww.scss
cd .config/eww/
eww daemon
eww reload
eww open bar0
eww open bar1
cd .config/eww/
vis eww.yukc
cd .config/eww/
eww open powermenu
eww daemon
eww open powermenu
eww daemon
eww open powermenu
eww reload
eww open powermenu
eww open bar1 bar0
eww open bar1
eww open bar0
eww kill
eww daemon
eww kill
eww daemon
eww open bar0
clear; fastfetch
sys
sys | get host
syn
sys
ps aux
ps -aux
ps --aux
sys | get host.name
help path
help get
help help
$XDG_RUNTIME_DIR
$nu.env-path
vis $nu.env-path
nu --help
nu fastfetch
vis config.nu
vis $nu.config-path
vis .config/foot/foot.ini
ls
aoeuaoeu
aoea
aoeuaoeu
vis $nu.env-path
vis $nu.config-path
cd .Git
ls
cd dotfiles
e
ls
cd starship
ls
cd Catpuccin/
ls
mkdir ~/.config/starship
cp starship.toml ~/.config/starship
cd ~/.config/starship
vis starship.toml
sed 's/red/aqua/g' starship.toml
sed 's/red/aqua/g' starship.toml > starship.toml
vis starship.toml
ash sed 's/red/aqua/g' starship.toml > starship.toml
ash $(which sed) 's/red/aqua/g' starship.toml > starship.toml
cat starship.toml
$(which sed) 's/red/aqua/g' starship.toml | save starship.toml
sed 's/red/aqua/g' starship.toml | save starship.toml
sed 's/red/aqua/g' starship.toml | save -f starship.toml
mv .config/starship/starship.toml .config/starship/
rm -r .config/starship/
starship --help
starship config
ls .config/
cat .config/foot/foot.ini
vis starship.toml
cd ..
vis starship.toml
ls
vis starship.toml
grim -g "$(slurp -p)" -t ppm - | convert - -format '%[pixel:p{0,0}]' txt:-
zsh
grim -g "$(slurp -p)" -t ppm
grim -g "$(slurp -p)" -t ppm -
grim -g "$(slurp -p)"
grim -g
grim -g "$(slurp -p)"
grim -g "$(slurp -p)" -t ppm - | convert - -format '%[pixel:p{0,0}]' txt:-
zsh
apk search hypr
apk info hyprcursor
cd .Git
git clone https://github.com/hyprwm/hyprpicker
cd hyprpicker/
doas apk add cmake
cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr -S . -B ./build<\n>cmake --build ./build --config Release --target hyprpicker -j`nproc 2>/dev/null || getconf NPROCESSORS_CONF`
cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr -S . -B ./build<\n>
zsh
doas apk del cmake
cd Music/
ls
cd Ar
cd Artists/
cd ..
cd Artists/
ls
cd `Rivers of Nihil/(2021) The Work [FLAC]/`
mpv
ls
cd .config
cd ..
cat 20240323_20h08m29s_grim.ppm
cd .config/fuzzel/
ls
cd scripts/
ls
./pipewire.sh
puzzel
fuzzel
pactl info
doas reboot
pactl info
cd `Music/Artists/Rivers of Nihil/(2021) The Work [FLAC]/`
cd .config/v
cd .config/
cat .config/foot/foot.ini
vis starship.toml
sed 's/bg0/bg1/g' starship.toml | save -f starship.toml
vis starship.toml
cp ~/.Git/dotfiles/starship/Catpuccin/starship.toml .
cd .Git/dotfiles/
fastfetch
ls
vis starship.toml
sed 's/bg1/bg0/g' starship.toml | save starship2.toml
vis starship.toml
sed 's/bg1/bg0/g' starship.toml
ls
sed 's/bg1/bg0/g' starship.toml | save -f starship2.toml
vis starship2.toml
mv starship.toml starship.toml.bu
mv starship2.toml starship.toml
rm starship.toml.bu
ls
vis .config/eww/eww.yuck
vis .config/eww/scripts/workspaces.sh
rm *.png
rm *.ppm
clear; fastfetch
ls
l-
ls
sys
apk --help
apk info --vv
apk info -vv
apk info -vv | wc -l
echo "Packages: apk info -vv | wc -l"
echo "Packages: $(apk info -vv | wc -l)"
echo -e "Packages: $(apk info -vv | wc -l)"
eval "$(echo 'Packages:' $(apk info -vv | wc -l))"
cowsay
apk search pipes
curl https://raw.githubusercontent.com/pipeseroni/pipes.sh/master/pipes.sh | ash
curl https://raw.githubusercontent.com/pipeseroni/pipes.sh/master/pipes.sh | save pipes.sh
chmod +x pipes.sh
./pipes.sh
zsh ./pipes.sh
zsh pipes.sh
rm pipes.sh
cd .config/eww/
ls
eww reload
eww open bar1
ls
imv 2024-03-23T21:23:42,000000000-05:00.png
rm 2024-03-23T21:23:15,000000000-05:00.png
rm 2024-03-23T21:23:36,000000000-05:00.png
imv 2024-03-23T21:23:42,000000000-05:00.png
ls
mv 2024-03-23T21:23:42,000000000-05:00.png Pictures/ScreenShots/
cd .Git/dotfiles/
cd .config/
ls
ls
mkdir nushell
mkdir eww
cd starshpu
cd starship
cd starship
mkdir tomorrownight
vis starship.toml
cp ~/.config/starship.toml tomorrownight/
ls
cd Pictures/
ls
find ~ -name rice1.png
find ~ rice1.png
find ~ rice.png
find ~ Rice.png
find ~ --name Rice.png
find --help
zsh
imv Rice.png
cd ~/Downloads/Pictures/
imv rice5.png
:q
rn
ls
cd ..
ls
mkdir nushell

View File

@ -0,0 +1,302 @@
# base16-qutebrowser (https://github.com/theova/base16-qutebrowser)
# Scheme name: Tomorrow Night
# Scheme author: Chris Kempson (http://chriskempson.com)
# Template author: theova
# Commentary: Tinted Theming: (https://github.com/tinted-theming)
base00 = "#1d1f21"
base01 = "#282a2e"
base02 = "#373b41"
base03 = "#969896"
base04 = "#b4b7b4"
base05 = "#c5c8c6"
base06 = "#e0e0e0"
base07 = "#ffffff"
base08 = "#cc6666"
base09 = "#de935f"
base0A = "#f0c674"
base0B = "#b5bd68"
base0C = "#8abeb7"
base0D = "#81a2be"
base0E = "#b294bb"
base0F = "#a3685a"
# set qutebrowser colors
# Text color of the completion widget. May be a single color to use for
# all columns or a list of three colors, one for each column.
c.colors.completion.fg = base05
# Background color of the completion widget for odd rows.
c.colors.completion.odd.bg = base01
# Background color of the completion widget for even rows.
c.colors.completion.even.bg = base00
# Foreground color of completion widget category headers.
c.colors.completion.category.fg = base0A
# Background color of the completion widget category headers.
c.colors.completion.category.bg = base00
# Top border color of the completion widget category headers.
c.colors.completion.category.border.top = base00
# Bottom border color of the completion widget category headers.
c.colors.completion.category.border.bottom = base00
# Foreground color of the selected completion item.
c.colors.completion.item.selected.fg = base05
# Background color of the selected completion item.
c.colors.completion.item.selected.bg = base02
# Top border color of the selected completion item.
c.colors.completion.item.selected.border.top = base02
# Bottom border color of the selected completion item.
c.colors.completion.item.selected.border.bottom = base02
# Foreground color of the matched text in the selected completion item.
c.colors.completion.item.selected.match.fg = base0B
# Foreground color of the matched text in the completion.
c.colors.completion.match.fg = base0B
# Color of the scrollbar handle in the completion view.
c.colors.completion.scrollbar.fg = base05
# Color of the scrollbar in the completion view.
c.colors.completion.scrollbar.bg = base00
# Background color of disabled items in the context menu.
c.colors.contextmenu.disabled.bg = base01
# Foreground color of disabled items in the context menu.
c.colors.contextmenu.disabled.fg = base04
# Background color of the context menu. If set to null, the Qt default is used.
c.colors.contextmenu.menu.bg = base00
# Foreground color of the context menu. If set to null, the Qt default is used.
c.colors.contextmenu.menu.fg = base05
# Background color of the context menus selected item. If set to null, the Qt default is used.
c.colors.contextmenu.selected.bg = base02
#Foreground color of the context menus selected item. If set to null, the Qt default is used.
c.colors.contextmenu.selected.fg = base05
# Background color for the download bar.
c.colors.downloads.bar.bg = base00
# Color gradient start for download text.
c.colors.downloads.start.fg = base00
# Color gradient start for download backgrounds.
c.colors.downloads.start.bg = base0D
# Color gradient end for download text.
c.colors.downloads.stop.fg = base00
# Color gradient stop for download backgrounds.
c.colors.downloads.stop.bg = base0C
# Foreground color for downloads with errors.
c.colors.downloads.error.fg = base08
# Font color for hints.
c.colors.hints.fg = base00
# Background color for hints. Note that you can use a `rgba(...)` value
# for transparency.
c.colors.hints.bg = base0A
# Font color for the matched part of hints.
c.colors.hints.match.fg = base05
# Text color for the keyhint widget.
c.colors.keyhint.fg = base05
# Highlight color for keys to complete the current keychain.
c.colors.keyhint.suffix.fg = base05
# Background color of the keyhint widget.
c.colors.keyhint.bg = base00
# Foreground color of an error message.
c.colors.messages.error.fg = base00
# Background color of an error message.
c.colors.messages.error.bg = base08
# Border color of an error message.
c.colors.messages.error.border = base08
# Foreground color of a warning message.
c.colors.messages.warning.fg = base00
# Background color of a warning message.
c.colors.messages.warning.bg = base0E
# Border color of a warning message.
c.colors.messages.warning.border = base0E
# Foreground color of an info message.
c.colors.messages.info.fg = base05
# Background color of an info message.
c.colors.messages.info.bg = base00
# Border color of an info message.
c.colors.messages.info.border = base00
# Foreground color for prompts.
c.colors.prompts.fg = base05
# Border used around UI elements in prompts.
c.colors.prompts.border = base00
# Background color for prompts.
c.colors.prompts.bg = base00
# Background color for the selected item in filename prompts.
c.colors.prompts.selected.bg = base02
# Foreground color for the selected item in filename prompts.
c.colors.prompts.selected.fg = base05
# Foreground color of the statusbar.
c.colors.statusbar.normal.fg = base0B
# Background color of the statusbar.
c.colors.statusbar.normal.bg = base00
# Foreground color of the statusbar in insert mode.
c.colors.statusbar.insert.fg = base00
# Background color of the statusbar in insert mode.
c.colors.statusbar.insert.bg = base0D
# Foreground color of the statusbar in passthrough mode.
c.colors.statusbar.passthrough.fg = base00
# Background color of the statusbar in passthrough mode.
c.colors.statusbar.passthrough.bg = base0C
# Foreground color of the statusbar in private browsing mode.
c.colors.statusbar.private.fg = base00
# Background color of the statusbar in private browsing mode.
c.colors.statusbar.private.bg = base01
# Foreground color of the statusbar in command mode.
c.colors.statusbar.command.fg = base05
# Background color of the statusbar in command mode.
c.colors.statusbar.command.bg = base00
# Foreground color of the statusbar in private browsing + command mode.
c.colors.statusbar.command.private.fg = base05
# Background color of the statusbar in private browsing + command mode.
c.colors.statusbar.command.private.bg = base00
# Foreground color of the statusbar in caret mode.
c.colors.statusbar.caret.fg = base00
# Background color of the statusbar in caret mode.
c.colors.statusbar.caret.bg = base0E
# Foreground color of the statusbar in caret mode with a selection.
c.colors.statusbar.caret.selection.fg = base00
# Background color of the statusbar in caret mode with a selection.
c.colors.statusbar.caret.selection.bg = base0D
# Background color of the progress bar.
c.colors.statusbar.progress.bg = base0D
# Default foreground color of the URL in the statusbar.
c.colors.statusbar.url.fg = base05
# Foreground color of the URL in the statusbar on error.
c.colors.statusbar.url.error.fg = base08
# Foreground color of the URL in the statusbar for hovered links.
c.colors.statusbar.url.hover.fg = base05
# Foreground color of the URL in the statusbar on successful load
# (http).
c.colors.statusbar.url.success.http.fg = base0C
# Foreground color of the URL in the statusbar on successful load
# (https).
c.colors.statusbar.url.success.https.fg = base0B
# Foreground color of the URL in the statusbar when there's a warning.
c.colors.statusbar.url.warn.fg = base0E
# Background color of the tab bar.
c.colors.tabs.bar.bg = base00
# Color gradient start for the tab indicator.
c.colors.tabs.indicator.start = base0D
# Color gradient end for the tab indicator.
c.colors.tabs.indicator.stop = base0C
# Color for the tab indicator on errors.
c.colors.tabs.indicator.error = base08
# Foreground color of unselected odd tabs.
c.colors.tabs.odd.fg = base05
# Background color of unselected odd tabs.
c.colors.tabs.odd.bg = base01
# Foreground color of unselected even tabs.
c.colors.tabs.even.fg = base05
# Background color of unselected even tabs.
c.colors.tabs.even.bg = base00
# Background color of pinned unselected even tabs.
c.colors.tabs.pinned.even.bg = base0C
# Foreground color of pinned unselected even tabs.
c.colors.tabs.pinned.even.fg = base07
# Background color of pinned unselected odd tabs.
c.colors.tabs.pinned.odd.bg = base0B
# Foreground color of pinned unselected odd tabs.
c.colors.tabs.pinned.odd.fg = base07
# Background color of pinned selected even tabs.
c.colors.tabs.pinned.selected.even.bg = base02
# Foreground color of pinned selected even tabs.
c.colors.tabs.pinned.selected.even.fg = base05
# Background color of pinned selected odd tabs.
c.colors.tabs.pinned.selected.odd.bg = base02
# Foreground color of pinned selected odd tabs.
c.colors.tabs.pinned.selected.odd.fg = base05
# Foreground color of selected odd tabs.
c.colors.tabs.selected.odd.fg = base05
# Background color of selected odd tabs.
c.colors.tabs.selected.odd.bg = base02
# Foreground color of selected even tabs.
c.colors.tabs.selected.even.fg = base05
# Background color of selected even tabs.
c.colors.tabs.selected.even.bg = base02
# Background color for webpages if unset (or empty to use the theme's
# color).
c.colors.webpage.bg = base00

View File

@ -0,0 +1,168 @@
"$schema" = 'https://starship.rs/config-schema.json'
format = """
[](fg:color_dark_blue bg:color_bg0)\
$username\
[ ](fg:color_dark_blue bg:color_dark_blue)\
[](fg:color_dark_blue bg:color_orange)\
$directory\
[](fg:color_orange bg:color_red)\
$git_branch\
$git_status\
[](fg:color_red bg:color_fg2)\
$c\
$rust\
$golang\
$nodejs\
$php\
$java\
$kotlin\
$haskell\
$python\
[](fg:color_fg2 bg:color_bg2)\
[](fg:color_bg2 bg:color_bg0)\
$docker_context\
$time\
$os\
[ ](fg:color_fg0)\
$line_break$character"""
palette = 'tomorrownight'
[palettes.tomorrownight]
color_fg0 = '#c5c8c6'
color_bg0 = '#1d1f21'
color_red = '#cc6666'
color_orange = '#de935f'
color_yellow = '#f0c674'
color_dark_yellow = '#ae7b00'
color_green = '#b5bd68'
color_blue = '#81a2be'
color_dark_blue = '#1d2594'
color_aqua = '#8abeb7'
color_dark_aqua = '#2b6651'
color_purple = '#b294bb'
color_dark_purple = '#682a9b'
color_bg2 = '#373b41'
color_fg2 = '#929593'
[os]
disabled = false
style = "bg:color_bg0 fg:color_dark_blue"
[os.symbols]
Windows = "󰍲"
Ubuntu = "󰕈"
SUSE = ""
Raspbian = "󰐿"
Mint = "󰣭"
Macos = "󰀵"
Manjaro = ""
Linux = "󰌽"
Gentoo = "󰣨"
Fedora = "󰣛"
Alpine = ""
Amazon = ""
Android = ""
Arch = "󰣇"
Artix = "󰣇"
CentOS = ""
Debian = "󰣚"
Redhat = "󱄛"
RedHatEnterprise = "󱄛"
FreeBSD = ""
[username]
show_always = true
style_user = "bold bg:color_dark_blue fg:color_fg0"
style_root = "bold bg:color_dark_blue fg:color_fg0"
format = '[ $user ]($style)'
[directory]
style = "bold fg:color_fg0 bg:color_orange"
format = "[ $path ]($style)"
truncation_length = 3
truncation_symbol = "…/"
[directory.substitutions]
"Documents" = "󰈙 "
"Downloads" = " "
"Music" = "󰝚 "
"Pictures" = " "
"Developer" = "󰲋 "
[git_branch]
symbol = ""
style = "bg:color_red"
format = '[[ $symbol $branch ](bold fg:color_fg0 bg:color_red)]($style)'
[git_status]
style = "bg:color_red"
format = '[[($all_status$ahead_behind )](bold fg:color_fg0 bg:color_red)]($style)'
[nodejs]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](bold fg:color_fg0 bg:color_blue)]($style)'
[c]
symbol = " "
style = "bg:color_blue"
format = '[[ $symbol( $version) ](bold fg:color_fg0 bg:color_blue)]($style)'
[rust]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ]bold (fg:color_fg0 bg:color_blue)]($style)'
[golang]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](bold fg:color_fg0 bg:color_blue)]($style)'
[php]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](bold fg:color_fg0 bg:color_blue)]($style)'
[java]
symbol = " "
style = "bg:color_blue"
format = '[[ $symbol( $version) ](bold fg:color_fg0 bg:color_blue)]($style)'
[kotlin]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](bold fg:color_fg0 bg:color_blue)]($style)'
[haskell]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](bold fg:color_fg0 bg:color_blue)]($style)'
[python]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](bold fg:color_fg0 bg:color_blue)]($style)'
[docker_context]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $context) ](bold fg:color_fg0 bg:color_blue)]($style)'
[time]
disabled = false
time_format = "%R"
style = "bg:color_bg0"
format = '[[  $time ](fg:color_fg0 bg:color_bg0)]($style)'
[line_break]
disabled = true
[character]
disabled = false
success_symbol = '[](bold fg:color_green)'
error_symbol = '[](bold fg:color_red)'
vimcmd_symbol = '[](bold fg:color_purple)'
vimcmd_replace_one_symbol = '[](bold fg:color_blue)'
vimcmd_replace_symbol = '[](bold fg:color_blue)'
vimcmd_visual_symbol = '[](bold fg:color_orange)'

View File

@ -0,0 +1,63 @@
-- base16-vis (https://github.com/pshevtsov/base16-vis)
-- by Petr Shevtsov
-- Tomorrow Night scheme by Chris Kempson (http://chriskempson.com)
local lexers = vis.lexers
local colors = {
['base00'] = '#1d1f21',
['base01'] = '#282a2e',
['base02'] = '#373b41',
['base03'] = '#969896',
['base04'] = '#b4b7b4',
['base05'] = '#c5c8c6',
['base06'] = '#e0e0e0',
['base07'] = '#ffffff',
['base08'] = '#cc6666',
['base09'] = '#de935f',
['base0A'] = '#f0c674',
['base0B'] = '#b5bd68',
['base0C'] = '#8abeb7',
['base0D'] = '#81a2be',
['base0E'] = '#b294bb',
['base0F'] = '#a3685a',
}
lexers.colors = colors
local fg = ',fore:'..colors.base05..','
local bg = ',back:'..colors.base00..','
lexers.STYLE_DEFAULT = bg..fg
lexers.STYLE_NOTHING = bg
lexers.STYLE_CLASS = 'fore:'..colors.base0A
lexers.STYLE_COMMENT = 'fore:'..colors.base03..',italics'
lexers.STYLE_CONSTANT = 'fore:'..colors.base09
lexers.STYLE_DEFINITION = 'fore:'..colors.base0E
lexers.STYLE_ERROR = 'fore:'..colors.base08..',italics'
lexers.STYLE_FUNCTION = 'fore:'..colors.base0D
lexers.STYLE_KEYWORD = 'fore:'..colors.base0E
lexers.STYLE_LABEL = 'fore:'..colors.base0A
lexers.STYLE_NUMBER = 'fore:'..colors.base09
lexers.STYLE_OPERATOR = 'fore:'..colors.base05
lexers.STYLE_REGEX = 'fore:'..colors.base0C
lexers.STYLE_STRING = 'fore:'..colors.base0B
lexers.STYLE_PREPROCESSOR = 'fore:'..colors.base0A
lexers.STYLE_TAG = 'fore:'..colors.base0A
lexers.STYLE_TYPE = 'fore:'..colors.base0A
lexers.STYLE_VARIABLE = 'fore:'..colors.base0D
lexers.STYLE_WHITESPACE = 'fore:'..colors.base02
lexers.STYLE_EMBEDDED = 'fore:'..colors.base0F
lexers.STYLE_IDENTIFIER = 'fore:'..colors.base08
lexers.STYLE_LINENUMBER = 'fore:'..colors.base02..',back:'..colors.base00
lexers.STYLE_CURSOR = 'fore:'..colors.base00..',back:'..colors.base05
lexers.STYLE_CURSOR_PRIMARY = 'fore:'..colors.base00..',back:'..colors.base05
lexers.STYLE_CURSOR_LINE = 'back:'..colors.base01
lexers.STYLE_COLOR_COLUMN = 'back:'..colors.base01
lexers.STYLE_SELECTION = 'back:'..colors.base02
lexers.STYLE_STATUS = 'fore:'..colors.base04..',back:'..colors.base01
lexers.STYLE_STATUS_FOCUSED = 'fore:'..colors.base09..',back:'..colors.base01
lexers.STYLE_SEPARATOR = lexers.STYLE_DEFAULT
lexers.STYLE_INFO = 'fore:default,back:default,bold'
lexers.STYLE_EOF = ''

View File

@ -0,0 +1,15 @@
-- load standard vis module, providing parts of the Lua API
require('vis')
require('plugins/vis-title')
require('plugins/vis-shebang')
vis.events.subscribe(vis.events.INIT, function()
-- Your global configuration options
end)
vis.events.subscribe(vis.events.WIN_OPEN, function(win) -- luacheck: no unused args
-- Your per window configuration options e.g.
vis:command('set theme base16-tomorrow-night')
vis:command('set number')
vis:command('set cursorline')
end)

143
zsh/tomorrownight/.zshrc Normal file
View File

@ -0,0 +1,143 @@
#############
# Autostart #
#############
# Test for an interactive shell. There is no need to set anything
# past this point for scp and rcp, and it's important to refrain from
# outputting anything in those cases.
if [[ $- != *i* ]] ; then
# Shell is non-interactive. Be done now!
return
fi
#exec fastfetch
#source .profile
##########
# Prompt #
##########
if [[ $(tty) != "/dev/tty"* ]]; then
eval "$(starship init zsh)"
else
autoload -U colors && colors
# No Directory Shortening
#PS1="%{$fg[cyan]%}%n%{$reset_color%}@%{$fg[red]%}%m %{$fg[magenta]%}%~ %{$reset_color%}%% "
# Directory Shortening
PS1="%{$fg[cyan]%}%n%{$reset_color%}@%{$fg[red]%}%m %{$fg[magenta]%}%(5~|%-1~/.../%3~|%4~) %{$reset_color%}%% "
fi
###########
# Aliases #
###########
alias doas="doas "
alias bat="bat --plain --paging never --theme='Catppuccin-macchiato'"
alias eza="eza --long --icons --git --no-permissions"
alias neofetch="clear && neofetch"
alias audio-dlp="yt-dlp -f \"bestaudio\" --extract-audio --audio-format vorbis"
alias hfnn="fc -ln 0"
alias cmd="command"
alias c="cd"
alias e="eza"
alias b="bat"
alias n="nvim"
alias d="pwd"
alias k="rm"
alias y="cp"
alias no="nano"
alias v="vi"
alias vm="vim"
alias src="source"
alias gr="grep"
alias g="git"
alias p="pkg"
alias pa="pkg_add"
alias pi="pkg_info"
alias cm="chmod"
alias cr="chroot"
alias da="doas"
alias s="su"
alias sd="sudo"
alias mk="make"
alias mkd="mkdir"
alias x="mv"
alias m="mg"
alias em="emacs"
alias tn="ping suckless.org"
alias mnt="mount"
alias u="dd"
alias wai="whoami"
alias h="echo"
alias a="awk"
alias llama2="~/LLaMa2/llama.cpp/main -m ~/LLaMa2/llama.cpp/models/llama-2-13b-chat.Q6_K.gguf --color -c 4096 --temp 0.7 --repeat_penalty 1.1 -n -1 -i -ins"
###########################
# Environmental Variables #
###########################
# Man
export MANPAGER='nvim +Man!'
# Bat
BAT_PAGER=""
export TERM=xterm
# Configuration Directory
export XDG_CONFIG_DIR="$HOME/.config"
# Vis Path
VIS_PATH="$XDG_CONGIG_DIR/vis"
###########
# Plugins #
###########
# Syntax Highlighting
source "$HOME/.config/zsh/plugins/F-Sy-H/F-Sy-H.plugin.zsh"
# Auto Suggestions
source "$HOME/.config/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh"
# Hisory Substring Search
source "$HOME/.config/zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh"
###########
# Options #
###########
HISTFILE=~/.histfile
HISTSIZE=1000
SAVEHIST=1000
setopt appendhistory
###############
# Keybindings #
###############
# Bind Alt + Delete for forward deleting a word
bindkey -M emacs '^[[3;3~' kill-word
# Bind Delete to delete a letter to the right
bindkey "^[[3~" delete-char
# Ctrl binds
# Bind Ctrl + Delete to delete word to the right
bindkey '^[[3;5~' kill-word
# Bind Ctrl + Backspace to delete word to the left
bindkey '^H' backward-kill-word
# Bind Ctrl + Right Arrow to move to the next word
bindkey '^[[1;5C' forward-word
# Bind Ctrl + Left Arrow to move to the previous word
bindkey '^[[1;5D' backward-word
# Hisory Substring Search Options
bindkey '^[[A' history-substring-search-up
bindkey '^[[B' history-substring-search-down
if [ -e /home/vehementham/.nix-profile/etc/profile.d/nix.sh ]; then . /home/vehementham/.nix-profile/etc/profile.d/nix.sh; fi # added by Nix installer