merge from pc to laptop

This commit is contained in:
Flinner Yuu 2025-04-23 15:11:37 +03:00
commit cf688ba700
Signed by: flinner
GPG Key ID: 95CE0DA7F0E58CA6
26 changed files with 445 additions and 220 deletions

3
.gitignore vendored
View File

@ -5,3 +5,6 @@ __pycache__
/emacs.mine/.config/emacs.mine/straight/ /emacs.mine/.config/emacs.mine/straight/
/emacs.mine/.config/emacs.mine/var/ /emacs.mine/.config/emacs.mine/var/
/hypr/.face /hypr/.face
/emacs.mine/.config/emacs.mine/eln-cache/
/emacs.mine/.config/emacs.mine/elpy/
/haskell/.ghc/ghci_history

View File

@ -74,7 +74,7 @@ foreground = "#ebdbb2"
TERM = "xterm-256color" TERM = "xterm-256color"
[font] [font]
size = 6.0 size = 9.0
[font.bold] [font.bold]
style = "Bold" style = "Bold"
@ -94,6 +94,11 @@ action = "SpawnNewInstance"
key = "Return" key = "Return"
mods = "Shift|Super" mods = "Shift|Super"
[[keyboard.bindings]]
action = "CreateNewTab"
key = "T"
mods = "Control|Shift"
#[schemes.flinty_dark.bright] #[schemes.flinty_dark.bright]
#black = "#686868" #black = "#686868"
#blue = "#57c7ff" #blue = "#57c7ff"

View File

@ -1,7 +1,8 @@
# ~/.bashrc: executed by bash(1) for non-login shells. # ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples # for examples
TERM=xterm export TERM=xterm-256color
exec zsh
# If not running interactively, don't do anything # If not running interactively, don't do anything
case $- in case $- in
*i*) ;; *i*) ;;
@ -72,3 +73,5 @@ if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases ; fi
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin" export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
[ -f "/home/lambda/.ghcup/env" ] && . "/home/lambda/.ghcup/env" # ghcup-env

View File

@ -55,3 +55,5 @@ fi
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin" export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
[ -f "/home/lambda/.ghcup/env" ] && . "/home/lambda/.ghcup/env" # ghcup-env

View File

@ -3,8 +3,7 @@
# FOR openGL from arch wiki # FOR openGL from arch wiki
export LD_PRELOAD=/usr/lib/libstdc++.so export LD_PRELOAD=/usr/lib/libstdc++.so
export LD_LIBRARY_PATH=/usr/lib/xorg/modules/dri/ export LD_LIBRARY_PATH=/usr/lib/xorg/modules/dri/
#export _JAVA_AWT_WM_NONREPARENTING=1 export _JAVA_AWT_WM_NONREPARENTING=1
~/Programs/MATLAB/R2024a/bin/matlab "$@" ~/Programs/Matlab/bin/matlab "$@"

4
bin/bin/poly.sh Executable file
View File

@ -0,0 +1,4 @@
for m in $(polybar --list-monitors | cut -d":" -f1); do
MONITOR=$m ~/.config/polybar/launch.sh --hack &
done

View File

@ -1,18 +1,18 @@
#!/bin/bash #!/usr/bin/env bash
# ----- Parameters ------ # # ----- Parameters ------ #
# Coordinates: https://www.mapcoordinates.net/en # Coordinates: https://www.mapcoordinates.net/en
# Set explicitly, or leave commented to get them automatically from ipinfo.io # Set lat and long explicitly, or leave commented to get them automatically from ipinfo.io
# lat='100.00000' lat="${lat:-}"
# long='100.00000' long="${long:-}"
# Calculation Method: https://api.aladhan.com/v1/methods # Calculation Method: https://api.aladhan.com/v1/methods
method='4' method='4'
# Print Text Language (en/ar) # Print Text Language (en/ar)
print_lang="en" print_lang='en'
# Notifcation Daemon # Notifcation Daemon
notify="mako" notify='mako'
# ----------------------- # # ----------------------- #
prayers_json="$HOME/.local/share/prayers.json" prayers_json="${HOME}/.local/share/prayers.json"
prayers=("Fajr" "Dhuhr" "Asr" "Maghrib" "Isha") prayers=("Fajr" "Dhuhr" "Asr" "Maghrib" "Isha")
declare -A date declare -A date
declare -A epochtimes declare -A epochtimes
@ -33,43 +33,42 @@ date=(
) )
nameof() { nameof() {
if [[ "$print_lang" != "en" ]]; then if [[ "${print_lang}" != "en" ]]; then
local array_name="prayers_$print_lang" local array_name="prayers_${print_lang}"
eval "echo -n \${${array_name}[$1]}" eval "echo -n \${${array_name}[${1}]}"
else else
echo -n "$1" echo -n "${1}"
fi fi
} }
check() { check() {
local available_month local available_month
if [[ -r $prayers_json ]]; then local response
available_month=$(jq -r ".data[0].date.gregorian.month.number" "$prayers_json") local location
if [[ -r "${prayers_json}" ]]; then
available_month=$(jq -r ".data[0].date.gregorian.month.number" "${prayers_json}")
else else
local fetch_prayers=1 local fetch_prayers=1
fi fi
if [[ "$fetch_prayers" || "$available_month" != "${date[month]}" ]]; then if ((fetch_prayers)) || [[ "${available_month}" != "${date[month]}" ]]; then
# Fetch the geolocation data from ipinfo.io if [[ -z "${lat}" ]] || [[ -z "${long}" ]]; then
response=$(curl -s https://ipinfo.io) echo "-- fetching latitude and longitude (from ipinfo.io)"
response="$(curl -s https://ipinfo.io)"
echo "-- fetching latitude and longitude" # parse city name
# Parse the latitude and longitude city=$(echo "${response}" | jq -r '.city')
location=$(echo $response | jq -r '.loc') echo "-- city: ${city}"
# parse the latitude and longitude
# Separate latitude and longitude mapfile -t location < <(echo "${response}" | jq -r ' (.loc | split(","))[] ')
latitude=$(echo $location | cut -d',' -f1) # set `lat` to `latitude`, or default to the specified value above
longitude=$(echo $location | cut -d',' -f2) lat=${location[0]:-${lat}}
long=${location[1]:-${long}}
# Set `lat` to `latitude`, or default to the specified value above fi
lat=${latitude:lat}
long=${longitude:long}
echo "-- latitude: ${lat}, longitude: ${long}" echo "-- latitude: ${lat}, longitude: ${long}"
echo "-- fetching current month prayer calendar (${date[month]}-${date[year]})" echo "-- fetching current month prayer calendar (${date[month]}-${date[year]})"
# Documentation: https://aladhan.com/prayer-times-api#GetCalendar # Documentation: https://aladhan.com/prayer-times-api#GetCalendar
curl -Lso "$prayers_json" "https://api.aladhan.com/v1/calendar/${date[year]}/${date[month]}?latitude=$lat&longitude=$long&method=$method" curl -Lso "${prayers_json}" "https://api.aladhan.com/v1/calendar/${date[year]}/${date[month]}?latitude=${lat}&longitude=${long}&method=${method}"
fi fi
} }
@ -78,49 +77,49 @@ add-jobs() {
echo "-- removing all jobs in queue 'p'" echo "-- removing all jobs in queue 'p'"
if [[ "$(at -q p -l | wc -l)" != "0" ]]; then if [[ "$(at -q p -l | wc -l)" != "0" ]]; then
for i in $(at -q p -l | awk '{ print $1 }'); do for i in $(at -q p -l | awk '{ print $1 }'); do
atrm "$i" atrm "${i}"
done done
fi fi
for prayer in "${prayers[@]}"; do for prayer in "${prayers[@]}"; do
echo "-- creating at job for $prayer prayer" echo "-- creating at job for ${prayer} prayer"
if [[ "$notify" == "mako" ]]; then if [[ "${notify}" == "mako" ]]; then
printf 'notify-send -t 30000 --icon="clock-applet-symbolic" "Prayer Times" "It is time for %s prayer 🕌"' "$prayer" | at -q p "$(timeof "$prayer" '%H:%M %F')" printf 'notify-send -t 30000 --icon="clock-applet-symbolic" "Prayer Times" "It is time for %s prayer 🕌"' "${prayer}" | at -q p "$(timeof "${prayer}" '%H:%M %F')"
else else
printf '[ "$(dunstify --icon="clock-applet-symbolic" --action="Reply,reply" "Prayer Times" "Time for %s prayer 🕌" -t 30000)" = "2" ] && %s' "$prayer" "$HOME/.local/bin/toggle-athan" | at -q p "$(timeof "$prayer" '%H:%M %F')" printf '[ "$(dunstify --icon="clock-applet-symbolic" --action="Reply,reply" "Prayer Times" "Time for %s prayer 🕌" -t 30000)" = "2" ] && %s' "${prayer}" "${HOME}/.local/bin/toggle-athan" | at -q p "$(timeof "${prayer}" '%H:%M %F')"
fi fi
done done
} }
timeof() { timeof() {
[[ "$#" -lt "1" ]] && echo "atleast 1 argument is needed" && return 1 [[ "${#}" -lt "1" ]] && echo "atleast 1 argument is needed" && return 1
echo -n "$(date -d "$(jq -r ".data[${date[day_idx]}].timings.$1" "$prayers_json")" "+${2:-%I:%M}")" echo -n "$(date -d "$(jq -r ".data[${date[day_idx]}].timings.${1}" "${prayers_json}")" "+${2:-%I:%M}")"
} }
hijri() { hijri() {
case "$1" in case "${1}" in
weekday) weekday)
if [[ "$print_lang" == "ar" ]]; then if [[ "${print_lang}" == "ar" ]]; then
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.weekday.ar" "$prayers_json")" echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.weekday.ar" "${prayers_json}")"
else else
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.weekday.en" "$prayers_json")" echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.weekday.en" "${prayers_json}")"
fi fi
;; ;;
day) day)
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.day" "$prayers_json")" echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.day" "${prayers_json}")"
;; ;;
month) month)
if [[ "$print_lang" == "ar" ]]; then if [[ "${print_lang}" == "ar" ]]; then
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.month.ar" "$prayers_json")" echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.month.ar" "${prayers_json}")"
else else
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.month.en" "$prayers_json")" echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.month.en" "${prayers_json}")"
fi fi
;; ;;
year) year)
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.year" "$prayers_json")" echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.year" "${prayers_json}")"
;; ;;
*) *)
echo "unsupported argument: $1" && return 1 echo "unsupported argument: ${1}" && return 1
;; ;;
esac esac
} }
@ -141,37 +140,37 @@ settimes() {
local nxt_idx=0 local nxt_idx=0
local curr_idx=4 local curr_idx=4
for i in {4..0}; do for i in {4..0}; do
local prayer_key="${prayers[$i],,}" local prayer_key="${prayers[${i}],,}"
if [[ "${epochtimes[now]}" -ge "${epochtimes[$prayer_key]}" ]]; then if [[ "${epochtimes[now]}" -ge "${epochtimes[${prayer_key}]}" ]]; then
[[ "$i" -lt "4" ]] && curr_idx=$i && nxt_idx=$((i + 1)) [[ "${i}" -lt "4" ]] && curr_idx=${i} && nxt_idx=$((i + 1))
break break
fi fi
done done
local next_key="${prayers[$nxt_idx],,}" local next_key="${prayers[${nxt_idx}],,}"
epochtimes[next]="${epochtimes[$next_key]}" epochtimes[next]="${epochtimes[${next_key}]}"
currentprayer="${prayers[$curr_idx]}" currentprayer="${prayers[${curr_idx}]}"
nextprayer="${prayers[$nxt_idx]}" nextprayer="${prayers[${nxt_idx}]}"
if [[ "$nxt_idx" == "1" && "${date[weekday]}" == "Fri" ]]; then if [[ "${nxt_idx}" == "1" && "${date[weekday]}" == "Fri" ]]; then
nextprayer="Jumuaa" nextprayer="Jumuaa"
fi fi
} }
timeto() { timeto() {
[[ "$#" -lt "1" ]] && echo "atleast 1 argument are needed" && return 1 [[ "${#}" -lt "1" ]] && echo "atleast 1 argument are needed" && return 1
settimes settimes
remain="$((epochtimes["${1,,}"] - epochtimes[now]))" remain="$((epochtimes["${1,,}"] - epochtimes[now]))"
[[ "$remain" -lt "0" ]] && remain="$((remain + 86400))" [[ "${remain}" -lt "0" ]] && remain="$((remain + 86400))"
date -u -d"@$remain" "+${2:-%H:%M}" date -u -d"@${remain}" "+${2:-%H:%M}"
} }
print() { print() {
local format="📅 %s،%s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n" local format="📅 %s،%s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n"
if [[ "$print_lang" == "ar" ]]; then if [[ "${print_lang}" == "ar" ]]; then
format="📅 %s،%s\n%s%11s\n%s%10s\n%s%11s\n%s%11s\n%s%10s\n%s%10s\n" format="📅 %s،%s\n%s%11s\n%s%10s\n%s%11s\n%s%11s\n%s%10s\n%s%10s\n"
fi fi
printf "$format" \ printf "${format}" \
"$(hijri weekday)" \ "$(hijri weekday)" \
"$(hijri day)-$(hijri month)-$(hijri year)" \ "$(hijri day)-$(hijri month)-$(hijri year)" \
"۞ $(nameof Fajr)" "$(timeof Fajr)" \ "۞ $(nameof Fajr)" "$(timeof Fajr)" \
@ -190,9 +189,7 @@ yad-en() {
"<span font-size='large'><b>📅 $(hijri weekday),$(hijri day)-$(hijri month)-$(hijri year)</b></span>" \ "<span font-size='large'><b>📅 $(hijri weekday),$(hijri day)-$(hijri month)-$(hijri year)</b></span>" \
--list \ --list \
--width=300 \ --width=300 \
--posx=550 \ --height=250 \
--posy=20 \
--height=270 \
--title="Prayers" \ --title="Prayers" \
--column="Prayer" \ --column="Prayer" \
--column="Time" \ --column="Time" \
@ -217,9 +214,7 @@ yad-ar() {
"<span font-size='large'><b>📅 $(hijri weekday),$(hijri day)-$(hijri month)-$(hijri year)</b></span>" \ "<span font-size='large'><b>📅 $(hijri weekday),$(hijri day)-$(hijri month)-$(hijri year)</b></span>" \
--list \ --list \
--width=250 \ --width=250 \
--posx=550 \ --height=240 \
--posy=20 \
--height=280 \
--title="Prayers" \ --title="Prayers" \
--column="الوقت" \ --column="الوقت" \
--column="الصلاة" \ --column="الصلاة" \
@ -239,26 +234,26 @@ yad-toggle() {
local yad_pid local yad_pid
yad_pid=$(pgrep -f 'yad.*Prayers') yad_pid=$(pgrep -f 'yad.*Prayers')
if [[ -z "$yad_pid" ]]; then if [[ -z "${yad_pid}" ]]; then
if [[ "$print_lang" == "ar" ]]; then if [[ "${print_lang}" == "ar" ]]; then
yad-ar yad-ar
else else
yad-en yad-en
fi fi
else else
kill "$yad_pid" kill "${yad_pid}"
fi fi
} }
current() { current() {
settimes settimes
echo "$currentprayer" echo "${currentprayer}"
} }
next() { next() {
settimes settimes
echo "$nextprayer" echo "${nextprayer}"
} }
remaining() { remaining() {
@ -270,18 +265,18 @@ status() {
settimes settimes
local remain local remain
remain="$(timeto next)" remain="$(timeto next)"
echo "$nextprayer in $remain" echo "${nextprayer} in ${remain}"
} }
waybar-status() { waybar-status() {
settimes settimes
local remain local remain
remain="$(timeto next)" remain="$(timeto next)"
local next_text="$nextprayer in $remain" local next_text="${nextprayer} in ${remain}"
printf '{ "text": "%s", "class": "%s" }' "$next_text" "$nextprayer" printf '{ "text": "%s", "class": "%s" }' "${next_text}" "${nextprayer}"
} }
case "$1" in case "${1}" in
check) check)
check check
;; ;;
@ -314,12 +309,12 @@ waybar)
waybar-status waybar-status
;; ;;
timeto) timeto)
if [[ -n "$2" ]]; then if [[ -n "${2}" ]]; then
if [[ "$2" == "next" ]]; then if [[ "${2}" == "next" ]]; then
valid=1 valid=1
else else
for p in "${prayers[@]}"; do for p in "${prayers[@]}"; do
if [[ "${2^}" == "$p" ]]; then if [[ "${2^}" == "${p}" ]]; then
valid=1 valid=1
break break
fi fi
@ -327,16 +322,16 @@ timeto)
fi fi
fi fi
if [[ -z "$valid" ]]; then if [[ -z "${valid}" ]]; then
IFS='|' IFS='|'
echo "Usage: $(basename "$0") timeto (next|${prayers[*],,})" echo "Usage: $(basename "${0}") timeto (next|${prayers[*],,})"
exit 1 exit 1
fi fi
timeto "$2" timeto "${2}"
;; ;;
*) *)
echo "Usage: $(basename "$0") [command]" echo "Usage: $(basename "${0}") [command]"
echo "Command:" echo "Command:"
echo " check Check if prayer time data needs to be fetched" echo " check Check if prayer time data needs to be fetched"
echo " jobs Add prayer time notifications as at jobs" echo " jobs Add prayer time notifications as at jobs"

View File

@ -0,0 +1,20 @@
#!/bin/bash
# TODO: Fix this!!
# chatgpted
# Get the current active window ID
current_window=$(hyprctl activewindow)
# Get the monitor of the current active window
current_monitor=$(hyprctl activewindow | grep -oP 'monitor: \K\d+')
# Get the last active window's ID on a different monitor
last_window=$(hyprctl monitors | grep -v $current_monitor | awk '{print $1}')
echo $last_window
# Switch focus to that window (if found)
if [ -n "$last_window" ]; then
hyprctl focuswindow $last_window
fi

View File

@ -8,7 +8,7 @@ pgrep ~/bin/wm/bspswallow || ~/bin/wm/bspswallow &
# not sure if I can count using Roman Numerals :) # not sure if I can count using Roman Numerals :)
bspc monitor eDP1 -d I II III IV V VI VII VIII IX X bspc monitor -d I II III IV V VI VII VIII IX X
#bspc config ignore_ewmh_fullscreen all #bspc config ignore_ewmh_fullscreen all
bspc config ignore_ewmh_focus true bspc config ignore_ewmh_focus true

View File

@ -80,12 +80,21 @@ remove warning by use-package
(setq visible-bell nil) ; Set up the visible bell (setq visible-bell nil) ; Set up the visible bell
(column-number-mode) ; Display Column Number in the modline (column-number-mode) ; Display Column Number in the modline
(setq use-dialog-box nil) ; I don't like to confirm anything with a mouse! (setq use-dialog-box nil) ; I don't like to confirm anything with a mouse!
(setq max-mini-window-height 1) ; Maximum height for resizing mini-windows (the minibuffer and the echo area). = 1 line
(defalias 'yes-or-no-p 'y-or-n-p) ; I don't want to type 'yes' everytime!, 'y' is enough (defalias 'yes-or-no-p 'y-or-n-p) ; I don't want to type 'yes' everytime!, 'y' is enough
;(setq native-comp-deferred-compilation t); emacs 30+ i guess ;(setq native-comp-deferred-compilation t); emacs 30+ i guess
(setq comp-deferred-compilation-deny-list '()) ;; turn off bytecompiler warnings (setq comp-deferred-compilation-deny-list '()) ;; turn off bytecompiler warnings
(setq native-comp-async-report-warnings-errors nil) (setq native-comp-async-report-warnings-errors nil)
;; This is to refresh org buffers when reloading agenda
;; When I sync from another device.
(global-auto-revert-mode 1)
(setq auto-revert-use-notify 1) ; same thing with set to 1
(setq auto-revert-verbose t)
#+end_src #+end_src
Emacs Backups trashing local dir! Emacs Backups trashing local dir!
#+begin_src emacs-lisp #+begin_src emacs-lisp
@ -521,6 +530,7 @@ Capture
"wo" '(other-window :which-key "Window Other") "wo" '(other-window :which-key "Window Other")
"wr" '(winner-redo :which-key "Window Redo") "wr" '(winner-redo :which-key "Window Redo")
"wt" '(treemacs :which-key "Treemacs") "wt" '(treemacs :which-key "Treemacs")
"wT" '(treemacs-select-window :which-key "Treemacs Sel. Window")
#+end_src #+end_src
**** Code (c) **** Code (c)
@ -829,7 +839,7 @@ slow loading! defer it
:custom :custom
(company-tooltip-minimum-width 40) ;reduce flicker due to changing width (company-tooltip-minimum-width 40) ;reduce flicker due to changing width
(global-company-mode t) (global-company-mode t)
(company-idle-delay 0.3) ;; how long to wait until popup (company-idle-delay 0.1) ;; how long to wait until popup
(company-minimum-prefix-length 1) ;; The minimum prefix length for idle completion. (company-minimum-prefix-length 1) ;; The minimum prefix length for idle completion.
(company-selection-wrap-around t) (company-selection-wrap-around t)
;; (company-begin-commands nil) ;; uncomment to disable popup ;; (company-begin-commands nil) ;; uncomment to disable popup
@ -907,8 +917,8 @@ better sorting for ivy, company..
;; org-s-file (car (org-roam-id-find "34f6b040-ea49-421c-ade6-3834a9c86e0f")) ;; org-s-file (car (org-roam-id-find "34f6b040-ea49-421c-ade6-3834a9c86e0f"))
;; org-books-file (concat org-roam-directory "book_list.org") ;; org-books-file (concat org-roam-directory "book_list.org")
org-agenda-files (list org-directory ); org-s-file) org-agenda-files (list org-directory ); org-s-file)
rmh-elfeed-org-files (list "~/Documents/private.el/elfeed.org") rmh-elfeed-org-files (list "~/Documents/Emacs/private.el/elfeed.org")
elfeed-dashboard-file "~/Documents/private.el/elfeed-dashboard.org" elfeed-dashboard-file "~/Documents/Emacs/private.el/elfeed-dashboard.org"
org-preview-latex-image-directory "~/.cache/ltx/ltximg" org-preview-latex-image-directory "~/.cache/ltx/ltximg"
org-my-anki-file (concat org-roam-directory "anki.org") org-my-anki-file (concat org-roam-directory "anki.org")
org-refile-targets '((org-agenda-files . (:level . 1)))) org-refile-targets '((org-agenda-files . (:level . 1))))
@ -1171,7 +1181,7 @@ From: https://yiufung.net/post/anki-org/
*** Weeks per semester *** Weeks per semester
#+begin_src emacs-lisp #+begin_src emacs-lisp
(defun org-week-to-class-week (week) (defun org-week-to-class-week (week)
(- week 34)) (- week 0))
(advice-add 'org-days-to-iso-week :filter-return (advice-add 'org-days-to-iso-week :filter-return
#'org-week-to-class-week) #'org-week-to-class-week)
@ -1304,14 +1314,14 @@ From: https://yiufung.net/post/anki-org/
(setq org-agenda-span 'day); a week is too much (setq org-agenda-span 'day); a week is too much
(setq org-super-agenda-groups (setq org-super-agenda-groups
'((:log t :order 99); logs at bottom '((:log t :order 99); logs at bottom
(:name "S" (:name "Study"
:order 97 :order 97
:tag ("S")) :tag ("S"))
(:name "Life" (:name "Life"
:order 97 :order 98
:tag ("L")) :tag ("L"))
(:name "Habits" (:name "Habits"
:order 98 :order 99
:habit t) :habit t)
(:name "Overdue" (:name "Overdue"
:deadline past :deadline past
@ -1654,6 +1664,7 @@ This is done in Performance section
(lsp-eldoc-enable-hover nil) (lsp-eldoc-enable-hover nil)
(lsp-ui-doc-show-with-mouse nil) (lsp-ui-doc-show-with-mouse nil)
(lsp-keep-workspace-alive nil) (lsp-keep-workspace-alive nil)
(lsp-auto-execute-action nil) ; always ask for actions, even if there is only one option!
(lsp-idle-delay 0.6) (lsp-idle-delay 0.6)
(lsp-completion-provider :capf) (lsp-completion-provider :capf)
(lsp-prefer-flymake nil) (lsp-prefer-flymake nil)
@ -1721,12 +1732,11 @@ Lsp UI
#+begin_src emacs-lisp #+begin_src emacs-lisp
(use-package format-all (use-package format-all
;; :commands (format-all-mode) ;; :commands (format-all-mode)
:defer
:config :config
(setq my/format-all-formatters '(("Verilog" verible))) (setq my/format-all-formatters '(("Verilog" verible)))
:hook (prog-mode . format-all-mode) :hook (prog-mode . format-all-mode)
(format-all-mode . (lambda () (setq format-all-formatters my/format-all-formatters))) (format-all-mode . (lambda () (setq format-all-formatters my/format-all-formatters)))
(format-all-mode . format-all-ensure-formatter)) (format-all-mode . format-all-ensure-formatter))all
#+end_src #+end_src
*** Debug *** Debug
@ -1739,7 +1749,7 @@ Use the Debug Adapter Protocol for running tests and debugging
#+end_src #+end_src
*** Highlihght Indenation Mode *** Highlihght Indenation Mode
#+begin_src emacs-lisp #+begin_src emacs-lisp :tangle no
(use-package highlight-indent-guides (use-package highlight-indent-guides
:hook (prog-mode . highlight-indent-guides-mode) :hook (prog-mode . highlight-indent-guides-mode)
:custom (highlight-indent-guides-method 'character) :custom (highlight-indent-guides-method 'character)
@ -1793,6 +1803,7 @@ use-package
(use-package treemacs (use-package treemacs
:commands (treemacs) :commands (treemacs)
:init :init
(treemacs-project-follow-mode 1)
(setq treemacs-follow-after-init t (setq treemacs-follow-after-init t
treemacs-is-never-other-window t treemacs-is-never-other-window t
treemacs-sorting 'alphabetic-case-insensitive-asc)) treemacs-sorting 'alphabetic-case-insensitive-asc))
@ -2120,6 +2131,11 @@ Sbt for sbt commands...
(add-hook 'before-save-hook 'lsp-format-buffer nil t)))) (add-hook 'before-save-hook 'lsp-format-buffer nil t))))
#+end_src #+end_src
CMake
#+begin_src emacs-lisp
(use-package cmake-mode)
#+end_src
*** COMMENT Ruby *** COMMENT Ruby
#+begin_src emacs-lisp #+begin_src emacs-lisp
(use-package ruby-mode (use-package ruby-mode
@ -2130,7 +2146,7 @@ Sbt for sbt commands...
(add-hook 'before-save-hook 'lsp-format-buffer nil t)))) (add-hook 'before-save-hook 'lsp-format-buffer nil t))))
#+end_src #+end_src
*** python *** COMMENT python
#+begin_src emacs-lisp #+begin_src emacs-lisp
(use-package elpy (use-package elpy
:ensure t :ensure t
@ -2146,8 +2162,8 @@ Sbt for sbt commands...
#+end_src #+end_src
*** LaTeX *** COMMENT LaTeX (old, to be deleted)
AucTex AucTex (Archived, =:tangle= set to =no=)
#+begin_src emacs-lisp :tangle no #+begin_src emacs-lisp :tangle no
;; latexmk ;; latexmk
(use-package magic-latex-buffer (use-package magic-latex-buffer
@ -2252,13 +2268,13 @@ AucTex
;; latexmk ;; latexmk
(require 'auctex-latexmk) (require 'auctex-latexmk)
(auctex-latexmk-setup) (auctex-latexmk-setup) ; look here for stuff
(setq auctex-latexmk-inherit-TeX-PDF-mode t) (setq auctex-latexmk-inherit-TeX-PDF-mode t))
)
#+end_src #+end_src
Custom functions
Custom functions (Archived, =:tangle= set to =no=)
#+begin_src emacs-lisp :tangle no #+begin_src emacs-lisp :tangle no
(defun try/latex-mode-setup () (defun try/latex-mode-setup ()
@ -2371,15 +2387,67 @@ ivy bibtex
(bibtex-completion-cite-prompt-for-optional-arguments nil) (bibtex-completion-cite-prompt-for-optional-arguments nil)
(bibtex-completion-cite-default-as-initial-input t) (bibtex-completion-cite-default-as-initial-input t)
) )
#+end_src #+end_src
*** LaTeX
See: [[https://karthinks.com/software/latex-input-for-impatient-scholars/][LaTeX Input for Impatient Scholars | Karthinks]]
AucTex
#+begin_src emacs-lisp #+begin_src emacs-lisp
(use-package auctex-latexmk
:after auctex ;; Ensure it's loaded after AUCTeX
:config
(setq LaTeX-command "LaTeXMk") ;; Use latexmk as the default LaTeX command
(setq latex-run-command "LaTeXMk"))
(use-package auctex
:mode ("\\.tex\\'" . LaTeX-mode)
:defer t
:hook
(LaTeX-mode . flyspell-mode)
(LaTeX-mode . flycheck-mode)
(LaTeX-mode . company-mode)
(LaTeX-mode . turn-on-reftex)
(LaTeX-mode . electric-indent-mode)
(LaTeX-mode . auto-fill-mode)
;(LaTeX-mode . format-all-mode)
(LaTeX-mode . TeX-source-correlate-mode)
(LaTeX-mode . turn-on-cdlatex)
:custom
(reftex-default-bibliography '("~/Documents/refs.bib"))
(bibtex-dialect 'biblatex)
(TeX-save-query 'nil)
(reftex-plug-into-AUCTeX 't)
:config
(require 'auctex-latexmk)
(auctex-latexmk-setup) ; look here for stuff
(setq auctex-latexmk-inherit-TeX-PDF-mode t)
(evil-define-key 'visual 'LaTeX-mode-map
"$" 'TeX-insert-dollar
"'" 'cdlatex-math-modify)
(setq TeX-view-program-selection '((output-pdf "Zathura"))
TeX-source-correlate-start-server t)
(setq-default TeX-output-dir "/tmp/tex")
(add-to-list 'LaTeX-clean-intermediate-suffixes
'"-figure[0-9]*\\.\\(pdf\\|md5\\|log\\|dpth\\|dep\\|run\\.xml\\)")
(add-to-list 'LaTeX-clean-intermediate-suffixes '".auxlock")
:custom-face
(font-latex-sectioning-0-face ((t (:family my/ui/varfont :weight bold :height 3.0))))
(font-latex-sectioning-1-face ((t (:family my/ui/varfont :weight bold :height 2.5))))
(font-latex-sectioning-2-face ((t (:family my/ui/varfont :weight bold :height 2.0))))
(font-latex-sectioning-3-face ((t (:family my/ui/varfont :weight bold :height 1.5))))
(font-latex-sectioning-4-face ((t (:family my/ui/varfont :weight bold :height 1.5)))))
#+end_src
Lsp LaTeX
#+begin_src emacs-lisp
(use-package cdlatex
:defer t
:hook ((LaTeX-mode . cdlatex-mode)))
(use-package lsp-latex (use-package lsp-latex
:hook ((tex-mode . lsp) :hook (;(tex-mode . lsp)
(latex-mode . lsp))) (LaTeX-mode . lsp)))
#+end_src #+end_src
*** COMMENT Ledger *** COMMENT Ledger
@ -2556,6 +2624,14 @@ Unused, switched to =hledger=
#+end_src #+end_src
*** Zig
#+begin_src emacs-lisp
(use-package zig-mode
:hook
(zig-mode . lsp-mode)
(zig-mode . (lambda () (remove-hook 'before-save-hook 'zig-format-buffer t))))
#+end_src
** Tramp ** Tramp
#+begin_src emacs-lisp #+begin_src emacs-lisp
; moved to Git ; moved to Git
@ -2938,7 +3014,7 @@ I wrote that, neat isn't it? :P
(use-package mu4e ; (use-package mu4e ;
;; this line is for nixos ;; this line is for nixos
;; until here ;; until here
;;:ensure-system-package mu :ensure-system-package mu
:init :init
(defun mu4e--main-action-str (str &optional func-or-shortcut)) (defun mu4e--main-action-str (str &optional func-or-shortcut))
(defun evil-collection-mu4e-update-main-view@override()) (defun evil-collection-mu4e-update-main-view@override())
@ -3176,7 +3252,7 @@ Only ask whether to reply to all if there are more than one recipients
:init :init
(dashboard-setup-startup-hook) (dashboard-setup-startup-hook)
:config :config
(setq dashboard-startup-banner "~/Downloads/haskell-rec.png") (setq dashboard-startup-banner "~/Documents/Emacs/haskell-rec.png")
;; Value can be ;; Value can be
;; 'official which displays the official emacs logo ;; 'official which displays the official emacs logo
;; 'logo which displays an alternative emacs logo ;; 'logo which displays an alternative emacs logo

Binary file not shown.

View File

@ -1,2 +1,2 @@
:set prompt "\ESC[1;34m%s\n\ESC[0;34mλ> \ESC[m" -- :set prompt "\ESC[1;34m%s\n\ESC[0;34mλ> \ESC[m"
:set prompt "\ESC[1;34m%s\n\ESC[0;34m────────────────────\nλ> \ESC[m"

View File

@ -19,18 +19,33 @@
# source = ~/.config/hypr/myColors.conf # source = ~/.config/hypr/myColors.conf
################ ##################
### 2 MONITORS ###
##################
#$mainMonitor=DVI-D-1
#$secondMonitor=DP-1
# $mainMonitor=DP-1
# $secondMonitor=DVI-D-1
#
# # See https://wiki.hyprland.org/Configuring/Monitors/
# # MAIN:
# monitor=$mainMonitor,preferred,1920x395,auto
# # LEFT:
# monitor=$secondMonitor,preferred,auto,auto, transform, 3
# monitor = , highres, auto, 1
##################
### MONITORS ### ### MONITORS ###
################ ##################
$mainMonitor=DVI-D-1
$secondMonitor=DP-1 $mainMonitor=DP-1
# See https://wiki.hyprland.org/Configuring/Monitors/ # See https://wiki.hyprland.org/Configuring/Monitors/
# MAIN: # MAIN:
monitor=$mainMonitor,preferred,1920x395,auto monitor=$mainMonitor,highres,0x0,1.25
# LEFT: monitor = , highres, auto, 1
monitor=$secondMonitor,preferred,auto,auto, transform, 3
monitor = , preferred, auto, 1
################### ###################
@ -40,7 +55,7 @@ monitor = , preferred, auto, 1
# See https://wiki.hyprland.org/Configuring/Keywords/ # See https://wiki.hyprland.org/Configuring/Keywords/
# Set programs that you use # Set programs that you use
$terminal = kitty $terminal = alacritty
$fileManager = dolphin $fileManager = dolphin
$menu = rofi -show drun $menu = rofi -show drun
@ -54,6 +69,7 @@ $menu = rofi -show drun
exec-once = nm-applet & (sleep 3 && nextcloud --background ) & (sleep 3 && udiskie --tray ) & exec-once = nm-applet & (sleep 3 && nextcloud --background ) & (sleep 3 && udiskie --tray ) &
exec-once = (sleep 3 && kdeconnect-indicator) exec-once = (sleep 3 && kdeconnect-indicator)
exec-once = (sleep 3 && blueberry)
exec-once = waybar & hyprpaper exec-once = waybar & hyprpaper
exec-once = [workspace 1 silent] firefox exec-once = [workspace 1 silent] firefox
@ -78,6 +94,15 @@ exec-once = swayidle -w
env = XCURSOR_SIZE,24 env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24
env = ELECTRON_OZONE_PLATFORM_HINT,auto
# unscale XWayland
xwayland {
force_zero_scaling = true
}
# toolkit-specific scale
#env = GDK_SCALE,2
#env = XCURSOR_SIZE,32
##################### #####################
@ -111,6 +136,9 @@ general {
allow_tearing = false allow_tearing = false
layout = dwindle layout = dwindle
# on HJKL, don't wrap around
no_focus_fallback = true
} }
# https://wiki.hyprland.org/Configuring/Variables/#decoration # https://wiki.hyprland.org/Configuring/Variables/#decoration
@ -122,7 +150,7 @@ decoration {
inactive_opacity = 1.0 inactive_opacity = 1.0
shadow { shadow {
enabled = true enabled = false
range = 4 range = 4
render_power = 3 render_power = 3
color = rgba(1a1a1aee) color = rgba(1a1a1aee)
@ -130,7 +158,7 @@ decoration {
# https://wiki.hyprland.org/Configuring/Variables/#blur # https://wiki.hyprland.org/Configuring/Variables/#blur
blur { blur {
enabled = true enabled = false
popups = false popups = false
special = true # this is an expensive operation special = true # this is an expensive operation
size = 3 size = 3
@ -169,6 +197,7 @@ animations {
animation = workspaces, 1, 1.94, almostLinear, fade animation = workspaces, 1, 1.94, almostLinear, fade
animation = workspacesIn, 1, 1.21, almostLinear, fade animation = workspacesIn, 1, 1.21, almostLinear, fade
animation = workspacesOut, 1, 1.94, almostLinear, fade animation = workspacesOut, 1, 1.94, almostLinear, fade
#animation = workspaces, 1, 5, default, slide
} }
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ # Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
@ -212,10 +241,10 @@ misc {
# https://wiki.hyprland.org/Configuring/Variables/#input # https://wiki.hyprland.org/Configuring/Variables/#input
input { input {
kb_layout = us kb_layout = us,ara
kb_variant = kb_variant =
kb_model = kb_model =
kb_options = altwin:swap_lalt_lwin, ctrl:swapcaps kb_options = altwin:swap_lalt_lwin, ctrl:swapcaps, grp:shifts_toggle
kb_rules = kb_rules =
follow_mouse = 1 follow_mouse = 1
@ -241,6 +270,27 @@ device {
sensitivity = -0.5 sensitivity = -0.5
} }
device {
name = bastard-keyboards-scylla-splinky
kb_options =
}
device {
name = bastard-keyboards-scylla-splinky-system-control, bastard-keyboards-scylla-splinky-consumer-control
kb_options =
}
device {
name = bastard-keyboards-scylla-splinky-consumer-control
kb_options =
}
binds {
# FIX: make hjkl not exit fullscreen ;)
movefocus_cycles_fullscreen = 0
# For Alt+TAB to work
# https://www.reddit.com/r/hyprland/comments/zyrrtp/how_do_i_switch_back_and_forth_between_two/
allow_workspace_cycles = true
}
################### ###################
### KEYBINDINGS ### ### KEYBINDINGS ###
@ -256,15 +306,27 @@ bind = $mainMod SHIFT, Q, killactive,
# bind = $mainMod, M, exit, # bind = $mainMod, M, exit,
# bind = $mainMod, E, exec, $fileManager # bind = $mainMod, E, exec, $fileManager
bind = $mainMod, E, exec, emacsclient -nc -alternate-editor="emacs" bind = $mainMod, E, exec, emacsclient -nc -alternate-editor="emacs"
bind = $mainMod, bracketright, exec, ~/bin/rofi_bin_launcher.py
bind = $mainMod, bracketleft, exec, rofi -show calc
bind = $mainMod, R, exec, $menu bind = $mainMod, R, exec, $menu
bind = $mainMod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy bind = $mainMod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy
bind = , Print, exec, grim -g "$(slurp -d)" - | wl-copy # bind = , Print, exec, grim -g "$(slurp -d)" - | wl-copy
bind = SHIFT, Print, exec, env XDG_CURRENT_DESKTOP=sway XDG_SESSION_DESKTOP=sway QT_QPA_PLATFORM=wayland flameshot gui
bind = , Print, exec, grim -g "$(slurp -o -r -c '##FF0000FF')" -t ppm - | satty --early-exit --initial-tool rectangle --copy-command wl-copy --annotation-size-factor 2 --fullscreen --save-after-copy --output-filename "/tmp/test-%Y-%m-%d_%H:%M:%S.png" --filename -
# Toggle Bar
bind = $mainMod, b, exec, killall -SIGUSR1 waybar
# Lock # Lock
bind = $mainMod, HOME, exec, hyprlock >> ~/hyprlock_logfile.txt bind = $mainMod, HOME, exec, hyprlock >> ~/hyprlock_logfile.txt
# Between workspaces
bind = $mainMod, Tab, workspace, previous
# from https://github.com/end-4/dots-hyprland/blob/main/.config/hypr/hyprland/keybinds.conf # from https://github.com/end-4/dots-hyprland/blob/main/.config/hypr/hyprland/keybinds.conf
bind = $mainMod, Tab, focuscurrentorlast # [hidden] sus keybind bind = $mainMod, Grave, focuscurrentorlast # [hidden] sus keybind
bind = $mainMod, Tab, bringactivetotop, # [hidden] bring it to the top bind = $mainMod, Grave, bringactivetotop, # [hidden] bring it to the top
# Window Modes # Window Modes
bind = $mainMod, s, togglefloating, bind = $mainMod, s, togglefloating,
@ -293,7 +355,7 @@ bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3 bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4 bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5 bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6 bind = $mainMod, 7, workspace, 7 bind = $mainMod, 8, workspace, 8 bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7 bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8 bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9 bind = $mainMod, 9, workspace, 9
@ -412,8 +474,8 @@ windowrulev2 = suppressevent maximize, class:.*
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
# Fix ueberzugpp # Fix ueberzugpp
windowrulev2 = noanim, class:^(ueberzugpp) windowrulev2 = noanim, class:^(ueberzugpp_.*)
windowrulev2 = workspace 4 silent, class:^(VGA_SIM) #windowrulev2 = float, class:^(ueberzugpp_.*)
# Fix Matlab # Fix Matlab
windowrulev2 = nofocus, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(Command HistoryWindow)$ windowrulev2 = nofocus, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(Command HistoryWindow)$
@ -442,6 +504,22 @@ windowrulev2 = nofocus, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(Defau
windowrulev2 = float,class:(yad) windowrulev2 = float,class:(yad)
windowrulev2 = move cursor -50% 25,title:(Prayers) windowrulev2 = move cursor -50% 25,title:(Prayers)
# Flameshot
# noanim isn't necessary but animations with these rules might look bad. use at your own discretion.
windowrulev2 = noanim, class:^(flameshot)$
windowrulev2 = fullscreenstate, class:(flameshot), title:(flameshot)
windowrulev2 = float, class:^(flameshot)$
windowrulev2 = move 0 0, class:^(flameshot)$
windowrulev2 = pin, class:^(flameshot)$
# set this to your leftmost monitor id, otherwise you have to move your cursor to the leftmost monitor
# before executing flameshot
windowrulev2 = monitor 1, class:^(flameshot)$
# SATTY (for screenshots)
windowrulev2 = noanim, class:^(flameshot)$
windowrulev2 = fullscreen, class:^(com.gabm.satty)$, title:^(satty)$
windowrulev2 = float, class:^(com.gabm.satty)$, title:^(satty)$
# bind workspaces # bind workspaces
#workspace = [1-5], monitor: $mainMonitor #workspace = [1-5], monitor: $mainMonitor
workspace=1, monitor:$mainMonitor workspace=1, monitor:$mainMonitor

View File

@ -1,3 +1,4 @@
timeout 250 'notify-send --app-name=screenlockwarning "Screen will lock in 30 seconds"'
timeout 300 'hyprlock >> ~/hyprlock_logfile.txt' timeout 300 'hyprlock >> ~/hyprlock_logfile.txt'
timeout 315 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' timeout 600 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on'
before-sleep 'hyprlock' before-sleep 'hyprlock'

View File

@ -4,9 +4,11 @@ $ENV{max_print_line} = $log_wrap = 1000;
$out_dir = '/tmp/tex'; $out_dir = '/tmp/tex';
$pdf_mode = 1; $pdf_mode = 1;
$pdflatex = 'pdflatex --shell-escape -interaction=nonstopmode -synctex=1 %O %S;'; #$pdflatex = 'pdflatex -shell-escape -interaction=nonstopmode -synctex=1 %O %S;';
$pdflualatex = 'lualatex --shell-escape -interaction=nonstopmode -synctex=1 %O %S;'; $pdflatex = 'lualatex -shell-escape -interaction=nonstopmode -synctex=1 %O %S;';
$pdflualatex = 'lualatex -shell-escape -interaction=nonstopmode -synctex=1 %O %S;';
# https://stackoverflow.com/questions/71868294/set-zathura-as-a-default-viewer-while-using-latexmk # https://stackoverflow.com/questions/71868294/set-zathura-as-a-default-viewer-while-using-latexmk
# $pdf_previewer = 'Evince';
$pdf_previewer = 'zathura'; $pdf_previewer = 'zathura';

View File

@ -0,0 +1,3 @@
{
"snippets.ultisnips.pythonPrompt": false
}

View File

@ -14,7 +14,7 @@
;; main colors ;; main colors
background = #FFFFFF background = #FFFFFF
foreground = #1F1F1F foreground = #1F1F1F
primary = #ffb300 primary = #00acc1
red = #FF5250 red = #FF5250
green = #43a047 green = #43a047
yellow = #fdd835 yellow = #fdd835

View File

@ -37,7 +37,7 @@ include-file = ~/.config/polybar/hack/user_modules.ini
; If unspecified, the application will pick the first one it finds. ; If unspecified, the application will pick the first one it finds.
; $ polybar -m | cut -d ':' -f 1 ; $ polybar -m | cut -d ':' -f 1
; $ xrandr -q | grep " connected" | cut -d ' ' -f1 ; $ xrandr -q | grep " connected" | cut -d ' ' -f1
monitor = monitor = ${env:MONITOR}
; Use the specified monitor as a fallback if the main one is not found. ; Use the specified monitor as a fallback if the main one is not found.
monitor-fallback = monitor-fallback =

View File

@ -3,7 +3,7 @@
* { * {
al: #00000000; al: #00000000;
bg: #FFFFFFFF; bg: #FFFFFFFF;
ac: #ffb300FF; ac: #00acc1FF;
se: #ffb30026; se: #00acc126;
fg: #1F1F1FFF; fg: #1F1F1FFF;
} }

View File

@ -133,7 +133,7 @@ set unicode_ellipsis false
# BIDI support - try to properly display file names in RTL languages (Hebrew, Arabic). # BIDI support - try to properly display file names in RTL languages (Hebrew, Arabic).
# Requires the python-bidi pip package # Requires the python-bidi pip package
set bidi_support false set bidi_support true
# Show dotfiles in the bookmark preview box? # Show dotfiles in the bookmark preview box?
set show_hidden_bookmarks true set show_hidden_bookmarks true

View File

@ -21,7 +21,8 @@ export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quo
export _Z_NO_RESOLVE_SYMLINKS=1 export _Z_NO_RESOLVE_SYMLINKS=1
export _Z_DATA="$HOME/.local/share/z" export _Z_DATA="$HOME/.local/share/z"
# jupyter garbage export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab # jupyter garbage
export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab
# python path for jupyter garbage # python path for jupyter garbage
export PYTHONPATH="$HOME/.local/bin" export PYTHONPATH="$HOME/.local/bin"

View File

@ -2,3 +2,15 @@ unbind C-b
set -g prefix C-a set -g prefix C-a
bind C-a send-prefix bind C-a send-prefix
set -g prefix C-Space
bind C-Space send-prefix
setw -g mouse on
set -g mode-keys vi
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

View File

@ -26,44 +26,44 @@ Plug 'mbbill/undotree'
Plug 'preservim/tagbar' Plug 'preservim/tagbar'
" }}} " }}}
Plug 'neoclide/coc.nvim', {'do': { -> coc#util#install()}} " Completion as in vscode Plug 'neoclide/coc.nvim', {'do': { -> coc#util#install()}} " Completion as in vscode
Plug 'preservim/nerdcommenter' " comments code " Plug 'preservim/nerdcommenter' " comments code
Plug 'junegunn/goyo.vim' " zen mode " Plug 'junegunn/goyo.vim' " zen mode
"Plug 'Valloric/YouCompleteMe', { 'do': './install.py' } "Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
Plug 'vim-utils/vim-man' " Plug 'vim-utils/vim-man'
Plug 'sheerun/vim-polyglot' "all lang packs :) Plug 'sheerun/vim-polyglot' "all lang packs :)
Plug 'qpkorr/vim-bufkill' Plug 'qpkorr/vim-bufkill'
"JS {{{ "JS {{{
Plug 'https://github.com/pangloss/vim-javascript.git' " Plug 'https://github.com/pangloss/vim-javascript.git'
Plug 'posva/vim-vue' " Plug 'posva/vim-vue'
Plug 'prettier/vim-prettier' " Plug 'prettier/vim-prettier'
Plug 'dense-analysis/ale' "ES-Lint " Plug 'dense-analysis/ale' "ES-Lint
Plug 'pangloss/vim-javascript' " Plug 'pangloss/vim-javascript'
Plug 'heavenshell/vim-jsdoc', { 'for': ['javascript', 'javascript.jsx','typescript'], 'do': 'make install' } " Plug 'heavenshell/vim-jsdoc', { 'for': ['javascript', 'javascript.jsx','typescript'], 'do': 'make install' }
Plug 'honza/vim-snippets' Plug 'honza/vim-snippets'
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } " Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
Plug 'junegunn/fzf.vim' " Plug 'junegunn/fzf.vim'
Plug 'francoiscabrol/ranger.vim' Plug 'francoiscabrol/ranger.vim'
Plug 'rbgrouleff/bclose.vim' " Plug 'rbgrouleff/bclose.vim'
Plug 'SirVer/ultisnips' Plug 'SirVer/ultisnips'
Plug 'albanm/vuetify-vim' " Plug 'albanm/vuetify-vim'
"}}} "}}}
": Latex{{{ ": Latex{{{
Plug 'lervag/vimtex' Plug 'lervag/vimtex'
Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' } Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' }
"}}} "}}}
"Rust {{{ "Rust {{{
Plug 'rust-lang/rust.vim' " Plug 'rust-lang/rust.vim'
"}}} "}}}
"V {{{ "V {{{
Plug 'ollykel/v-vim' " Plug 'ollykel/v-vim'
"}}} "}}}
" Markdown {{{ " Markdown {{{
Plug 'godlygeek/tabular' " Plug 'godlygeek/tabular'
"Plug 'plasticboy/vim-markdown' "Plug 'plasticboy/vim-markdown'
"}}} "}}}
" GIT {{{ " GIT {{{
Plug 'tpope/vim-fugitive' " Plug 'tpope/vim-fugitive'
Plug 'airblade/vim-gitgutter' Plug 'airblade/vim-gitgutter'
" }}} " }}}

View File

@ -5,9 +5,9 @@
// Choose the order of the modules // Choose the order of the modules
"reload_style_on_change": true, "reload_style_on_change": true,
"modules-left": ["hyprland/workspaces"], "modules-left": ["hyprland/workspaces"],
"modules-center": ["custom/music"], "modules-center": ["pulseaudio","custom/prayers", "network", "cpu", "memory", "clock", "custom/music"],
// "modules-right": ["pulseaudio", "cpu", "backlight", "battery", "clock", "tray", "custom/lock", "custom/power"], // "modules-right": ["pulseaudio", "cpu", "backlight", "battery", "clock", "tray", "custom/lock", "custom/power"],
"modules-right": ["pulseaudio","custom/prayers", "network", "cpu", "memory", "clock", "tray", "custom/lock", "custom/power"], "modules-right": ["tray", "custom/lock", "custom/power"],
"hyprland/workspaces": { "hyprland/workspaces": {
"disable-scroll": true, "disable-scroll": true,
"sort-by-name": true, "sort-by-name": true,

View File

@ -2,7 +2,7 @@
* { * {
font-family: FantasqueSansMono Nerd Font; font-family: FantasqueSansMono Nerd Font;
font-size: 10px; font-size: 12px;
min-height: 0; min-height: 0;
} }

View File

@ -1,3 +1,4 @@
######## ########
# INIT # # INIT #
######## ########
@ -35,6 +36,13 @@ autoload -Uz _zinit
### End of Zinit's installer chunk ### End of Zinit's installer chunk
#=============================================================================================== #===============================================================================================
if [[ "${TERM}" == "dumb" ]]; then
exec sh
fi
# Get a random preset
fastfetch --config $(printf "%s\n" examples/{6,7,9,13,17,20,21,22} | shuf -n 1)
########### ###########
# PLUGINS # # PLUGINS #
########### ###########
@ -61,9 +69,12 @@ zplugin light zsh-users/zsh-autosuggestions
zplugin ice wait'0' lucid zplugin ice wait'0' lucid
zinit load agkozak/zsh-z zinit load agkozak/zsh-z
zplugin ice wait'1' lucid
zinit load "MichaelAquilina/zsh-auto-notify"
zplugin ice wait'5' lucid
zplugin load chisui/zsh-nix-shell #zplugin ice wait'5' lucid
#zplugin load chisui/zsh-nix-shell
#zplugin ice wait'1' lucid #zplugin ice wait'1' lucid
@ -96,6 +107,7 @@ setopt EXTENDED_HISTORY # record command start time
SAVEHIST=1000 SAVEHIST=1000
HISTSIZE=1000 HISTSIZE=1000
HISTFILE="$HOME/.local/share/zsh/zsh_history" HISTFILE="$HOME/.local/share/zsh/zsh_history"
AUTO_NOTIFY_IGNORE+=("fm", "ranger", "nvim")
#=============================================================================================== #===============================================================================================
############ ############
@ -222,6 +234,8 @@ alias startx="exec startx"
#=============================================================================================== #===============================================================================================
#source ~/.config/sh_vars/variables.sh
#xdg specs #xdg specs
export XDG_CONFIG_HOME="$HOME"/.config export XDG_CONFIG_HOME="$HOME"/.config
export XDG_CACHE_HOME="$HOME"/.cache export XDG_CACHE_HOME="$HOME"/.cache
@ -232,7 +246,7 @@ export CARGO_HOME="$XDG_DATA_HOME"/cargo
export GOPATH="$XDG_DATA_HOME"/go export GOPATH="$XDG_DATA_HOME"/go
export GOBIN="$XDG_DATA_HOME"/go export GOBIN="$XDG_DATA_HOME"/go
export DOOM_PATH="$HOME/.emacs.d/bin" export DOOM_PATH="$HOME/.emacs.d/bin"
#export YARN_PATH="$HOME/.yarn/bin" export YARN_PATH="$HOME/.yarn/bin"
export PATH="$DOOM_PATH:$HOME/.local/bin:$HOME/bin:$CARGO_HOME/bin:$YARN_PATH:$GOPATH:$PATH" export PATH="$DOOM_PATH:$HOME/.local/bin:$HOME/bin:$CARGO_HOME/bin:$YARN_PATH:$GOPATH:$PATH"
@ -244,10 +258,11 @@ export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quo
export _Z_NO_RESOLVE_SYMLINKS=1 export _Z_NO_RESOLVE_SYMLINKS=1
export _Z_DATA="$HOME/.local/share/z" export _Z_DATA="$HOME/.local/share/z"
# jupyter garbage export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab # jupyter garbage
# export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab
# python path for jupyter garbage # python path for jupyter garbage
export PYTHONPATH="$HOME/.local/bin" # export PYTHONPATH="$HOME/.local/bin"
# andriod studio, not that I use it # andriod studio, not that I use it
# also needed by shitlab! (matlab) # also needed by shitlab! (matlab)
@ -271,6 +286,7 @@ else
fi fi
export TERMINAL="alacritty" export TERMINAL="alacritty"
export TERM=xterm-256color
# man colors # man colors
export LESS_TERMCAP_mb=$(printf '\e[01;31m') # enter blinking mode - red export LESS_TERMCAP_mb=$(printf '\e[01;31m') # enter blinking mode - red
@ -295,6 +311,8 @@ WINIT_X11_SCALE_FACTOR=1
# Load the pure theme, with zsh-async library that's bundled with it # Load the pure theme, with zsh-async library that's bundled with it
PS1="> " PS1="> "
RPS1=" " RPS1=" "
# TODO: Check if starship binary exist, and choose to eval one of the next two
# lines of code
#zplugin ice wait'!0' lucid pick"async.zsh" src"pure.zsh"; zplugin light sindresorhus/pure #zplugin ice wait'!0' lucid pick"async.zsh" src"pure.zsh"; zplugin light sindresorhus/pure
eval "$(starship init zsh)" eval "$(starship init zsh)"
@ -304,3 +322,6 @@ eval "$(starship init zsh)"
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin" export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab
[ -f "/home/lambda/.ghcup/env" ] && . "/home/lambda/.ghcup/env" # ghcup-env