1 Commits

Author SHA1 Message Date
ea18a3b04e reb 2026-02-12 22:34:07 +02:00
13 changed files with 177 additions and 308 deletions

View File

@@ -1,18 +1,18 @@
#? Config file for btop v.1.4.6 #? Config file for btop v. 1.4.5
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. #* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" #* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
color_theme = "/usr/share/btop/themes/gruvbox_dark_v2.theme" color_theme = "/usr/share/btop/themes/dracula.theme"
#* If the theme set background should be shown, set to False if you want terminal background transparency. #* If the theme set background should be shown, set to False if you want terminal background transparency.
theme_background = true theme_background = True
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. #* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
truecolor = true truecolor = True
#* Set to true to force tty mode regardless if a real tty has been detected or not. #* Set to true to force tty mode regardless if a real tty has been detected or not.
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols. #* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
force_tty = false force_tty = False
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets. #* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box. #* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
@@ -22,13 +22,10 @@ presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:defaul
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. #* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. #* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
vim_keys = false vim_keys = False
#* Rounded corners on boxes, is ignored if TTY mode is ON. #* Rounded corners on boxes, is ignored if TTY mode is ON.
rounded_corners = true rounded_corners = True
#* Use terminal synchronized output sequences to reduce flickering on supported terminals.
terminal_sync = true
#* Default symbols to use for graph creation, "braille", "block" or "tty". #* Default symbols to use for graph creation, "braille", "block" or "tty".
#* "braille" offers the highest resolution but might not be included in all fonts. #* "braille" offers the highest resolution but might not be included in all fonts.
@@ -63,40 +60,37 @@ update_ms = 100
proc_sorting = "memory" proc_sorting = "memory"
#* Reverse sorting order, True or False. #* Reverse sorting order, True or False.
proc_reversed = false proc_reversed = False
#* Show processes as a tree. #* Show processes as a tree.
proc_tree = false proc_tree = False
#* Use the cpu graph colors in the process list. #* Use the cpu graph colors in the process list.
proc_colors = true proc_colors = True
#* Use a darkening gradient in the process list. #* Use a darkening gradient in the process list.
proc_gradient = true proc_gradient = True
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power. #* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
proc_per_core = false proc_per_core = False
#* Show process memory as bytes instead of percent. #* Show process memory as bytes instead of percent.
proc_mem_bytes = true proc_mem_bytes = True
#* Show cpu graph for each process. #* Show cpu graph for each process.
proc_cpu_graphs = true proc_cpu_graphs = True
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate) #* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
proc_info_smaps = false proc_info_smaps = False
#* Show proc box on left side of screen instead of right. #* Show proc box on left side of screen instead of right.
proc_left = false proc_left = False
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = false proc_filter_kernel = False
#* In tree-view, always accumulate child process resources in the parent process. #* In tree-view, always accumulate child process resources in the parent process.
proc_aggregate = false proc_aggregate = False
#* Should cpu and memory usage display be preserved for dead processes when paused.
keep_dead_proc_usage = false
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. #* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu. #* Select from a list of detected attributes from the options menu.
@@ -110,28 +104,28 @@ cpu_graph_lower = "Auto"
show_gpu_info = "Auto" show_gpu_info = "Auto"
#* Toggles if the lower CPU graph should be inverted. #* Toggles if the lower CPU graph should be inverted.
cpu_invert_lower = true cpu_invert_lower = True
#* Set to True to completely disable the lower CPU graph. #* Set to True to completely disable the lower CPU graph.
cpu_single_graph = false cpu_single_graph = False
#* Show cpu box at bottom of screen instead of top. #* Show cpu box at bottom of screen instead of top.
cpu_bottom = false cpu_bottom = False
#* Shows the system uptime in the CPU box. #* Shows the system uptime in the CPU box.
show_uptime = true show_uptime = True
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo. #* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
show_cpu_watts = true show_cpu_watts = True
#* Show cpu temperature. #* Show cpu temperature.
check_temp = true check_temp = True
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors. #* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
cpu_sensor = "Auto" cpu_sensor = "Auto"
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found. #* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
show_coretemp = true show_coretemp = True
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core. #* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine. #* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
@@ -143,20 +137,17 @@ cpu_core_map = ""
temp_scale = "celsius" temp_scale = "celsius"
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. #* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
base_10_sizes = false base_10_sizes = False
#* Show CPU frequency. #* Show CPU frequency.
show_cpu_freq = true show_cpu_freq = True
#* How to calculate CPU frequency, available values: "first", "range", "lowest", "highest" and "average".
freq_mode = "first"
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable. #* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime #* Special formatting: /host = hostname | /user = username | /uptime = system uptime
clock_format = "%X" clock_format = "%X"
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort. #* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
background_update = true background_update = True
#* Custom cpu model name, empty string to disable. #* Custom cpu model name, empty string to disable.
custom_cpu_name = "" custom_cpu_name = ""
@@ -166,43 +157,43 @@ custom_cpu_name = ""
disks_filter = "" disks_filter = ""
#* Show graphs instead of meters for memory values. #* Show graphs instead of meters for memory values.
mem_graphs = true mem_graphs = True
#* Show mem box below net box instead of above. #* Show mem box below net box instead of above.
mem_below_net = false mem_below_net = False
#* Count ZFS ARC in cached and available memory. #* Count ZFS ARC in cached and available memory.
zfs_arc_cached = true zfs_arc_cached = True
#* If swap memory should be shown in memory box. #* If swap memory should be shown in memory box.
show_swap = true show_swap = True
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. #* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
swap_disk = true swap_disk = True
#* If mem box should be split to also show disks info. #* If mem box should be split to also show disks info.
show_disks = true show_disks = True
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. #* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
only_physical = true only_physical = True
#* Read disks list from /etc/fstab. This also disables only_physical. #* Read disks list from /etc/fstab. This also disables only_physical.
use_fstab = true use_fstab = True
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool) #* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
zfs_hide_datasets = false zfs_hide_datasets = False
#* Set to true to show available disk space for privileged users. #* Set to true to show available disk space for privileged users.
disk_free_priv = false disk_free_priv = False
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. #* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
show_io_stat = true show_io_stat = True
#* Toggles io mode for disks, showing big graphs for disk read/write speeds. #* Toggles io mode for disks, showing big graphs for disk read/write speeds.
io_mode = false io_mode = False
#* Set to True to show combined read/write io graphs in io mode. #* Set to True to show combined read/write io graphs in io mode.
io_graph_combined = false io_graph_combined = False
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ". #* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
#* Example: "/mnt/media:100 /:20 /boot:1". #* Example: "/mnt/media:100 /:20 /boot:1".
@@ -214,10 +205,10 @@ net_download = 100
net_upload = 100 net_upload = 100
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest. #* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
net_auto = true net_auto = True
#* Sync the auto scaling for download and upload to whichever currently has the highest scale. #* Sync the auto scaling for download and upload to whichever currently has the highest scale.
net_sync = true net_sync = True
#* Starts with the Network Interface specified here. #* Starts with the Network Interface specified here.
net_iface = "" net_iface = ""
@@ -226,32 +217,26 @@ net_iface = ""
base_10_bitrate = "Auto" base_10_bitrate = "Auto"
#* Show battery stats in top right if battery is present. #* Show battery stats in top right if battery is present.
show_battery = true show_battery = True
#* Which battery to use if multiple are present. "Auto" for auto detection. #* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "Auto" selected_battery = "Auto"
#* Show power stats of battery next to charge indicator. #* Show power stats of battery next to charge indicator.
show_battery_watts = true show_battery_watts = True
#* Set loglevel for "~/.local/state/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". #* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. #* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
log_level = "WARNING" log_level = "WARNING"
#* Automatically save current settings to config file on exit.
save_config_on_exit = true
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards. #* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
nvml_measure_pcie_speeds = true nvml_measure_pcie_speeds = True
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards. #* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
rsmi_measure_pcie_speeds = true rsmi_measure_pcie_speeds = True
#* Horizontally mirror the GPU graph. #* Horizontally mirror the GPU graph.
gpu_mirror_graph = true gpu_mirror_graph = True
#* Set which GPU vendors to show. Available values are "nvidia amd intel"
shown_gpus = "nvidia amd intel"
#* Custom gpu0 model name, empty string to disable. #* Custom gpu0 model name, empty string to disable.
custom_gpu_name0 = "" custom_gpu_name0 = ""

View File

@@ -16,8 +16,6 @@
# You can split this configuration into multiple files # You can split this configuration into multiple files
# Create your files separately and then link them to this file like this: # Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf # source = ~/.config/hypr/myColors.conf
source = ~/.config/hypr/keymaps.conf
env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland env = XDG_SESSION_DESKTOP,Hyprland
@@ -53,7 +51,29 @@ $fileManager = dolphin
$menu = wofi --show drun $menu = wofi --show drun
$browser = zen-browser $browser = zen-browser
exec-once = ~/.config/hypr/start.sh #################
### AUTOSTART ###
#################
# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:
# exec-once = $terminal
# exec-once = nm-applet &
# exec-once = waybar & hyprpaper & firefox
exec-once = ssh-agent & kdeconnect-indicator
exec-once = waybar & hyprpaper & hypridle
exec-once = systemctl --user start hyprpolkitagent
exec-once = copyq
#############################
### ENVIRONMENT VARIABLES ###
#############################
# See https://wiki.hyprland.org/Configuring/Environment-variables/
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
##################### #####################
### LOOK AND FEEL ### ### LOOK AND FEEL ###
@@ -79,6 +99,7 @@ general {
allow_tearing = false allow_tearing = false
layout = dwindle layout = dwindle
} }
cursor { cursor {
@@ -169,6 +190,95 @@ device {
sensitivity = -0.5 sensitivity = -0.5
} }
####################
### KEYBINDINGSS ###
####################
# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
bind = $mainMod, V, exec, cliphist list | wofi --dmenu | cliphist decode | wl-copy
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Return, exec, $terminal
bind = $mainMod, Q, killactive,
bind = $mainMod ALT, Q, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, B, exec, $browser
bind = $mainMod, T, togglefloating,
bind = $mainMod, F, fullscreen,
bind = $mainMod, R, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
# Moving windows
bind = $mainMod SHIFT, left, swapwindow, l
bind = $mainMod SHIFT, right, swapwindow, r
bind = $mainMod SHIFT, up, swapwindow, u
bind = $mainMod SHIFT, down, swapwindow, d
# Window resizing X Y
bind = $mainMod CTRL, left, resizeactive, -60 0
bind = $mainMod CTRL, right, resizeactive, 60 0
bind = $mainMod CTRL, up, resizeactive, 0 -60
bind = $mainMod CTRL, down, resizeactive, 0 60
# 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 mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1
bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2
bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3
bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4
bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5
bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6
bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7
bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8
bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9
bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
bind = , XF86MonBrightnessDown, exec, brightnessctl set 5%-
bind = , XF86MonBrightnessUp, exec, brightnessctl set 5%+
bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindl = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
# Requires playerctl
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous
bindl = , XF86AudioNext, exec, playerctl next
bind = $mainMod SHIFT, C, exec, $terminal -e sh -c "nvim ~/.config/"
bind = $mainMod SHIFT, S, exec, grimblast copysave area
############################## ##############################
### WINDOWS AND WORKSPACES ### ### WINDOWS AND WORKSPACES ###
############################## ##############################

View File

@@ -1,93 +0,0 @@
$terminal = alacritty
$fileManager = dolphin
$menu = wofi --show drun
$browser = zen-browser
####################
### KEYBINDINGSS ###
####################
# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
bind = $mainMod, V, exec, cliphist list | wofi --dmenu | cliphist decode | wl-copy
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Return, exec, $terminal
bind = $mainMod, Q, killactive,
bind = $mainMod ALT, Q, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, B, exec, $browser
bind = $mainMod, T, togglefloating,
bind = $mainMod, F, fullscreen,
bind = $mainMod, R, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
# Moving windows
bind = $mainMod SHIFT, left, swapwindow, l
bind = $mainMod SHIFT, right, swapwindow, r
bind = $mainMod SHIFT, up, swapwindow, u
bind = $mainMod SHIFT, down, swapwindow, d
# Window resizing X Y
bind = $mainMod CTRL, left, resizeactive, -60 0
bind = $mainMod CTRL, right, resizeactive, 60 0
bind = $mainMod CTRL, up, resizeactive, 0 -60
bind = $mainMod CTRL, down, resizeactive, 0 60
# 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 mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1
bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2
bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3
bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4
bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5
bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6
bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7
bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8
bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9
bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
bind = , XF86MonBrightnessDown, exec, brightnessctl set 5%-
bind = , XF86MonBrightnessUp, exec, brightnessctl set 5%+
bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindl = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
# Requires playerctl
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous
bindl = , XF86AudioNext, exec, playerctl next
bind = $mainMod SHIFT, C, exec, $terminal -e sh -c "nvim ~/.config/"
bind = $mainMod SHIFT, S, exec, grimblast copysave area

View File

@@ -1,32 +0,0 @@
#!/bin/sh
# Redirect all output to start.log (overwriting previous logs)
exec > "$HOME/start.log" 2>&1
# Function to log and time each command
run_and_time() {
echo "[$(date +'%H:%M:%S')] Starting: $1"
# /usr/bin/time -f "Took: %E" $1 &
# Note: Since most of these are backgrounded (&),
# we use a subshell to capture the duration of the launch itself.
start_time=$(date +%s%N)
"$@" &
end_time=$(date +%s%N)
# Calculate duration in milliseconds (simple shell math)
duration=$(( (end_time - start_time) / 1000000 ))
echo " -> Launched in ${duration}ms"
}
echo "--- Hyprland Startup: $(date) ---"
run_and_time qs -c nucleus-shell
# run_and_time systemctl --user start hyprpaper
# run_and_time systemctl --user start hypridle
# run_and_time systemctl --user start hyprpolkitagent
run_and_time ssh-agent
run_and_time copyq
run_and_time kdeconnect-indicator
run_and_time dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
echo "--- All processes dispatched ---"

View File

@@ -20,6 +20,7 @@ vim.opt.inccommand = 'split'
vim.opt.cursorline = true vim.opt.cursorline = true
vim.opt.scrolloff = 10 vim.opt.scrolloff = 10
-- vim.opt.textwidth = 80 -- vim.opt.textwidth = 80
vim.schedule(function() vim.schedule(function()
vim.opt.clipboard = 'unnamedplus' vim.opt.clipboard = 'unnamedplus'
end) end)
@@ -209,13 +210,11 @@ vim.lsp.enable {
'svelte-language-server', 'svelte-language-server',
'rust-analyzer', 'rust-analyzer',
'emmet-language-server', 'emmet-language-server',
'tinymist',
'tsgo', 'tsgo',
'tsls', 'tsls',
'qmlls',
'yamlls', 'yamlls',
'ty', 'ty',
} }
vim.o.background = 'dark' vim.o.background = 'dark'
vim.cmd [[colorscheme gruvbox]] vim.cmd [[colorscheme gruvbox-material]]

View File

@@ -1,14 +0,0 @@
---@brief
---
--- https://doc.qt.io/qt-6/qtqml-tooling-qmlls.html
---
--- > QML Language Server is a tool shipped with Qt that helps you write code in your favorite (LSP-supporting) editor.
---
--- Source in the [QtDeclarative repository](https://code.qt.io/cgit/qt/qtdeclarative.git/)
---@type vim.lsp.Config
return {
cmd = { 'qmlls' },
filetypes = { 'qml', 'qmljs' },
root_markers = { '.git', 'shell.qml' },
}

View File

@@ -1,69 +0,0 @@
---@brief
---
--- https://github.com/Myriad-Dreamin/tinymist
--- An integrated language service for Typst [taɪpst]. You can also call it "微霭" [wēi ǎi] in Chinese.
---
--- Currently some of Tinymist's workspace commands are supported, namely:
--- `LspTinymistExportSvg`, `LspTinymistExportPng`, `LspTinymistExportPdf`,
--- `LspTinymistExportMarkdown`, `LspTinymistExportText`, `LspTinymistExportQuery`,
--- `LspTinymistExportAnsiHighlight`, `LspTinymistGetServerInfo`,
--- `LspTinymistGetDocumentTrace`, `LspTinymistGetWorkspaceLabels`,
--- `LspTinymistGetDocumentMetrics`, and `LspTinymistPinMain`.
---@param command_name string
---@param client vim.lsp.Client
---@param bufnr integer
---@return fun():nil run_tinymist_command, string cmd_name, string cmd_desc
local function create_tinymist_command(command_name, client, bufnr)
local export_type = command_name:match 'tinymist%.export(%w+)'
local info_type = command_name:match 'tinymist%.(%w+)'
local cmd_display = export_type or info_type:gsub('^get', 'Get'):gsub('^pin', 'Pin')
---@return nil
local function run_tinymist_command()
local arguments = { vim.api.nvim_buf_get_name(bufnr) }
local title_str = export_type and ('Export ' .. cmd_display) or cmd_display
---@type lsp.Handler
local function handler(err, res)
if err then
return vim.notify(err.code .. ': ' .. err.message, vim.log.levels.ERROR)
end
vim.notify(vim.inspect(res), vim.log.levels.INFO)
end
return client:exec_cmd({
title = title_str,
command = command_name,
arguments = arguments,
}, { bufnr = bufnr }, handler)
end
-- Construct a readable command name/desc
local cmd_name = export_type and ('TinymistExport' .. cmd_display) or ('Tinymist' .. cmd_display) ---@type string
local cmd_desc = export_type and ('Export to ' .. cmd_display) or ('Get ' .. cmd_display) ---@type string
return run_tinymist_command, cmd_name, cmd_desc
end
---@type vim.lsp.Config
return {
cmd = { 'tinymist' },
filetypes = { 'typst' },
root_markers = { '.git' },
on_attach = function(client, bufnr)
for _, command in ipairs {
'tinymist.exportSvg',
'tinymist.exportPng',
'tinymist.exportPdf',
-- 'tinymist.exportHtml', -- Use typst 0.13
'tinymist.exportMarkdown',
'tinymist.exportText',
'tinymist.exportQuery',
'tinymist.exportAnsiHighlight',
'tinymist.getServerInfo',
'tinymist.getDocumentTrace',
'tinymist.getWorkspaceLabels',
'tinymist.getDocumentMetrics',
'tinymist.pinMain',
} do
local cmd_func, cmd_name, cmd_desc = create_tinymist_command(command, client, bufnr)
vim.api.nvim_buf_create_user_command(bufnr, 'Lsp' .. cmd_name, cmd_func, { nargs = 0, desc = cmd_desc })
end
end,
}

View File

@@ -90,6 +90,7 @@ return {
}, },
cmd = { 'typescript-language-server', '--stdio' }, cmd = { 'typescript-language-server', '--stdio' },
filetypes = { filetypes = {
'astro',
'vue', 'vue',
}, },
root_markers = { 'tsconfig.json', 'jsconfig.json', 'package.json', '.git' }, root_markers = { 'tsconfig.json', 'jsconfig.json', 'package.json', '.git' },

View File

@@ -26,19 +26,18 @@ return {
formatters_by_ft = { formatters_by_ft = {
lua = { 'stylua' }, lua = { 'stylua' },
go = { 'gofmt' }, go = { 'gofmt' },
python = { 'ruff', 'black', stop_after_first = true }, python = { 'ruff', "black", stop_after_first = true},
javascript = { 'biome', 'prettier', stop_after_first = true }, javascript = { 'biome', 'prettier', stop_after_first = true },
typescript = { 'biome', 'prettier', stop_after_first = true }, typescript = { 'biome', 'prettier', stop_after_first = true },
html = { 'prettier', stop_after_first = true }, html = { 'biome', 'prettier', stop_after_first = true },
css = { 'biome', 'prettier', stop_after_first = true }, css = { 'biome', 'prettier', stop_after_first = true },
rust = { 'rustfmt', lsp_format = 'fallback' }, rust = { 'rustfmt', lsp_format = 'fallback' },
json = { 'biome', 'prettier', stop_after_first = true }, json = { 'biome', 'prettier', stop_after_first = true },
astro = { 'prettier', 'biome', stop_after_first = true }, astro = { 'biome', 'prettier', stop_after_first = true },
vue = { 'biome', 'prettier' }, vue = { 'biome', 'prettier' },
svelte = { 'prettier', 'biome', stop_after_first = true }, svelte = { 'biome', 'prettier', stop_after_first = true },
yaml = { 'prettier' }, yaml = { 'prettier' },
php = { 'pint', stop_after_first = true }, php = { 'pint', stop_after_first = true },
typst = { 'typstyle', stop_after_first = true },
}, },
formatters = { formatters = {
biome = { biome = {

View File

@@ -1,6 +0,0 @@
return {
'm4xshen/hardtime.nvim',
lazy = false,
dependencies = { 'MunifTanjim/nui.nvim' },
opts = {},
}

View File

@@ -10,15 +10,15 @@ $line_break\
$python\ $python\
$character""" $character"""
palette = "gruvbox" palette = "dracula"
[directory] [directory]
style = "bold purple" style = "bold pink"
[character] [character]
success_symbol = "[>](bold green)" success_symbol = "[>](bold green)"
error_symbol = "[>](bold red)" error_symbol = "[>](bold red)"
vimcmd_symbol = "[<](bold yellow)" vimcmd_symbol = "[<](bold purple)"
[git_branch] [git_branch]
format = "[$branch]($style) " format = "[$branch]($style) "
@@ -52,16 +52,3 @@ pink = "#ff79c6"
purple = "#bd93f9" purple = "#bd93f9"
red = "#ff5555" red = "#ff5555"
yellow = "#f1fa8c" yellow = "#f1fa8c"
[palettes.gruvbox]
background = "#282828"
current_line = "#928374"
foreground = "#f8f8f2"
comment = "#6272a4"
cyan = "#83a598"
green = "#b8bb26"
orange = "#fe8019"
pink = "#ff79c6"
purple = "#d3869b"
red = "#fb4934"
yellow = "#fabd2f"

View File

@@ -59,7 +59,7 @@ yellow='#f1fa8c'
" "
# available plugins: battery, cpu-usage, git, gpu-usage, ram-usage, tmux-ram-usage, network, network-bandwidth, network-ping, ssh-session, attached-clients, network-vpn, weather, time, mpc, spotify-tui, playerctl, kubernetes-context, synchronize-panes # available plugins: battery, cpu-usage, git, gpu-usage, ram-usage, tmux-ram-usage, network, network-bandwidth, network-ping, ssh-session, attached-clients, network-vpn, weather, time, mpc, spotify-tui, playerctl, kubernetes-context, synchronize-panes
set -g @dracula-plugins "network-bandwidth ram-usage time battery" set -g @dracula-plugins "ram-usage time battery"
set -g @dracula-show-left-icon "#[bold]#S" set -g @dracula-show-left-icon "#[bold]#S"
set -g @dracula-time-format "%F %R" set -g @dracula-time-format "%F %R"
set -g @dracula-battery-label false set -g @dracula-battery-label false
@@ -80,4 +80,6 @@ set -g allow-passthrough all
set -ga update-environment TERM set -ga update-environment TERM
set -ga update-environment TERM_PROGRAM set -ga update-environment TERM_PROGRAM
if "test ! -d ~/.tmux/plugins/tpm" \
"run 'git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm && ~/.tmux/plugins/tpm/bin/install_plugins'"
run -b '~/.tmux/plugins/tpm/tpm' run -b '~/.tmux/plugins/tpm/tpm'

View File

@@ -1,4 +1,4 @@
[flavor] [flavor]
dark = "gruvbox_material" dark = "dracula"
use = "gruvbox_material" use = "dracula"