Compare commits
85
Commits
8d944cbb3a
...
old
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f62cb40499 | ||
|
|
a5a5bc1b1b | ||
|
|
9d447e1cd0 | ||
|
|
e305c812ef | ||
|
|
71addd70ea | ||
|
|
077e5acba6 | ||
|
|
7a8a8fce6f | ||
|
|
0e07bcced0 | ||
|
|
572a4c2286 | ||
|
|
b33a45fa1c | ||
|
|
3cbf3116c9 | ||
|
|
b9398d31fe | ||
|
|
9eb42566db | ||
|
|
d314b43943 | ||
|
|
c14c6bf1af | ||
|
|
f18b85247d | ||
|
|
f59b36d637 | ||
|
|
f30a7275d0 | ||
|
|
2163dd70b6 | ||
|
|
076975d384 | ||
|
|
d18a799be3 | ||
|
|
3ced0b13d9 | ||
|
|
68d6cc3109 | ||
|
|
8f73757604 | ||
|
|
dad966c3be | ||
|
|
7b2a2e5447 | ||
|
|
6cd73dc865 | ||
|
|
63c9bc520a | ||
|
|
3c336fa1b3 | ||
|
|
2a5d020110 | ||
|
|
c6f63eb958 | ||
|
|
a9f3dd28de | ||
|
|
f0dfb66fc2 | ||
|
|
62f68b6570 | ||
|
|
01d7666f51 | ||
|
|
a4675f15b9 | ||
|
|
3705c90fda | ||
|
|
b7e2599094 | ||
|
|
bdb669bb73 | ||
|
|
e7da0a5f93 | ||
|
|
f413a68803 | ||
|
|
e72c0b648c | ||
|
|
581001db0b | ||
|
|
9a154c71ec | ||
|
|
d8a08b8b14 | ||
|
|
19faeed49e | ||
|
|
d943a80530 | ||
|
|
535d28900d | ||
|
|
0c480e2d1e | ||
|
|
03e193f975 | ||
|
|
6498afda47 | ||
|
|
5580d801ee | ||
|
|
1057355b76 | ||
|
|
83697d71e6 | ||
|
|
87798f132a | ||
|
|
751014a9fb | ||
|
|
6cee197b2e | ||
|
|
2cc3a7330c | ||
|
|
9dd5639868 | ||
|
|
c1d60f4786 | ||
|
|
ec99ca58d8 | ||
|
|
5e2e481726 | ||
|
|
7ebe0a5d4b | ||
|
|
5b9d76e08e | ||
|
|
9736d2fd6e | ||
|
|
17540f0b8b | ||
|
|
cd5cd23e71 | ||
|
|
87935ca581 | ||
|
|
3ef2509830 | ||
|
|
c07058a3c4 | ||
|
|
d78a9f76cf | ||
|
|
48d6400905 | ||
|
|
6b7a6fd6e6 | ||
|
|
f5ae2e0848 | ||
|
|
940ba48422 | ||
|
|
47d3d0d254 | ||
|
|
039eb20956 | ||
|
|
2d4b03425f | ||
|
|
9002b1e720 | ||
|
|
4c6488d927 | ||
|
|
6fcad474ab | ||
|
|
c740f33b94 | ||
|
|
8789b077f0 | ||
|
|
499a603d44 | ||
|
|
bd6f2cd612 |
@@ -0,0 +1,3 @@
|
||||
greet.txt
|
||||
fish_variables
|
||||
secrets.fish
|
||||
@@ -0,0 +1,27 @@
|
||||
# see https://github.com/sigoden/aichat/blob/main/config.example.yaml
|
||||
keybindings: vi
|
||||
editor: nvim
|
||||
model: duskadiy:Qwen3-Coder-30B-Instruct-IQ4_XS
|
||||
clients:
|
||||
- type: openai-compatible
|
||||
name: local
|
||||
api_base: http://192.168.0.204:11343/v1
|
||||
models:
|
||||
- name: Qwen3.5-27B-UD-Q3_K_XL
|
||||
- name: Qwen3.5-9B-Q8_0
|
||||
- name: Qwen3-Coder-30B-Instruct-IQ4_XS
|
||||
- name: GLM-4.7-Flash-UD-Q3_K_XL
|
||||
- name: DeepSeek-Coder-V2-Lite-Instruct-Q8_0
|
||||
- name: gemma-4-E4B-it-UD-Q8_K_XL
|
||||
- name: gemma-4-26B-A4B-it-UD-IQ4_XS
|
||||
- type: openai-compatible
|
||||
name: duskadiy
|
||||
api_base: https://llm.duskadiy.com/api/v1
|
||||
models:
|
||||
- name: Qwen3.5-27B-UD-Q3_K_XL
|
||||
- name: Qwen3.5-9B-Q8_0
|
||||
- name: Qwen3-Coder-30B-Instruct-IQ4_XS
|
||||
- name: GLM-4.7-Flash-UD-Q3_K_XL
|
||||
- name: DeepSeek-Coder-V2-Lite-Instruct-Q8_0
|
||||
- name: gemma-4-E4B-it-UD-Q8_K_XL
|
||||
- name: gemma-4-26B-A4B-it-UD-IQ4_XS
|
||||
@@ -0,0 +1,286 @@
|
||||
#? Config file for btop v.1.4.7
|
||||
|
||||
#* 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"
|
||||
color_theme = "Default"
|
||||
|
||||
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||
theme_background = false
|
||||
|
||||
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||
truecolor = true
|
||||
|
||||
#* 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.
|
||||
force_tty = false
|
||||
|
||||
#* Option to disable presets. Either the default preset, custom presets, or all presets.
|
||||
#* "Off" All presets are enabled.
|
||||
#* "Default" preset is disabled.#* "Custom" presets are disabled.#* "All" presets are disabled.
|
||||
disable_presets = "Off"
|
||||
|
||||
#* 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.
|
||||
#* Use whitespace " " as separator between different presets.
|
||||
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
|
||||
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
|
||||
|
||||
#* 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.
|
||||
vim_keys = true
|
||||
|
||||
#* Disable all mouse events.
|
||||
disable_mouse = false
|
||||
|
||||
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||
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".
|
||||
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||
#* "block" has half the resolution of braille but uses more common characters.
|
||||
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||
graph_symbol = "braille"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_cpu = "default"
|
||||
|
||||
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_gpu = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_mem = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_net = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_proc = "default"
|
||||
|
||||
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
|
||||
shown_boxes = "proc cpu mem net"
|
||||
|
||||
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||
update_ms = 2000
|
||||
|
||||
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||
proc_sorting = "cpu lazy"
|
||||
|
||||
#* Reverse sorting order, True or False.
|
||||
proc_reversed = false
|
||||
|
||||
#* Show processes as a tree.
|
||||
proc_tree = true
|
||||
|
||||
#* Use the cpu graph colors in the process list.
|
||||
proc_colors = true
|
||||
|
||||
#* Use a darkening gradient in the process list.
|
||||
proc_gradient = true
|
||||
|
||||
#* 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
|
||||
|
||||
#* Show process memory as bytes instead of percent.
|
||||
proc_mem_bytes = true
|
||||
|
||||
#* Show cpu graph for each process.
|
||||
proc_cpu_graphs = true
|
||||
|
||||
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||
proc_info_smaps = false
|
||||
|
||||
#* Show proc box on left side of screen instead of right.
|
||||
proc_left = false
|
||||
|
||||
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||
proc_filter_kernel = false
|
||||
|
||||
#* Should the process list follow the selected process when detailed view is open.
|
||||
proc_follow_detailed = true
|
||||
|
||||
#* In tree-view, always accumulate child process resources in the parent process.
|
||||
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.
|
||||
#* Select from a list of detected attributes from the options menu.
|
||||
cpu_graph_upper = "Auto"
|
||||
|
||||
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
|
||||
#* Select from a list of detected attributes from the options menu.
|
||||
cpu_graph_lower = "Auto"
|
||||
|
||||
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
|
||||
show_gpu_info = "Auto"
|
||||
|
||||
#* Toggles if the lower CPU graph should be inverted.
|
||||
cpu_invert_lower = true
|
||||
|
||||
#* Set to True to completely disable the lower CPU graph.
|
||||
cpu_single_graph = false
|
||||
|
||||
#* Show cpu box at bottom of screen instead of top.
|
||||
cpu_bottom = false
|
||||
|
||||
#* Shows the system uptime in the CPU box.
|
||||
show_uptime = true
|
||||
|
||||
#* 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 temperature.
|
||||
check_temp = true
|
||||
|
||||
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||
cpu_sensor = "Auto"
|
||||
|
||||
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||
show_coretemp = true
|
||||
|
||||
#* 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.
|
||||
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
|
||||
#* Example: "4:0 5:1 6:3"
|
||||
cpu_core_map = ""
|
||||
|
||||
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
|
||||
temp_scale = "celsius"
|
||||
|
||||
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||
base_10_sizes = false
|
||||
|
||||
#* Show CPU frequency.
|
||||
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.
|
||||
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||
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.
|
||||
background_update = true
|
||||
|
||||
#* Custom cpu model name, empty string to disable.
|
||||
custom_cpu_name = ""
|
||||
|
||||
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
|
||||
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
|
||||
disks_filter = ""
|
||||
|
||||
#* Show graphs instead of meters for memory values.
|
||||
mem_graphs = true
|
||||
|
||||
#* Show mem box below net box instead of above.
|
||||
mem_below_net = false
|
||||
|
||||
#* Count ZFS ARC in cached and available memory.
|
||||
zfs_arc_cached = true
|
||||
|
||||
#* If swap memory should be shown in memory box.
|
||||
show_swap = true
|
||||
|
||||
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||
swap_disk = true
|
||||
|
||||
#* If mem box should be split to also show disks info.
|
||||
show_disks = true
|
||||
|
||||
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||
only_physical = true
|
||||
|
||||
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||
use_fstab = true
|
||||
|
||||
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||
zfs_hide_datasets = false
|
||||
|
||||
#* Set to true to show available disk space for privileged users.
|
||||
disk_free_priv = false
|
||||
|
||||
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||
show_io_stat = true
|
||||
|
||||
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||
io_mode = false
|
||||
|
||||
#* Set to True to show combined read/write io graphs in io mode.
|
||||
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 " ".
|
||||
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||
io_graph_speeds = ""
|
||||
|
||||
#* Swap the positions of the upload and download speed graphs. When true, upload will be on top.
|
||||
swap_upload_download = false
|
||||
|
||||
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||
net_download = 100
|
||||
|
||||
net_upload = 100
|
||||
|
||||
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||
net_auto = true
|
||||
|
||||
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||
net_sync = true
|
||||
|
||||
#* Starts with the Network Interface specified here.
|
||||
net_iface = ""
|
||||
|
||||
#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes.
|
||||
base_10_bitrate = "Auto"
|
||||
|
||||
#* Show battery stats in top right if battery is present.
|
||||
show_battery = true
|
||||
|
||||
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||
selected_battery = "Auto"
|
||||
|
||||
#* Show power stats of battery next to charge indicator.
|
||||
show_battery_watts = true
|
||||
|
||||
#* Set loglevel for "~/.local/state/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
||||
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||
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.
|
||||
nvml_measure_pcie_speeds = true
|
||||
|
||||
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
|
||||
rsmi_measure_pcie_speeds = true
|
||||
|
||||
#* Horizontally mirror the GPU graph.
|
||||
gpu_mirror_graph = true
|
||||
|
||||
#* Set which GPU vendors to show. Available values are "nvidia amd intel apple"
|
||||
shown_gpus = "nvidia amd intel"
|
||||
|
||||
#* Custom gpu0 model name, empty string to disable.
|
||||
custom_gpu_name0 = ""
|
||||
|
||||
#* Custom gpu1 model name, empty string to disable.
|
||||
custom_gpu_name1 = ""
|
||||
|
||||
#* Custom gpu2 model name, empty string to disable.
|
||||
custom_gpu_name2 = ""
|
||||
|
||||
#* Custom gpu3 model name, empty string to disable.
|
||||
custom_gpu_name3 = ""
|
||||
|
||||
#* Custom gpu4 model name, empty string to disable.
|
||||
custom_gpu_name4 = ""
|
||||
|
||||
#* Custom gpu5 model name, empty string to disable.
|
||||
custom_gpu_name5 = ""
|
||||
@@ -0,0 +1,40 @@
|
||||
|
||||
2024/11/19 (20:36:51) | ===> btop++ v.1.4.0
|
||||
2024/11/19 (20:36:51) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
2024/11/19 (20:37:28) | INFO: Logger set to INFO
|
||||
|
||||
2024/11/26 (00:47:27) | ===> btop++ v.1.4.0
|
||||
2024/11/26 (00:47:27) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2024/11/26 (00:47:32) | ===> btop++ v.1.4.0
|
||||
2024/11/26 (00:47:32) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2024/12/16 (20:32:28) | ===> btop++ v.1.4.0
|
||||
2024/12/16 (20:32:28) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/01/06 (01:34:00) | ===> btop++ v.1.4.0
|
||||
2025/01/06 (01:34:00) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/02/23 (01:19:32) | ===> btop++ v.1.4.0
|
||||
2025/02/23 (01:19:32) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/03/12 (19:08:38) | ===> btop++ v.1.4.0
|
||||
2025/03/12 (19:08:38) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/03/13 (00:34:24) | ===> btop++ v.1.4.0
|
||||
2025/03/13 (00:34:24) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/03/19 (17:51:06) | ===> btop++ v.1.4.0
|
||||
2025/03/19 (17:51:06) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/03/22 (05:43:25) | ===> btop++ v.1.4.0
|
||||
2025/03/22 (05:43:25) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/03/22 (05:43:39) | ===> btop++ v.1.4.0
|
||||
2025/03/22 (05:43:39) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/03/24 (02:13:29) | ===> btop++ v.1.4.0
|
||||
2025/03/24 (02:13:29) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
|
||||
2025/03/25 (22:21:48) | ===> btop++ v.1.4.0
|
||||
2025/03/25 (22:21:48) | WARNING: Intel GPU: Failed to initialize PMU
|
||||
@@ -0,0 +1,13 @@
|
||||
|
||||
[color]
|
||||
|
||||
gradient = 1
|
||||
gradient_count = 8
|
||||
gradient_color_1 = '#332952'
|
||||
gradient_color_2 = '#463A6B'
|
||||
gradient_color_3 = '#7D4B5F'
|
||||
gradient_color_4 = '#8F576D'
|
||||
gradient_color_5 = '#A36578'
|
||||
gradient_color_6 = '#C27A90'
|
||||
gradient_color_7 = '#E69A9D'
|
||||
gradient_color_8 = '#F0AAAD'
|
||||
@@ -0,0 +1,117 @@
|
||||
#version 330
|
||||
|
||||
// this shader was stolen from shadertoy user ChunderFPV
|
||||
|
||||
#define SCALE 8.0
|
||||
#define PI radians(180.0)
|
||||
#define TAU (PI * 2.0)
|
||||
#define CS(a) vec2(cos(a), sin(a))
|
||||
#define PT(u, r) smoothstep(0.0, r, r - length(u))
|
||||
|
||||
in vec2 fragCoord;
|
||||
out vec4 fragColor;
|
||||
|
||||
uniform float bars[512];
|
||||
|
||||
uniform int bars_count; // number of bars (left + right) (configurable)
|
||||
uniform float shader_time; // shader execution time s
|
||||
uniform int bar_width; // bar width (configurable), not used here
|
||||
uniform int bar_spacing; // space bewteen bars (configurable)
|
||||
|
||||
uniform vec3 u_resolution; // window resolution
|
||||
|
||||
// colors, configurable in cava config file (r,g,b) (0.0 - 1.0)
|
||||
uniform vec3 bg_color; // background color
|
||||
uniform vec3 fg_color; // foreground color
|
||||
|
||||
uniform int gradient_count;
|
||||
uniform vec3 gradient_colors[8]; // gradient colors
|
||||
|
||||
// gradient map ( color, equation, time, width, shadow, reciprocal )
|
||||
vec3 gm(vec3 c, float n, float t, float w, float d, bool i) {
|
||||
float g = min(abs(n), 1.0 / abs(n));
|
||||
float s = abs(sin(n * PI - t));
|
||||
if (i)
|
||||
s = min(s, abs(sin(PI / n + t)));
|
||||
return (1.0 - pow(abs(s), w)) * c * pow(g, d) * 6.0;
|
||||
}
|
||||
|
||||
// denominator spiral, use 1/n for numerator
|
||||
// ( screen xy, spiral exponent, decimal, line width, hardness, rotation )
|
||||
float ds(vec2 u, float e, float n, float w, float h, float ro) {
|
||||
float ur = length(u); // unit radius
|
||||
float sr = pow(ur, e); // spiral radius
|
||||
float a = round(sr) * n * TAU; // arc
|
||||
vec2 xy = CS(a + ro) * ur; // xy coords
|
||||
float l = PT(u - xy, w); // line
|
||||
float s = mod(sr + 0.5, 1.0); // gradient smooth
|
||||
s = min(s, 1.0 - s); // darken filter
|
||||
return l * s * h;
|
||||
}
|
||||
|
||||
void main() {
|
||||
float t = shader_time / PI * 2.0;
|
||||
vec4 m = vec4(0, 0, 0, 0); // iMouse;
|
||||
m.xy = m.xy * 2.0 / u_resolution.xy - 1.0; // ±1x, ±1y
|
||||
if (m.z > 0.0)
|
||||
t += m.y * SCALE; // move time with mouse y
|
||||
float z = (m.z > 0.0) ? pow(1.0 - abs(m.y), sign(m.y)) : 1.0; // zoom (+)
|
||||
float e = (m.z > 0.0) ? pow(1.0 - abs(m.x), -sign(m.x))
|
||||
: 1.0; // screen exponent (+)
|
||||
float se = (m.z > 0.0) ? e * -sign(m.y) : 1.0; // spiral exponent
|
||||
vec3 bg = vec3(0); // black background
|
||||
|
||||
float aa = 3.0; // anti-aliasing
|
||||
|
||||
for (float j = 0.0; j < aa; j++)
|
||||
for (float k = 0.0; k < aa; k++) {
|
||||
vec3 c = vec3(0);
|
||||
vec2 o = vec2(j, k) / aa;
|
||||
vec2 uv = (fragCoord * u_resolution.xy - 0.5 * u_resolution.xy + o) /
|
||||
u_resolution.y * SCALE * z; // apply cartesian, scale and zoom
|
||||
if (m.z > 0.0)
|
||||
uv =
|
||||
exp(log(abs(uv)) * e) * sign(uv); // warp screen space with exponent
|
||||
|
||||
float px = length(fwidth(uv)); // pixel width
|
||||
float x = uv.x; // every pixel on x
|
||||
float y = uv.y; // every pixel on y
|
||||
float l = length(uv); // hypot of xy: sqrt(x*x+y*y)
|
||||
|
||||
float mc = (x * x + y * y - 1.0) / y; // metallic circle at xy
|
||||
float g = min(abs(mc), 1.0 / abs(mc)); // gradient
|
||||
vec3 gold = vec3(1.0, 0.6, 0.0) * g * l;
|
||||
vec3 blue = vec3(0.3, 0.5, 0.9) * (1.0 - g);
|
||||
vec3 rgb = max(gold, blue);
|
||||
|
||||
float w = 0.1; // line width
|
||||
float d = 0.4; // shadow depth
|
||||
c = max(c, gm(rgb, mc, -t, w * bars[0], d, false)); // metallic
|
||||
c = max(c, gm(rgb, abs(y / x) * sign(y), -t, w * bars[1], d,
|
||||
false)); // tangent
|
||||
c = max(c, gm(rgb, (x * x) / (y * y) * sign(y), -t, w * bars[2], d,
|
||||
false)); // sqrt cotangent
|
||||
c = max(c, gm(rgb, (x * x) + (y * y), t, w * bars[3], d,
|
||||
true)); // sqrt circles
|
||||
|
||||
c += rgb * ds(uv, se, t / TAU, px * 2.0 * bars[4], 2.0, 0.0); // spiral 1a
|
||||
c += rgb * ds(uv, se, t / TAU, px * 2.0 * bars[5], 2.0, PI); // spiral 1b
|
||||
c +=
|
||||
rgb * ds(uv, -se, t / TAU, px * 2.0 * bars[6], 2.0, 0.0); // spiral 2a
|
||||
c += rgb * ds(uv, -se, t / TAU, px * 2.0 * bars[7], 2.0, PI); // spiral 2b
|
||||
c = max(c, 0.0); // clear negative color
|
||||
|
||||
c += pow(max(1.0 - l, 0.0), 3.0 / z); // center glow
|
||||
|
||||
if (m.z > 0.0) // display grid on click
|
||||
{
|
||||
vec2 xyg = abs(fract(uv + 0.5) - 0.5) / px; // xy grid
|
||||
c.gb += 0.2 * (1.0 - min(min(xyg.x, xyg.y), 1.0));
|
||||
}
|
||||
bg += c;
|
||||
}
|
||||
bg /= aa * aa;
|
||||
bg *= sqrt(bg) * 1.5;
|
||||
|
||||
fragColor = vec4(bg, 1.0);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
[color]
|
||||
background = '#001e26'
|
||||
foreground = '#708183'
|
||||
|
||||
gradient = 1
|
||||
gradient_color_1 = '#268bd2'
|
||||
gradient_color_2 = '#6c71c4'
|
||||
gradient_color_3 = '#cb4b16'
|
||||
|
||||
horizontal_gradient = 1
|
||||
horizontal_gradient_color_1 = '#586e75'
|
||||
horizontal_gradient_color_2 = '#b58900'
|
||||
horizontal_gradient_color_3 = '#839496'
|
||||
|
||||
blend_direction = 'up'
|
||||
@@ -0,0 +1,10 @@
|
||||
[color]
|
||||
horizontal_gradient = 1
|
||||
horizontal_gradient_color_1 = '#c45161'
|
||||
horizontal_gradient_color_2 = '#e094a0'
|
||||
horizontal_gradient_color_3 = '#f2b6c0'
|
||||
horizontal_gradient_color_4 = '#f2dde1'
|
||||
horizontal_gradient_color_5 = '#cbc7d8'
|
||||
horizontal_gradient_color_6 = '#8db7d2'
|
||||
horizontal_gradient_color_7 = '#5e62a9'
|
||||
horizontal_gradient_color_8 = '#434279'
|
||||
@@ -0,0 +1,3 @@
|
||||
set --global fish_key_bindings fish_vi_key_bindings
|
||||
|
||||
set --erase --universal fish_key_bindings
|
||||
@@ -0,0 +1,38 @@
|
||||
set --global fish_color_autosuggestion 4D5566
|
||||
set --global fish_color_cancel -r
|
||||
set --global fish_color_command 39BAE6
|
||||
set --global fish_color_comment 626A73
|
||||
set --global fish_color_cwd 59C2FF
|
||||
set --global fish_color_cwd_root red
|
||||
set --global fish_color_end F29668
|
||||
set --global fish_color_error FF3333
|
||||
set --global fish_color_escape 95E6CB
|
||||
set --global fish_color_history_current --bold
|
||||
set --global fish_color_host normal
|
||||
set --global fish_color_host_remote yellow
|
||||
set --global fish_color_keyword 39BAE6
|
||||
set --global fish_color_match F07178
|
||||
set --global fish_color_normal B3B1AD
|
||||
set --global fish_color_operator E6B450
|
||||
set --global fish_color_option B3B1AD
|
||||
set --global fish_color_param B3B1AD
|
||||
set --global fish_color_quote C2D94C
|
||||
set --global fish_color_redirection FFEE99
|
||||
set --global fish_color_search_match --background=E6B450
|
||||
set --global fish_color_selection --background=E6B450
|
||||
set --global fish_color_status red
|
||||
set --global fish_color_user brgreen
|
||||
set --global fish_color_valid_path --underline
|
||||
set --global fish_pager_color_background
|
||||
set --global fish_pager_color_completion normal
|
||||
set --global fish_pager_color_description B3A06D yellow
|
||||
set --global fish_pager_color_prefix normal --bold --underline
|
||||
set --global fish_pager_color_progress brwhite --background=cyan
|
||||
set --global fish_pager_color_secondary_background
|
||||
set --global fish_pager_color_secondary_completion
|
||||
set --global fish_pager_color_secondary_description
|
||||
set --global fish_pager_color_secondary_prefix
|
||||
set --global fish_pager_color_selected_background --background=E6B450
|
||||
set --global fish_pager_color_selected_completion
|
||||
set --global fish_pager_color_selected_description
|
||||
set --global fish_pager_color_selected_prefix
|
||||
@@ -0,0 +1 @@
|
||||
fnm env --use-on-cd --shell fish | source
|
||||
+35
-21
@@ -1,38 +1,40 @@
|
||||
set -gx QT_FONT_DPI 96
|
||||
set -gx EDITOR nvim
|
||||
set -gx PAGER less
|
||||
set -gx PATH "/run/user/1000/fnm_multishells/14287_1763490645306/bin" $PATH;
|
||||
set -gx FNM_MULTISHELL_PATH "/run/user/1000/fnm_multishells/14287_1763490645306";
|
||||
set -gx FNM_VERSION_FILE_STRATEGY "local";
|
||||
set -gx FNM_DIR "/home/anon/.local/share/fnm";
|
||||
set -gx FNM_LOGLEVEL "info";
|
||||
set -gx FNM_NODE_DIST_MIRROR "https://nodejs.org/dist";
|
||||
set -gx FNM_COREPACK_ENABLED "false";
|
||||
set -gx FNM_RESOLVE_ENGINES "true";
|
||||
set -gx FNM_ARCH "x64";
|
||||
set -Ux MANPAGER "nvim +Man!"
|
||||
# set -gx DUSKADIY_API_KEY "*****"
|
||||
set -x NEWT_COLORS 'root=black,black;window=black,black;border=white,black;listbox=white,black;label=blue,black;checkbox=red,black;title=green,black;button=white,red;actsellistbox=white,red;actlistbox=white,gray;compactbutton=white,gray;actcheckbox=white,blue;entry=lightgray,black;textbox=blue,black' nmtui
|
||||
# set -gx BAT_THEME "Catppuccin Mocha"
|
||||
## functions
|
||||
set -g fish_greeting
|
||||
set -g fish_cursor_insert line
|
||||
set -g fish_cursor_default block
|
||||
set -g fish_cursor_visual underscore
|
||||
set -g fish_user_key_bindings
|
||||
set -g askllama
|
||||
set -g ask
|
||||
set -g sshf
|
||||
set -g tuis
|
||||
|
||||
alias dmz="cat ~/.config/fish/dmz.txt"
|
||||
alias matrix="~/projects/random-clones/matrix/matrix"
|
||||
alias nmatrix="neo-matrix -DS 3"
|
||||
|
||||
# LLMs
|
||||
alias codellamasrv=" ~/projects/llama.cpp/build/bin/llama-server -m ~/projects/llama.cpp/models/codellama"
|
||||
alias llama3-web="~/projects/llama.cpp/build/bin/llama-server -m ~/projects/llama.cpp/models/llama3"
|
||||
alias llama3=" ~/projects/llama.cpp/build/bin/llama-cli -m ~/projects/llama.cpp/models/llama3"
|
||||
alias llama=" ~/projects/llama.cpp/build/bin/llama-run"
|
||||
alias llamasrv="~/projects/pkgs/llama.cpp/build/bin/llama-server"
|
||||
abbr llamastart "llamasrv --host 0.0.0.0 --port 11343 --models-max 3 --models-preset ~/Documents/models/config.ini"
|
||||
|
||||
# Shorts
|
||||
alias fzf="fzf --preview color='always {}'"
|
||||
alias fzf="fzf --multi --preview 'bat --style=numbers --color=always {}' | xargs -n 1 nvim"
|
||||
alias grep="grep --color=auto"
|
||||
alias cat="vimcat"
|
||||
|
||||
# Git
|
||||
alias gs="git status"
|
||||
alias gs="git status --short"
|
||||
alias gca="git add -p . && git commit"
|
||||
alias gd="git diff --word-diff"
|
||||
alias gl="git log --graph --show-signature"
|
||||
alias gla="git log --all --decorate --oneline --graph"
|
||||
alias gls="serie"
|
||||
alias gm="git merge"
|
||||
alias gm="git merge"
|
||||
|
||||
# List Directory
|
||||
@@ -46,8 +48,9 @@ alias cdots="cd ~/.dotfiles/.config/"
|
||||
alias cpnotes="cd ~/sync/PersonalNotes/"
|
||||
abbr dots "cdots && nvim"
|
||||
abbr pnotes "cpnotes && nvim"
|
||||
abbr todo "cpnotes && nvim ToDo.md"
|
||||
abbr todo "cpnotes && nvim ToDoNext.md"
|
||||
|
||||
abbr cat "bat -p"
|
||||
abbr copy "wl-copy"
|
||||
abbr img "kitten icat"
|
||||
abbr fm "yazi" ## file manager
|
||||
@@ -55,8 +58,9 @@ abbr lg "lazygit"
|
||||
abbr mkdir "mkdir -p"
|
||||
abbr faillock "sudo faillock --reset"
|
||||
abbr ipadd "sudo ip route add 192.168.0.234 dev wg0"
|
||||
abbr xremaps "sudo xremap ~/.config/xremap/config.yml"
|
||||
abbr pacs "sudo pacman -Syu"
|
||||
abbr xremaps "sudo xremap --watch ~/.config/xremap/config.yml"
|
||||
abbr pacs "sudo pacman -Syu --noconfirm"
|
||||
abbr yays "yay --noconfirm --sudoloop"
|
||||
abbr nmaps "sudo nmap -sn 192.168.0.0/24"
|
||||
abbr scrcpyc 'scrcpy -wSK -m 1920 --window-borderless --always-on-top --power-off-on-close'
|
||||
abbr scrcpys 'scrcpy -wS --power-off-on-close'
|
||||
@@ -73,7 +77,17 @@ abbr .5 "cd ../../../../.."
|
||||
|
||||
zoxide init --cmd cd fish | source
|
||||
export PATH="$HOME/.cargo/bin:$PATH"
|
||||
|
||||
thefuck --alias | source
|
||||
|
||||
# Created by `pipx` on 2025-05-31 20:14:06
|
||||
set PATH $PATH /home/anon/.local/bin
|
||||
|
||||
# pnpm
|
||||
set -gx PNPM_HOME "/home/anon/.local/share/pnpm"
|
||||
if not string match -q -- $PNPM_HOME $PATH
|
||||
set -gx PATH "$PNPM_HOME" $PATH
|
||||
end
|
||||
# pnpm end
|
||||
|
||||
|
||||
fnm env --use-on-cd --shell fish | source
|
||||
|
||||
@@ -3,43 +3,5 @@
|
||||
SETUVAR --export EDITOR:nvim
|
||||
SETUVAR --export MANPAGER:nvim\x20\x2bMan\x21
|
||||
SETUVAR --export MANROFFOPT:\x2dP\x20\x2dc
|
||||
SETUVAR __fish_initialized:3800
|
||||
SETUVAR fish_color_autosuggestion:4D5566
|
||||
SETUVAR fish_color_cancel:\x2dr
|
||||
SETUVAR fish_color_command:39BAE6
|
||||
SETUVAR fish_color_comment:626A73
|
||||
SETUVAR fish_color_cwd:59C2FF
|
||||
SETUVAR fish_color_cwd_root:red
|
||||
SETUVAR fish_color_end:F29668
|
||||
SETUVAR fish_color_error:FF3333
|
||||
SETUVAR fish_color_escape:95E6CB
|
||||
SETUVAR fish_color_history_current:\x2d\x2dbold
|
||||
SETUVAR fish_color_host:normal
|
||||
SETUVAR fish_color_host_remote:yellow
|
||||
SETUVAR fish_color_keyword:39BAE6
|
||||
SETUVAR fish_color_match:F07178
|
||||
SETUVAR fish_color_normal:B3B1AD
|
||||
SETUVAR fish_color_operator:E6B450
|
||||
SETUVAR fish_color_option:B3B1AD
|
||||
SETUVAR fish_color_param:B3B1AD
|
||||
SETUVAR fish_color_quote:C2D94C
|
||||
SETUVAR fish_color_redirection:FFEE99
|
||||
SETUVAR fish_color_search_match:\x2d\x2dbackground\x3dE6B450
|
||||
SETUVAR fish_color_selection:\x2d\x2dbackground\x3dE6B450
|
||||
SETUVAR fish_color_status:red
|
||||
SETUVAR fish_color_user:brgreen
|
||||
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
||||
SETUVAR fish_key_bindings:fish_vi_key_bindings
|
||||
SETUVAR fish_pager_color_background:\x1d
|
||||
SETUVAR fish_pager_color_completion:normal
|
||||
SETUVAR fish_pager_color_description:B3A06D\x1eyellow
|
||||
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
|
||||
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
|
||||
SETUVAR fish_pager_color_secondary_background:\x1d
|
||||
SETUVAR fish_pager_color_secondary_completion:\x1d
|
||||
SETUVAR fish_pager_color_secondary_description:\x1d
|
||||
SETUVAR fish_pager_color_secondary_prefix:\x1d
|
||||
SETUVAR fish_pager_color_selected_background:\x2d\x2dbackground\x3dE6B450
|
||||
SETUVAR fish_pager_color_selected_completion:\x1d
|
||||
SETUVAR fish_pager_color_selected_description:\x1d
|
||||
SETUVAR fish_pager_color_selected_prefix:\x1d
|
||||
SETUVAR TMP:/tmp/tmp\x2eYYqSsNsses
|
||||
SETUVAR __fish_initialized:4300
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
function askllama --description 'answer from llama'
|
||||
~/projects/llama.cpp/build/bin/llama-run ~/projects/llama.cpp/models/llama3 $(string join '+' $argv[1..])
|
||||
~/projects/pkgs/llama.cpp/build/bin/llama-simple -m ~/Documents/models/Qwen3-4B-Instruct-2507.Q4_K_M.gguf $(string join '+' $argv[1..])
|
||||
end
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
function bashs --description 'raw bash command'
|
||||
bash -c "$argv"
|
||||
end
|
||||
@@ -0,0 +1,24 @@
|
||||
function c2-worktree
|
||||
if test (count $argv) -ne 1
|
||||
echo "Usage: pkg-worktree <branch-name>"
|
||||
echo "Example: pkg-worktree package/package-update"
|
||||
return 1
|
||||
end
|
||||
|
||||
set branch $argv[1]
|
||||
set dir (basename $branch)
|
||||
|
||||
git checkout -b $branch
|
||||
or return 1
|
||||
|
||||
git checkout master
|
||||
or return 1
|
||||
|
||||
git worktree add $dir $branch
|
||||
or return 1
|
||||
|
||||
cd $dir
|
||||
or return 1
|
||||
|
||||
pnpm i
|
||||
end
|
||||
@@ -0,0 +1,3 @@
|
||||
function clis --description 'fzf select cli'
|
||||
eval (string split "\n" (cat $HOME/.config/misc/clis.txt) | bashs "fzf --multi")
|
||||
end
|
||||
@@ -5,4 +5,6 @@ function fish_user_key_bindings
|
||||
bind -M default ctrl-e end-of-line
|
||||
bind -M insert ctrl-space accept-autosuggestion
|
||||
bind -M insert ctrl-g 'git diff' repaint
|
||||
bind -M insert ctrl-o execute yazi
|
||||
bind -M insert ctrl-l clear-screen ls repaint
|
||||
end
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
function opencodes --description 'bubblewraped opencode'
|
||||
bwrap --unshare-all \
|
||||
--new-session \
|
||||
--clearenv \
|
||||
--die-with-parent \
|
||||
--share-net \
|
||||
--dev /dev \
|
||||
--proc /proc \
|
||||
--ro-bind /usr /usr \
|
||||
--ro-bind /lib /lib \
|
||||
--ro-bind /lib64 /lib64 \
|
||||
--ro-bind /bin /bin \
|
||||
--ro-bind /etc /etc \
|
||||
--ro-bind ~/.config/opencode ~/.config/opencode \
|
||||
--tmpfs /tmp/node-compile-cache \
|
||||
--bind ~/.local/state/opencode ~/.local/state/opencode \
|
||||
--bind ~/.local/share/opencode ~/.local/share/opencode \
|
||||
--bind "$(pwd)" "$(pwd)" \
|
||||
opencode
|
||||
end
|
||||
# strace -f -e trace=%file opencode
|
||||
@@ -1,3 +1,3 @@
|
||||
function sshf --description 'fzf select for ssh hosts'
|
||||
ssh $(grep Host -w .ssh/config | awk '{print $2}' | fzf)
|
||||
ssh $(grep Host -w ~/.ssh/config | awk '{print $2}' | bashs "fzf --multi")
|
||||
end
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
function tuis --description 'fzf select tui'
|
||||
eval (string split "\n" (cat ".dotfiles/tuis.txt") | fzf)
|
||||
eval (string split "\n" (cat $HOME/.config/misc/tuis.txt) | bashs "fzf --multi")
|
||||
end
|
||||
|
||||
Executable
+27
@@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Get the current battery percentage
|
||||
battery_percentage=$(cat /sys/class/power_supply/BAT0/capacity)
|
||||
|
||||
# Get the battery status (Charging or Discharging)
|
||||
battery_status=$(cat /sys/class/power_supply/BAT0/status)
|
||||
|
||||
# Define the battery icons for each 10% segment
|
||||
battery_icons=("" "" "" "" "" "" "" "" "" "")
|
||||
|
||||
# Define the charging icon
|
||||
charging_icon=""
|
||||
|
||||
# Calculate the index for the icon array
|
||||
icon_index=$((battery_percentage / 10))
|
||||
|
||||
# Get the corresponding icon
|
||||
battery_icon=${battery_icons[icon_index]}
|
||||
|
||||
# Check if the battery is charging
|
||||
if [ "$battery_status" = "Charging" ]; then
|
||||
battery_icon="$charging_icon"
|
||||
fi
|
||||
|
||||
# Output the battery percentage and icon
|
||||
echo "$battery_percentage% $battery_icon"
|
||||
+18
-26
@@ -10,41 +10,33 @@
|
||||
$LOCKSCREEN = lockscreen.sh # Calls $LOCKSCREEN set from hyprland
|
||||
|
||||
general {
|
||||
lock_cmd = $LOCKSCREEN
|
||||
unlock_cmd = #notify-send "unlock!" # same as above, but unlock
|
||||
before_sleep_cmd = $LOCKSCREEN # command ran before sleep
|
||||
after_sleep_cmd = # notify-send "Awake!" # command ran after sleep
|
||||
ignore_dbus_inhibit = 0
|
||||
lock_cmd = pidof hyprlock || hyprlock
|
||||
on_unlock_cmd = bash -c 'notify-send "Welcome back!"'
|
||||
before_sleep_cmd = loginctl lock-session
|
||||
after_sleep_cmd = bash -c 'brightnessctl -r; brightnessctl -d tpacpi::kbd_backlight set 1; hyprctl dispatch dpms on'
|
||||
}
|
||||
|
||||
# Dims the display
|
||||
listener {
|
||||
timeout = 120
|
||||
on-timeout = { brightnessctl -s && brightnessctl s 1% ;}
|
||||
on-resume = brightnessctl -r
|
||||
timeout = 180
|
||||
on-timeout = bash -c 'brightnessctl -s set 50'
|
||||
on-resume = bash -c 'brightnessctl -r'
|
||||
}
|
||||
|
||||
# Lock it first before dpms off so that screen won't show for a moment after wake up.
|
||||
listener {
|
||||
timeout = 240
|
||||
on-timeout = $LOCKSCREEN
|
||||
timeout = 250 # 5min
|
||||
on-timeout = loginctl lock-session # lock screen when timeout has passed
|
||||
}
|
||||
|
||||
# DPMS off
|
||||
listener {
|
||||
timeout = 2300
|
||||
on-timeout = hyprctl dispatch dpms off #do not turn off display while media is playing
|
||||
on-resume = hyprctl dispatch dpms on
|
||||
timeout = 350 # 3.6 minutes
|
||||
on-timeout = bash -c 'brightnessctl -r; brightnessctl -s set 10; brightnessctl -d tpacpi::kbd_backlight set 0; hyprctl dispatch dpms off'
|
||||
on-resume = bash -c 'brightnessctl -r; brightnessctl -d tpacpi::kbd_backlight set 1; hyprctl dispatch dpms on'
|
||||
}
|
||||
|
||||
# Suspend
|
||||
# listener {
|
||||
# timeout = 500
|
||||
# on-timeout = systemctl suspend
|
||||
# }
|
||||
|
||||
# hyprlang noerror true
|
||||
# Source anything from this path if you want to add your own listener
|
||||
# source command actually do not exist yet
|
||||
source = ~/.config/hypridle/*
|
||||
# hyprlang noerror false
|
||||
listener {
|
||||
timeout = 550 # 5.5min
|
||||
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
|
||||
on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired.
|
||||
}
|
||||
|
||||
|
||||
@@ -38,8 +38,10 @@ exec-once = wl-paste --type text --watch cliphist store # clipboard store text d
|
||||
exec-once = wl-paste --type image --watch cliphist store # clipboard store image data
|
||||
exec-once = $scrPath/swwwallpaper.sh # start wallpaper daemon
|
||||
exec-once = $scrPath/batterynotify.sh # battery notification
|
||||
exec-once = xremap ~/.config/xremap/config.yml
|
||||
exec-once = swayidle -w timeout 180 'swaylock --timestr %H:%M & brightnessctl -s & brightnessctl set 15' resume 'brightnessctl -r'
|
||||
exec-once = xremap --watch ~/.config/xremap/config.yml
|
||||
exec-once = hypridle
|
||||
|
||||
|
||||
|
||||
# █▀▀ █▄░█ █░█
|
||||
# ██▄ █░▀█ ▀▄▀
|
||||
@@ -98,10 +100,10 @@ device {
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_fingers = 3
|
||||
}
|
||||
# gestures {
|
||||
# workspace_swipe = true
|
||||
# workspace_swipe_fingers = 3
|
||||
# }
|
||||
|
||||
|
||||
# █░░ ▄▀█ █▄█ █▀█ █░█ ▀█▀ █▀
|
||||
@@ -110,7 +112,7 @@ gestures {
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/
|
||||
|
||||
dwindle {
|
||||
pseudotile = yes
|
||||
# pseudotile = yes
|
||||
preserve_split = yes
|
||||
}
|
||||
|
||||
|
||||
+108
-76
@@ -2,83 +2,115 @@
|
||||
#! █▀█ ░█░ █▀▀ █▀▄ █▄▄ █▄█ █▄▄ █░█
|
||||
|
||||
#* Hyprlock Configuration File
|
||||
# Please do not edit this file manually.
|
||||
# Follow the instructions below on how to make changes.
|
||||
|
||||
$fontColor = rgba(255,255,255,0.5)
|
||||
$fontFamily = SourceCodeVF ExtraBold
|
||||
$timeFontFamily = Cantarell ExtraBold
|
||||
|
||||
general {
|
||||
no_fade_in = true
|
||||
grade = 1
|
||||
ignore_empty_input = true
|
||||
text_trim = true
|
||||
fade_in_time = 0.8
|
||||
disable_loading_bar = 0
|
||||
}
|
||||
|
||||
background {
|
||||
monitor =
|
||||
path = ~/sync/Drive/pics/foss-world-crop.png
|
||||
blur_passes = 2
|
||||
blur_size = 4
|
||||
contrast = 0.7
|
||||
brightness = 0.3
|
||||
vibrancy = 0.15
|
||||
vibrancy_darkness = 0.5
|
||||
}
|
||||
|
||||
image {
|
||||
monitor =
|
||||
path = ~/sync/Drive/pics/matrixom-crop.png
|
||||
position = 0, 80
|
||||
reload_time = -1
|
||||
reload_cmd =
|
||||
}
|
||||
|
||||
input-field {
|
||||
monitor =
|
||||
size = 20%, 5%
|
||||
position = 0, -60
|
||||
outline_thickness = 3
|
||||
dots_size = 0.08
|
||||
dots_spacing = 0.2
|
||||
dots_center = true
|
||||
outer_color = rgba(0,0,0,0.1)
|
||||
inner_color = $fontColor
|
||||
fade_on_empty = true
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:5000] echo "<span alpha='40%'>$(uptime -p)</span>"
|
||||
color = $fontColor
|
||||
font_family = $fontFamily
|
||||
font_size = 15
|
||||
position = 0, 350
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:300000] echo "<span alpha='50%'>$(cat ~/.config/fish/greet.txt)</span>"
|
||||
color = $fontColor
|
||||
font_family = $fontFamily
|
||||
font_size = 14
|
||||
position = 0, 310
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] echo "<span alpha='50%'>$(date +"%H:%M")</span>"
|
||||
color = $fontColor
|
||||
font_family = $timeFontFamily
|
||||
font_size = 120
|
||||
position = 0, -180
|
||||
animation = pulse 2s infinite
|
||||
opacity = 0.5
|
||||
shadow_passes = 1
|
||||
shadow_size = 1
|
||||
shadow_color = rgba(0, 0, 0, 0.5)
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] echo "<span alpha='50%'>$(LC_TIME=en_US.UF-8 date +'%A, %B %d')</span>"
|
||||
color = $fontColor
|
||||
font_family = $fontFamily
|
||||
font_size = 25
|
||||
position = 0, -300
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] echo -e "<span alpha='50%'>$(~/.config/hypr/battery.sh)</span>"
|
||||
color = $fontColor
|
||||
font_family = $fontFamily
|
||||
font_size = 14
|
||||
position = -50, 30
|
||||
halign = right
|
||||
valign = bottom
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
color = $fontColor
|
||||
text = cmd[] echo "<span alpha='50%'>⏻ </span>"
|
||||
font-size=24
|
||||
onclick = systemctl poweroff
|
||||
position = 50, 30
|
||||
halign = left
|
||||
valign = bottom
|
||||
}
|
||||
|
||||
|
||||
#* Hyprlock active layout path:
|
||||
# Set the layout path to be used by Hyprlock.
|
||||
# Check the available layouts in the './hyprlock/' directory.
|
||||
# Example: /=/path/to/anurati
|
||||
$LAYOUT_PATH=~/.config/hypr/hyprlock/theme.conf
|
||||
|
||||
#* Persistent layout declaration
|
||||
# If a persistent layout path is declared in $XDG_CONFIG_HOME/hypr/hyde.conf,
|
||||
# the above layout setting will be ignored.
|
||||
# this should be the full path to the layout file.
|
||||
|
||||
#* All boilerplate configurations are handled by HyDE
|
||||
source = ~/.local/share/hyde/hyprlock.conf
|
||||
|
||||
#* Making a custom layout
|
||||
# To create a custom layout, make a file in the './hyprlock/' directory.
|
||||
# Example: './hyprlock/your_custom.conf'
|
||||
# To use the custom layout, set the following variable:
|
||||
# $LAYOUT_PATH=your_custom
|
||||
# The custom layout will be sourced automatically.
|
||||
# Alternatively, you can statically source the layout in '~/.config/hypr/hyde.conf'.
|
||||
# This will take precedence over the variable in '~/.config/hypr/hyprlock.conf'.
|
||||
|
||||
|
||||
#* Command Variables
|
||||
# Hyprlock ships with there default variables that can be used to customize the lock screen.
|
||||
# - https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#label
|
||||
# HyDE also provides custom variables that extend the functionality of Hyprlock.
|
||||
|
||||
# $BACKGROUND_PATH
|
||||
# - The path to the wallpaper image.
|
||||
|
||||
# $HYPRLOCK_BACKGROUND
|
||||
# - The path to the static hyprlock wallpaper image.
|
||||
# - Can be set to set a static wallpaper for Hyprlock.
|
||||
|
||||
# $MPRIS_IMAGE
|
||||
# - The path to the MPRIS image.
|
||||
# - If MPRIS is not available, it will show the ~/.face.icon image
|
||||
# - if available, otherwise, it will show the HyDE logo.
|
||||
|
||||
# $PROFILE_IMAGE
|
||||
# - The path to the profile image.
|
||||
# - If the image is not available, it will show the ~/.face.icon image
|
||||
# - if available, otherwise, it will show the HyDE logo.
|
||||
|
||||
# $GREET_TEXT
|
||||
# - A greeting text to be displayed on the lock screen.
|
||||
# - The text will be updated every hour.
|
||||
|
||||
# $resolve.font
|
||||
# - Resolves the font name and download link.
|
||||
# - HyDE will run 'font.sh resolve' to install the font for you.
|
||||
# - Note that you needed to have a network connection to download the font.
|
||||
# - You also need to restart Hyprlock to apply the font.
|
||||
|
||||
# cmd [update:1000] $MPRIS_TEXT
|
||||
# - Text from media players in "Title Author" format.
|
||||
|
||||
|
||||
# cmd [update:1000] $SPLASH_CMD
|
||||
# - Outputs the song title when MPRIS is available,
|
||||
# - otherwise, it will output the splash command.
|
||||
|
||||
# cmd [update:1] $CAVA_CMD
|
||||
# - The command to be executed to get the CAVA output.
|
||||
# - ⚠️ (Use with caution as it eats up the CPU.)
|
||||
|
||||
# cmd [update:5000] $BATTERY_ICON
|
||||
# - The battery icon to be displayed on the lock screen.
|
||||
# - Only works if the battery is available.
|
||||
|
||||
# cmd [update:1000] $KEYBOARD_LAYOUT
|
||||
# - The current keyboard layout
|
||||
# - SUPER + K to change the keyboard layout (or any binding you set)
|
||||
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
|
||||
# █▄▀ █▀▀ █▄█ █▄▄ █ █▄░█ █▀▄ █ █▄░█ █▀▀ █▀
|
||||
# █░█ ██▄ ░█░ █▄█ █ █░▀█ █▄▀ █ █░▀█ █▄█ ▄█
|
||||
|
||||
@@ -10,15 +9,11 @@ $mainMod = Super # super / meta / windows key
|
||||
|
||||
# Assign apps
|
||||
$term = kitty # fish alacritty
|
||||
$editor = neovide
|
||||
$file = dolphin
|
||||
$browser = librewolf
|
||||
$yt = freetube
|
||||
$notes = obsidian
|
||||
|
||||
|
||||
$wm=Window Management
|
||||
$d=[$wm]
|
||||
|
||||
# Window/Session actions
|
||||
bind = $mainMod, Q, exec, $scrPath/dontkillsteam.sh # close focused window
|
||||
@@ -27,7 +22,7 @@ bind = $mainMod, Delete, exit, # kill hyprland session
|
||||
bind = $mainMod, W, togglefloating, # toggle the window between focus and float
|
||||
bind = $mainMod, G, togglegroup, # toggle the window between focus and group
|
||||
bind = Alt, Return, fullscreen, # toggle the window between focus and fullscreen
|
||||
bind = $mainMod, L, exec, swaylock --timestr %H:%M # launch lock screen
|
||||
bind = $mainMod, L, exec, hyprlock --immediate #& sleep 0.3 && hyprctl dispatch dpms off
|
||||
bind = Ctrl+Alt, W, exec, killall waybar || waybar # toggle waybar
|
||||
# bind = $mainMod+Shift, F, exec, $scrPath/windowpin.sh # toggle pin on focused window
|
||||
# bind = $mainMod, Backspace, exec, $scrPath/logoutlaunch.sh # launch logout menu
|
||||
@@ -39,14 +34,21 @@ bind = Ctrl+Shift+Alt, T, exec, st # launch tilix terminal emulator - using for
|
||||
bind = $mainMod+Shift, T, exec, st
|
||||
bind = $mainMod+Ctrl, T, exec, tilix # launch tilix terminal emulator
|
||||
bind = $mainMod, E, exec, $file # launch file manager
|
||||
bind = $mainMod, C, exec, $editor # launch text editor
|
||||
bind = $mainMod, F, exec, $yt # launch yt alternative
|
||||
bind = $mainMod, B, exec, $browser # launch web browser
|
||||
bind = $mainMod, M, exec, $notes # launch notes app
|
||||
bind = $mainMod + Shift, B, exec, chromium
|
||||
bind = $mainMod + Ctrl, B, exec, thorium-browser
|
||||
bind = $mainMod, G, exec, gajim # launch messanger
|
||||
bind = $mainMod, K, exec, keepassxc # launch password manager
|
||||
bind = Ctrl+Shift, Escape, exec, $scrPath/sysmonlaunch.sh # launch system monitor (htop/btop or fallback to top)
|
||||
# bind = $mainMod+Shift, B, exec, $browser, title: ^(LibreWolf Private Browsing)$ # launch private web browser
|
||||
bind = $mainMod, Escape, exec, dunstctl close
|
||||
bindd = $mainMod, N, Neovim, exec, $term -e nvim
|
||||
bindd = $mainMod, R, $d pyradio, exec, kitty --session ~/.config/kitty/music.conf
|
||||
bindd = $mainMod, I, $d c2, exec, kitty --session ~/.config/kitty/c2.conf
|
||||
bindd = $mainMod, O, $d runners, exec, kitty --session ~/.config/kitty/runners.conf
|
||||
bindd = Ctrl+Shift, Escape, Btop, exec, kitty -e btop
|
||||
bindd = Ctrl+Alt, Delete, Btop, exec, kitty -e btop
|
||||
# bind = Ctrl+Shift, Escape, exec, $scrPath/sysmonlaunch.sh # launch system monitor (htop/btop or fallback to top)
|
||||
|
||||
|
||||
# Rofi menus
|
||||
bind = $mainMod, A, exec, pkill -x rofi || $scrPath/rofilaunch.sh d # launch application launcher
|
||||
@@ -85,8 +87,8 @@ bind = , Print, exec, $scrPath/screenshot.sh p # all monitors screenshot capture
|
||||
|
||||
# Custom scripts
|
||||
bind = $mainMod+Alt, G, exec, $scrPath/gamemode.sh # disable hypr effects for gamemode
|
||||
bind = $mainMod+Alt, Right, exec, $scrPath/swwwallpaper.sh -n # next wallpaper
|
||||
bind = $mainMod+Alt, Left, exec, $scrPath/swwwallpaper.sh -p # previous wallpaper
|
||||
# bind = $mainMod+Alt, Right, exec, $scrPath/swwwallpaper.sh -n # next wallpaper
|
||||
# bind = $mainMod+Alt, Left, exec, $scrPath/swwwallpaper.sh -p # previous wallpaper
|
||||
# bind = $mainMod+Alt, Up, exec, $scrPath/wbarconfgen.sh n # next waybar mode
|
||||
# bind = $mainMod+Alt, Down, exec, $scrPath/wbarconfgen.sh p # previous waybar mode
|
||||
bind = $mainMod+Shift, R, exec, pkill -x rofi || $scrPath/wallbashtoggle.sh -m # launch wallbash mode select menu
|
||||
@@ -173,7 +175,7 @@ bind = $mainMod+Alt, S, movetoworkspacesilent, special
|
||||
bind = $mainMod, S, togglespecialworkspace,
|
||||
|
||||
# Toggle focused window split
|
||||
bind = $mainMod, J, togglesplit
|
||||
bindd = $mainMod, J, $d toggle split, layoutmsg, togglesplit
|
||||
|
||||
$d=[$ws|Navigation|Relative workspace]
|
||||
bindd = $mainMod Control Shift, Right, $d change active workspace forwards , workspace, r+1
|
||||
|
||||
@@ -19,7 +19,9 @@ monitor = $rightScreen, 1920x1080@60,1366x0, 1 # right
|
||||
# monitor=DP-2,640x480@59.94Hz,0x0,1 # vga
|
||||
|
||||
# monitor = HDMI-A-1, 1366x768@60.00Hz, auto , 1, mirror, eDP-1 #mirror lapscreen
|
||||
# monitor = DP-2, 1920x1080@60.00Hz, auto , 1, mirror, eDP-1 #mirror lapscreen jag3
|
||||
# monitor = eDP-1, 1920x1080@60.00Hz, auto , 1, mirror, HDMI-A-1 #main hdmi, lapscreen mirrors
|
||||
# monitor = eDP-1, 1920x1080@60.00Hz, auto , 1, mirror, DP-2 #main VGA, lapscreen mirrors
|
||||
|
||||
# monitor = , preferred, auto, 1, mirror, DP-2 # dmz projector
|
||||
# monitor = eDP-1, 1920x1080@60, auto , 1, mirror, DP-2 #mirror vga test
|
||||
|
||||
@@ -32,4 +32,4 @@ decoration {
|
||||
}
|
||||
}
|
||||
|
||||
layerrule = blur,waybar
|
||||
# layerrule = blur,waybar
|
||||
|
||||
+18
-20
@@ -30,8 +30,6 @@ bind = $mainMod+Alt, XF86MonBrightnessUp, exec, hyprshade off # disable blue lig
|
||||
# █░░ ▄▀█ █░█ █▄░█ █▀▀ █░█
|
||||
# █▄▄ █▀█ █▄█ █░▀█ █▄▄ █▀█
|
||||
|
||||
# exec-once = swayidle -w timeout 600 'swaylock' timeout 900 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' # lock after 10 mins, sleep after 15 mins // install swayidle
|
||||
# exec-once = swayidle -w timeout 1200 'swaylock; hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' timeout 1800 'systemctl suspend' # lock and sleep after 20 mins, suspend after 30 mins // install swayidle
|
||||
# exec-once = libinput-gestures // install libinput-gestures
|
||||
# exec-once = swayosd-server # enable swayosd service
|
||||
# exec-once = `pkexec swayosd-libinput-backend` # swayosd service for keyboard input (requires to be run in a subshell)
|
||||
@@ -39,24 +37,24 @@ bind = $mainMod+Alt, XF86MonBrightnessUp, exec, hyprshade off # disable blue lig
|
||||
# █░█░█ █ █▄░█ █▀▄ █▀█ █░█░█ █▀█ █░█ █░░ █▀▀ █▀
|
||||
# ▀▄▀▄▀ █ █░▀█ █▄▀ █▄█ ▀▄▀▄▀ █▀▄ █▄█ █▄▄ ██▄ ▄█
|
||||
|
||||
windowrulev2 = opacity 0.90 0.90,class:^(neovide)$
|
||||
windowrulev2 = opacity 0.90 0.90,class:^(firefox)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(betterbird)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(org.qbittorrent.qBittorrent)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(org.gajim.Gajim)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(Chromium)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(FreeTube)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(LibreWolf)$
|
||||
windowrulev2 = opacity 0.80 0.60,class:^(obsidian)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(VSCodium)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(codium-url-handler)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(code-oss)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(Code)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(kitty)$
|
||||
windowrulev2 = opacity 0.70 0.70,class:^(tilix)$
|
||||
windowrulev2 = opacity 0.70 0.70,class:^(rustdesk)$
|
||||
windowrulev2 = opacity 0.70 0.70,class:^(Ferdium)$
|
||||
windowrulev2 = opacity 0.70 0.70,class:^(org.keepassxc.KeePassXC)$
|
||||
windowrule = opacity 0.90 0.90, match:class ^(neovide)$
|
||||
windowrule = opacity 0.90 0.90, match:class ^(firefox)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(betterbird)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(org.qbittorrent.qBittorrent)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(org.gajim.Gajim)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(FreeTube)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(librewolf)$
|
||||
windowrule = opacity 0.80 0.60, match:class ^(obsidian)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(VSCodium)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(codium-url-handler)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(code-oss)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(Code)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(kitty)$
|
||||
windowrule = opacity 0.70 0.70, match:class ^(chromium)$
|
||||
windowrule = opacity 0.70 0.70, match:class ^(tilix)$
|
||||
windowrule = opacity 0.70 0.70, match:class ^(rustdesk)$
|
||||
windowrule = opacity 0.70 0.70, match:class ^(Ferdium)$
|
||||
windowrule = opacity 0.70 0.70, match:class ^(org.keepassxc.KeePassXC)$
|
||||
|
||||
# █░█ █▀▄▀█
|
||||
# ▀▄▀ █░▀░█
|
||||
|
||||
@@ -5,87 +5,68 @@
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/
|
||||
# hyprctl clients to get names
|
||||
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(code-url-handler)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(code-insiders-url-handler)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(org.kde.dolphin)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(org.kde.ark)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(nwg-look)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(qt5ct)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(qt6ct)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(kvantummanager)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(org.pulseaudio.pavucontrol)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(lagrange)$
|
||||
windowrulev2 = opacity 0.60 0.60,class:^(com.github.wwmm.easyeffects)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(blueman-manager)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(nm-applet)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(nm-connection-editor)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(polkit-gnome-authentication-agent-1)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.gtk)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.hyprland)$
|
||||
windowrulev2 = opacity 0.70 0.70,class:^([Ss]team)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(code-url-handler)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(code-insiders-url-handler)$
|
||||
windowrule = opacity 0.80 0.80, match:class ^(org.kde.dolphin)$
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(org.kde.ark)$
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(nwg-look)$
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(qt5ct)$
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(qt6ct)$
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(kvantummanager)$
|
||||
windowrule = opacity 0.80 0.70, float on, match:class ^(org.pulseaudio.pavucontrol)$
|
||||
windowrule = opacity 0.80 0.70, match:class ^(lagrange)$
|
||||
windowrule = opacity 0.60 0.60, match:class ^(com.github.wwmm.easyeffects)$
|
||||
windowrule = opacity 0.80 0.70, float on, match:class ^(blueman-manager)$
|
||||
windowrule = opacity 0.80 0.70, float on, match:class ^(nm-applet)$
|
||||
windowrule = opacity 0.80 0.70, float on, match:class ^(nm-connection-editor)$
|
||||
windowrule = opacity 0.80 0.70, float on, match:class ^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
windowrule = opacity 0.80 0.70, match:class ^(polkit-gnome-authentication-agent-1)$
|
||||
windowrule = opacity 0.80 0.70, match:class ^(org.freedesktop.impl.portal.desktop.gtk)$
|
||||
windowrule = opacity 0.80 0.70, match:class ^(org.freedesktop.impl.portal.desktop.hyprland)$
|
||||
windowrule = opacity 0.70 0.70, match:class ^([Ss]team)$
|
||||
|
||||
windowrulev2 = opacity 0.90 0.90,class:^(com.github.rafostar.Clapper)$ # Clapper-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(com.github.tchx84.Flatseal)$ # Flatseal-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(hu.kramo.Cartridges)$ # Cartridges-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(com.obsproject.Studio)$ # Obs-Qt
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(gnome-boxes)$ # Boxes-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(discord)$ # Discord-Electron
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(WebCord)$ # WebCord-Electron
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(ArmCord)$ # ArmCord-Electron
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(app.drey.Warp)$ # Warp-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(net.davidotek.pupgui2)$ # ProtonUp-Qt
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(yad)$ # Protontricks-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(Signal)$ # Signal-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(io.github.alainm23.planify)$ # planify-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(io.github.flattool.Warehouse)$ # Warehouse-Gtk
|
||||
windowrule = opacity 0.90 0.90, float on, match:class ^(com.github.rafostar.Clapper)$ # Clapper-Gtk
|
||||
windowrule = opacity 0.80 0.80, match:class ^(com.github.tchx84.Flatseal)$ # Flatseal-Gtk
|
||||
windowrule = opacity 0.80 0.80, match:class ^(hu.kramo.Cartridges)$ # Cartridges-Gtk
|
||||
windowrule = opacity 0.80 0.80, match:class ^(com.obsproject.Studio)$ # Obs-Qt
|
||||
windowrule = opacity 0.80 0.80, match:class ^(gnome-boxes)$ # Boxes-Gtk
|
||||
windowrule = opacity 0.80 0.80, match:class ^(discord)$ # Discord-Electron
|
||||
windowrule = opacity 0.80 0.80, match:class ^(WebCord)$ # WebCord-Electron
|
||||
windowrule = opacity 0.80 0.80, match:class ^(ArmCord)$ # ArmCord-Electron
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(app.drey.Warp)$ # Warp-Gtk
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(net.davidotek.pupgui2)$ # ProtonUp-Qt
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(yad)$ # Protontricks-Gtk
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(Signal)$ # Signal-Gtk
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(io.github.alainm23.planify)$ # planify-Gtk
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
|
||||
windowrule = opacity 0.80 0.80, match:class ^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gtk
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
|
||||
windowrule = opacity 0.80 0.80, float on, match:class ^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
|
||||
windowrule = opacity 0.80 0.80, match:class ^(io.github.flattool.Warehouse)$ # Warehouse-Gtk
|
||||
|
||||
windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Progress Dialog — Dolphin)$
|
||||
windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Copying — Dolphin)$
|
||||
windowrulev2 = float,title:^(About Mozilla Firefox)$
|
||||
windowrulev2 = float,class:^(firefox)$,title:^(Picture-in-Picture)$
|
||||
windowrulev2 = float,class:^(firefox)$,title:^(Library)$
|
||||
windowrulev2 = float,class:^(kitty)$,title:^(top)$
|
||||
windowrulev2 = float,class:^(kitty)$,title:^(btop)$
|
||||
windowrulev2 = float,class:^(kitty)$,title:^(htop)$
|
||||
windowrulev2 = float,class:^(vlc)$
|
||||
windowrulev2 = float,class:^(kvantummanager)$
|
||||
windowrulev2 = float,class:^(qt5ct)$
|
||||
windowrulev2 = float,class:^(qt6ct)$
|
||||
windowrulev2 = float,class:^(nwg-look)$
|
||||
windowrulev2 = float,class:^(org.kde.ark)$
|
||||
windowrulev2 = float,class:^(org.pulseaudio.pavucontrol)$
|
||||
windowrulev2 = float,class:^(blueman-manager)$
|
||||
windowrulev2 = float,class:^(nm-applet)$
|
||||
windowrulev2 = float,class:^(nm-connection-editor)$
|
||||
windowrulev2 = float,class:^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
windowrule = float on, match:class ^(org.kde.dolphin)$, match:title ^(Progress Dialog — Dolphin)$
|
||||
windowrule = float on, match:class ^(org.kde.dolphin)$, match:title ^(Copying — Dolphin)$
|
||||
windowrule = float on, match:title ^(About Mozilla Firefox)$
|
||||
windowrule = float on, match:class ^(firefox)$, match:title ^(Picture-in-Picture)$
|
||||
windowrule = float on, match:class ^(firefox)$, match:title ^(Library)$
|
||||
windowrule = float on, match:class ^(kitty)$, match:title ^(top)$
|
||||
windowrule = float on, match:class ^(kitty)$, match:title ^(btop)$
|
||||
windowrule = float on, match:class ^(kitty)$, match:title ^(htop)$
|
||||
windowrule = float on, match:class ^(vlc)$
|
||||
|
||||
windowrulev2 = float,class:^(Signal)$ # Signal-Gtk
|
||||
windowrulev2 = float,class:^(com.github.rafostar.Clapper)$ # Clapper-Gtk
|
||||
windowrulev2 = float,class:^(app.drey.Warp)$ # Warp-Gtk
|
||||
windowrulev2 = float,class:^(net.davidotek.pupgui2)$ # ProtonUp-Qt
|
||||
windowrulev2 = float,class:^(yad)$ # Protontricks-Gtk
|
||||
windowrulev2 = float,class:^(eog)$ # Imageviewer-Gtk
|
||||
windowrulev2 = float,class:^(io.github.alainm23.planify)$ # planify-Gtk
|
||||
windowrulev2 = float,class:^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
|
||||
windowrulev2 = float,class:^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gkk
|
||||
windowrulev2 = float,class:^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
|
||||
windowrulev2 = float,class:^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
|
||||
windowrule = float on, match:class ^(eog)$ # Imageviewer-Gtk
|
||||
windowrule = float on, match:class ^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gkk
|
||||
|
||||
|
||||
# █░░ ▄▀█ █▄█ █▀▀ █▀█ █▀█ █░█ █░░ █▀▀ █▀
|
||||
# █▄▄ █▀█ ░█░ ██▄ █▀▄ █▀▄ █▄█ █▄▄ ██▄ ▄█
|
||||
|
||||
layerrule = blur,rofi
|
||||
layerrule = ignorezero,rofi
|
||||
layerrule = blur,notifications
|
||||
layerrule = ignorezero,notifications
|
||||
layerrule = blur,swaync-notification-window
|
||||
layerrule = ignorezero,swaync-notification-window
|
||||
layerrule = blur,swaync-control-center
|
||||
layerrule = ignorezero,swaync-control-center
|
||||
layerrule = blur,logout_dialog
|
||||
# layerrule = blur,rofi
|
||||
# layerrule = ignorezero,rofi
|
||||
# layerrule = blur,notifications
|
||||
# layerrule = ignorezero,notifications
|
||||
# layerrule = blur,swaync-notification-window
|
||||
# layerrule = ignorezero,swaync-notification-window
|
||||
# layerrule = blur,swaync-control-center
|
||||
# layerrule = ignorezero,swaync-control-center
|
||||
# layerrule = blur,logout_dialog
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# run with `kitty --session ~/.config/kitty/c2.conf`
|
||||
layout tall
|
||||
|
||||
# create a new tab
|
||||
new_tab c2
|
||||
|
||||
cd ~/projects/wingman/c2/
|
||||
launch --var window=first nvim
|
||||
|
||||
new_tab git
|
||||
|
||||
cd ~/projects/wingman/c2/
|
||||
launch --var window=second lazygit
|
||||
|
||||
# focus neovim
|
||||
# focus first
|
||||
|
||||
@@ -12,5 +12,5 @@ tab_bar_style powerline
|
||||
tab_powerline_style slanted
|
||||
|
||||
confirm_os_window_close 0
|
||||
#background_opacity 0.60
|
||||
background_opacity 0.70
|
||||
#hide_window_decorations yes
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# run with `kitty --session ~/.config/kitty/music.conf`
|
||||
layout tall
|
||||
|
||||
# os_window_size 220c 64c
|
||||
# create a new tab
|
||||
new_tab music
|
||||
|
||||
# set the working directory for windows in the current tab
|
||||
cd
|
||||
|
||||
launch --var window=first cava
|
||||
# create additional terminals
|
||||
launch --location=hsplit pyradio
|
||||
resize_window taller 10
|
||||
focus pyradio
|
||||
launch --location=vsplit pipes-rs
|
||||
resize_window wider 20
|
||||
@@ -0,0 +1,20 @@
|
||||
# run with `kitty --session ~/.config/kitty/runners.conf`
|
||||
layout stack
|
||||
|
||||
# create a new tab
|
||||
new_tab runners
|
||||
|
||||
cd ~/projects/wingman/c2/
|
||||
|
||||
launch --var window=first pnpm dev
|
||||
|
||||
launch --location=hsplit react-devtools
|
||||
resize_window narrower 20
|
||||
|
||||
launch --location=hsplit lazydocker
|
||||
resize_window wider 120
|
||||
|
||||
# new_tab simulator
|
||||
# cd ~/wmclient
|
||||
# launch --var window=first wmsimulator.sh
|
||||
|
||||
@@ -0,0 +1,489 @@
|
||||
# Config relating to the Lazygit UI
|
||||
gui:
|
||||
# The number of lines you scroll by when scrolling the main window
|
||||
scrollHeight: 2
|
||||
# If true, allow scrolling past the bottom of the content in the main window
|
||||
scrollPastBottom: true
|
||||
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#scroll-off-margin
|
||||
scrollOffMargin: 2
|
||||
# One of: 'margin' (default) | 'jump'
|
||||
scrollOffBehavior: margin
|
||||
# If true, capture mouse events.
|
||||
# When mouse events are captured, it's a little harder to select text: e.g. requiring you to hold the option key when on macOS.
|
||||
mouseEvents: true
|
||||
# If true, do not show a warning when discarding changes in the staging view.
|
||||
skipDiscardChangeWarning: false
|
||||
# If true, do not show warning when applying/popping the stash
|
||||
skipStashWarning: false
|
||||
# If true, do not show a warning when attempting to commit without any staged files; instead stage all unstaged files.
|
||||
skipNoStagedFilesWarning: false
|
||||
# If true, do not show a warning when rewording a commit via an external editor
|
||||
skipRewordInEditorWarning: false
|
||||
# Fraction of the total screen width to use for the left side section. You may want to pick a small number (e.g. 0.2) if you're using a narrow screen, so that you can see more of the main section.
|
||||
# Number from 0 to 1.0.
|
||||
sidePanelWidth: 0.3333
|
||||
# If true, increase the height of the focused side window; creating an accordion effect.
|
||||
expandFocusedSidePanel: true
|
||||
# The weight of the expanded side panel, relative to the other panels. 2 means
|
||||
# twice as tall as the other panels. Only relevant if `expandFocusedSidePanel` is true.
|
||||
expandedSidePanelWeight: 3
|
||||
# Sometimes the main window is split in two (e.g. when the selected file has both staged and unstaged changes). This setting controls how the two sections are split.
|
||||
# Options are:
|
||||
# - 'horizontal': split the window horizontally
|
||||
# - 'vertical': split the window vertically
|
||||
# - 'flexible': (default) split the window horizontally if the window is wide enough, otherwise split vertically
|
||||
mainPanelSplitMode: flexible
|
||||
# How the window is split when in half screen mode (i.e. after hitting '+' once).
|
||||
# Possible values:
|
||||
# - 'left': split the window horizontally (side panel on the left, main view on the right)
|
||||
# - 'top': split the window vertically (side panel on top, main view below)
|
||||
enlargedSideViewLocation: left
|
||||
# If true, wrap lines in the staging view to the width of the view. This
|
||||
# makes it much easier to work with diffs that have long lines, e.g.
|
||||
# paragraphs of markdown text.
|
||||
wrapLinesInStagingView: true
|
||||
# One of 'auto' (default) | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru'
|
||||
language: auto
|
||||
# Format used when displaying time e.g. commit time.
|
||||
# Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format
|
||||
timeFormat: 02 Jan 06
|
||||
# Format used when displaying time if the time is less than 24 hours ago.
|
||||
# Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format
|
||||
shortTimeFormat: 3:04PM
|
||||
# Config relating to colors and styles.
|
||||
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#color-attributes
|
||||
theme:
|
||||
# Border color of focused window
|
||||
activeBorderColor:
|
||||
- green
|
||||
- bold
|
||||
# Border color of non-focused windows
|
||||
inactiveBorderColor:
|
||||
- default
|
||||
# Border color of focused window when searching in that window
|
||||
searchingActiveBorderColor:
|
||||
- cyan
|
||||
- bold
|
||||
# Color of keybindings help text in the bottom line
|
||||
optionsTextColor:
|
||||
- blue
|
||||
# Background color of selected line.
|
||||
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#highlighting-the-selected-line
|
||||
selectedRangeBgColor:
|
||||
- "#444444"
|
||||
selectedLineBgColor:
|
||||
- "#444444"
|
||||
# Background color of selected line when view doesn't have focus.
|
||||
inactiveViewSelectedLineBgColor:
|
||||
- bold
|
||||
# Foreground color of copied commit
|
||||
cherryPickedCommitFgColor:
|
||||
- blue
|
||||
# Background color of copied commit
|
||||
cherryPickedCommitBgColor:
|
||||
- cyan
|
||||
# Foreground color of marked base commit (for rebase)
|
||||
markedBaseCommitFgColor:
|
||||
- blue
|
||||
# Background color of marked base commit (for rebase)
|
||||
markedBaseCommitBgColor:
|
||||
- yellow
|
||||
# Color for file with unstaged changes
|
||||
unstagedChangesColor:
|
||||
- red
|
||||
# Default text color
|
||||
defaultFgColor:
|
||||
- default
|
||||
# Config relating to the commit length indicator
|
||||
commitLength:
|
||||
# If true, show an indicator of commit message length
|
||||
show: true
|
||||
# If true, show the '5 of 20' footer at the bottom of list views
|
||||
showListFooter: true
|
||||
# If true, display the files in the file views as a tree. If false, display the files as a flat list.
|
||||
# This can be toggled from within Lazygit with the '~' key, but that will not change the default.
|
||||
showFileTree: true
|
||||
# If true, show the number of lines changed per file in the Files view
|
||||
showNumstatInFilesView: false
|
||||
# If true, show a random tip in the command log when Lazygit starts
|
||||
showRandomTip: true
|
||||
# If true, show the command log
|
||||
showCommandLog: true
|
||||
# If true, show the bottom line that contains keybinding info and useful buttons. If false, this line will be hidden except to display a loader for an in-progress action.
|
||||
showBottomLine: true
|
||||
# If true, show jump-to-window keybindings in window titles.
|
||||
showPanelJumps: true
|
||||
# Deprecated: use nerdFontsVersion instead
|
||||
showIcons: false
|
||||
# Nerd fonts version to use.
|
||||
# One of: '2' | '3' | empty string (default)
|
||||
# If empty, do not show icons.
|
||||
nerdFontsVersion: ""
|
||||
# If true (default), file icons are shown in the file views. Only relevant if NerdFontsVersion is not empty.
|
||||
showFileIcons: true
|
||||
# Length of author name in (non-expanded) commits view. 2 means show initials only.
|
||||
commitAuthorShortLength: 2
|
||||
# Length of author name in expanded commits view. 2 means show initials only.
|
||||
commitAuthorLongLength: 17
|
||||
# Length of commit hash in commits view. 0 shows '*' if NF icons aren't on.
|
||||
commitHashLength: 8
|
||||
# If true, show commit hashes alongside branch names in the branches view.
|
||||
showBranchCommitHash: false
|
||||
# Whether to show the divergence from the base branch in the branches view.
|
||||
# One of: 'none' | 'onlyArrow' | 'arrowAndNumber'
|
||||
showDivergenceFromBaseBranch: none
|
||||
# Height of the command log view
|
||||
commandLogSize: 8
|
||||
# Whether to split the main window when viewing file changes.
|
||||
# One of: 'auto' | 'always'
|
||||
# If 'auto', only split the main window when a file has both staged and unstaged changes
|
||||
splitDiff: auto
|
||||
# Default size for focused window. Window size can be changed from within Lazygit with '+' and '_' (but this won't change the default).
|
||||
# One of: 'normal' (default) | 'half' | 'full'
|
||||
screenMode: normal
|
||||
# Window border style.
|
||||
# One of 'rounded' (default) | 'single' | 'double' | 'hidden'
|
||||
border: rounded
|
||||
# If true, show a seriously epic explosion animation when nuking the working tree.
|
||||
animateExplosion: true
|
||||
# Whether to stack UI components on top of each other.
|
||||
# One of 'auto' (default) | 'always' | 'never'
|
||||
portraitMode: auto
|
||||
# How things are filtered when typing '/'.
|
||||
# One of 'substring' (default) | 'fuzzy'
|
||||
filterMode: substring
|
||||
# Config relating to the spinner.
|
||||
spinner:
|
||||
# The frames of the spinner animation.
|
||||
frames:
|
||||
- '|'
|
||||
- /
|
||||
- '-'
|
||||
- \
|
||||
# The "speed" of the spinner in milliseconds.
|
||||
rate: 50
|
||||
# Status panel view.
|
||||
# One of 'dashboard' (default) | 'allBranchesLog'
|
||||
statusPanelView: dashboard
|
||||
# If true, jump to the Files panel after popping a stash
|
||||
switchToFilesAfterStashPop: true
|
||||
# If true, jump to the Files panel after applying a stash
|
||||
switchToFilesAfterStashApply: true
|
||||
# If true, when using the panel jump keys (default 1 through 5) and target panel is already active, go to next tab instead
|
||||
switchTabsWithPanelJumpKeys: false
|
||||
# Config relating to git
|
||||
git:
|
||||
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md
|
||||
pagers:
|
||||
- # Value of the --color arg in the git diff command. Some pagers want this to be set to 'always' and some want it set to 'never'
|
||||
colorArg: always
|
||||
# e.g.
|
||||
# diff-so-fancy
|
||||
# delta --dark --paging=never
|
||||
# ydiff -p cat -s --wrap --width={{columnWidth}}
|
||||
pager: ""
|
||||
# If true, Lazygit will use whatever pager is specified in `$GIT_PAGER`, `$PAGER`, or your *git config*. If the pager ends with something like ` | less` we will strip that part out, because less doesn't play nice with our rendering approach. If the custom pager uses less under the hood, that will also break rendering (hence the `--paging=never` flag for the `delta` pager).
|
||||
useConfig: false
|
||||
# e.g. 'difft --color=always'
|
||||
externalDiffCommand: ""
|
||||
# Config relating to committing
|
||||
commit:
|
||||
# If true, pass '--signoff' flag when committing
|
||||
signOff: false
|
||||
# Automatic WYSIWYG wrapping of the commit message as you type
|
||||
autoWrapCommitMessage: true
|
||||
# If autoWrapCommitMessage is true, the width to wrap to
|
||||
autoWrapWidth: 72
|
||||
# Config relating to merging
|
||||
merging:
|
||||
# If true, run merges in a subprocess so that if a commit message is required, Lazygit will not hang
|
||||
# Only applicable to unix users.
|
||||
manualCommit: false
|
||||
# Extra args passed to `git merge`, e.g. --no-ff
|
||||
args: ""
|
||||
# The commit message to use for a squash merge commit. Can contain "{{selectedRef}}" and "{{currentBranch}}" placeholders.
|
||||
squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}}
|
||||
# list of branches that are considered 'main' branches, used when displaying commits
|
||||
mainBranches:
|
||||
- master
|
||||
- main
|
||||
# Prefix to use when skipping hooks. E.g. if set to 'WIP', then pre-commit hooks will be skipped when the commit message starts with 'WIP'
|
||||
skipHookPrefix: WIP
|
||||
# If true, periodically fetch from remote
|
||||
autoFetch: true
|
||||
# If true, periodically refresh files and submodules
|
||||
autoRefresh: true
|
||||
# If true, pass the --all arg to git fetch
|
||||
fetchAll: true
|
||||
# If true, lazygit will automatically stage files that used to have merge
|
||||
# conflicts but no longer do; and it will also ask you if you want to
|
||||
# continue a merge or rebase if you've resolved all conflicts. If false, it
|
||||
# won't do either of these things.
|
||||
autoStageResolvedConflicts: true
|
||||
# Command used when displaying the current branch git log in the main window
|
||||
branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} --
|
||||
# If true, do not spawn a separate process when using GPG
|
||||
overrideGpg: false
|
||||
# If true, do not allow force pushes
|
||||
disableForcePushing: false
|
||||
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-commit-message-prefix
|
||||
commitPrefix:
|
||||
- # pattern to match on. E.g. for 'feature/AB-123' to match on the AB-123 use "^\\w+\\/(\\w+-\\w+).*"
|
||||
pattern: ""
|
||||
# Replace directive. E.g. for 'feature/AB-123' to start the commit message with 'AB-123 ' use "[$1] "
|
||||
replace: ""
|
||||
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-branch-name-prefix
|
||||
branchPrefix: ""
|
||||
# If true, parse emoji strings in commit messages e.g. render :rocket: as 🚀
|
||||
# (This should really be under 'gui', not 'git')
|
||||
parseEmoji: false
|
||||
# Config for showing the log in the commits view
|
||||
log:
|
||||
# One of: 'date-order' | 'author-date-order' | 'topo-order' | 'default'
|
||||
# 'topo-order' makes it easier to read the git log graph, but commits may not
|
||||
# appear chronologically. See https://git-scm.com/docs/
|
||||
#
|
||||
# Deprecated: Configure this with `Log menu -> Commit sort order` (<c-l> in the commits window by default).
|
||||
order: topo-order
|
||||
# This determines whether the git graph is rendered in the commits panel
|
||||
# One of 'always' | 'never' | 'when-maximised'
|
||||
#
|
||||
# Deprecated: Configure this with `Log menu -> Show git graph` (<c-l> in the commits window by default).
|
||||
showGraph: always
|
||||
# displays the whole git graph by default in the commits view (equivalent to passing the `--all` argument to `git log`)
|
||||
showWholeGraph: false
|
||||
# When copying commit hashes to the clipboard, truncate them to this
|
||||
# length. Set to 40 to disable truncation.
|
||||
truncateCopiedCommitHashesTo: 12
|
||||
allBranchesLogCmds:
|
||||
- git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium
|
||||
# Periodic update checks
|
||||
update:
|
||||
# One of: 'prompt' (default) | 'background' | 'never'
|
||||
method: prompt
|
||||
# Period in days between update checks
|
||||
days: 14
|
||||
# Background refreshes
|
||||
refresher:
|
||||
# File/submodule refresh interval in seconds.
|
||||
# Auto-refresh can be disabled via option 'git.autoRefresh'.
|
||||
refreshInterval: 10
|
||||
# Re-fetch interval in seconds.
|
||||
# Auto-fetch can be disabled via option 'git.autoFetch'.
|
||||
fetchInterval: 60
|
||||
# If true, show a confirmation popup before quitting Lazygit
|
||||
confirmOnQuit: false
|
||||
# If true, exit Lazygit when the user presses escape in a context where there is nothing to cancel/close
|
||||
quitOnTopLevelReturn: false
|
||||
# Config relating to things outside of Lazygit like how files are opened, copying to clipboard, etc
|
||||
os:
|
||||
# Command for editing a file. Should contain "{{filename}}".
|
||||
edit: ""
|
||||
# Command for editing a file at a given line number. Should contain
|
||||
# "{{filename}}", and may optionally contain "{{line}}".
|
||||
editAtLine: ""
|
||||
# Same as EditAtLine, except that the command needs to wait until the
|
||||
# window is closed.
|
||||
editAtLineAndWait: ""
|
||||
# For opening a directory in an editor
|
||||
openDirInEditor: ""
|
||||
# A built-in preset that sets all of the above settings. Supported presets
|
||||
# are defined in the getPreset function in editor_presets.go.
|
||||
editPreset: ""
|
||||
# Command for opening a file, as if the file is double-clicked. Should
|
||||
# contain "{{filename}}", but doesn't support "{{line}}".
|
||||
open: ""
|
||||
# Command for opening a link. Should contain "{{link}}".
|
||||
openLink: ""
|
||||
# EditCommand is the command for editing a file.
|
||||
# Deprecated: use Edit instead. Note that semantics are different:
|
||||
# EditCommand is just the command itself, whereas Edit contains a
|
||||
# "{{filename}}" variable.
|
||||
editCommand: ""
|
||||
# EditCommandTemplate is the command template for editing a file
|
||||
# Deprecated: use EditAtLine instead.
|
||||
editCommandTemplate: ""
|
||||
# OpenCommand is the command for opening a file
|
||||
# Deprecated: use Open instead.
|
||||
openCommand: ""
|
||||
# OpenLinkCommand is the command for opening a link
|
||||
# Deprecated: use OpenLink instead.
|
||||
openLinkCommand: ""
|
||||
# CopyToClipboardCmd is the command for copying to clipboard.
|
||||
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard
|
||||
copyToClipboardCmd: ""
|
||||
# ReadFromClipboardCmd is the command for reading the clipboard.
|
||||
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard
|
||||
readFromClipboardCmd: ""
|
||||
# If true, don't display introductory popups upon opening Lazygit.
|
||||
disableStartupPopups: false
|
||||
# What to do when opening Lazygit outside of a git repo.
|
||||
# - 'prompt': (default) ask whether to initialize a new repo or open in the most recent repo
|
||||
# - 'create': initialize a new repo
|
||||
# - 'skip': open most recent repo
|
||||
# - 'quit': exit Lazygit
|
||||
notARepository: prompt
|
||||
# If true, display a confirmation when subprocess terminates. This allows you to view the output of the subprocess before returning to Lazygit.
|
||||
promptToReturnFromSubprocess: true
|
||||
# Keybindings
|
||||
keybinding:
|
||||
universal:
|
||||
quit: q
|
||||
quit-alt1: <c-c>
|
||||
return: <esc>
|
||||
quitWithoutChangingDirectory: Q
|
||||
togglePanel: <tab>
|
||||
prevItem: <up>
|
||||
nextItem: <down>
|
||||
prevItem-alt: k
|
||||
nextItem-alt: j
|
||||
prevPage: ','
|
||||
nextPage: .
|
||||
scrollLeft: H
|
||||
scrollRight: L
|
||||
gotoTop: <
|
||||
gotoBottom: '>'
|
||||
toggleRangeSelect: v
|
||||
rangeSelectDown: <s-down>
|
||||
rangeSelectUp: <s-up>
|
||||
prevBlock: <left>
|
||||
nextBlock: <right>
|
||||
prevBlock-alt: h
|
||||
nextBlock-alt: l
|
||||
nextBlock-alt2: <tab>
|
||||
prevBlock-alt2: <backtab>
|
||||
jumpToBlock:
|
||||
- "1"
|
||||
- "2"
|
||||
- "3"
|
||||
- "4"
|
||||
- "5"
|
||||
nextMatch: "n"
|
||||
prevMatch: "N"
|
||||
startSearch: /
|
||||
optionMenu: <disabled>
|
||||
optionMenu-alt1: '?'
|
||||
select: <space>
|
||||
goInto: <enter>
|
||||
confirm: <enter>
|
||||
confirmInEditor: <a-enter>
|
||||
remove: d
|
||||
new: "n"
|
||||
edit: e
|
||||
openFile: o
|
||||
scrollUpMain: <pgup>
|
||||
scrollDownMain: <pgdown>
|
||||
scrollUpMain-alt1: K
|
||||
scrollDownMain-alt1: J
|
||||
scrollUpMain-alt2: <c-u>
|
||||
scrollDownMain-alt2: <c-d>
|
||||
executeShellCommand: ':'
|
||||
createRebaseOptionsMenu: m
|
||||
# 'Files' appended for legacy reasons
|
||||
pushFiles: P
|
||||
# 'Files' appended for legacy reasons
|
||||
pullFiles: p
|
||||
refresh: R
|
||||
createPatchOptionsMenu: <c-p>
|
||||
nextTab: ']'
|
||||
prevTab: '['
|
||||
nextScreenMode: +
|
||||
prevScreenMode: _
|
||||
undo: z
|
||||
redo: <c-z>
|
||||
filteringMenu: <c-s>
|
||||
diffingMenu: W
|
||||
diffingMenu-alt: <c-e>
|
||||
copyToClipboard: <c-o>
|
||||
openRecentRepos: <c-r>
|
||||
submitEditorText: <enter>
|
||||
extrasMenu: '@'
|
||||
toggleWhitespaceInDiffView: <c-w>
|
||||
increaseContextInDiffView: '}'
|
||||
decreaseContextInDiffView: '{'
|
||||
increaseRenameSimilarityThreshold: )
|
||||
decreaseRenameSimilarityThreshold: (
|
||||
openDiffTool: <c-t>
|
||||
status:
|
||||
checkForUpdate: u
|
||||
recentRepos: <enter>
|
||||
allBranchesLogGraph: a
|
||||
files:
|
||||
commitChanges: c
|
||||
commitChangesWithoutHook: w
|
||||
amendLastCommit: A
|
||||
commitChangesWithEditor: C
|
||||
findBaseCommitForFixup: <c-f>
|
||||
confirmDiscard: x
|
||||
ignoreFile: i
|
||||
refreshFiles: r
|
||||
stashAllChanges: s
|
||||
viewStashOptions: S
|
||||
toggleStagedAll: a
|
||||
viewResetOptions: D
|
||||
fetch: f
|
||||
toggleTreeView: '`'
|
||||
openMergeOptions: M
|
||||
openStatusFilter: <c-b>
|
||||
copyFileInfoToClipboard: "y"
|
||||
branches:
|
||||
createPullRequest: o
|
||||
viewPullRequestOptions: O
|
||||
copyPullRequestURL: <c-y>
|
||||
checkoutBranchByName: c
|
||||
forceCheckoutBranch: F
|
||||
rebaseBranch: r
|
||||
renameBranch: R
|
||||
mergeIntoCurrentBranch: M
|
||||
viewGitFlowOptions: i
|
||||
fastForward: f
|
||||
createTag: T
|
||||
pushTag: P
|
||||
setUpstream: u
|
||||
fetchRemote: f
|
||||
sortOrder: s
|
||||
worktrees:
|
||||
viewWorktreeOptions: w
|
||||
commits:
|
||||
squashDown: s
|
||||
renameCommit: r
|
||||
renameCommitWithEditor: R
|
||||
viewResetOptions: g
|
||||
markCommitAsFixup: f
|
||||
createFixupCommit: F
|
||||
squashAboveCommits: S
|
||||
moveDownCommit: <c-j>
|
||||
moveUpCommit: <c-k>
|
||||
amendToCommit: A
|
||||
resetCommitAuthor: a
|
||||
pickCommit: p
|
||||
revertCommit: t
|
||||
cherryPickCopy: C
|
||||
pasteCommits: V
|
||||
markCommitAsBaseForRebase: B
|
||||
tagCommit: T
|
||||
checkoutCommit: <space>
|
||||
copyCommitAttributeToClipboard: "y"
|
||||
openLogMenu: <c-l>
|
||||
openInBrowser: o
|
||||
viewBisectOptions: b
|
||||
startInteractiveRebase: i
|
||||
amendAttribute:
|
||||
resetAuthor: a
|
||||
setAuthor: A
|
||||
addCoAuthor: c
|
||||
stash:
|
||||
popStash: g
|
||||
renameStash: r
|
||||
commitFiles:
|
||||
checkoutCommitFile: c
|
||||
main:
|
||||
toggleSelectHunk: a
|
||||
pickBothHunks: b
|
||||
editSelectHunk: E
|
||||
submodules:
|
||||
init: i
|
||||
update: u
|
||||
bulkMenu: b
|
||||
commitMessage:
|
||||
commitMenu: <c-o>
|
||||
@@ -0,0 +1,29 @@
|
||||
cal
|
||||
calc
|
||||
speedtest
|
||||
aichat -e
|
||||
askllama
|
||||
ask
|
||||
tldr
|
||||
man
|
||||
info
|
||||
rsync -avkP
|
||||
lsd
|
||||
zioxide
|
||||
httpie
|
||||
bat
|
||||
xxd
|
||||
mpv
|
||||
nix
|
||||
distrobox
|
||||
scrcpy
|
||||
adb
|
||||
watch
|
||||
unzip
|
||||
open
|
||||
nmcli
|
||||
iwctl
|
||||
lsusb
|
||||
thefuck
|
||||
fastfetch
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
browsh
|
||||
wiki-tui
|
||||
wikiman
|
||||
yazi
|
||||
tdf
|
||||
dysk
|
||||
dust
|
||||
ncdu
|
||||
systemctl-tui
|
||||
btop
|
||||
bandwhich
|
||||
mtr
|
||||
gping
|
||||
bmon
|
||||
profanity
|
||||
nmtui
|
||||
bluetui
|
||||
drawterm
|
||||
hunk
|
||||
lazygit
|
||||
lazydocker
|
||||
lazyjorunal
|
||||
pastel
|
||||
hexyl
|
||||
pyradio
|
||||
kew
|
||||
tt
|
||||
gittype
|
||||
matrix
|
||||
cava
|
||||
tetrigo
|
||||
tui-mines
|
||||
nyaa
|
||||
stig
|
||||
tmux
|
||||
zellij
|
||||
nvim
|
||||
vim
|
||||
tuios
|
||||
llmfit
|
||||
battop
|
||||
subtui
|
||||
@@ -0,0 +1,21 @@
|
||||
# Volume
|
||||
9 add volume -5
|
||||
0 add volume 5
|
||||
|
||||
UP add volume 2
|
||||
DOWN add volume -2
|
||||
|
||||
k add volume 2
|
||||
j add volume -2
|
||||
|
||||
# Seek backward / forward
|
||||
LEFT seek -5
|
||||
RIGHT seek 5
|
||||
|
||||
l seek 5
|
||||
h seek -5
|
||||
|
||||
# Bigger jumps
|
||||
Shift+LEFT seek -30
|
||||
Shift+RIGHT seek 30
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
[pyradio]
|
||||
volume=50
|
||||
|
||||
|
||||
|
||||
@@ -1,31 +1,7 @@
|
||||
vim.g.base46_cache = vim.fn.stdpath "data" .. "/base46/"
|
||||
vim.g.mapleader = " "
|
||||
|
||||
----- custom config -----
|
||||
|
||||
if vim.g.neovide then
|
||||
vim.g.neovide_opacity = 0.5
|
||||
vim.g.neovide_scale_factor = 0.7
|
||||
vim.g.neovide_window_blurred = true
|
||||
vim.g.neovide_floating_blur_amount_x = 1.9
|
||||
vim.g.neovide_floating_blur_amount_y = 1.9
|
||||
vim.g.neovide_floating_shadow = true
|
||||
vim.g.neovide_floating_z_height = 0
|
||||
vim.g.neovide_hide_mouse_when_typing = true
|
||||
vim.g.neovide_padding_top = 15
|
||||
vim.g.neovide_padding_right = 5
|
||||
vim.g.neovide_padding_left = 5
|
||||
-- vim.g.neovide_fullscreen = true
|
||||
-- vim.g.neovide_padding_bottom = 0
|
||||
-- vim.g.neovide_light_radius = 5
|
||||
-- vim.g.neovide_show_border = false
|
||||
-- vim.g.neovide_light_angle_degrees = 45
|
||||
end
|
||||
|
||||
vim.opt.relativenumber = true
|
||||
|
||||
----- end of custom -----
|
||||
|
||||
-- bootstrap lazy and all plugins
|
||||
local lazypath = vim.fn.stdpath "data" .. "/lazy/lazy.nvim"
|
||||
|
||||
@@ -56,22 +32,6 @@ dofile(vim.g.base46_cache .. "statusline")
|
||||
|
||||
require "options"
|
||||
require "nvchad.autocmds"
|
||||
require "render-markdown"
|
||||
|
||||
require("gen").prompts["Markdown_links"] = {
|
||||
prompt = "Make markdown links wherever you find link in the following text, and generate the namas accordingly:\n$text",
|
||||
replace = true,
|
||||
}
|
||||
|
||||
require("gen").prompts["Optimize code"] = {
|
||||
prompt = "Check if code can be optimized for speed and readability:\n$text",
|
||||
replace = true,
|
||||
}
|
||||
|
||||
require("gen").prompts["Genetrate types "] = {
|
||||
prompt = "Check if types are correct in this code, fix and optimize if something is needed:\n$text",
|
||||
replace = true,
|
||||
}
|
||||
|
||||
vim.schedule(function()
|
||||
require "mappings"
|
||||
|
||||
+29
-29
@@ -1,32 +1,32 @@
|
||||
{
|
||||
"LuaSnip": { "branch": "master", "commit": "0f7bbce41ea152a94d12aea286f2ce98e63c0f58" },
|
||||
"NvChad": { "branch": "v2.5", "commit": "bbc3d43db088c141b142a40cd5f717635833a54e" },
|
||||
"base46": { "branch": "v2.5", "commit": "8971be55aeb6d5fe086169c0ee9ce647a3871570" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
|
||||
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
|
||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||
"LuaSnip": { "branch": "master", "commit": "a62e1083a3cfe8b6b206e7d3d33a51091df25357" },
|
||||
"NvChad": { "branch": "v2.5", "commit": "d042cc975247c2aa55fcb228e5d146dc1dc6c648" },
|
||||
"base46": { "branch": "v2.5", "commit": "fde7a2cd54599e148d376f82980407c2d24b0fa2" },
|
||||
"cmp-async-path": { "branch": "main", "commit": "f8af3f726e07f2e9d37672eaa9102581aefce149" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" },
|
||||
"cmp-nvim-lua": { "branch": "main", "commit": "e3a22cb071eb9d6508a156306b102c45cd2d573d" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||
"conform.nvim": { "branch": "master", "commit": "023f795dbcf32d4351b6a9ed2e613d471b5bb812" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "de8fce94985873666bd9712ea3e49ee17aadb1ed" },
|
||||
"gen.nvim": { "branch": "main", "commit": "c8e1f574d4a3a839dde73a87bdc319a62ee1e559" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "ac5aba6dce8c06ea22bea2c9016f51a2dbf90dc7" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "7871a88056f7144defca9c931e311a3134c5d509" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "7967abe55752aa90532e6bb4bd4663fe27a264cb" },
|
||||
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
|
||||
"menu": { "branch": "main", "commit": "657bfc91382c0928453d9a4d0a10ec92db5de2bb" },
|
||||
"mini.nvim": { "branch": "main", "commit": "efff26174ca363c059f92e906753db47e81d870b" },
|
||||
"minty": { "branch": "main", "commit": "a3d69bd63fc98f640815f94b797bf978e9193022" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "b464658e9b880f463b9f7e6ccddd93fb0013f559" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "f17d9b4394027ff4442b298398dfcaab97e40c4f" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "f012c1b176f0e3c71f40eb309bdec0316689462e" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "f7c65e11d695a084ca10b93df659bb7e68b71f9f" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "37427012d1c77c544356bfff0c9acc88fd3256bc" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "e87554285f581047b1bf236794b0eb812b444b87" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
|
||||
"render-markdown.nvim": { "branch": "main", "commit": "eec00fbfd7273cdfa0a1154dbef0bb983641eaf8" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "85922dde3767e01d42a08e750a773effbffaea3e" },
|
||||
"ui": { "branch": "v3.0", "commit": "9b31c25fc497d1ef726de15ae297769dbf90c1a5" },
|
||||
"volt": { "branch": "main", "commit": "41c03a5d6a0a8a997e774a3482d82e5ef820c6ba" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "68e37e12913a66b60073906f5d3f14dee0de19f2" }
|
||||
"codecompanion.nvim": { "branch": "main", "commit": "680c445eb357c72129d175ea5d481aa9e92ae6a5" },
|
||||
"conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "6d808f99bd63303646794406e270bd553ad7792e" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
|
||||
"mason.nvim": { "branch": "main", "commit": "12ddd182d9efbdc848b540f16484a583d52da0fb" },
|
||||
"menu": { "branch": "main", "commit": "7a0a4a2896b715c066cfbe320bdc048091874cc6" },
|
||||
"minty": { "branch": "main", "commit": "aafc9e8e0afe6bf57580858a2849578d8d8db9e0" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "59bce2eef357189c3305e25bc6dd2d138c1683f5" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "a1d504892f2bc56c2e79b65c6faded2fd21f3eca" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "e146efacbafed3789ac568abcc5a981c5decaa58" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "d277467fc0d1d0e2bca88165a1de6b526f9f6fe8" },
|
||||
"nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "c72328a5494b4502947a022fe69c0c47e53b6aa6" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
|
||||
"render-markdown.nvim": { "branch": "main", "commit": "d67113f11384c0dad96fced2f7b91f1fc811e97f" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "ad9ede6a9cddf16cedbd31b8932d6dcdee9b716e" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "028d9a0695a0cc4cfa893889f8c408ed7ccc8adc" },
|
||||
"ui": { "branch": "v3.0", "commit": "cb75908a86720172594b30de147272c1b3a7f452" },
|
||||
"volt": { "branch": "main", "commit": "620de1321f275ec9d80028c68d1b88b409c0c8b1" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }
|
||||
}
|
||||
|
||||
+25
-11
@@ -27,17 +27,31 @@ local M = {
|
||||
-- },
|
||||
},
|
||||
|
||||
-- ui = {
|
||||
-- -- lazyload it when there are 1+ buffers
|
||||
-- tabufline = {
|
||||
-- enabled = true,
|
||||
-- lazyload = true,
|
||||
-- order = { "treeOffset", "buffers", "tabs", "btns" },
|
||||
-- modules = nil,
|
||||
-- bufwidth = 21,
|
||||
-- transparency = true,
|
||||
-- },
|
||||
-- },
|
||||
ui = {
|
||||
-- lazyload it when there are 1+ buffers
|
||||
tabufline = {
|
||||
enabled = true,
|
||||
lazyload = true,
|
||||
order = { "treeOffset", "buffers", "tabs", "btns" },
|
||||
modules = nil,
|
||||
bufwidth = 21,
|
||||
transparency = true,
|
||||
},
|
||||
},
|
||||
|
||||
term = {
|
||||
base46_colors = true,
|
||||
winopts = { number = false },
|
||||
sizes = { sp = 0.5, vsp = 0.2, ["bo sp"] = 0.3, ["bo vsp"] = 0.2 },
|
||||
float = {
|
||||
relative = "editor",
|
||||
row = 0.05,
|
||||
col = 0.05,
|
||||
width = 0.9,
|
||||
height = 0.8,
|
||||
border = "single",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
return M
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
local model = "Qwen3-Coder-30B-Instruct-IQ4_XS"
|
||||
|
||||
return {
|
||||
adapters = {
|
||||
http = {
|
||||
llama_cpp = function()
|
||||
return require("codecompanion.adapters").extend("openai_compatible", {
|
||||
env = {
|
||||
url = "http://localhost:11343",
|
||||
chat_url = "/v1/chat/completions",
|
||||
models_endpoint = "/v1/models",
|
||||
api_key = "dummy",
|
||||
},
|
||||
schema = {
|
||||
model = {
|
||||
default = model,
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
},
|
||||
interactions = {
|
||||
chat = {
|
||||
adapter = "llama_cpp",
|
||||
},
|
||||
inline = {
|
||||
adapter = "llama_cpp",
|
||||
},
|
||||
cmd = {
|
||||
adapter = "llama_cpp",
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -1,16 +1,23 @@
|
||||
local options = {
|
||||
formatters_by_ft = {
|
||||
lua = { "stylua" },
|
||||
css = { "prettier" },
|
||||
html = { "prettier" },
|
||||
javascript = { "prettier" },
|
||||
javascriptreact = { "prettier" },
|
||||
typescript = { "prettier" },
|
||||
typescriptreact = { "prettier" },
|
||||
json = { "prettier" },
|
||||
html = { "prettier" },
|
||||
yaml = { "prettier" },
|
||||
markdown = { "prettier" },
|
||||
css = { "prettier", "stylelint" },
|
||||
scss = { "prettier", "stylelint" },
|
||||
},
|
||||
|
||||
-- format_on_save = {
|
||||
-- -- These options will be passed to conform.format()
|
||||
-- timeout_ms = 500,
|
||||
-- lsp_fallback = true,
|
||||
-- },
|
||||
format_on_save = {
|
||||
-- These options will be passed to conform.format()
|
||||
timeout_ms = 500,
|
||||
lsp_format = "fallback",
|
||||
},
|
||||
}
|
||||
|
||||
return options
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
require("nvchad.configs.lspconfig").defaults()
|
||||
|
||||
local servers = { "html", "cssls", "ts_ls" }
|
||||
local servers = { "html", "cssls", "ts_ls", "eslint", "yamlls" }
|
||||
vim.lsp.enable(servers)
|
||||
|
||||
-- local lspconfig = require "lspconfig"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
require("render-markdown").setup {
|
||||
return {
|
||||
-- Whether markdown should be rendered by default.
|
||||
enabled = true,
|
||||
-- Vim modes that will show a rendered view of the markdown file, :h mode(), for all enabled
|
||||
@@ -24,7 +24,7 @@ require("render-markdown").setup {
|
||||
-- Only intended to be used for plugin development / debugging.
|
||||
log_runtime = false,
|
||||
-- Filetypes this plugin will run on.
|
||||
file_types = { "markdown" },
|
||||
file_types = { "markdown", "gitcommit", "codecompanion" },
|
||||
-- Takes buffer as input, if it returns true this plugin will not attach to the buffer
|
||||
ignore = function()
|
||||
return false
|
||||
|
||||
@@ -4,16 +4,23 @@ require "nvchad.mappings"
|
||||
|
||||
local map = vim.keymap.set
|
||||
|
||||
map("n", ";", ":", { desc = "CMD enter command mode" })
|
||||
map("n", "gd", vim.lsp.buf.definition, { desc = "Go to definition" })
|
||||
|
||||
local builtin = require "telescope.builtin"
|
||||
|
||||
map("n", "gD", builtin.lsp_definitions, { desc = "Go to definitions" })
|
||||
map("n", "grr", builtin.lsp_references, { desc = "Go to references" })
|
||||
|
||||
map({ "n", "v" }, "<leader>ge", ":Gen<CR>")
|
||||
|
||||
map("n", "<leader>gl", "<cmd>lua vim.lsp.buf.code_action()<CR>", { noremap = true, silent = true })
|
||||
|
||||
-- map({ "n", "i", "v" }, "<C-s>", "<cmd> w <cr>")
|
||||
map("n", "gD", "<cmd>Telescope lsp_definitions<CR>", { desc = "Go to Definitions" })
|
||||
map("n", "grr", "<cmd>Telescope lsp_references<CR>", { desc = "Go to references" })
|
||||
map("n", "<leader>da", ":lua vim.lsp.buf.code_action()<cr>", { desc = "Code actions", noremap = true, silent = true })
|
||||
map("n", "<leader>dh", ":lua vim.diagnostic.open_float()<CR>", { desc = "Show diagnostics" })
|
||||
map("n", "<leader>dj", ":lua vim.diagnostic.goto_next()<CR>", { desc = "Go to next" })
|
||||
map("n", "<leader>dk", ":lua vim.diagnostic.goto_prev()<CR>", { desc = "Go to previous" })
|
||||
-- Telescope
|
||||
map("n", "<leader>fr", ":Telescope resume<CR>", { desc = "Resume last search" })
|
||||
map("n", "<leader>fs", ":Telescope grep_string<CR>", { desc = "Find selected string" })
|
||||
map("n", "<leader>fk", ":Telescope keymaps<CR>", { desc = "Find keymaps" })
|
||||
map("n", "<leader>fd", ":Telescope diagnostics<CR>", { desc = "Diagnostics" })
|
||||
-- CodeCompanion
|
||||
map({ "n", "v" }, "<leader>ge", ":CodeCompanion<CR>", { desc = "CodeCompanion" })
|
||||
map({ "n", "v" }, "<leader>ga", ":CodeCompanionActions<CR>", { desc = "CodeCompanion actions" })
|
||||
map("n", "<leader>gc", ":CodeCompanionChat Toggle<CR>", { desc = "CodeCompanion chat" })
|
||||
map("v", "<leader>gc", ":CodeCompanionChat Add<CR>", { desc = "Send selection to CodeCompanion chat" })
|
||||
-- Remaps
|
||||
map({ "n", "v" }, "x", '"_x', { desc = "Delete char without yanking" })
|
||||
map({ "n", "v" }, "c", '"_c', { desc = "Change without yanking" })
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
return {
|
||||
{
|
||||
"stevearc/conform.nvim",
|
||||
-- event = 'BufWritePre', -- uncomment for format on save
|
||||
event = "BufWritePre",
|
||||
opts = require "configs.conform",
|
||||
},
|
||||
|
||||
@@ -12,54 +12,47 @@ return {
|
||||
end,
|
||||
},
|
||||
|
||||
-- Custom Parameters (with defaults)
|
||||
{
|
||||
"David-Kunz/gen.nvim",
|
||||
opts = {
|
||||
-- model = "llama3.2:3b", -- The default model to use.
|
||||
model = "mistral-small:22b",
|
||||
-- host = "192.168.0.17",
|
||||
quit_map = "q", -- set keymap to close the response window
|
||||
retry_map = "<c-r>", -- set keymap to re-send the current prompt
|
||||
accept_map = "<c-cr>", -- set keymap to replace the previous selection with the last result
|
||||
-- host = "localhost", -- The host running the Ollama service.
|
||||
host = "192.168.0.204", -- The host running the Ollama service.
|
||||
port = "11434", -- The port on which the Ollama service is listening.
|
||||
display_mode = "vertical-split", -- The display mode. Can be "float" or "split" or "horizontal-split" or "vertical-split".
|
||||
show_prompt = true, -- Shows the prompt submitted to Ollama. Can be true (3 lines) or "full".
|
||||
show_model = true, -- Displays which model you are using at the beginning of your chat session.
|
||||
no_auto_close = false, -- Never closes the window automatically.
|
||||
file = false, -- Write the payload to a temporary file to keep the command short.
|
||||
hidden = false, -- Hide the generation window (if true, will implicitly set `prompt.replace = true`), requires Neovim >= 0.10
|
||||
init = function(options)
|
||||
pcall(io.popen, "ollama serve > /dev/null 2>&1 &")
|
||||
end,
|
||||
-- Function to initialize Ollama
|
||||
command = function(options)
|
||||
local body = { model = options.model, stream = true }
|
||||
return "curl --silent --no-buffer -X POST http://"
|
||||
.. options.host
|
||||
.. ":"
|
||||
.. options.port
|
||||
.. "/api/chat -d $body"
|
||||
end,
|
||||
-- The command for the Ollama service. You can use placeholders $prompt, $model and $body (shellescaped).
|
||||
-- This can also be a command string.
|
||||
-- The executed command must return a JSON object with { response, context }
|
||||
-- (context property is optional).
|
||||
-- list_models = '<omitted lua function>', -- Retrieves a list of model names
|
||||
result_filetype = "markdown", -- Configure filetype of the result buffer
|
||||
debug = false, -- Prints errors and the command which is run.
|
||||
"olimorris/codecompanion.nvim",
|
||||
version = "^19.0.0",
|
||||
lazy = false,
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
},
|
||||
opts = function()
|
||||
return require "configs.codecompanion"
|
||||
end,
|
||||
},
|
||||
{
|
||||
"MeanderingProgrammer/render-markdown.nvim",
|
||||
dependencies = { "nvim-treesitter/nvim-treesitter", "echasnovski/mini.nvim" }, -- if you use the mini.nvim suite
|
||||
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'echasnovski/mini.icons' }, -- if you use standalone mini plugins
|
||||
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons
|
||||
---@module 'render-markdown'
|
||||
---@type render.md.UserConfig
|
||||
opts = {},
|
||||
ft = { "markdown", "gitcommit", "codecompanion" },
|
||||
opts = function()
|
||||
return require "configs.render-markdown"
|
||||
end,
|
||||
},
|
||||
{
|
||||
"folke/snacks.nvim",
|
||||
priority = 1000,
|
||||
lazy = false,
|
||||
---@type snacks.Config
|
||||
opts = {
|
||||
-- your configuration comes here
|
||||
-- or leave it empty to use the default settings
|
||||
-- refer to the configuration section below
|
||||
bigfile = { enabled = false },
|
||||
dashboard = { enabled = false },
|
||||
explorer = { enabled = true },
|
||||
indent = { enabled = true },
|
||||
input = { enabled = true },
|
||||
picker = { enabled = false },
|
||||
notifier = { enabled = true },
|
||||
quickfile = { enabled = true },
|
||||
scope = { enabled = true },
|
||||
scroll = { enabled = true },
|
||||
statuscolumn = { enabled = true },
|
||||
words = { enabled = true },
|
||||
},
|
||||
},
|
||||
|
||||
-- {
|
||||
|
||||
@@ -0,0 +1,278 @@
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"model": "duskadiy/gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"small_model": "duskadiy/gemma-4-E4B-it-UD-Q8_K_XL",
|
||||
"instructions": ["CLAUDE.md", "AGENTS.md"],
|
||||
"share": "disabled",
|
||||
"autoupdate": "notify",
|
||||
"disabled_providers": [
|
||||
"gemini",
|
||||
"anthropic",
|
||||
"groq",
|
||||
"openrouter",
|
||||
"opencode"
|
||||
],
|
||||
"permission": {
|
||||
"edit": "deny",
|
||||
"webfetch": "ask",
|
||||
"websearch": "ask",
|
||||
"external_directory": "ask",
|
||||
"read": {
|
||||
"*": "allow",
|
||||
"**/.env*": "deny",
|
||||
"**/*.env": "deny",
|
||||
"**/*.pem": "deny",
|
||||
"**/*.key": "deny",
|
||||
"**/*.p12": "deny",
|
||||
"**/*.pfx": "deny",
|
||||
"**/*.keystore": "deny",
|
||||
"**/id_rsa*": "deny",
|
||||
"**/.ssh/**": "deny",
|
||||
"**/.aws/**": "deny",
|
||||
"**/.npmrc": "deny",
|
||||
"**/.netrc": "deny"
|
||||
},
|
||||
"bash": {
|
||||
"*": "ask",
|
||||
|
||||
"ls *": "allow",
|
||||
"cat *": "allow",
|
||||
"grep *": "allow",
|
||||
"rg *": "allow",
|
||||
"find *": "allow",
|
||||
"fd *": "allow",
|
||||
"which *": "allow",
|
||||
"file *": "allow",
|
||||
"stat *": "allow",
|
||||
"wc *": "allow",
|
||||
"tree *": "allow",
|
||||
"diff *": "allow",
|
||||
"sort *": "allow",
|
||||
"uniq *": "allow",
|
||||
"echo *": "allow",
|
||||
"pwd": "allow",
|
||||
"date": "allow",
|
||||
"whoami": "allow",
|
||||
"jq *": "allow",
|
||||
"tsc *": "allow",
|
||||
"mkdir *": "allow",
|
||||
"touch *": "allow",
|
||||
|
||||
"git *": "ask",
|
||||
"git status": "allow",
|
||||
"git status *": "allow",
|
||||
"git diff": "allow",
|
||||
"git diff *": "allow",
|
||||
"git log": "allow",
|
||||
"git log *": "allow",
|
||||
"git show *": "allow",
|
||||
"git branch": "allow",
|
||||
"git remote -v": "allow",
|
||||
|
||||
"npm *": "ask",
|
||||
"pnpm *": "ask",
|
||||
"npx *": "ask",
|
||||
"npm list": "allow",
|
||||
"npm help": "allow",
|
||||
"npm version": "allow",
|
||||
"pnpm list": "allow",
|
||||
"pnpm help": "allow",
|
||||
"npx --version": "allow",
|
||||
|
||||
"curl *": "ask",
|
||||
"wget *": "ask",
|
||||
|
||||
"rm *": "deny",
|
||||
"rmdir *": "deny",
|
||||
"dd *": "deny",
|
||||
"mkfs*": "deny",
|
||||
"shred *": "deny",
|
||||
"chmod -R *": "deny",
|
||||
"sudo *": "deny",
|
||||
"doas *": "deny",
|
||||
|
||||
"npm install*": "deny",
|
||||
"npm i": "deny",
|
||||
"npm i *": "deny",
|
||||
"npm ci*": "deny",
|
||||
"pnpm install*": "deny",
|
||||
"pnpm i": "deny",
|
||||
"pnpm i *": "deny",
|
||||
"pnpm add*": "deny",
|
||||
"yarn add*": "deny",
|
||||
"yarn install*": "deny",
|
||||
"pip install*": "deny",
|
||||
"pip3 install*": "deny",
|
||||
"pipx install*": "deny",
|
||||
"cargo install*": "deny",
|
||||
"go install*": "deny",
|
||||
"gem install*": "deny",
|
||||
"brew install*": "deny",
|
||||
|
||||
"pacman *": "deny",
|
||||
"yay *": "deny",
|
||||
"apt *": "deny",
|
||||
"apt-get *": "deny",
|
||||
"dnf *": "deny",
|
||||
|
||||
"cat .env*": "deny",
|
||||
"cat *.env": "deny",
|
||||
"cat *.pem": "deny",
|
||||
"cat *.key": "deny",
|
||||
"cat *id_rsa*": "deny",
|
||||
"cat *secret*": "deny",
|
||||
"cat *credential*": "deny",
|
||||
"cat ~/.ssh/*": "deny",
|
||||
"cat ~/.aws/*": "deny",
|
||||
"grep .env*": "deny",
|
||||
"grep * .env*": "deny"
|
||||
}
|
||||
},
|
||||
"provider": {
|
||||
"duskadiy": {
|
||||
"npm": "@ai-sdk/openai-compatible",
|
||||
"name": "DuskaDIY",
|
||||
"options": {
|
||||
"baseURL": "https://llm.duskadiy.com/api/v1"
|
||||
},
|
||||
"models": {
|
||||
"gemma-4-26B-A4B-it-UD-IQ4_XS": {
|
||||
"name": "Gemma 4 26B (remote)",
|
||||
"limit": {
|
||||
"context": 81920,
|
||||
"output": 8192
|
||||
}
|
||||
},
|
||||
"DeepSeek-Coder-V2-Lite-Instruct-Q8_0": {
|
||||
"name": "DeepSeek Coder V2 (remote)",
|
||||
"limit": {
|
||||
"context": 81920,
|
||||
"output": 8192
|
||||
}
|
||||
},
|
||||
"Qwen3-Coder-30B-Instruct-IQ4_XS": {
|
||||
"name": "Qwen3 Coder A3B (remote)",
|
||||
"limit": {
|
||||
"context": 81920,
|
||||
"output": 8192
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"llama.cpp": {
|
||||
"npm": "@ai-sdk/openai-compatible",
|
||||
"name": "llamacpp",
|
||||
"options": {
|
||||
"baseURL": "http://192.168.0.204:11343/v1"
|
||||
},
|
||||
"models": {
|
||||
"DeepSeek-Coder-V2-Lite-Instruct-Q8_0": {
|
||||
"name": "DeepSeek Coder V2",
|
||||
"limit": {
|
||||
"context": 81920,
|
||||
"output": 8192
|
||||
}
|
||||
},
|
||||
"gemma-4-E4B-it-UD-Q8_K_XL": {
|
||||
"name": "Gemma 4 E4B",
|
||||
"limit": {
|
||||
"context": 81920,
|
||||
"output": 8192
|
||||
}
|
||||
},
|
||||
"gemma-4-26B-A4B-it-UD-IQ4_XS": {
|
||||
"name": "Gemma 4 26B",
|
||||
"limit": {
|
||||
"context": 81920,
|
||||
"output": 8192
|
||||
}
|
||||
},
|
||||
"Qwen3-Coder-30B-Instruct-IQ4_XS": {
|
||||
"name": "Qwen3 Coder A3B",
|
||||
"limit": {
|
||||
"context": 81920,
|
||||
"output": 8192
|
||||
}
|
||||
},
|
||||
"Qwen3.6-27B-UD-IQ3_XXS.gguf": {
|
||||
"name": "Qwen3.6 27B",
|
||||
"limit": {
|
||||
"context": 81920,
|
||||
"output": 8192
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"agent": {
|
||||
"plan": {
|
||||
"mode": "primary",
|
||||
"model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"permission": {
|
||||
"edit": "deny"
|
||||
}
|
||||
},
|
||||
"build": {
|
||||
"mode": "primary",
|
||||
"model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"permission": {
|
||||
"edit": {
|
||||
"*": "allow",
|
||||
"**/.env*": "deny",
|
||||
"**/*.env": "deny",
|
||||
"**/*.pem": "deny",
|
||||
"**/*.key": "deny",
|
||||
"**/id_rsa*": "deny",
|
||||
"**/.ssh/**": "deny",
|
||||
"**/.aws/**": "deny",
|
||||
"**/.git/**": "deny",
|
||||
"**/.npmrc": "deny",
|
||||
"**/.netrc": "deny"
|
||||
}
|
||||
}
|
||||
},
|
||||
"code-reviewer": {
|
||||
"description": "Reviews code for best practices and potential issues",
|
||||
"prompt": "You are a code reviewer. Focus on security, performance, and maintainability.",
|
||||
"mode": "subagent",
|
||||
"model": "llama.cpp/DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
|
||||
"permission": {
|
||||
"edit": "deny"
|
||||
}
|
||||
},
|
||||
"test-runner": {
|
||||
"description": "Runs and interprets test suites",
|
||||
"prompt": "You are a test runner. Focus on identifying failing tests and providing clear reproduction steps.",
|
||||
"mode": "subagent",
|
||||
"model": "llama.cpp/DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
|
||||
"permission": {
|
||||
"edit": "deny"
|
||||
}
|
||||
},
|
||||
"doc-writer": {
|
||||
"description": "Maintains project documentation and docstrings",
|
||||
"prompt": "You are a technical writer. Focus on clarity, accuracy, and keeping documentation in sync with code changes.",
|
||||
"mode": "subagent",
|
||||
"model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"permission": {
|
||||
"edit": {
|
||||
"*": "deny",
|
||||
"**/*.md": "allow",
|
||||
"**/*.mdx": "allow",
|
||||
"**/*.markdown": "allow",
|
||||
"**/*.txt": "allow",
|
||||
"**/*.rst": "allow"
|
||||
}
|
||||
}
|
||||
},
|
||||
"security-auditor": {
|
||||
"description": "Scans for security vulnerabilities and hardcoded secrets",
|
||||
"prompt": "You are a security auditor. Focus on OWASP principles, secret detection, and dependency vulnerabilities.",
|
||||
"mode": "subagent",
|
||||
"model": "llama.cpp/DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
|
||||
"permission": {
|
||||
"edit": "deny"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,48 +1,68 @@
|
||||
Chillout (Groove Salad - SomaFM),http://somafm.com/startstream=groovesalad.pls,,
|
||||
Alternative (BAGeL Radio),https://ais-sa3.cdnstream1.com/2606_128.aac,,
|
||||
Ambient Psychill [1.FM],http://strm112.1.fm/ambientpsy_mobile_mp3,,
|
||||
Goa Psychill [SomaFM],http://ice3.somafm.com/suburbsofgoa-128-mp3,,
|
||||
Chilli Zet,https://ch.cdn.eurozet.pl/chi-net.mp3,,
|
||||
Chilltrax,http://server1.chilltrax.com:9000/,,
|
||||
Chillout [psyradio*fm],http://streamer.psyradio.org:8020/;listen.mp3,,
|
||||
Chillout [Psyndora],http://cast.magicstreams.gr:9125/stream,,
|
||||
Chillout (Groove Salad) [SomaFM],https://hls.somafm.com/hls/groovesalad/320k/program.m3u8,,
|
||||
Groove Salad Classic (Early 2000s Ambient),https://somafm.com/gsclassic.pls,,
|
||||
Ambient and Experimental [n5MD],https://somafm.com/n5md.pls,,
|
||||
Suomisaundi [Caprice],http://79.120.77.11:8004/suomisaundi,,
|
||||
Vaporwaves [SomaFM],https://somafm.com/vaporwaves.pls,,
|
||||
Cliq Hop [SomaFM],http://somafm.com/startstream=cliqhop.pls,,
|
||||
Lounge (Illinois Street) [SomaFM],http://somafm.com/illstreet.pls,,
|
||||
Space [SomaFM],http://ice.somafm.com/spacestation,,
|
||||
Space Music [Synphaera],https://somafm.com/synphaera.pls,,
|
||||
Deep Space [SomaFM], http://ice.somafm.com/deepspaceone,,
|
||||
Downtempo (Secret Agent) [SomaFM],http://somafm.com/secretagent.pls,,
|
||||
Dub Step (Beyond) [SomaFM],http://somafm.com/dubstep.pls,,
|
||||
Dub Techno [Schizoid], http://94.130.113.214:8000/dubtechno,,
|
||||
Dubplate.fm,https://sc2.dubplate.fm/radio/8030/dnb/uhifi,,
|
||||
MansionNET,https://radio.inthemansion.com/listen/mansionnet/radio.mp3,,
|
||||
Liquid funk [Caprice], http://79.111.119.111:9115/,,
|
||||
Liquid funk,https://radiorecord.hostingradio.ru/liquidfunk96.aacp,,
|
||||
Liqui Radio,https://stream-162.zeno.fm/ug59eq099yzuv?zs=zaqVusVSQuWMN3O5gnh8xA,,
|
||||
Liquid DnB,http://95.47.244.172:8000/live,,
|
||||
Acid Techno,https://radiorecord.hostingradio.ru/techno96.aacp,,
|
||||
Dark Techno [Caprice],http://79.111.14.76:8000/darktechno,,
|
||||
Deep Techno/House [1.FM],http://strm112.1.fm/deeptech_mobile_mp3,,
|
||||
90s90s Techno,http://streams.90s90s.de/techno/mp3-192/radiode/,,
|
||||
The Trip: [SomaFM],https://somafm.com/thetrip.pls,,
|
||||
ToXoRs minimalRADIO,http://95.216.245.239:8000/stream/1/,,
|
||||
Minimalradio.de,https://azurafallback.de:8010/320.mp3,,
|
||||
Minimal [Technolovers],https://stream.technolovers.fm/minimal,,
|
||||
Suomisaundi / Freeform Psytrance / Spugedelic Trance [Caprice],http://79.120.77.11:8000/suomisaundi,,
|
||||
Psychedelic Secret,https://solid48.streamupsolutions.com/proxy/bglsokon?mp=/=stream,,
|
||||
Full-on psytrance [Caprice],http://79.111.14.76:9019/,,
|
||||
Magnathospere Morning,https://listen7.myradio24.com/magnatos,,
|
||||
Psytrance [Psyndora],https://cast.magicstreams.gr/sc/psyndora/stream,,
|
||||
Hirschmilch Psytrance,https://hirschmilch.de:7001/psytrance.mp3,,
|
||||
Bluffphonica,http://bluffphonica.stream.laut.fm/bluffphonica?pl=m3u&t302=2024-09-17_23-09-40&uuid=ce6a1b0b-1654-4d08-afbc-31b028f8f23b,,
|
||||
Radio Caprice - Suomisaundi,http://79.120.77.11:8004/suomisaundi,,
|
||||
psyradio * fm - chillout,http://streamer.psyradio.org:8020/;listen.mp3,,
|
||||
Full-on psytrance,http://79.111.14.76:9019/,,
|
||||
Vasilis Cfu psy trance,https://stream-40.zeno.fm/c2t7d9p6mf9uv?zs=_D-E0xBPQcGB_V9n7LLuqA,,
|
||||
BOM Psytrance [1.FM],http://strm112.1.fm/psytrance_mobile_mp3,,
|
||||
TL_Psytrance,https://stream.technolovers.fm/psytrance,,
|
||||
Record Goa Psy,https://radiorecord.hostingradio.ru/goa96.aacp,,
|
||||
1.FM - BOM Psytrance Radio,http://strm112.1.fm/psytrance_mobile_mp3,,
|
||||
Anima Amoris [Goa Psy Trance],http://amoris.sknt.ru/goa.mp3,,
|
||||
DMT FM Psytrance 24/7,https://dc1.serverse.com/proxy/ywycfrxn/live,,
|
||||
radiOzora Trance,http://trance.out.airtime.pro:8000/trance_a,,
|
||||
Psyndora Psytrance,http://cast.magicstreams.gr:9111/stream,,
|
||||
Celtic (ThistleRadio - SomaFM),http://somafm.com/thistle.pls,,
|
||||
Groove Salad Classic (Early 2000s Ambient),https://somafm.com/gsclassic.pls,,
|
||||
n5MD Radio (Ambient and Experimental),https://somafm.com/n5md.pls,,
|
||||
Vaporwaves [SomaFM],https://somafm.com/vaporwaves.pls,,
|
||||
Commodore 64 Remixes (Slay Radio),http://www.slayradio.org/tune_in.php/128kbps/listen.m3u,,
|
||||
Covers (SomaFM),http://somafm.com/covers.pls,,
|
||||
Downtempo (Secret Agent - SomaFM),http://somafm.com/secretagent.pls,,
|
||||
Dub Step (Dub Step Beyond - SomaFM),http://somafm.com/dubstep.pls,,
|
||||
Electronic/Dance (Electronic Culture),http://www.shouted.fm/tunein/electro-dsl.m3u,,
|
||||
House (Beat Blender - SomaFM),http://somafm.com/startstream=beatblender.pls,,
|
||||
Indie Pop (Indie Pop Rocks! - SomaFM),http://somafm.com/indiepop130.pls,,
|
||||
Intelligent dance music (Cliq Hop - SomaFM),http://somafm.com/startstream=cliqhop.pls,,
|
||||
Jazz (Sonic Universe - SomaFM),http://somafm.com/startstream=sonicuniverse.pls,,
|
||||
Lounge (Illinois Street Lounge - SomaFM),http://somafm.com/illstreet.pls,,
|
||||
The Trip: [SomaFM],https://somafm.com/thetrip.pls,,
|
||||
Pop (PopTron! - SomaFM),http://somafm.com/poptron.pls,,
|
||||
Psytrance 24/7 [DMT FM],https://dc1.serverse.com/proxy/ywycfrxn/live,,
|
||||
Trance [RadiOzora],http://trance.out.airtime.pro:8000/trance_a,,
|
||||
Uplifting trance [Technolovers],https://0nlineradio.stream13.radiohost.de/technolovers-uplifting-trance,,
|
||||
Uplift [RadioRecord],https://radiorecord.hostingradio.ru/uplift96.aacp,,
|
||||
Alternative [BAGeL],https://ais-sa3.cdnstream1.com/2606_128.aac,,
|
||||
Celtic (ThistleRadio) [SomaFM],http://somafm.com/thistle.pls,,
|
||||
Commodore 64 Remixes [Slay],http://www.slayradio.org/tune_in.php/128kbps/listen.m3u,,
|
||||
Covers [SomaFM],http://somafm.com/covers.pls,,
|
||||
Indie Pop [SomaFM],http://somafm.com/indiepop130.pls,,
|
||||
Jazz (Sonic Universe) [SomaFM],http://somafm.com/startstream=sonicuniverse.pls,,
|
||||
Pop (PopTron) [SomaFM],http://somafm.com/poptron.pls,,
|
||||
Pop/Rock/Urban (Frequence 3 - Paris),http://streams.frequence3.net/hd-mp3.m3u,,
|
||||
Progressive (Tags Trance Trip - SomaFM),http://somafm.com/tagstrance.pls,,
|
||||
Progressive (Tags Trance Trip) [SomaFM],http://somafm.com/tagstrance.pls,,
|
||||
Public Radio (NPR National Public Radio Stream),https://npr-ice.streamguys1.com/live.mp3,,
|
||||
Reggae Dancehall (Ragga Kings),https://raggakings.radio:8443/stream.ogg,,
|
||||
Heavyweight Reggae,https://somafm.com/reggae.pls,,
|
||||
Rock (Digitalis - SomaFM),http://somafm.com/digitalis.pls,,
|
||||
Rock (Digitalis) [SomaFM],http://somafm.com/digitalis.pls,,
|
||||
Metal Detector,https://somafm.com/metal.pls,,
|
||||
DanceUK,https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://uk2.internet-radio.com:8024/listen.pls&t=.pls,,
|
||||
JazzGroove,https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://199.180.72.2:8015/listen.pls?sid=1&t=.pls,,
|
||||
Radio Paradise - Main Mix,http://stream.radioparadise.com/aac-128,,
|
||||
Radio Paradise - Mellow Mix,http://stream.radioparadise.com/mellow-128,,
|
||||
Radio Paradise - Rock Mix,http://stream.radioparadise.com/rock-128,,
|
||||
Radio Paradise - Eclectic Mix,http://stream.radioparadise.com/eclectic-128,,
|
||||
Main Mix [Paradise],http://stream.radioparadise.com/aac-128,,
|
||||
Mellow Mix [Paradise] ,http://stream.radioparadise.com/mellow-128,,
|
||||
Rock Mix [Paradise],http://stream.radioparadise.com/rock-128,,
|
||||
Eclectic Mix [Paradise],http://stream.radioparadise.com/eclectic-128,,
|
||||
Echoes of Bluemars,http://streams.echoesofbluemars.org:8000/bluemars.m3u,,
|
||||
Echoes of Bluemars - Cryosleep,http://streams.echoesofbluemars.org:8000/cryosleep.m3u,,
|
||||
Echoes of Bluemars - Voices from Within,http://streams.echoesofbluemars.org:8000/voicesfromwithin.m3u,,
|
||||
Synphaera Radio (Space Music),https://somafm.com/synphaera.pls,,
|
||||
Cryosleep [Echoes of Bluemars] ,http://streams.echoesofbluemars.org:8000/cryosleep.m3u,,
|
||||
Voices from Within [Echoes of Bluemars],http://streams.echoesofbluemars.org:8000/voicesfromwithin.m3u,,
|
||||
|
||||
|
@@ -1,38 +0,0 @@
|
||||
daemonize
|
||||
show-failed-attempts
|
||||
clock
|
||||
screenshot
|
||||
effect-blur=10x10
|
||||
effect-vignette=1:1
|
||||
color=1f1d2e80
|
||||
font="Inter"
|
||||
indicator
|
||||
indicator-radius=200
|
||||
indicator-thickness=20
|
||||
line-color=1f1d2e
|
||||
ring-color=191724
|
||||
inside-color=1f1d2e
|
||||
key-hl-color=eb6f92
|
||||
separator-color=00000000
|
||||
text-color=e0def4
|
||||
text-caps-lock-color=""
|
||||
line-ver-color=eb6f92
|
||||
ring-ver-color=eb6f92
|
||||
inside-ver-color=1f1d2e
|
||||
text-ver-color=e0def4
|
||||
ring-wrong-color=31748f
|
||||
text-wrong-color=31748f
|
||||
inside-wrong-color=1f1d2e
|
||||
inside-clear-color=1f1d2e
|
||||
text-clear-color=e0def4
|
||||
ring-clear-color=9ccfd8
|
||||
line-clear-color=1f1d2e
|
||||
line-wrong-color=1f1d2e
|
||||
bs-hl-color=31748f
|
||||
grace=2
|
||||
grace-no-mouse
|
||||
grace-no-touch
|
||||
datestr=%a, %B %e
|
||||
timestr=%I:%M %p
|
||||
fade-in=0.5
|
||||
ignore-empty-password
|
||||
@@ -0,0 +1,242 @@
|
||||
# TUIOS Configuration File
|
||||
# This file allows you to customize appearance and keybindings
|
||||
#
|
||||
# Configuration location: /home/coja/.config/tuios/config.toml
|
||||
# Documentation: https://github.com/Gaurav-Gosain/tuios
|
||||
# For keybindings documentation, run: tuios keybinds list
|
||||
|
||||
# ============================================================================
|
||||
# APPEARANCE SETTINGS
|
||||
# ============================================================================
|
||||
# border_style: Window border style
|
||||
# Options: rounded, normal, thick, double, hidden, block, ascii,
|
||||
# outer-half-block, inner-half-block
|
||||
# Default: rounded
|
||||
#
|
||||
# dockbar_position: Position of the dockbar
|
||||
# Options: bottom, top, hidden
|
||||
# Default: bottom
|
||||
#
|
||||
# hide_window_buttons: Hide window control buttons (minimize, maximize, close)
|
||||
# Options: true, false
|
||||
# Default: false
|
||||
#
|
||||
# scrollback_lines: Number of lines to keep in scrollback buffer
|
||||
# Range: 100 to 1000000
|
||||
# Default: 10000
|
||||
# ============================================================================
|
||||
|
||||
[appearance]
|
||||
border_style = 'rounded'
|
||||
hide_window_buttons = false
|
||||
scrollback_lines = 10000
|
||||
dockbar_position = 'bottom'
|
||||
preferred_shell = ''
|
||||
whichkey_position = ''
|
||||
window_title_position = ''
|
||||
hide_clock = false
|
||||
animations_enabled = false
|
||||
show_cpu = true
|
||||
show_ram = true
|
||||
confirm_quit = true
|
||||
# shared_borders=true
|
||||
|
||||
[keybindings]
|
||||
leader_key = 'ctrl+b'
|
||||
# leader_key = 'shift+space'
|
||||
|
||||
[keybindings.window_management]
|
||||
close_window = ['w', 'x']
|
||||
minimize_window = ['m']
|
||||
new_window = ['n']
|
||||
next_window = ['tab']
|
||||
prev_window = ['shift+tab']
|
||||
rename_window = ['r']
|
||||
restore_all = ['M']
|
||||
select_window_1 = ['1']
|
||||
select_window_2 = ['2']
|
||||
select_window_3 = ['3']
|
||||
select_window_4 = ['4']
|
||||
select_window_5 = ['5']
|
||||
select_window_6 = ['6']
|
||||
select_window_7 = ['7']
|
||||
select_window_8 = ['8']
|
||||
select_window_9 = ['9']
|
||||
|
||||
[keybindings.workspaces]
|
||||
move_and_follow_1 = ['alt+shift+1']
|
||||
move_and_follow_2 = ['alt+shift+2']
|
||||
move_and_follow_3 = ['alt+shift+3']
|
||||
move_and_follow_4 = ['alt+shift+4']
|
||||
move_and_follow_5 = ['alt+shift+5']
|
||||
move_and_follow_6 = ['alt+shift+6']
|
||||
move_and_follow_7 = ['alt+shift+7']
|
||||
move_and_follow_8 = ['alt+shift+8']
|
||||
move_and_follow_9 = ['alt+shift+9']
|
||||
switch_workspace_1 = ['alt+1']
|
||||
switch_workspace_2 = ['alt+2']
|
||||
switch_workspace_3 = ['alt+3']
|
||||
switch_workspace_4 = ['alt+4']
|
||||
switch_workspace_5 = ['alt+5']
|
||||
switch_workspace_6 = ['alt+6']
|
||||
switch_workspace_7 = ['alt+7']
|
||||
switch_workspace_8 = ['alt+8']
|
||||
switch_workspace_9 = ['alt+9']
|
||||
|
||||
[keybindings.layout]
|
||||
equalize_splits = ['=']
|
||||
preselect_down = ['alt+j']
|
||||
preselect_left = ['alt+h']
|
||||
preselect_right = ['alt+l']
|
||||
preselect_up = ['alt+k']
|
||||
resize_height_grow = ['}', 'shift+]']
|
||||
resize_height_grow_top = [']']
|
||||
resize_height_shrink = ['{', 'shift+[']
|
||||
resize_height_shrink_top = ['[']
|
||||
resize_master_grow = ['>', 'shift+.']
|
||||
resize_master_grow_left = ['.']
|
||||
resize_master_shrink = ['<', 'shift+,']
|
||||
resize_master_shrink_left = [',']
|
||||
rotate_split = ['R']
|
||||
snap_corner_1 = ['1']
|
||||
snap_corner_2 = ['2']
|
||||
snap_corner_3 = ['3']
|
||||
snap_corner_4 = ['4']
|
||||
snap_fullscreen = ['f']
|
||||
snap_left = ['h']
|
||||
snap_right = ['l']
|
||||
split_horizontal = ['-']
|
||||
split_vertical = ['|', '\']
|
||||
swap_down = ['J', 'ctrl+down']
|
||||
swap_left = ['H', 'ctrl+left']
|
||||
swap_right = ['L', 'ctrl+right']
|
||||
swap_up = ['K', 'ctrl+up']
|
||||
toggle_tiling = ['t']
|
||||
unsnap = ['u']
|
||||
|
||||
[keybindings.mode_control]
|
||||
enter_terminal_mode = ['i', 'enter']
|
||||
enter_window_mode = ['esc', 'ctrl+z']
|
||||
quit = ['q']
|
||||
toggle_help = ['?']
|
||||
|
||||
[keybindings.system]
|
||||
|
||||
[keybindings.navigation]
|
||||
extend_down = ['shift+down']
|
||||
extend_left = ['shift+left']
|
||||
extend_right = ['shift+right']
|
||||
extend_up = ['shift+up']
|
||||
nav_down = ['down']
|
||||
nav_left = ['left']
|
||||
nav_right = ['right']
|
||||
nav_up = ['up']
|
||||
|
||||
[keybindings.restore_minimized]
|
||||
restore_minimized_1 = ['shift+1', '!']
|
||||
restore_minimized_2 = ['shift+2', '@']
|
||||
restore_minimized_3 = ['shift+3', '#']
|
||||
restore_minimized_4 = ['shift+4', '$']
|
||||
restore_minimized_5 = ['shift+5', '%']
|
||||
restore_minimized_6 = ['shift+6', '^']
|
||||
restore_minimized_7 = ['shift+7', '&']
|
||||
restore_minimized_8 = ['shift+8', '*']
|
||||
restore_minimized_9 = ['shift+9', '(']
|
||||
|
||||
[keybindings.prefix_mode]
|
||||
prefix_close_window = ['x']
|
||||
prefix_debug = ['D']
|
||||
prefix_detach = ['d', 'esc']
|
||||
prefix_equalize_splits = ['=']
|
||||
prefix_fullscreen = ['z']
|
||||
prefix_help = ['?']
|
||||
prefix_minimize = ['m']
|
||||
prefix_new_window = ['c']
|
||||
prefix_next_window = ['n', 'tab']
|
||||
prefix_prev_window = ['p', 'shift+tab']
|
||||
prefix_quit = ['q']
|
||||
prefix_rename_window = [',', 'r']
|
||||
prefix_rotate_split = ['R']
|
||||
prefix_select_0 = ['0']
|
||||
prefix_select_1 = ['1']
|
||||
prefix_select_2 = ['2']
|
||||
prefix_select_3 = ['3']
|
||||
prefix_select_4 = ['4']
|
||||
prefix_select_5 = ['5']
|
||||
prefix_select_6 = ['6']
|
||||
prefix_select_7 = ['7']
|
||||
prefix_select_8 = ['8']
|
||||
prefix_select_9 = ['9']
|
||||
prefix_selection = ['[']
|
||||
prefix_split_horizontal = ['-']
|
||||
prefix_split_vertical = ['|', '\']
|
||||
prefix_tape = ['T']
|
||||
prefix_toggle_tiling = ['space']
|
||||
prefix_window = ['t']
|
||||
prefix_workspace = ['w']
|
||||
|
||||
[keybindings.window_prefix]
|
||||
window_prefix_cancel = ['esc']
|
||||
window_prefix_close = ['x']
|
||||
window_prefix_new = ['n']
|
||||
window_prefix_next = ['tab']
|
||||
window_prefix_prev = ['shift+tab']
|
||||
window_prefix_rename = ['r']
|
||||
window_prefix_tiling = ['t']
|
||||
|
||||
[keybindings.minimize_prefix]
|
||||
minimize_prefix_cancel = ['esc']
|
||||
minimize_prefix_focused = ['m']
|
||||
minimize_prefix_restore_1 = ['1']
|
||||
minimize_prefix_restore_2 = ['2']
|
||||
minimize_prefix_restore_3 = ['3']
|
||||
minimize_prefix_restore_4 = ['4']
|
||||
minimize_prefix_restore_5 = ['5']
|
||||
minimize_prefix_restore_6 = ['6']
|
||||
minimize_prefix_restore_7 = ['7']
|
||||
minimize_prefix_restore_8 = ['8']
|
||||
minimize_prefix_restore_9 = ['9']
|
||||
minimize_prefix_restore_all = ['M']
|
||||
|
||||
[keybindings.workspace_prefix]
|
||||
workspace_prefix_cancel = ['esc']
|
||||
workspace_prefix_move_1 = ['!']
|
||||
workspace_prefix_move_2 = ['@']
|
||||
workspace_prefix_move_3 = ['#']
|
||||
workspace_prefix_move_4 = ['$']
|
||||
workspace_prefix_move_5 = ['%']
|
||||
workspace_prefix_move_6 = ['^']
|
||||
workspace_prefix_move_7 = ['&']
|
||||
workspace_prefix_move_8 = ['*']
|
||||
workspace_prefix_move_9 = ['(']
|
||||
workspace_prefix_switch_1 = ['1']
|
||||
workspace_prefix_switch_2 = ['2']
|
||||
workspace_prefix_switch_3 = ['3']
|
||||
workspace_prefix_switch_4 = ['4']
|
||||
workspace_prefix_switch_5 = ['5']
|
||||
workspace_prefix_switch_6 = ['6']
|
||||
workspace_prefix_switch_7 = ['7']
|
||||
workspace_prefix_switch_8 = ['8']
|
||||
workspace_prefix_switch_9 = ['9']
|
||||
|
||||
[keybindings.debug_prefix]
|
||||
debug_prefix_animations = ['a']
|
||||
debug_prefix_cache = ['c']
|
||||
debug_prefix_cancel = ['esc']
|
||||
debug_prefix_logs = ['l']
|
||||
|
||||
[keybindings.tape_prefix]
|
||||
tape_prefix_cancel = ['esc']
|
||||
tape_prefix_manager = ['m']
|
||||
tape_prefix_record = ['r']
|
||||
tape_prefix_stop = ['s']
|
||||
|
||||
[keybindings.terminal_mode]
|
||||
terminal_exit_mode = ['alt+esc']
|
||||
terminal_next_window = ['alt+n']
|
||||
terminal_prev_window = ['alt+p']
|
||||
|
||||
[daemon]
|
||||
log_level = 'off'
|
||||
default_codec = 'gob'
|
||||
socket_path = ''
|
||||
@@ -8,6 +8,6 @@
|
||||
"format-disconnected": " ",
|
||||
"tooltip-format-disconnected": "Disconnected",
|
||||
"format-alt": "<span foreground='#99ffdd'> {bandwidthDownBytes}</span> <span foreground='#ffcc66'> {bandwidthUpBytes}</span>",
|
||||
"interval": 2,
|
||||
},
|
||||
"interval": 2
|
||||
}
|
||||
|
||||
|
||||
+36
-27
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /home/anon/.config/zellij/config.kdl.bak
|
||||
// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /home/coja/.config/zellij/config.kdl.bak
|
||||
//
|
||||
|
||||
keybinds clear-defaults=true {
|
||||
@@ -7,10 +7,10 @@ keybinds clear-defaults=true {
|
||||
bind "Alt g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "left" { MoveFocus "left"; }
|
||||
bind "down" { MoveFocus "down"; }
|
||||
bind "up" { MoveFocus "up"; }
|
||||
bind "right" { MoveFocus "right"; }
|
||||
bind "h" "left" { MoveFocus "left"; }
|
||||
bind "j" "down" { MoveFocus "down"; }
|
||||
bind "k" "up" { MoveFocus "up"; }
|
||||
bind "j" "right" { MoveFocus "right"; }
|
||||
bind "c" { SwitchToMode "renamepane"; PaneNameInput 0; }
|
||||
bind "d" { NewPane "down"; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
@@ -28,10 +28,10 @@ keybinds clear-defaults=true {
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
}
|
||||
tab {
|
||||
bind "left" { GoToPreviousTab; }
|
||||
bind "down" { GoToNextTab; }
|
||||
bind "up" { GoToPreviousTab; }
|
||||
bind "right" { GoToNextTab; }
|
||||
bind "h" "left" { GoToPreviousTab; }
|
||||
bind "j" "down" { GoToNextTab; }
|
||||
bind "k" "up" { GoToPreviousTab; }
|
||||
bind "j" "right" { GoToNextTab; }
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
@@ -56,10 +56,10 @@ keybinds clear-defaults=true {
|
||||
bind "tab" { ToggleTab; }
|
||||
}
|
||||
resize {
|
||||
bind "left" { Resize "Increase left"; }
|
||||
bind "down" { Resize "Increase down"; }
|
||||
bind "up" { Resize "Increase up"; }
|
||||
bind "right" { Resize "Increase right"; }
|
||||
bind "h" "left" { Resize "Increase left"; }
|
||||
bind "j" "down" { Resize "Increase down"; }
|
||||
bind "k" "up" { Resize "Increase up"; }
|
||||
bind "j" "right" { Resize "Increase right"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
@@ -74,10 +74,10 @@ keybinds clear-defaults=true {
|
||||
bind "Alt n" { SwitchToMode "normal"; }
|
||||
}
|
||||
move {
|
||||
bind "left" { MovePane "left"; }
|
||||
bind "down" { MovePane "down"; }
|
||||
bind "up" { MovePane "up"; }
|
||||
bind "right" { MovePane "right"; }
|
||||
bind "h" "left" { MovePane "left"; }
|
||||
bind "j" "down" { MovePane "down"; }
|
||||
bind "k" "up" { MovePane "up"; }
|
||||
bind "j" "right" { MovePane "right"; }
|
||||
bind "h" { MovePane "left"; }
|
||||
bind "Alt h" { SwitchToMode "normal"; }
|
||||
bind "j" { MovePane "down"; }
|
||||
@@ -88,7 +88,14 @@ keybinds clear-defaults=true {
|
||||
bind "tab" { MovePane; }
|
||||
}
|
||||
scroll {
|
||||
bind "Alt left" { MoveFocusOrTab "left"; SwitchToMode "normal"; }
|
||||
bind "Alt down" { MoveFocus "down"; SwitchToMode "normal"; }
|
||||
bind "Alt up" { MoveFocus "up"; SwitchToMode "normal"; }
|
||||
bind "Alt right" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "Alt j" { MoveFocus "down"; SwitchToMode "normal"; }
|
||||
bind "Alt k" { MoveFocus "up"; SwitchToMode "normal"; }
|
||||
bind "Alt l" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "Alt s" { SwitchToMode "normal"; }
|
||||
}
|
||||
@@ -176,10 +183,6 @@ keybinds clear-defaults=true {
|
||||
bind "Alt n" { SwitchToMode "resize"; }
|
||||
}
|
||||
shared_except "normal" "locked" {
|
||||
bind "Alt left" { MoveFocusOrTab "left"; }
|
||||
bind "Alt down" { MoveFocus "down"; }
|
||||
bind "Alt up" { MoveFocus "up"; }
|
||||
bind "Alt right" { MoveFocusOrTab "right"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
@@ -187,9 +190,6 @@ keybinds clear-defaults=true {
|
||||
bind "Alt ]" { NextSwapLayout; }
|
||||
bind "Alt f" { ToggleFloatingPanes; }
|
||||
bind "Alt i" { MoveTab "left"; }
|
||||
bind "Alt j" { MoveFocus "down"; }
|
||||
bind "Alt k" { MoveFocus "up"; }
|
||||
bind "Alt l" { MoveFocusOrTab "right"; }
|
||||
}
|
||||
shared_except "normal" "locked" "entersearch" {
|
||||
bind "enter" { SwitchToMode "normal"; }
|
||||
@@ -197,6 +197,15 @@ keybinds clear-defaults=true {
|
||||
shared_except "normal" "locked" "entersearch" "renametab" "renamepane" {
|
||||
bind "esc" { SwitchToMode "normal"; }
|
||||
}
|
||||
shared_except "normal" "locked" "scroll" {
|
||||
bind "Alt left" { MoveFocusOrTab "left"; }
|
||||
bind "Alt down" { MoveFocus "down"; }
|
||||
bind "Alt up" { MoveFocus "up"; }
|
||||
bind "Alt right" { MoveFocusOrTab "right"; }
|
||||
bind "Alt j" { MoveFocus "down"; }
|
||||
bind "Alt k" { MoveFocus "up"; }
|
||||
bind "Alt l" { MoveFocusOrTab "right"; }
|
||||
}
|
||||
shared_among "pane" "tmux" {
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
}
|
||||
@@ -304,13 +313,13 @@ load_plugins {
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
|
||||
theme "one-half-dark"
|
||||
//
|
||||
// theme "dracula"
|
||||
|
||||
// Choose the base input mode of zellij.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
default_mode "normal"
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
# Vi mode
|
||||
set editing-mode vi
|
||||
set keymap vi
|
||||
set show-mode-in-prompt on
|
||||
set vi-ins-mode-string "\1\e[32m\2[I] \1\e[0m\2"
|
||||
set vi-cmd-mode-string "\1\e[31m\2[N] \1\e[0m\2"
|
||||
|
||||
# exclude .dotfles
|
||||
set match-hidden-files off
|
||||
|
||||
set show-all-if-ambiguous on
|
||||
set show-all-if-unmodified on
|
||||
set colored-stats on
|
||||
set colored-completion-prefix on
|
||||
set mark-symlinked-directories on
|
||||
set completion-ignore-case on
|
||||
|
||||
# Ignore duplicates in history where supported
|
||||
set skip-completed-text on
|
||||
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"localcpp": {
|
||||
"type": "api_key",
|
||||
"key": "no-key-required"
|
||||
},
|
||||
"duskadiy": {
|
||||
"type": "api_key",
|
||||
"key": "$DUSKADIY_API_KEY"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,190 @@
|
||||
{
|
||||
"providers": {
|
||||
"duskadiy": {
|
||||
"baseUrl": "https://llm.duskadiy.com/api/v1",
|
||||
"api": "openai-completions",
|
||||
"apiKey": "no-key-required",
|
||||
"compat": {
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsReasoningEffort": false,
|
||||
"maxTokensField": "max_tokens"
|
||||
},
|
||||
"models": [
|
||||
{
|
||||
"id": "DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
|
||||
"name": "DeepSeek Coder V2",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "gemma-4-E4B-it-UD-Q8_K_XL",
|
||||
"name": "Gemma 4 E4B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"name": "Gemma 4 26B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3-Coder-30B-Instruct-IQ4_XS",
|
||||
"name": "Qwen3 Coder A3B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 8192,
|
||||
"maxTokens": 4096,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.6-27B-UD-IQ3_XXS",
|
||||
"name": "Qwen3.6 27B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.5-27B-UD-Q3_K_XL",
|
||||
"name": "Qwen3.5 27B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.5-9B-Q8_0",
|
||||
"name": "Qwen3.5 9B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.6-27B-Uncensored-HauhauCS-Aggressive-IQ3_M",
|
||||
"name": "Qwen3.6 27B Uncensored",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "GLM-4.7-Flash-UD-Q3_K_XL",
|
||||
"name": "GLM-4.7 Flash",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
}
|
||||
]
|
||||
},
|
||||
"localcpp": {
|
||||
"baseUrl": "http://192.168.0.204:11343/v1",
|
||||
"api": "openai-completions",
|
||||
"apiKey": "no-key-required",
|
||||
"compat": {
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsReasoningEffort": false,
|
||||
"maxTokensField": "max_tokens"
|
||||
},
|
||||
"models": [
|
||||
{
|
||||
"id": "DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
|
||||
"name": "DeepSeek Coder V2",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "gemma-4-E4B-it-UD-Q8_K_XL",
|
||||
"name": "Gemma 4 E4B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"name": "Gemma 4 26B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3-Coder-30B-Instruct-IQ4_XS",
|
||||
"name": "Qwen3 Coder A3B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 8192,
|
||||
"maxTokens": 4096,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.6-27B-UD-IQ3_XXS",
|
||||
"name": "Qwen3.6 27B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.5-27B-UD-Q3_K_XL",
|
||||
"name": "Qwen3.5 27B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.5-9B-Q8_0",
|
||||
"name": "Qwen3.5 9B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.6-27B-Uncensored-HauhauCS-Aggressive-IQ3_M",
|
||||
"name": "Qwen3.6 27B Uncensored",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "GLM-4.7-Flash-UD-Q3_K_XL",
|
||||
"name": "GLM-4.7 Flash",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
---
|
||||
description: Write a Conventional Commits message for the staged changes
|
||||
argument-hint: "[extra context]"
|
||||
---
|
||||
Inspect the staged changes with `git diff --cached` (and `git status` for context). Then write a single Conventional Commits message:
|
||||
|
||||
- A `<type>(<scope>): <subject>` summary line, imperative mood, ≤72 chars (types: feat, fix, refactor, docs, chore, test, perf, build).
|
||||
- An optional short body explaining the *why* only when it isn't obvious from the diff.
|
||||
- Do NOT run `git commit`. Output only the message inside a code block so I can review it.
|
||||
|
||||
Extra context to incorporate: ${1:-none}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
description: Review the current diff for bugs and issues
|
||||
argument-hint: "[focus area]"
|
||||
---
|
||||
Review the current changes. Check both `git diff` (unstaged) and `git diff --cached` (staged). Focus on:
|
||||
|
||||
- Correctness and logic bugs
|
||||
- Error handling and missing edge cases
|
||||
- Security issues (injection, secrets, unsafe input)
|
||||
- Anything that doesn't match the surrounding code's conventions
|
||||
|
||||
List concrete findings as `file:line — issue — suggested fix`, ordered by severity. Be concise; skip praise. If nothing is wrong, say so.
|
||||
|
||||
Extra focus this round: ${1:-general correctness}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"defaultProvider": "duskadiy",
|
||||
"defaultModel": "gemma-4-E4B-it-UD-Q8_K_XL",
|
||||
"defaultThinkingLevel": "off",
|
||||
"theme": "catppuccin-mocha",
|
||||
"quietStartup": false,
|
||||
"defaultProjectTrust": "ask",
|
||||
"enableInstallTelemetry": false,
|
||||
"enabledModels": [
|
||||
"localcpp/*",
|
||||
"duskadiy/*"
|
||||
],
|
||||
"compaction": {
|
||||
"enabled": true,
|
||||
"reserveTokens": 16384,
|
||||
"keepRecentTokens": 20000
|
||||
},
|
||||
"retry": {
|
||||
"enabled": true,
|
||||
"maxRetries": 3,
|
||||
"baseDelayMs": 2000,
|
||||
"provider": {
|
||||
"timeoutMs": 3600000
|
||||
}
|
||||
},
|
||||
"httpIdleTimeoutMs": 600000,
|
||||
"npmCommand": [
|
||||
"fnm",
|
||||
"exec",
|
||||
"--using=22",
|
||||
"--",
|
||||
"npm"
|
||||
],
|
||||
"showHardwareCursor": true,
|
||||
"lastChangelogVersion": "0.80.2"
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/earendil-works/pi/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
|
||||
"name": "catppuccin-mocha",
|
||||
"vars": {
|
||||
"rosewater": "#f5e0dc",
|
||||
"flamingo": "#f2cdcd",
|
||||
"pink": "#f5c2e7",
|
||||
"mauve": "#cba6f7",
|
||||
"red": "#f38ba8",
|
||||
"maroon": "#eba0ac",
|
||||
"peach": "#fab387",
|
||||
"yellow": "#f9e2af",
|
||||
"green": "#a6e3a1",
|
||||
"teal": "#94e2d5",
|
||||
"sky": "#89dceb",
|
||||
"sapphire": "#74c7ec",
|
||||
"blue": "#89b4fa",
|
||||
"lavender": "#b4befe",
|
||||
"fg": "#cdd6f4",
|
||||
"subtext1": "#bac2de",
|
||||
"subtext0": "#a6adc8",
|
||||
"overlay2": "#9399b2",
|
||||
"overlay1": "#7f849c",
|
||||
"overlay0": "#6c7086",
|
||||
"surface2": "#585b70",
|
||||
"surface1": "#45475a",
|
||||
"surface0": "#313244",
|
||||
"base": "#1e1e2e",
|
||||
"mantle": "#181825",
|
||||
"crust": "#11111b"
|
||||
},
|
||||
"colors": {
|
||||
"accent": "mauve",
|
||||
"border": "surface1",
|
||||
"borderAccent": "mauve",
|
||||
"borderMuted": "surface0",
|
||||
"success": "green",
|
||||
"error": "red",
|
||||
"warning": "yellow",
|
||||
"muted": "subtext0",
|
||||
"dim": "overlay0",
|
||||
"text": "fg",
|
||||
"thinkingText": "overlay1",
|
||||
"selectedBg": "surface0",
|
||||
"userMessageBg": "surface0",
|
||||
"userMessageText": "fg",
|
||||
"customMessageBg": "surface0",
|
||||
"customMessageText": "fg",
|
||||
"customMessageLabel": "mauve",
|
||||
"toolPendingBg": "mantle",
|
||||
"toolSuccessBg": "#1e2b22",
|
||||
"toolErrorBg": "#2b1e22",
|
||||
"toolTitle": "mauve",
|
||||
"toolOutput": "fg",
|
||||
"mdHeading": "mauve",
|
||||
"mdLink": "blue",
|
||||
"mdLinkUrl": "sapphire",
|
||||
"mdCode": "green",
|
||||
"mdCodeBlock": "fg",
|
||||
"mdCodeBlockBorder": "surface1",
|
||||
"mdQuote": "subtext0",
|
||||
"mdQuoteBorder": "surface2",
|
||||
"mdHr": "surface1",
|
||||
"mdListBullet": "mauve",
|
||||
"toolDiffAdded": "green",
|
||||
"toolDiffRemoved": "red",
|
||||
"toolDiffContext": "overlay0",
|
||||
"syntaxComment": "overlay0",
|
||||
"syntaxKeyword": "mauve",
|
||||
"syntaxFunction": "blue",
|
||||
"syntaxVariable": "fg",
|
||||
"syntaxString": "green",
|
||||
"syntaxNumber": "peach",
|
||||
"syntaxType": "yellow",
|
||||
"syntaxOperator": "sky",
|
||||
"syntaxPunctuation": "overlay2",
|
||||
"thinkingOff": "surface1",
|
||||
"thinkingMinimal": "overlay0",
|
||||
"thinkingLow": "blue",
|
||||
"thinkingMedium": "teal",
|
||||
"thinkingHigh": "peach",
|
||||
"thinkingXhigh": "red",
|
||||
"bashMode": "peach"
|
||||
},
|
||||
"export": {
|
||||
"pageBg": "#11111b",
|
||||
"cardBg": "#1e1e2e",
|
||||
"infoBg": "#313244"
|
||||
}
|
||||
}
|
||||
+190
@@ -0,0 +1,190 @@
|
||||
{
|
||||
"providers": {
|
||||
"duskadiy": {
|
||||
"baseUrl": "https://llm.duskadiy.com/api/v1",
|
||||
"api": "openai-completions",
|
||||
"apiKey": "$DUSKADIY_API_KEY",
|
||||
"compat": {
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsReasoningEffort": false,
|
||||
"maxTokensField": "max_tokens"
|
||||
},
|
||||
"models": [
|
||||
{
|
||||
"id": "DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
|
||||
"name": "DeepSeek Coder V2",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "gemma-4-E4B-it-UD-Q8_K_XL",
|
||||
"name": "Gemma 4 E4B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"name": "Gemma 4 26B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3-Coder-30B-Instruct-IQ4_XS",
|
||||
"name": "Qwen3 Coder A3B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 8192,
|
||||
"maxTokens": 4096,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.6-27B-UD-IQ3_XXS",
|
||||
"name": "Qwen3.6 27B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.5-27B-UD-Q3_K_XL",
|
||||
"name": "Qwen3.5 27B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.5-9B-Q8_0",
|
||||
"name": "Qwen3.5 9B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.6-27B-Uncensored-HauhauCS-Aggressive-IQ3_M",
|
||||
"name": "Qwen3.6 27B Uncensored",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "GLM-4.7-Flash-UD-Q3_K_XL",
|
||||
"name": "GLM-4.7 Flash",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
}
|
||||
]
|
||||
},
|
||||
"localcpp": {
|
||||
"baseUrl": "http://192.168.0.204:11343/v1",
|
||||
"api": "openai-completions",
|
||||
"apiKey": "no-key-required",
|
||||
"compat": {
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsReasoningEffort": false,
|
||||
"maxTokensField": "max_tokens"
|
||||
},
|
||||
"models": [
|
||||
{
|
||||
"id": "DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
|
||||
"name": "DeepSeek Coder V2",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "gemma-4-E4B-it-UD-Q8_K_XL",
|
||||
"name": "Gemma 4 E4B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"name": "Gemma 4 26B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3-Coder-30B-Instruct-IQ4_XS",
|
||||
"name": "Qwen3 Coder A3B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 8192,
|
||||
"maxTokens": 4096,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.6-27B-UD-IQ3_XXS",
|
||||
"name": "Qwen3.6 27B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.5-27B-UD-Q3_K_XL",
|
||||
"name": "Qwen3.5 27B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.5-9B-Q8_0",
|
||||
"name": "Qwen3.5 9B",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "Qwen3.6-27B-Uncensored-HauhauCS-Aggressive-IQ3_M",
|
||||
"name": "Qwen3.6 27B Uncensored",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
},
|
||||
{
|
||||
"id": "GLM-4.7-Flash-UD-Q3_K_XL",
|
||||
"name": "GLM-4.7 Flash",
|
||||
"reasoning": false,
|
||||
"input": ["text"],
|
||||
"contextWindow": 81920,
|
||||
"maxTokens": 16384,
|
||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
---
|
||||
description: Write a Conventional Commits message for the staged changes
|
||||
argument-hint: "[extra context]"
|
||||
---
|
||||
Inspect the staged changes with `git diff --cached` (and `git status` for context). Then write a single Conventional Commits message:
|
||||
|
||||
- A `<type>(<scope>): <subject>` summary line, imperative mood, ≤72 chars (types: feat, fix, refactor, docs, chore, test, perf, build).
|
||||
- An optional short body explaining the *why* only when it isn't obvious from the diff.
|
||||
- Do NOT run `git commit`. Output only the message inside a code block so I can review it.
|
||||
|
||||
Extra context to incorporate: ${1:-none}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
description: Review the current diff for bugs and issues
|
||||
argument-hint: "[focus area]"
|
||||
---
|
||||
Review the current changes. Check both `git diff` (unstaged) and `git diff --cached` (staged). Focus on:
|
||||
|
||||
- Correctness and logic bugs
|
||||
- Error handling and missing edge cases
|
||||
- Security issues (injection, secrets, unsafe input)
|
||||
- Anything that doesn't match the surrounding code's conventions
|
||||
|
||||
List concrete findings as `file:line — issue — suggested fix`, ordered by severity. Be concise; skip praise. If nothing is wrong, say so.
|
||||
|
||||
Extra focus this round: ${1:-general correctness}
|
||||
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"defaultProvider": "duskadiy",
|
||||
"defaultModel": "gemma-4-26B-A4B-it-UD-IQ4_XS",
|
||||
"defaultThinkingLevel": "on",
|
||||
"theme": "catppuccin-mocha",
|
||||
"quietStartup": false,
|
||||
"defaultProjectTrust": "ask",
|
||||
"enableInstallTelemetry": false,
|
||||
"enabledModels": [
|
||||
"localcpp/*",
|
||||
"duskadiy/*"
|
||||
],
|
||||
"compaction": {
|
||||
"enabled": true,
|
||||
"reserveTokens": 16384,
|
||||
"keepRecentTokens": 20000
|
||||
},
|
||||
"retry": {
|
||||
"enabled": true,
|
||||
"maxRetries": 3,
|
||||
"baseDelayMs": 2000,
|
||||
"provider": {
|
||||
"timeoutMs": 3600000
|
||||
}
|
||||
},
|
||||
"httpIdleTimeoutMs": 600000,
|
||||
"npmCommand": ["fnm", "exec", "--using=22", "--", "npm"],
|
||||
"showHardwareCursor": true,
|
||||
"lastChangelogVersion": "0.80.1"
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/earendil-works/pi/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
|
||||
"name": "catppuccin-mocha",
|
||||
"vars": {
|
||||
"rosewater": "#f5e0dc",
|
||||
"flamingo": "#f2cdcd",
|
||||
"pink": "#f5c2e7",
|
||||
"mauve": "#cba6f7",
|
||||
"red": "#f38ba8",
|
||||
"maroon": "#eba0ac",
|
||||
"peach": "#fab387",
|
||||
"yellow": "#f9e2af",
|
||||
"green": "#a6e3a1",
|
||||
"teal": "#94e2d5",
|
||||
"sky": "#89dceb",
|
||||
"sapphire": "#74c7ec",
|
||||
"blue": "#89b4fa",
|
||||
"lavender": "#b4befe",
|
||||
"fg": "#cdd6f4",
|
||||
"subtext1": "#bac2de",
|
||||
"subtext0": "#a6adc8",
|
||||
"overlay2": "#9399b2",
|
||||
"overlay1": "#7f849c",
|
||||
"overlay0": "#6c7086",
|
||||
"surface2": "#585b70",
|
||||
"surface1": "#45475a",
|
||||
"surface0": "#313244",
|
||||
"base": "#1e1e2e",
|
||||
"mantle": "#181825",
|
||||
"crust": "#11111b"
|
||||
},
|
||||
"colors": {
|
||||
"accent": "mauve",
|
||||
"border": "surface1",
|
||||
"borderAccent": "mauve",
|
||||
"borderMuted": "surface0",
|
||||
"success": "green",
|
||||
"error": "red",
|
||||
"warning": "yellow",
|
||||
"muted": "subtext0",
|
||||
"dim": "overlay0",
|
||||
"text": "fg",
|
||||
"thinkingText": "overlay1",
|
||||
"selectedBg": "surface0",
|
||||
"userMessageBg": "surface0",
|
||||
"userMessageText": "fg",
|
||||
"customMessageBg": "surface0",
|
||||
"customMessageText": "fg",
|
||||
"customMessageLabel": "mauve",
|
||||
"toolPendingBg": "mantle",
|
||||
"toolSuccessBg": "#1e2b22",
|
||||
"toolErrorBg": "#2b1e22",
|
||||
"toolTitle": "mauve",
|
||||
"toolOutput": "fg",
|
||||
"mdHeading": "mauve",
|
||||
"mdLink": "blue",
|
||||
"mdLinkUrl": "sapphire",
|
||||
"mdCode": "green",
|
||||
"mdCodeBlock": "fg",
|
||||
"mdCodeBlockBorder": "surface1",
|
||||
"mdQuote": "subtext0",
|
||||
"mdQuoteBorder": "surface2",
|
||||
"mdHr": "surface1",
|
||||
"mdListBullet": "mauve",
|
||||
"toolDiffAdded": "green",
|
||||
"toolDiffRemoved": "red",
|
||||
"toolDiffContext": "overlay0",
|
||||
"syntaxComment": "overlay0",
|
||||
"syntaxKeyword": "mauve",
|
||||
"syntaxFunction": "blue",
|
||||
"syntaxVariable": "fg",
|
||||
"syntaxString": "green",
|
||||
"syntaxNumber": "peach",
|
||||
"syntaxType": "yellow",
|
||||
"syntaxOperator": "sky",
|
||||
"syntaxPunctuation": "overlay2",
|
||||
"thinkingOff": "surface1",
|
||||
"thinkingMinimal": "overlay0",
|
||||
"thinkingLow": "blue",
|
||||
"thinkingMedium": "teal",
|
||||
"thinkingHigh": "peach",
|
||||
"thinkingXhigh": "red",
|
||||
"bashMode": "peach"
|
||||
},
|
||||
"export": {
|
||||
"pageBg": "#11111b",
|
||||
"cardBg": "#1e1e2e",
|
||||
"infoBg": "#313244"
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,13 @@
|
||||
|
||||
using `gnu stow`
|
||||
|
||||
```
|
||||
https://github.com/HyDE-Project/HyDE
|
||||
```
|
||||
`hyde`, `waybar` and `fish` are from hyprdots with edits
|
||||
Customized [Hyde](https://github.com/HyDE-Project/HyDE)
|
||||
|
||||
`hyde`, `waybar` and `fish` are from hyprdots with customizations
|
||||
|
||||
`nvim` is [nvchad](https://nvchad.com/) custom conf
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user