Compare commits
62 Commits
29b622c4e6
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 5c052509c4 | |||
| 03a9ca5060 | |||
| 9f17fbcb37 | |||
| c42475c571 | |||
| 0d1702456e | |||
| 2914b79ded | |||
| 1c8d5284ca | |||
| 640379c105 | |||
| 379ae0f786 | |||
| fe08de4f9a | |||
| 2d0f0470a0 | |||
| 99ab844325 | |||
| 927f556aef | |||
| f0e19a1f71 | |||
| 608d9b8cf7 | |||
| adbe1641ec | |||
| 0509989016 | |||
| 49dae6be39 | |||
| 4c362b4a71 | |||
| 0a1940c966 | |||
| ddd7cb9fc4 | |||
| 749c89da0c | |||
| 1466a808c9 | |||
| a9f9a69887 | |||
| bd2c3c5303 | |||
| 98d8281d28 | |||
| 49e474caeb | |||
| 04e1114959 | |||
| 45e614e0c8 | |||
| c9d9c39900 | |||
| 180e3e18e1 | |||
| 63f288c103 | |||
| 2d1994a042 | |||
| b04ac36fb8 | |||
| 5310712394 | |||
| e2e5716f80 | |||
| fdfefd1d16 | |||
| c08828490c | |||
| f9545c9a5d | |||
| ed1b0297db | |||
| ed551d49ab | |||
| 775b156dba | |||
| ee1344aca6 | |||
| 93d36adea8 | |||
| c8e3d09a09 | |||
| f2494ee53e | |||
| 8fb6d19af1 | |||
| 27776b26cd | |||
| 69fbd7cd0e | |||
| be85a81057 | |||
| 54feaab93c | |||
| 7f9354c811 | |||
| 3a40f7d1d7 | |||
| 5468143a10 | |||
| b3d67b9f2e | |||
| 28d1aee359 | |||
| 64655ec14e | |||
| faeb82b6ff | |||
| b16376854b | |||
| 545444c44b | |||
| 944cfda071 | |||
| 620ecae951 |
@@ -126,7 +126,7 @@ history_filter = [
|
|||||||
## Configure the maximum height of the preview to show.
|
## Configure the maximum height of the preview to show.
|
||||||
## Useful when you have long scripts in your history that you want to distinguish
|
## Useful when you have long scripts in your history that you want to distinguish
|
||||||
## by more than the first few lines.
|
## by more than the first few lines.
|
||||||
# max_preview_height = 4
|
max_preview_height = 20
|
||||||
|
|
||||||
## Configure whether or not to show the help row, which includes the current Atuin
|
## Configure whether or not to show the help row, which includes the current Atuin
|
||||||
## version (and whether an update is available), a keymap hint, and the total
|
## version (and whether an update is available), a keymap hint, and the total
|
||||||
@@ -279,3 +279,6 @@ records = true
|
|||||||
## The "workspace" mode is skipped when not in a workspace or workspaces = false.
|
## The "workspace" mode is skipped when not in a workspace or workspaces = false.
|
||||||
## Default filter mode can be overridden with the filter_mode setting.
|
## Default filter mode can be overridden with the filter_mode setting.
|
||||||
# filters = [ "global", "host", "session", "workspace", "directory" ]
|
# filters = [ "global", "host", "session", "workspace", "directory" ]
|
||||||
|
|
||||||
|
[ui]
|
||||||
|
columns = ["datetime", "duration", "host", "command"]
|
||||||
|
|||||||
+79
-50
@@ -1,18 +1,23 @@
|
|||||||
#? Config file for btop v. 1.4.5
|
#? Config file for btop v.1.4.7
|
||||||
|
|
||||||
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
||||||
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
||||||
color_theme = "Default"
|
color_theme = "Default"
|
||||||
|
|
||||||
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||||
theme_background = True
|
theme_background = true
|
||||||
|
|
||||||
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||||
truecolor = True
|
truecolor = true
|
||||||
|
|
||||||
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||||
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||||
force_tty = False
|
force_tty = false
|
||||||
|
|
||||||
|
#* 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.
|
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
|
||||||
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
||||||
@@ -22,10 +27,16 @@ presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:defaul
|
|||||||
|
|
||||||
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
|
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
|
||||||
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
|
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
|
||||||
vim_keys = False
|
vim_keys = false
|
||||||
|
|
||||||
|
#* Disable all mouse events.
|
||||||
|
disable_mouse = false
|
||||||
|
|
||||||
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||||
rounded_corners = True
|
rounded_corners = true
|
||||||
|
|
||||||
|
#* Use terminal synchronized output sequences to reduce flickering on supported terminals.
|
||||||
|
terminal_sync = true
|
||||||
|
|
||||||
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
||||||
#* "braille" offers the highest resolution but might not be included in all fonts.
|
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||||
@@ -50,47 +61,53 @@ graph_symbol_net = "default"
|
|||||||
graph_symbol_proc = "default"
|
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.
|
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
|
||||||
shown_boxes = "cpu mem net proc gpu0"
|
shown_boxes = "gpu0 cpu mem net proc"
|
||||||
|
|
||||||
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||||
update_ms = 2000
|
update_ms = 2000
|
||||||
|
|
||||||
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
#* 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.
|
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||||
proc_sorting = "cpu lazy"
|
proc_sorting = "memory"
|
||||||
|
|
||||||
#* Reverse sorting order, True or False.
|
#* Reverse sorting order, True or False.
|
||||||
proc_reversed = False
|
proc_reversed = false
|
||||||
|
|
||||||
#* Show processes as a tree.
|
#* Show processes as a tree.
|
||||||
proc_tree = False
|
proc_tree = false
|
||||||
|
|
||||||
#* Use the cpu graph colors in the process list.
|
#* Use the cpu graph colors in the process list.
|
||||||
proc_colors = True
|
proc_colors = true
|
||||||
|
|
||||||
#* Use a darkening gradient in the process list.
|
#* Use a darkening gradient in the process list.
|
||||||
proc_gradient = True
|
proc_gradient = true
|
||||||
|
|
||||||
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
||||||
proc_per_core = False
|
proc_per_core = false
|
||||||
|
|
||||||
#* Show process memory as bytes instead of percent.
|
#* Show process memory as bytes instead of percent.
|
||||||
proc_mem_bytes = True
|
proc_mem_bytes = true
|
||||||
|
|
||||||
#* Show cpu graph for each process.
|
#* Show cpu graph for each process.
|
||||||
proc_cpu_graphs = True
|
proc_cpu_graphs = true
|
||||||
|
|
||||||
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||||
proc_info_smaps = False
|
proc_info_smaps = false
|
||||||
|
|
||||||
#* Show proc box on left side of screen instead of right.
|
#* Show proc box on left side of screen instead of right.
|
||||||
proc_left = False
|
proc_left = false
|
||||||
|
|
||||||
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||||
proc_filter_kernel = False
|
proc_filter_kernel = false
|
||||||
|
|
||||||
|
#* 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.
|
#* In tree-view, always accumulate child process resources in the parent process.
|
||||||
proc_aggregate = False
|
proc_aggregate = false
|
||||||
|
|
||||||
|
#* Should cpu and memory usage display be preserved for dead processes when paused.
|
||||||
|
keep_dead_proc_usage = false
|
||||||
|
|
||||||
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
||||||
#* Select from a list of detected attributes from the options menu.
|
#* Select from a list of detected attributes from the options menu.
|
||||||
@@ -104,28 +121,28 @@ cpu_graph_lower = "Auto"
|
|||||||
show_gpu_info = "Auto"
|
show_gpu_info = "Auto"
|
||||||
|
|
||||||
#* Toggles if the lower CPU graph should be inverted.
|
#* Toggles if the lower CPU graph should be inverted.
|
||||||
cpu_invert_lower = True
|
cpu_invert_lower = true
|
||||||
|
|
||||||
#* Set to True to completely disable the lower CPU graph.
|
#* Set to True to completely disable the lower CPU graph.
|
||||||
cpu_single_graph = False
|
cpu_single_graph = false
|
||||||
|
|
||||||
#* Show cpu box at bottom of screen instead of top.
|
#* Show cpu box at bottom of screen instead of top.
|
||||||
cpu_bottom = False
|
cpu_bottom = false
|
||||||
|
|
||||||
#* Shows the system uptime in the CPU box.
|
#* Shows the system uptime in the CPU box.
|
||||||
show_uptime = True
|
show_uptime = true
|
||||||
|
|
||||||
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
|
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
|
||||||
show_cpu_watts = True
|
show_cpu_watts = true
|
||||||
|
|
||||||
#* Show cpu temperature.
|
#* Show cpu temperature.
|
||||||
check_temp = True
|
check_temp = true
|
||||||
|
|
||||||
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||||
cpu_sensor = "Auto"
|
cpu_sensor = "Auto"
|
||||||
|
|
||||||
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||||
show_coretemp = True
|
show_coretemp = true
|
||||||
|
|
||||||
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
||||||
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
||||||
@@ -137,17 +154,20 @@ cpu_core_map = ""
|
|||||||
temp_scale = "celsius"
|
temp_scale = "celsius"
|
||||||
|
|
||||||
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||||
base_10_sizes = False
|
base_10_sizes = false
|
||||||
|
|
||||||
#* Show CPU frequency.
|
#* Show CPU frequency.
|
||||||
show_cpu_freq = True
|
show_cpu_freq = true
|
||||||
|
|
||||||
|
#* How to calculate CPU frequency, available values: "first", "range", "lowest", "highest" and "average".
|
||||||
|
freq_mode = "first"
|
||||||
|
|
||||||
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
||||||
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||||
clock_format = "%X"
|
clock_format = "%X"
|
||||||
|
|
||||||
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
||||||
background_update = True
|
background_update = true
|
||||||
|
|
||||||
#* Custom cpu model name, empty string to disable.
|
#* Custom cpu model name, empty string to disable.
|
||||||
custom_cpu_name = ""
|
custom_cpu_name = ""
|
||||||
@@ -157,58 +177,61 @@ custom_cpu_name = ""
|
|||||||
disks_filter = ""
|
disks_filter = ""
|
||||||
|
|
||||||
#* Show graphs instead of meters for memory values.
|
#* Show graphs instead of meters for memory values.
|
||||||
mem_graphs = True
|
mem_graphs = true
|
||||||
|
|
||||||
#* Show mem box below net box instead of above.
|
#* Show mem box below net box instead of above.
|
||||||
mem_below_net = False
|
mem_below_net = false
|
||||||
|
|
||||||
#* Count ZFS ARC in cached and available memory.
|
#* Count ZFS ARC in cached and available memory.
|
||||||
zfs_arc_cached = True
|
zfs_arc_cached = true
|
||||||
|
|
||||||
#* If swap memory should be shown in memory box.
|
#* If swap memory should be shown in memory box.
|
||||||
show_swap = True
|
show_swap = true
|
||||||
|
|
||||||
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||||
swap_disk = True
|
swap_disk = true
|
||||||
|
|
||||||
#* If mem box should be split to also show disks info.
|
#* If mem box should be split to also show disks info.
|
||||||
show_disks = False
|
show_disks = false
|
||||||
|
|
||||||
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||||
only_physical = True
|
only_physical = true
|
||||||
|
|
||||||
#* Read disks list from /etc/fstab. This also disables only_physical.
|
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||||
use_fstab = True
|
use_fstab = true
|
||||||
|
|
||||||
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||||
zfs_hide_datasets = False
|
zfs_hide_datasets = false
|
||||||
|
|
||||||
#* Set to true to show available disk space for privileged users.
|
#* Set to true to show available disk space for privileged users.
|
||||||
disk_free_priv = False
|
disk_free_priv = false
|
||||||
|
|
||||||
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||||
show_io_stat = True
|
show_io_stat = true
|
||||||
|
|
||||||
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||||
io_mode = False
|
io_mode = false
|
||||||
|
|
||||||
#* Set to True to show combined read/write io graphs in io mode.
|
#* Set to True to show combined read/write io graphs in io mode.
|
||||||
io_graph_combined = False
|
io_graph_combined = false
|
||||||
|
|
||||||
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
||||||
#* Example: "/mnt/media:100 /:20 /boot:1".
|
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||||
io_graph_speeds = ""
|
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.
|
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||||
net_download = 100
|
net_download = 100
|
||||||
|
|
||||||
net_upload = 100
|
net_upload = 100
|
||||||
|
|
||||||
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||||
net_auto = True
|
net_auto = true
|
||||||
|
|
||||||
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||||
net_sync = True
|
net_sync = true
|
||||||
|
|
||||||
#* Starts with the Network Interface specified here.
|
#* Starts with the Network Interface specified here.
|
||||||
net_iface = ""
|
net_iface = ""
|
||||||
@@ -217,26 +240,32 @@ net_iface = ""
|
|||||||
base_10_bitrate = "Auto"
|
base_10_bitrate = "Auto"
|
||||||
|
|
||||||
#* Show battery stats in top right if battery is present.
|
#* Show battery stats in top right if battery is present.
|
||||||
show_battery = True
|
show_battery = true
|
||||||
|
|
||||||
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||||
selected_battery = "Auto"
|
selected_battery = "Auto"
|
||||||
|
|
||||||
#* Show power stats of battery next to charge indicator.
|
#* Show power stats of battery next to charge indicator.
|
||||||
show_battery_watts = True
|
show_battery_watts = true
|
||||||
|
|
||||||
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
#* 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.
|
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||||
log_level = "WARNING"
|
log_level = "WARNING"
|
||||||
|
|
||||||
|
#* Automatically save current settings to config file on exit.
|
||||||
|
save_config_on_exit = true
|
||||||
|
|
||||||
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
|
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
|
||||||
nvml_measure_pcie_speeds = True
|
nvml_measure_pcie_speeds = true
|
||||||
|
|
||||||
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
|
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
|
||||||
rsmi_measure_pcie_speeds = True
|
rsmi_measure_pcie_speeds = true
|
||||||
|
|
||||||
#* Horizontally mirror the GPU graph.
|
#* Horizontally mirror the GPU graph.
|
||||||
gpu_mirror_graph = True
|
gpu_mirror_graph = true
|
||||||
|
|
||||||
|
#* Set which GPU vendors to show. Available values are "nvidia amd intel apple"
|
||||||
|
shown_gpus = "nvidia amd intel"
|
||||||
|
|
||||||
#* Custom gpu0 model name, empty string to disable.
|
#* Custom gpu0 model name, empty string to disable.
|
||||||
custom_gpu_name0 = ""
|
custom_gpu_name0 = ""
|
||||||
|
|||||||
+124
-38
@@ -1,58 +1,144 @@
|
|||||||
|
# Whether to enable mouse or not.
|
||||||
mouse = true
|
mouse = true
|
||||||
hide_blocked_users = true
|
# The program to open when the `keys.message_input.editor` keymap is pressed. Set the value to `"default"` to use `$EDITOR`.
|
||||||
messages_limit = 50
|
|
||||||
editor = "default"
|
editor = "default"
|
||||||
timestamps = true
|
|
||||||
timestamps_format = "01-02 15:04:05 (Z07:00)"
|
|
||||||
show_attachment_links = false
|
|
||||||
|
|
||||||
|
# "default" (unknown), "online", "dnd", "idle", "invisible", "offline"
|
||||||
|
status = "default"
|
||||||
|
|
||||||
|
# Whether to parse and render markdown in messages or not.
|
||||||
|
markdown = true
|
||||||
|
hide_blocked_users = true
|
||||||
|
show_attachment_links = true
|
||||||
|
|
||||||
|
# Use autocomplete_limit = 0 to disable autocompleting mentions
|
||||||
|
# Note: tab completion will still work, but it won't show any list.
|
||||||
|
autocomplete_limit = 20
|
||||||
|
|
||||||
|
# The number of messages to fetch when a text-based channel is selected from guilds tree. The minimum and maximum value is 0 and 100, respectively.
|
||||||
|
messages_limit = 50
|
||||||
|
|
||||||
|
[timestamps]
|
||||||
|
enabled = true
|
||||||
|
# https://pkg.go.dev/time#Layout
|
||||||
|
format = "01-02 15:04:05 (Z07:00)"
|
||||||
|
|
||||||
|
[notifications]
|
||||||
|
enabled = true
|
||||||
|
# The duration of the sound. Set the value to `0` to use default duration. This is only supported on Unix and Windows.
|
||||||
|
duration = 0
|
||||||
|
[notifications.sound]
|
||||||
|
enabled = true
|
||||||
|
only_on_ping = true
|
||||||
|
|
||||||
|
# Global shortcuts
|
||||||
|
# Esc: Reset message selection or close the channel selection popup.
|
||||||
[keys]
|
[keys]
|
||||||
focus_guilds_tree = "Ctrl+O"
|
focus_guilds_tree = "Ctrl+G"
|
||||||
focus_messages_text = "Ctrl+P"
|
focus_messages_list = "Ctrl+T"
|
||||||
focus_message_input = "Ctrl+N"
|
focus_message_input = "Ctrl+Space"
|
||||||
toggle_guilds_tree = "Ctrl+P"
|
# Cycle focus between the widgets.
|
||||||
|
focus_previous = "Ctrl+H"
|
||||||
|
focus_next = "Ctrl+L"
|
||||||
|
# Hide/show the guilds tree.
|
||||||
|
toggle_guilds_tree = "Ctrl+B"
|
||||||
|
quit = "Ctrl+C"
|
||||||
|
# Log out and remove the authentication token from keyring.
|
||||||
|
# Requires re-login upon restart.
|
||||||
|
logout = "Ctrl+D"
|
||||||
|
|
||||||
|
# Only while focusing on the guilds tree
|
||||||
|
[keys.guilds_tree]
|
||||||
select_previous = "Rune[k]"
|
select_previous = "Rune[k]"
|
||||||
select_next = "Rune[j]"
|
select_next = "Rune[j]"
|
||||||
select_first = "Rune[g]"
|
select_first = "Rune[g]"
|
||||||
select_last = "Rune[G]"
|
select_last = "Rune[G]"
|
||||||
logout = "Ctrl+Shift+D"
|
# Select the currently highlighted text-based channel or expand a guild or channel.
|
||||||
quit = "Ctrl+C"
|
|
||||||
[keys.guilds_tree]
|
|
||||||
select_current = "Enter"
|
select_current = "Enter"
|
||||||
[keys.messages_text]
|
yank_id = "Rune[i]"
|
||||||
|
collapse_parent_node = "Rune[-]"
|
||||||
|
move_to_parent_node = "Rune[p]"
|
||||||
|
|
||||||
|
# Only while focusing on sent messages
|
||||||
|
[keys.messages_list]
|
||||||
|
select_previous = "Rune[k]"
|
||||||
|
select_next = "Rune[j]"
|
||||||
|
select_first = "Rune[g]"
|
||||||
|
select_last = "Rune[G]"
|
||||||
|
# Select the message reference (reply) of the selected channel.
|
||||||
select_reply = "Rune[s]"
|
select_reply = "Rune[s]"
|
||||||
select_pin = "Rune[p]"
|
# Reply to the selected message.
|
||||||
reply = "Rune[r]"
|
reply = "Rune[r]"
|
||||||
|
# Reply (with mention) to the selected message.
|
||||||
reply_mention = "Rune[R]"
|
reply_mention = "Rune[R]"
|
||||||
delete = "Rune[d]"
|
cancel = "Esc"
|
||||||
yank = "Rune[y]"
|
edit = "Rune[e]"
|
||||||
|
delete = "Rune[D]"
|
||||||
|
delete_confirm = "Rune[d]"
|
||||||
|
# Open the selected message's attachments or hyperlinks in the message
|
||||||
|
# using the default browser application.
|
||||||
open = "Rune[o]"
|
open = "Rune[o]"
|
||||||
|
# Yank (copy) the selected message's content/url/id.
|
||||||
|
yank_content = "Rune[y]"
|
||||||
|
yank_url = "Rune[u]"
|
||||||
|
yank_id = "Rune[i]"
|
||||||
|
|
||||||
|
# Only while typing a message
|
||||||
|
# Alt+Enter: Insert a new line to the current text.
|
||||||
[keys.message_input]
|
[keys.message_input]
|
||||||
|
# paste from clipboard (supports both text and images)
|
||||||
|
paste = "Ctrl+V"
|
||||||
send = "Enter"
|
send = "Enter"
|
||||||
editor = "Ctrl+E"
|
# Remove existing text or cancel reply.
|
||||||
cancel = "Ctrl+D"
|
cancel = "Esc"
|
||||||
|
# Complete usernames when mentioning
|
||||||
|
tab_complete = "Tab"
|
||||||
|
|
||||||
[notifications]
|
open_editor = "Ctrl+E"
|
||||||
enabled = true
|
open_file_picker = "Ctrl+\\"
|
||||||
duration = 500
|
|
||||||
[notifications.sound]
|
[keys.mentions_list]
|
||||||
enabled = true
|
up = "Ctrl+P"
|
||||||
only_on_ping = false
|
down = "Ctrl+N"
|
||||||
|
|
||||||
|
# style = { foreground = "", background = "", attributes = "" or [""] }
|
||||||
|
[theme.title]
|
||||||
|
alignment = "left" # `"left"`, `"center"`, or `"right"`.
|
||||||
|
|
||||||
|
normal_style = { attributes = "dim" }
|
||||||
|
active_style = { foreground = "green", attributes = "bold" }
|
||||||
|
|
||||||
|
[theme.border]
|
||||||
|
enabled = true
|
||||||
|
padding = [0, 0, 1, 1] # [top, bottom, left, right]
|
||||||
|
|
||||||
|
normal_style = { attributes = "dim" }
|
||||||
|
active_style = { foreground = "green", attributes = "bold" }
|
||||||
|
|
||||||
|
# `"hidden"`, `"plain"`, `"round"`, `"thick"`, or `"double"`.
|
||||||
|
normal_set = "round"
|
||||||
|
active_set = "round"
|
||||||
|
|
||||||
[theme]
|
|
||||||
border_color = "default"
|
|
||||||
border_padding = [0, 0, 1, 1]
|
|
||||||
title_color = "default"
|
|
||||||
background_color = "default"
|
|
||||||
[theme.guilds_tree]
|
[theme.guilds_tree]
|
||||||
auto_expand_folders = true
|
auto_expand_folders = true
|
||||||
channel_color = "white"
|
# Give tree-like shape
|
||||||
graphics = true
|
graphics = true
|
||||||
guild_color = "white"
|
graphics_color = "default"
|
||||||
private_channel_color = "white"
|
|
||||||
[theme.messages_text]
|
[theme.messages_list]
|
||||||
author_color = "aqua"
|
reply_indicator = ">"
|
||||||
content_color = "white"
|
forwarded_indicator = "<"
|
||||||
emoji_color = "green"
|
|
||||||
link_color = "blue"
|
mention_style = { foreground = "blue" }
|
||||||
attachment_color = "yellow"
|
emoji_style = { foreground = "green" }
|
||||||
|
url_style = { foreground = "blue" }
|
||||||
|
attachment_style = { foreground = "yellow" }
|
||||||
|
|
||||||
|
[theme.mentions_list]
|
||||||
|
# Note: width and height are capped to the avaliable space
|
||||||
|
# Minimum width
|
||||||
|
# 0 = make the list as wide as possible
|
||||||
|
min_width = 20
|
||||||
|
# Maximum height
|
||||||
|
# 0 = make the list as tall as needed
|
||||||
|
max_height = 0
|
||||||
|
|||||||
+6
-47
@@ -32,6 +32,9 @@ dpi-aware=yes
|
|||||||
# selection-target=primary
|
# selection-target=primary
|
||||||
# workers=<number of logical CPUs>
|
# workers=<number of logical CPUs>
|
||||||
|
|
||||||
|
[main]
|
||||||
|
include=/usr/share/foot/themes/gruvbox
|
||||||
|
|
||||||
[environment]
|
[environment]
|
||||||
SYSTEMD_EDITOR=/usr/bin/nvim
|
SYSTEMD_EDITOR=/usr/bin/nvim
|
||||||
EDITOR=/usr/bin/nvim
|
EDITOR=/usr/bin/nvim
|
||||||
@@ -68,50 +71,6 @@ lines=100000
|
|||||||
# hide-when-typing=no
|
# hide-when-typing=no
|
||||||
# alternate-scroll-mode=yes
|
# alternate-scroll-mode=yes
|
||||||
|
|
||||||
[colors]
|
|
||||||
alpha=0.9 # Adjust alpha to change transparency level
|
|
||||||
foreground=cdd6f4
|
|
||||||
background=1e1e2e
|
|
||||||
cursor=11111b f5e0dc
|
|
||||||
|
|
||||||
regular0=45475a
|
|
||||||
regular1=f38ba8
|
|
||||||
regular2=a6e3a1
|
|
||||||
regular3=f9e2af
|
|
||||||
regular4=89b4fa
|
|
||||||
regular5=f5c2e7
|
|
||||||
regular6=94e2d5
|
|
||||||
regular7=bac2de
|
|
||||||
|
|
||||||
bright0=585b70
|
|
||||||
bright1=f38ba8
|
|
||||||
bright2=a6e3a1
|
|
||||||
bright3=f9e2af
|
|
||||||
bright4=89b4fa
|
|
||||||
bright5=f5c2e7
|
|
||||||
bright6=94e2d5
|
|
||||||
bright7=a6adc8
|
|
||||||
|
|
||||||
## dimmed colors (see foot.ini(5) man page)
|
|
||||||
# dim0=<not set>
|
|
||||||
# ...
|
|
||||||
# dim7=<not-set>
|
|
||||||
|
|
||||||
## The remaining 256-color palette
|
|
||||||
16=fab387
|
|
||||||
17=f5e0dc
|
|
||||||
# ...
|
|
||||||
# 255 = <256-color palette #255>
|
|
||||||
|
|
||||||
# Misc colors
|
|
||||||
selection-foreground=cdd6f4
|
|
||||||
selection-background=414356
|
|
||||||
jump-labels=11111b fab387
|
|
||||||
# scrollback-indicator=<regular0> <bright4> # black-on-bright-blue
|
|
||||||
search-box-no-match=11111b f38ba8
|
|
||||||
search-box-match=cdd6f4 313244
|
|
||||||
urls=89b4fa
|
|
||||||
|
|
||||||
[csd]
|
[csd]
|
||||||
# preferred=server
|
# preferred=server
|
||||||
size=0
|
size=0
|
||||||
@@ -137,9 +96,9 @@ size=0
|
|||||||
# clipboard-paste=Control+Shift+v XF86Paste
|
# clipboard-paste=Control+Shift+v XF86Paste
|
||||||
# primary-paste=Shift+Insert
|
# primary-paste=Shift+Insert
|
||||||
search-start=Control+Shift+f
|
search-start=Control+Shift+f
|
||||||
# font-increase=Control+plus Control+equal Control+KP_Add
|
font-increase=Control+plus
|
||||||
# font-decrease=Control+minus Control+KP_Subtract
|
font-decrease=Control+minus
|
||||||
# font-reset=Control+0 Control+KP_0
|
font-reset=Control+equal
|
||||||
# spawn-terminal=Control+Shift+n
|
# spawn-terminal=Control+Shift+n
|
||||||
# minimize=none
|
# minimize=none
|
||||||
# maximize=none
|
# maximize=none
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
[main]
|
[main]
|
||||||
gtk-theme=Arc-Dark
|
gtk-theme=Arc-Dark
|
||||||
time-format=%l:%M %p
|
time-format=%H:%M
|
||||||
start-hidden=1
|
start-hidden=1
|
||||||
modules=userinfo-module;powerbar-module
|
modules=userinfo-module;powerbar-module
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8)
|
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8)
|
||||||
}
|
}
|
||||||
window {
|
window {
|
||||||
|
background-image: url("EndeavourOS_Astronaut_SpaceWalk.png");
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-position: center;
|
background-position: center;
|
||||||
|
|||||||
@@ -1,156 +0,0 @@
|
|||||||
# Syntax highlighting
|
|
||||||
# -------------------
|
|
||||||
"attribute" = "yellow"
|
|
||||||
|
|
||||||
"type" = "yellow"
|
|
||||||
"type.enum.variant" = "teal"
|
|
||||||
|
|
||||||
"constructor" = "sapphire"
|
|
||||||
|
|
||||||
"constant" = "peach"
|
|
||||||
"constant.character" = "teal"
|
|
||||||
"constant.character.escape" = "pink"
|
|
||||||
|
|
||||||
"string" = "green"
|
|
||||||
"string.regexp" = "pink"
|
|
||||||
"string.special" = "blue"
|
|
||||||
"string.special.symbol" = "red"
|
|
||||||
|
|
||||||
"comment" = { fg = "overlay2", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"variable" = "text"
|
|
||||||
"variable.parameter" = { fg = "maroon", modifiers = ["italic"] }
|
|
||||||
"variable.builtin" = "red"
|
|
||||||
"variable.other.member" = "teal"
|
|
||||||
|
|
||||||
"label" = "sapphire" # used for lifetimes
|
|
||||||
|
|
||||||
"punctuation" = "overlay2"
|
|
||||||
"punctuation.special" = "sky"
|
|
||||||
|
|
||||||
"keyword" = "mauve"
|
|
||||||
"keyword.control.conditional" = { fg = "mauve", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"operator" = "sky"
|
|
||||||
|
|
||||||
"function" = "blue"
|
|
||||||
"function.macro" = "mauve"
|
|
||||||
|
|
||||||
"tag" = "blue"
|
|
||||||
|
|
||||||
"namespace" = { fg = "yellow", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"special" = "blue" # fuzzy highlight
|
|
||||||
|
|
||||||
"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
"markup.heading.1" = "lavender"
|
|
||||||
"markup.heading.2" = "mauve"
|
|
||||||
"markup.heading.3" = "green"
|
|
||||||
"markup.heading.4" = "yellow"
|
|
||||||
"markup.heading.5" = "pink"
|
|
||||||
"markup.heading.6" = "teal"
|
|
||||||
"markup.list" = "mauve"
|
|
||||||
"markup.bold" = { modifiers = ["bold"] }
|
|
||||||
"markup.italic" = { modifiers = ["italic"] }
|
|
||||||
"markup.link.url" = { fg = "blue", modifiers = ["italic", "underlined"] }
|
|
||||||
"markup.link.text" = "blue"
|
|
||||||
"markup.raw" = "flamingo"
|
|
||||||
|
|
||||||
"diff.plus" = "green"
|
|
||||||
"diff.minus" = "red"
|
|
||||||
"diff.delta" = "blue"
|
|
||||||
|
|
||||||
# User Interface
|
|
||||||
# --------------
|
|
||||||
"ui.background" = { fg = "text", bg = "base" }
|
|
||||||
|
|
||||||
"ui.linenr" = { fg = "surface1" }
|
|
||||||
"ui.linenr.selected" = { fg = "lavender" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "subtext1", bg = "mantle" }
|
|
||||||
"ui.statusline.inactive" = { fg = "surface2", bg = "mantle" }
|
|
||||||
"ui.statusline.normal" = { fg = "base", bg = "lavender", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.select" = { fg = "base", bg = "flamingo", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.popup" = { fg = "text", bg = "surface0" }
|
|
||||||
"ui.window" = { fg = "crust" }
|
|
||||||
"ui.help" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
|
|
||||||
"ui.bufferline" = { fg = "subtext0", bg = "mantle" }
|
|
||||||
"ui.bufferline.active" = { fg = "mauve", bg = "base", underline = { color = "mauve", style = "line" } }
|
|
||||||
"ui.bufferline.background" = { bg = "crust" }
|
|
||||||
|
|
||||||
"ui.text" = "text"
|
|
||||||
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }
|
|
||||||
"ui.text.inactive" = { fg = "overlay1" }
|
|
||||||
|
|
||||||
"ui.virtual" = "overlay0"
|
|
||||||
"ui.virtual.ruler" = { bg = "surface0" }
|
|
||||||
"ui.virtual.indent-guide" = "surface0"
|
|
||||||
"ui.virtual.inlay-hint" = { fg = "surface1", bg = "mantle" }
|
|
||||||
"ui.virtual.jump-label" = { fg = "rosewater", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.selection" = { bg = "surface1" }
|
|
||||||
|
|
||||||
"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
|
|
||||||
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.cursor.primary.normal" = { fg = "base", bg = "lavender" }
|
|
||||||
"ui.cursor.primary.insert" = { fg = "base", bg = "green" }
|
|
||||||
"ui.cursor.primary.select" = { fg = "base", bg = "flamingo" }
|
|
||||||
|
|
||||||
"ui.cursor.normal" = { fg = "base", bg = "secondary_cursor_normal" }
|
|
||||||
"ui.cursor.insert" = { fg = "base", bg = "secondary_cursor_insert" }
|
|
||||||
"ui.cursor.select" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "cursorline" }
|
|
||||||
|
|
||||||
"ui.highlight" = { bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.menu" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
|
|
||||||
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
|
|
||||||
"diagnostic.info" = { underline = { color = "sky", style = "curl" } }
|
|
||||||
"diagnostic.hint" = { underline = { color = "teal", style = "curl" } }
|
|
||||||
|
|
||||||
error = "red"
|
|
||||||
warning = "yellow"
|
|
||||||
info = "sky"
|
|
||||||
hint = "teal"
|
|
||||||
|
|
||||||
[palette]
|
|
||||||
rosewater = "#f2d5cf"
|
|
||||||
flamingo = "#eebebe"
|
|
||||||
pink = "#f4b8e4"
|
|
||||||
mauve = "#ca9ee6"
|
|
||||||
red = "#e78284"
|
|
||||||
maroon = "#ea999c"
|
|
||||||
peach = "#ef9f76"
|
|
||||||
yellow = "#e5c890"
|
|
||||||
green = "#a6d189"
|
|
||||||
teal = "#81c8be"
|
|
||||||
sky = "#99d1db"
|
|
||||||
sapphire = "#85c1dc"
|
|
||||||
blue = "#8caaee"
|
|
||||||
lavender = "#babbf1"
|
|
||||||
text = "#c6d0f5"
|
|
||||||
subtext1 = "#b5bfe2"
|
|
||||||
subtext0 = "#a5adce"
|
|
||||||
overlay2 = "#949cbb"
|
|
||||||
overlay1 = "#838ba7"
|
|
||||||
overlay0 = "#737994"
|
|
||||||
surface2 = "#626880"
|
|
||||||
surface1 = "#51576d"
|
|
||||||
surface0 = "#414559"
|
|
||||||
base = "#303446"
|
|
||||||
mantle = "#292c3c"
|
|
||||||
crust = "#232634"
|
|
||||||
|
|
||||||
cursorline = "#3b3f52"
|
|
||||||
secondary_cursor = "#b8a5a6"
|
|
||||||
secondary_cursor_normal = "#9192be"
|
|
||||||
secondary_cursor_insert = "#83a275"
|
|
||||||
@@ -1,156 +0,0 @@
|
|||||||
# Syntax highlighting
|
|
||||||
# -------------------
|
|
||||||
"attribute" = "yellow"
|
|
||||||
|
|
||||||
"type" = "yellow"
|
|
||||||
"type.enum.variant" = "teal"
|
|
||||||
|
|
||||||
"constructor" = "sapphire"
|
|
||||||
|
|
||||||
"constant" = "peach"
|
|
||||||
"constant.character" = "teal"
|
|
||||||
"constant.character.escape" = "pink"
|
|
||||||
|
|
||||||
"string" = "green"
|
|
||||||
"string.regexp" = "pink"
|
|
||||||
"string.special" = "blue"
|
|
||||||
"string.special.symbol" = "red"
|
|
||||||
|
|
||||||
"comment" = { fg = "overlay2", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"variable" = "text"
|
|
||||||
"variable.parameter" = { fg = "maroon", modifiers = ["italic"] }
|
|
||||||
"variable.builtin" = "red"
|
|
||||||
"variable.other.member" = "teal"
|
|
||||||
|
|
||||||
"label" = "sapphire" # used for lifetimes
|
|
||||||
|
|
||||||
"punctuation" = "overlay2"
|
|
||||||
"punctuation.special" = "sky"
|
|
||||||
|
|
||||||
"keyword" = "mauve"
|
|
||||||
"keyword.control.conditional" = { fg = "mauve", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"operator" = "sky"
|
|
||||||
|
|
||||||
"function" = "blue"
|
|
||||||
"function.macro" = "mauve"
|
|
||||||
|
|
||||||
"tag" = "blue"
|
|
||||||
|
|
||||||
"namespace" = { fg = "yellow", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"special" = "blue" # fuzzy highlight
|
|
||||||
|
|
||||||
"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
"markup.heading.1" = "lavender"
|
|
||||||
"markup.heading.2" = "mauve"
|
|
||||||
"markup.heading.3" = "green"
|
|
||||||
"markup.heading.4" = "yellow"
|
|
||||||
"markup.heading.5" = "pink"
|
|
||||||
"markup.heading.6" = "teal"
|
|
||||||
"markup.list" = "mauve"
|
|
||||||
"markup.bold" = { modifiers = ["bold"] }
|
|
||||||
"markup.italic" = { modifiers = ["italic"] }
|
|
||||||
"markup.link.url" = { fg = "blue", modifiers = ["italic", "underlined"] }
|
|
||||||
"markup.link.text" = "blue"
|
|
||||||
"markup.raw" = "flamingo"
|
|
||||||
|
|
||||||
"diff.plus" = "green"
|
|
||||||
"diff.minus" = "red"
|
|
||||||
"diff.delta" = "blue"
|
|
||||||
|
|
||||||
# User Interface
|
|
||||||
# --------------
|
|
||||||
"ui.background" = { fg = "text", bg = "base" }
|
|
||||||
|
|
||||||
"ui.linenr" = { fg = "surface1" }
|
|
||||||
"ui.linenr.selected" = { fg = "lavender" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "subtext1", bg = "mantle" }
|
|
||||||
"ui.statusline.inactive" = { fg = "surface2", bg = "mantle" }
|
|
||||||
"ui.statusline.normal" = { fg = "base", bg = "lavender", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.select" = { fg = "base", bg = "flamingo", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.popup" = { fg = "text", bg = "surface0" }
|
|
||||||
"ui.window" = { fg = "crust" }
|
|
||||||
"ui.help" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
|
|
||||||
"ui.bufferline" = { fg = "subtext0", bg = "mantle" }
|
|
||||||
"ui.bufferline.active" = { fg = "mauve", bg = "base", underline = { color = "mauve", style = "line" } }
|
|
||||||
"ui.bufferline.background" = { bg = "crust" }
|
|
||||||
|
|
||||||
"ui.text" = "text"
|
|
||||||
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }
|
|
||||||
"ui.text.inactive" = { fg = "overlay1" }
|
|
||||||
|
|
||||||
"ui.virtual" = "overlay0"
|
|
||||||
"ui.virtual.ruler" = { bg = "surface0" }
|
|
||||||
"ui.virtual.indent-guide" = "surface0"
|
|
||||||
"ui.virtual.inlay-hint" = { fg = "surface1", bg = "mantle" }
|
|
||||||
"ui.virtual.jump-label" = { fg = "rosewater", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.selection" = { bg = "surface1" }
|
|
||||||
|
|
||||||
"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
|
|
||||||
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.cursor.primary.normal" = { fg = "base", bg = "lavender" }
|
|
||||||
"ui.cursor.primary.insert" = { fg = "base", bg = "green" }
|
|
||||||
"ui.cursor.primary.select" = { fg = "base", bg = "flamingo" }
|
|
||||||
|
|
||||||
"ui.cursor.normal" = { fg = "base", bg = "secondary_cursor_normal" }
|
|
||||||
"ui.cursor.insert" = { fg = "base", bg = "secondary_cursor_insert" }
|
|
||||||
"ui.cursor.select" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "cursorline" }
|
|
||||||
|
|
||||||
"ui.highlight" = { bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.menu" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
|
|
||||||
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
|
|
||||||
"diagnostic.info" = { underline = { color = "sky", style = "curl" } }
|
|
||||||
"diagnostic.hint" = { underline = { color = "teal", style = "curl" } }
|
|
||||||
|
|
||||||
error = "red"
|
|
||||||
warning = "yellow"
|
|
||||||
info = "sky"
|
|
||||||
hint = "teal"
|
|
||||||
|
|
||||||
[palette]
|
|
||||||
rosewater = "#dc8a78"
|
|
||||||
flamingo = "#dd7878"
|
|
||||||
pink = "#ea76cb"
|
|
||||||
mauve = "#8839ef"
|
|
||||||
red = "#d20f39"
|
|
||||||
maroon = "#e64553"
|
|
||||||
peach = "#fe640b"
|
|
||||||
yellow = "#df8e1d"
|
|
||||||
green = "#40a02b"
|
|
||||||
teal = "#179299"
|
|
||||||
sky = "#04a5e5"
|
|
||||||
sapphire = "#209fb5"
|
|
||||||
blue = "#1e66f5"
|
|
||||||
lavender = "#7287fd"
|
|
||||||
text = "#4c4f69"
|
|
||||||
subtext1 = "#5c5f77"
|
|
||||||
subtext0 = "#6c6f85"
|
|
||||||
overlay2 = "#7c7f93"
|
|
||||||
overlay1 = "#8c8fa1"
|
|
||||||
overlay0 = "#9ca0b0"
|
|
||||||
surface2 = "#acb0be"
|
|
||||||
surface1 = "#bcc0cc"
|
|
||||||
surface0 = "#ccd0da"
|
|
||||||
base = "#eff1f5"
|
|
||||||
mantle = "#e6e9ef"
|
|
||||||
crust = "#dce0e8"
|
|
||||||
|
|
||||||
cursorline = "#e8ecf1"
|
|
||||||
secondary_cursor = "#e1a99d"
|
|
||||||
secondary_cursor_normal = "#97a7fb"
|
|
||||||
secondary_cursor_insert = "#74b867"
|
|
||||||
@@ -1,159 +0,0 @@
|
|||||||
# Syntax highlighting
|
|
||||||
# -------------------
|
|
||||||
"attribute" = "yellow"
|
|
||||||
|
|
||||||
"type" = "yellow"
|
|
||||||
"type.enum.variant" = "teal"
|
|
||||||
|
|
||||||
"constructor" = "sapphire"
|
|
||||||
|
|
||||||
"constant" = "peach"
|
|
||||||
"constant.character" = "teal"
|
|
||||||
"constant.character.escape" = "pink"
|
|
||||||
|
|
||||||
"string" = "green"
|
|
||||||
"string.regexp" = "pink"
|
|
||||||
"string.special" = "blue"
|
|
||||||
"string.special.symbol" = "red"
|
|
||||||
|
|
||||||
"comment" = { fg = "overlay2", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"variable" = "text"
|
|
||||||
"variable.parameter" = { fg = "maroon", modifiers = ["italic"] }
|
|
||||||
"variable.builtin" = "red"
|
|
||||||
"variable.other.member" = "teal"
|
|
||||||
|
|
||||||
"label" = "sapphire" # used for lifetimes
|
|
||||||
|
|
||||||
"punctuation" = "overlay2"
|
|
||||||
"punctuation.special" = "sky"
|
|
||||||
|
|
||||||
"keyword" = "mauve"
|
|
||||||
"keyword.control.conditional" = { fg = "mauve", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"operator" = "sky"
|
|
||||||
|
|
||||||
"function" = "blue"
|
|
||||||
"function.macro" = "mauve"
|
|
||||||
|
|
||||||
"tag" = "blue"
|
|
||||||
|
|
||||||
"namespace" = { fg = "yellow", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"special" = "blue" # fuzzy highlight
|
|
||||||
|
|
||||||
"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
"markup.heading.1" = "lavender"
|
|
||||||
"markup.heading.2" = "mauve"
|
|
||||||
"markup.heading.3" = "green"
|
|
||||||
"markup.heading.4" = "yellow"
|
|
||||||
"markup.heading.5" = "pink"
|
|
||||||
"markup.heading.6" = "teal"
|
|
||||||
"markup.list" = "mauve"
|
|
||||||
"markup.bold" = { modifiers = ["bold"] }
|
|
||||||
"markup.italic" = { modifiers = ["italic"] }
|
|
||||||
"markup.link.url" = { fg = "blue", modifiers = ["italic", "underlined"] }
|
|
||||||
"markup.link.text" = "blue"
|
|
||||||
"markup.raw" = "flamingo"
|
|
||||||
|
|
||||||
"diff.plus" = "green"
|
|
||||||
"diff.minus" = "red"
|
|
||||||
"diff.delta" = "blue"
|
|
||||||
|
|
||||||
# User Interface
|
|
||||||
# --------------
|
|
||||||
|
|
||||||
# fix issue with background color getting messed up in tmux...
|
|
||||||
"ui.background" = { }
|
|
||||||
# "ui.background" = { fg = "text", bg = "base" }
|
|
||||||
|
|
||||||
"ui.linenr" = { fg = "surface1" }
|
|
||||||
"ui.linenr.selected" = { fg = "lavender" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "subtext1", bg = "mantle" }
|
|
||||||
"ui.statusline.inactive" = { fg = "surface2", bg = "mantle" }
|
|
||||||
"ui.statusline.normal" = { fg = "base", bg = "lavender", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.select" = { fg = "base", bg = "flamingo", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.popup" = { fg = "text", bg = "surface0" }
|
|
||||||
"ui.window" = { fg = "crust" }
|
|
||||||
"ui.help" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
|
|
||||||
"ui.bufferline" = { fg = "subtext0", bg = "mantle" }
|
|
||||||
"ui.bufferline.active" = { fg = "mauve", bg = "base", underline = { color = "mauve", style = "line" } }
|
|
||||||
"ui.bufferline.background" = { bg = "crust" }
|
|
||||||
|
|
||||||
"ui.text" = "text"
|
|
||||||
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }
|
|
||||||
"ui.text.inactive" = { fg = "overlay1" }
|
|
||||||
|
|
||||||
"ui.virtual" = "overlay0"
|
|
||||||
"ui.virtual.ruler" = { bg = "surface0" }
|
|
||||||
"ui.virtual.indent-guide" = "surface0"
|
|
||||||
"ui.virtual.inlay-hint" = { fg = "surface1", bg = "mantle" }
|
|
||||||
"ui.virtual.jump-label" = { fg = "rosewater", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.selection" = { bg = "surface1" }
|
|
||||||
|
|
||||||
"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
|
|
||||||
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.cursor.primary.normal" = { fg = "base", bg = "lavender" }
|
|
||||||
"ui.cursor.primary.insert" = { fg = "base", bg = "green" }
|
|
||||||
"ui.cursor.primary.select" = { fg = "base", bg = "flamingo" }
|
|
||||||
|
|
||||||
"ui.cursor.normal" = { fg = "base", bg = "secondary_cursor_normal" }
|
|
||||||
"ui.cursor.insert" = { fg = "base", bg = "secondary_cursor_insert" }
|
|
||||||
"ui.cursor.select" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "cursorline" }
|
|
||||||
|
|
||||||
"ui.highlight" = { bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.menu" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
|
|
||||||
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
|
|
||||||
"diagnostic.info" = { underline = { color = "sky", style = "curl" } }
|
|
||||||
"diagnostic.hint" = { underline = { color = "teal", style = "curl" } }
|
|
||||||
|
|
||||||
error = "red"
|
|
||||||
warning = "yellow"
|
|
||||||
info = "sky"
|
|
||||||
hint = "teal"
|
|
||||||
|
|
||||||
[palette]
|
|
||||||
rosewater = "#f4dbd6"
|
|
||||||
flamingo = "#f0c6c6"
|
|
||||||
pink = "#f5bde6"
|
|
||||||
mauve = "#c6a0f6"
|
|
||||||
red = "#ed8796"
|
|
||||||
maroon = "#ee99a0"
|
|
||||||
peach = "#f5a97f"
|
|
||||||
yellow = "#eed49f"
|
|
||||||
green = "#a6da95"
|
|
||||||
teal = "#8bd5ca"
|
|
||||||
sky = "#91d7e3"
|
|
||||||
sapphire = "#7dc4e4"
|
|
||||||
blue = "#8aadf4"
|
|
||||||
lavender = "#b7bdf8"
|
|
||||||
text = "#cad3f5"
|
|
||||||
subtext1 = "#b8c0e0"
|
|
||||||
subtext0 = "#a5adcb"
|
|
||||||
overlay2 = "#939ab7"
|
|
||||||
overlay1 = "#8087a2"
|
|
||||||
overlay0 = "#6e738d"
|
|
||||||
surface2 = "#5b6078"
|
|
||||||
surface1 = "#494d64"
|
|
||||||
surface0 = "#363a4f"
|
|
||||||
base = "#24273a"
|
|
||||||
mantle = "#1e2030"
|
|
||||||
crust = "#181926"
|
|
||||||
|
|
||||||
cursorline = "#303347"
|
|
||||||
secondary_cursor = "#b6a6a7"
|
|
||||||
secondary_cursor_normal = "#8b91bf"
|
|
||||||
secondary_cursor_insert = "#80a57a"
|
|
||||||
@@ -1,156 +0,0 @@
|
|||||||
# Syntax highlighting
|
|
||||||
# -------------------
|
|
||||||
"attribute" = "yellow"
|
|
||||||
|
|
||||||
"type" = "yellow"
|
|
||||||
"type.enum.variant" = "teal"
|
|
||||||
|
|
||||||
"constructor" = "sapphire"
|
|
||||||
|
|
||||||
"constant" = "peach"
|
|
||||||
"constant.character" = "teal"
|
|
||||||
"constant.character.escape" = "pink"
|
|
||||||
|
|
||||||
"string" = "green"
|
|
||||||
"string.regexp" = "pink"
|
|
||||||
"string.special" = "blue"
|
|
||||||
"string.special.symbol" = "red"
|
|
||||||
|
|
||||||
"comment" = { fg = "overlay2", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"variable" = "text"
|
|
||||||
"variable.parameter" = { fg = "maroon", modifiers = ["italic"] }
|
|
||||||
"variable.builtin" = "red"
|
|
||||||
"variable.other.member" = "teal"
|
|
||||||
|
|
||||||
"label" = "sapphire" # used for lifetimes
|
|
||||||
|
|
||||||
"punctuation" = "overlay2"
|
|
||||||
"punctuation.special" = "sky"
|
|
||||||
|
|
||||||
"keyword" = "mauve"
|
|
||||||
"keyword.control.conditional" = { fg = "mauve", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"operator" = "sky"
|
|
||||||
|
|
||||||
"function" = "blue"
|
|
||||||
"function.macro" = "mauve"
|
|
||||||
|
|
||||||
"tag" = "blue"
|
|
||||||
|
|
||||||
"namespace" = { fg = "yellow", modifiers = ["italic"] }
|
|
||||||
|
|
||||||
"special" = "blue" # fuzzy highlight
|
|
||||||
|
|
||||||
"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
"markup.heading.1" = "lavender"
|
|
||||||
"markup.heading.2" = "mauve"
|
|
||||||
"markup.heading.3" = "green"
|
|
||||||
"markup.heading.4" = "yellow"
|
|
||||||
"markup.heading.5" = "pink"
|
|
||||||
"markup.heading.6" = "teal"
|
|
||||||
"markup.list" = "mauve"
|
|
||||||
"markup.bold" = { modifiers = ["bold"] }
|
|
||||||
"markup.italic" = { modifiers = ["italic"] }
|
|
||||||
"markup.link.url" = { fg = "blue", modifiers = ["italic", "underlined"] }
|
|
||||||
"markup.link.text" = "blue"
|
|
||||||
"markup.raw" = "flamingo"
|
|
||||||
|
|
||||||
"diff.plus" = "green"
|
|
||||||
"diff.minus" = "red"
|
|
||||||
"diff.delta" = "blue"
|
|
||||||
|
|
||||||
# User Interface
|
|
||||||
# --------------
|
|
||||||
"ui.background" = { fg = "text", bg = "base" }
|
|
||||||
|
|
||||||
"ui.linenr" = { fg = "surface1" }
|
|
||||||
"ui.linenr.selected" = { fg = "lavender" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "subtext1", bg = "mantle" }
|
|
||||||
"ui.statusline.inactive" = { fg = "surface2", bg = "mantle" }
|
|
||||||
"ui.statusline.normal" = { fg = "base", bg = "lavender", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.select" = { fg = "base", bg = "flamingo", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.popup" = { fg = "text", bg = "surface0" }
|
|
||||||
"ui.window" = { fg = "crust" }
|
|
||||||
"ui.help" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
|
|
||||||
"ui.bufferline" = { fg = "subtext0", bg = "mantle" }
|
|
||||||
"ui.bufferline.active" = { fg = "mauve", bg = "base", underline = { color = "mauve", style = "line" } }
|
|
||||||
"ui.bufferline.background" = { bg = "crust" }
|
|
||||||
|
|
||||||
"ui.text" = "text"
|
|
||||||
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }
|
|
||||||
"ui.text.inactive" = { fg = "overlay1" }
|
|
||||||
|
|
||||||
"ui.virtual" = "overlay0"
|
|
||||||
"ui.virtual.ruler" = { bg = "surface0" }
|
|
||||||
"ui.virtual.indent-guide" = "surface0"
|
|
||||||
"ui.virtual.inlay-hint" = { fg = "surface1", bg = "mantle" }
|
|
||||||
"ui.virtual.jump-label" = { fg = "rosewater", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.selection" = { bg = "surface1" }
|
|
||||||
|
|
||||||
"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
|
|
||||||
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.cursor.primary.normal" = { fg = "base", bg = "lavender" }
|
|
||||||
"ui.cursor.primary.insert" = { fg = "base", bg = "green" }
|
|
||||||
"ui.cursor.primary.select" = { fg = "base", bg = "flamingo" }
|
|
||||||
|
|
||||||
"ui.cursor.normal" = { fg = "base", bg = "secondary_cursor_normal" }
|
|
||||||
"ui.cursor.insert" = { fg = "base", bg = "secondary_cursor_insert" }
|
|
||||||
"ui.cursor.select" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "cursorline" }
|
|
||||||
|
|
||||||
"ui.highlight" = { bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.menu" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
|
|
||||||
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
|
|
||||||
"diagnostic.info" = { underline = { color = "sky", style = "curl" } }
|
|
||||||
"diagnostic.hint" = { underline = { color = "teal", style = "curl" } }
|
|
||||||
|
|
||||||
error = "red"
|
|
||||||
warning = "yellow"
|
|
||||||
info = "sky"
|
|
||||||
hint = "teal"
|
|
||||||
|
|
||||||
[palette]
|
|
||||||
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"
|
|
||||||
text = "#cdd6f4"
|
|
||||||
subtext1 = "#bac2de"
|
|
||||||
subtext0 = "#a6adc8"
|
|
||||||
overlay2 = "#9399b2"
|
|
||||||
overlay1 = "#7f849c"
|
|
||||||
overlay0 = "#6c7086"
|
|
||||||
surface2 = "#585b70"
|
|
||||||
surface1 = "#45475a"
|
|
||||||
surface0 = "#313244"
|
|
||||||
base = "#1e1e2e"
|
|
||||||
mantle = "#181825"
|
|
||||||
crust = "#11111b"
|
|
||||||
|
|
||||||
cursorline = "#2a2b3c"
|
|
||||||
secondary_cursor = "#b5a6a8"
|
|
||||||
secondary_cursor_normal = "#878ec0"
|
|
||||||
secondary_cursor_insert = "#7ea87f"
|
|
||||||
@@ -1,156 +0,0 @@
|
|||||||
# Syntax highlighting
|
|
||||||
# -------------------
|
|
||||||
"attribute" = "yellow"
|
|
||||||
|
|
||||||
"type" = "yellow"
|
|
||||||
"type.enum.variant" = "teal"
|
|
||||||
|
|
||||||
"constructor" = "sapphire"
|
|
||||||
|
|
||||||
"constant" = "peach"
|
|
||||||
"constant.character" = "teal"
|
|
||||||
"constant.character.escape" = "pink"
|
|
||||||
|
|
||||||
"string" = "green"
|
|
||||||
"string.regexp" = "pink"
|
|
||||||
"string.special" = "blue"
|
|
||||||
"string.special.symbol" = "red"
|
|
||||||
|
|
||||||
"comment" = { fg = "overlay2" }
|
|
||||||
|
|
||||||
"variable" = "text"
|
|
||||||
"variable.parameter" = { fg = "maroon" }
|
|
||||||
"variable.builtin" = "red"
|
|
||||||
"variable.other.member" = "teal"
|
|
||||||
|
|
||||||
"label" = "sapphire" # used for lifetimes
|
|
||||||
|
|
||||||
"punctuation" = "overlay2"
|
|
||||||
"punctuation.special" = "sky"
|
|
||||||
|
|
||||||
"keyword" = "mauve"
|
|
||||||
"keyword.control.conditional" = { fg = "mauve" }
|
|
||||||
|
|
||||||
"operator" = "sky"
|
|
||||||
|
|
||||||
"function" = "blue"
|
|
||||||
"function.macro" = "mauve"
|
|
||||||
|
|
||||||
"tag" = "blue"
|
|
||||||
|
|
||||||
"namespace" = { fg = "yellow" }
|
|
||||||
|
|
||||||
"special" = "blue" # fuzzy highlight
|
|
||||||
|
|
||||||
"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
"markup.heading.1" = "lavender"
|
|
||||||
"markup.heading.2" = "mauve"
|
|
||||||
"markup.heading.3" = "green"
|
|
||||||
"markup.heading.4" = "yellow"
|
|
||||||
"markup.heading.5" = "pink"
|
|
||||||
"markup.heading.6" = "teal"
|
|
||||||
"markup.list" = "mauve"
|
|
||||||
"markup.bold" = { modifiers = ["bold"] }
|
|
||||||
"markup.italic" = { modifiers = ["italic"] }
|
|
||||||
"markup.link.url" = { fg = "blue", modifiers = ["underlined"] }
|
|
||||||
"markup.link.text" = "blue"
|
|
||||||
"markup.raw" = "flamingo"
|
|
||||||
|
|
||||||
"diff.plus" = "green"
|
|
||||||
"diff.minus" = "red"
|
|
||||||
"diff.delta" = "blue"
|
|
||||||
|
|
||||||
# User Interface
|
|
||||||
# --------------
|
|
||||||
"ui.background" = { fg = "text", bg = "base" }
|
|
||||||
|
|
||||||
"ui.linenr" = { fg = "surface1" }
|
|
||||||
"ui.linenr.selected" = { fg = "lavender" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "subtext1", bg = "mantle" }
|
|
||||||
"ui.statusline.inactive" = { fg = "surface2", bg = "mantle" }
|
|
||||||
"ui.statusline.normal" = { fg = "base", bg = "lavender", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.select" = { fg = "base", bg = "flamingo", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.popup" = { fg = "text", bg = "surface0" }
|
|
||||||
"ui.window" = { fg = "crust" }
|
|
||||||
"ui.help" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
|
|
||||||
"ui.bufferline" = { fg = "subtext0", bg = "mantle" }
|
|
||||||
"ui.bufferline.active" = { fg = "mauve", bg = "base", underline = { color = "mauve", style = "line" } }
|
|
||||||
"ui.bufferline.background" = { bg = "crust" }
|
|
||||||
|
|
||||||
"ui.text" = "text"
|
|
||||||
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }
|
|
||||||
"ui.text.inactive" = { fg = "overlay1" }
|
|
||||||
|
|
||||||
"ui.virtual" = "overlay0"
|
|
||||||
"ui.virtual.ruler" = { bg = "surface0" }
|
|
||||||
"ui.virtual.indent-guide" = "surface0"
|
|
||||||
"ui.virtual.inlay-hint" = { fg = "surface1", bg = "mantle" }
|
|
||||||
"ui.virtual.jump-label" = { fg = "rosewater", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.selection" = { bg = "surface1" }
|
|
||||||
|
|
||||||
"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
|
|
||||||
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.cursor.primary.normal" = { fg = "base", bg = "lavender" }
|
|
||||||
"ui.cursor.primary.insert" = { fg = "base", bg = "green" }
|
|
||||||
"ui.cursor.primary.select" = { fg = "base", bg = "flamingo" }
|
|
||||||
|
|
||||||
"ui.cursor.normal" = { fg = "base", bg = "secondary_cursor_normal" }
|
|
||||||
"ui.cursor.insert" = { fg = "base", bg = "secondary_cursor_insert" }
|
|
||||||
"ui.cursor.select" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "cursorline" }
|
|
||||||
|
|
||||||
"ui.highlight" = { bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.menu" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
|
|
||||||
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
|
|
||||||
"diagnostic.info" = { underline = { color = "sky", style = "curl" } }
|
|
||||||
"diagnostic.hint" = { underline = { color = "teal", style = "curl" } }
|
|
||||||
|
|
||||||
error = "red"
|
|
||||||
warning = "yellow"
|
|
||||||
info = "sky"
|
|
||||||
hint = "teal"
|
|
||||||
|
|
||||||
[palette]
|
|
||||||
rosewater = "#f2d5cf"
|
|
||||||
flamingo = "#eebebe"
|
|
||||||
pink = "#f4b8e4"
|
|
||||||
mauve = "#ca9ee6"
|
|
||||||
red = "#e78284"
|
|
||||||
maroon = "#ea999c"
|
|
||||||
peach = "#ef9f76"
|
|
||||||
yellow = "#e5c890"
|
|
||||||
green = "#a6d189"
|
|
||||||
teal = "#81c8be"
|
|
||||||
sky = "#99d1db"
|
|
||||||
sapphire = "#85c1dc"
|
|
||||||
blue = "#8caaee"
|
|
||||||
lavender = "#babbf1"
|
|
||||||
text = "#c6d0f5"
|
|
||||||
subtext1 = "#b5bfe2"
|
|
||||||
subtext0 = "#a5adce"
|
|
||||||
overlay2 = "#949cbb"
|
|
||||||
overlay1 = "#838ba7"
|
|
||||||
overlay0 = "#737994"
|
|
||||||
surface2 = "#626880"
|
|
||||||
surface1 = "#51576d"
|
|
||||||
surface0 = "#414559"
|
|
||||||
base = "#303446"
|
|
||||||
mantle = "#292c3c"
|
|
||||||
crust = "#232634"
|
|
||||||
|
|
||||||
cursorline = "#3b3f52"
|
|
||||||
secondary_cursor = "#b8a5a6"
|
|
||||||
secondary_cursor_normal = "#9192be"
|
|
||||||
secondary_cursor_insert = "#83a275"
|
|
||||||
@@ -1,156 +0,0 @@
|
|||||||
# Syntax highlighting
|
|
||||||
# -------------------
|
|
||||||
"attribute" = "yellow"
|
|
||||||
|
|
||||||
"type" = "yellow"
|
|
||||||
"type.enum.variant" = "teal"
|
|
||||||
|
|
||||||
"constructor" = "sapphire"
|
|
||||||
|
|
||||||
"constant" = "peach"
|
|
||||||
"constant.character" = "teal"
|
|
||||||
"constant.character.escape" = "pink"
|
|
||||||
|
|
||||||
"string" = "green"
|
|
||||||
"string.regexp" = "pink"
|
|
||||||
"string.special" = "blue"
|
|
||||||
"string.special.symbol" = "red"
|
|
||||||
|
|
||||||
"comment" = { fg = "overlay2" }
|
|
||||||
|
|
||||||
"variable" = "text"
|
|
||||||
"variable.parameter" = { fg = "maroon" }
|
|
||||||
"variable.builtin" = "red"
|
|
||||||
"variable.other.member" = "teal"
|
|
||||||
|
|
||||||
"label" = "sapphire" # used for lifetimes
|
|
||||||
|
|
||||||
"punctuation" = "overlay2"
|
|
||||||
"punctuation.special" = "sky"
|
|
||||||
|
|
||||||
"keyword" = "mauve"
|
|
||||||
"keyword.control.conditional" = { fg = "mauve" }
|
|
||||||
|
|
||||||
"operator" = "sky"
|
|
||||||
|
|
||||||
"function" = "blue"
|
|
||||||
"function.macro" = "mauve"
|
|
||||||
|
|
||||||
"tag" = "blue"
|
|
||||||
|
|
||||||
"namespace" = { fg = "yellow" }
|
|
||||||
|
|
||||||
"special" = "blue" # fuzzy highlight
|
|
||||||
|
|
||||||
"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
"markup.heading.1" = "lavender"
|
|
||||||
"markup.heading.2" = "mauve"
|
|
||||||
"markup.heading.3" = "green"
|
|
||||||
"markup.heading.4" = "yellow"
|
|
||||||
"markup.heading.5" = "pink"
|
|
||||||
"markup.heading.6" = "teal"
|
|
||||||
"markup.list" = "mauve"
|
|
||||||
"markup.bold" = { modifiers = ["bold"] }
|
|
||||||
"markup.italic" = { modifiers = ["italic"] }
|
|
||||||
"markup.link.url" = { fg = "blue", modifiers = ["underlined"] }
|
|
||||||
"markup.link.text" = "blue"
|
|
||||||
"markup.raw" = "flamingo"
|
|
||||||
|
|
||||||
"diff.plus" = "green"
|
|
||||||
"diff.minus" = "red"
|
|
||||||
"diff.delta" = "blue"
|
|
||||||
|
|
||||||
# User Interface
|
|
||||||
# --------------
|
|
||||||
"ui.background" = { fg = "text", bg = "base" }
|
|
||||||
|
|
||||||
"ui.linenr" = { fg = "surface1" }
|
|
||||||
"ui.linenr.selected" = { fg = "lavender" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "subtext1", bg = "mantle" }
|
|
||||||
"ui.statusline.inactive" = { fg = "surface2", bg = "mantle" }
|
|
||||||
"ui.statusline.normal" = { fg = "base", bg = "lavender", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.select" = { fg = "base", bg = "flamingo", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.popup" = { fg = "text", bg = "surface0" }
|
|
||||||
"ui.window" = { fg = "crust" }
|
|
||||||
"ui.help" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
|
|
||||||
"ui.bufferline" = { fg = "subtext0", bg = "mantle" }
|
|
||||||
"ui.bufferline.active" = { fg = "mauve", bg = "base", underline = { color = "mauve", style = "line" } }
|
|
||||||
"ui.bufferline.background" = { bg = "crust" }
|
|
||||||
|
|
||||||
"ui.text" = "text"
|
|
||||||
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }
|
|
||||||
"ui.text.inactive" = { fg = "overlay1" }
|
|
||||||
|
|
||||||
"ui.virtual" = "overlay0"
|
|
||||||
"ui.virtual.ruler" = { bg = "surface0" }
|
|
||||||
"ui.virtual.indent-guide" = "surface0"
|
|
||||||
"ui.virtual.inlay-hint" = { fg = "surface1", bg = "mantle" }
|
|
||||||
"ui.virtual.jump-label" = { fg = "rosewater", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.selection" = { bg = "surface1" }
|
|
||||||
|
|
||||||
"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
|
|
||||||
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.cursor.primary.normal" = { fg = "base", bg = "lavender" }
|
|
||||||
"ui.cursor.primary.insert" = { fg = "base", bg = "green" }
|
|
||||||
"ui.cursor.primary.select" = { fg = "base", bg = "flamingo" }
|
|
||||||
|
|
||||||
"ui.cursor.normal" = { fg = "base", bg = "secondary_cursor_normal" }
|
|
||||||
"ui.cursor.insert" = { fg = "base", bg = "secondary_cursor_insert" }
|
|
||||||
"ui.cursor.select" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "cursorline" }
|
|
||||||
|
|
||||||
"ui.highlight" = { bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.menu" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
|
|
||||||
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
|
|
||||||
"diagnostic.info" = { underline = { color = "sky", style = "curl" } }
|
|
||||||
"diagnostic.hint" = { underline = { color = "teal", style = "curl" } }
|
|
||||||
|
|
||||||
error = "red"
|
|
||||||
warning = "yellow"
|
|
||||||
info = "sky"
|
|
||||||
hint = "teal"
|
|
||||||
|
|
||||||
[palette]
|
|
||||||
rosewater = "#dc8a78"
|
|
||||||
flamingo = "#dd7878"
|
|
||||||
pink = "#ea76cb"
|
|
||||||
mauve = "#8839ef"
|
|
||||||
red = "#d20f39"
|
|
||||||
maroon = "#e64553"
|
|
||||||
peach = "#fe640b"
|
|
||||||
yellow = "#df8e1d"
|
|
||||||
green = "#40a02b"
|
|
||||||
teal = "#179299"
|
|
||||||
sky = "#04a5e5"
|
|
||||||
sapphire = "#209fb5"
|
|
||||||
blue = "#1e66f5"
|
|
||||||
lavender = "#7287fd"
|
|
||||||
text = "#4c4f69"
|
|
||||||
subtext1 = "#5c5f77"
|
|
||||||
subtext0 = "#6c6f85"
|
|
||||||
overlay2 = "#7c7f93"
|
|
||||||
overlay1 = "#8c8fa1"
|
|
||||||
overlay0 = "#9ca0b0"
|
|
||||||
surface2 = "#acb0be"
|
|
||||||
surface1 = "#bcc0cc"
|
|
||||||
surface0 = "#ccd0da"
|
|
||||||
base = "#eff1f5"
|
|
||||||
mantle = "#e6e9ef"
|
|
||||||
crust = "#dce0e8"
|
|
||||||
|
|
||||||
cursorline = "#e8ecf1"
|
|
||||||
secondary_cursor = "#e1a99d"
|
|
||||||
secondary_cursor_normal = "#97a7fb"
|
|
||||||
secondary_cursor_insert = "#74b867"
|
|
||||||
@@ -1,156 +0,0 @@
|
|||||||
# Syntax highlighting
|
|
||||||
# -------------------
|
|
||||||
"attribute" = "yellow"
|
|
||||||
|
|
||||||
"type" = "yellow"
|
|
||||||
"type.enum.variant" = "teal"
|
|
||||||
|
|
||||||
"constructor" = "sapphire"
|
|
||||||
|
|
||||||
"constant" = "peach"
|
|
||||||
"constant.character" = "teal"
|
|
||||||
"constant.character.escape" = "pink"
|
|
||||||
|
|
||||||
"string" = "green"
|
|
||||||
"string.regexp" = "pink"
|
|
||||||
"string.special" = "blue"
|
|
||||||
"string.special.symbol" = "red"
|
|
||||||
|
|
||||||
"comment" = { fg = "overlay2" }
|
|
||||||
|
|
||||||
"variable" = "text"
|
|
||||||
"variable.parameter" = { fg = "maroon" }
|
|
||||||
"variable.builtin" = "red"
|
|
||||||
"variable.other.member" = "teal"
|
|
||||||
|
|
||||||
"label" = "sapphire" # used for lifetimes
|
|
||||||
|
|
||||||
"punctuation" = "overlay2"
|
|
||||||
"punctuation.special" = "sky"
|
|
||||||
|
|
||||||
"keyword" = "mauve"
|
|
||||||
"keyword.control.conditional" = { fg = "mauve" }
|
|
||||||
|
|
||||||
"operator" = "sky"
|
|
||||||
|
|
||||||
"function" = "blue"
|
|
||||||
"function.macro" = "mauve"
|
|
||||||
|
|
||||||
"tag" = "blue"
|
|
||||||
|
|
||||||
"namespace" = { fg = "yellow" }
|
|
||||||
|
|
||||||
"special" = "blue" # fuzzy highlight
|
|
||||||
|
|
||||||
"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
"markup.heading.1" = "lavender"
|
|
||||||
"markup.heading.2" = "mauve"
|
|
||||||
"markup.heading.3" = "green"
|
|
||||||
"markup.heading.4" = "yellow"
|
|
||||||
"markup.heading.5" = "pink"
|
|
||||||
"markup.heading.6" = "teal"
|
|
||||||
"markup.list" = "mauve"
|
|
||||||
"markup.bold" = { modifiers = ["bold"] }
|
|
||||||
"markup.italic" = { modifiers = ["italic"] }
|
|
||||||
"markup.link.url" = { fg = "blue", modifiers = ["underlined"] }
|
|
||||||
"markup.link.text" = "blue"
|
|
||||||
"markup.raw" = "flamingo"
|
|
||||||
|
|
||||||
"diff.plus" = "green"
|
|
||||||
"diff.minus" = "red"
|
|
||||||
"diff.delta" = "blue"
|
|
||||||
|
|
||||||
# User Interface
|
|
||||||
# --------------
|
|
||||||
"ui.background" = { fg = "text", bg = "base" }
|
|
||||||
|
|
||||||
"ui.linenr" = { fg = "surface1" }
|
|
||||||
"ui.linenr.selected" = { fg = "lavender" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "subtext1", bg = "mantle" }
|
|
||||||
"ui.statusline.inactive" = { fg = "surface2", bg = "mantle" }
|
|
||||||
"ui.statusline.normal" = { fg = "base", bg = "lavender", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.select" = { fg = "base", bg = "flamingo", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.popup" = { fg = "text", bg = "surface0" }
|
|
||||||
"ui.window" = { fg = "crust" }
|
|
||||||
"ui.help" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
|
|
||||||
"ui.bufferline" = { fg = "subtext0", bg = "mantle" }
|
|
||||||
"ui.bufferline.active" = { fg = "mauve", bg = "base", underline = { color = "mauve", style = "line" } }
|
|
||||||
"ui.bufferline.background" = { bg = "crust" }
|
|
||||||
|
|
||||||
"ui.text" = "text"
|
|
||||||
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }
|
|
||||||
"ui.text.inactive" = { fg = "overlay1" }
|
|
||||||
|
|
||||||
"ui.virtual" = "overlay0"
|
|
||||||
"ui.virtual.ruler" = { bg = "surface0" }
|
|
||||||
"ui.virtual.indent-guide" = "surface0"
|
|
||||||
"ui.virtual.inlay-hint" = { fg = "surface1", bg = "mantle" }
|
|
||||||
"ui.virtual.jump-label" = { fg = "rosewater", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.selection" = { bg = "surface1" }
|
|
||||||
|
|
||||||
"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
|
|
||||||
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.cursor.primary.normal" = { fg = "base", bg = "lavender" }
|
|
||||||
"ui.cursor.primary.insert" = { fg = "base", bg = "green" }
|
|
||||||
"ui.cursor.primary.select" = { fg = "base", bg = "flamingo" }
|
|
||||||
|
|
||||||
"ui.cursor.normal" = { fg = "base", bg = "secondary_cursor_normal" }
|
|
||||||
"ui.cursor.insert" = { fg = "base", bg = "secondary_cursor_insert" }
|
|
||||||
"ui.cursor.select" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "cursorline" }
|
|
||||||
|
|
||||||
"ui.highlight" = { bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.menu" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
|
|
||||||
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
|
|
||||||
"diagnostic.info" = { underline = { color = "sky", style = "curl" } }
|
|
||||||
"diagnostic.hint" = { underline = { color = "teal", style = "curl" } }
|
|
||||||
|
|
||||||
error = "red"
|
|
||||||
warning = "yellow"
|
|
||||||
info = "sky"
|
|
||||||
hint = "teal"
|
|
||||||
|
|
||||||
[palette]
|
|
||||||
rosewater = "#f4dbd6"
|
|
||||||
flamingo = "#f0c6c6"
|
|
||||||
pink = "#f5bde6"
|
|
||||||
mauve = "#c6a0f6"
|
|
||||||
red = "#ed8796"
|
|
||||||
maroon = "#ee99a0"
|
|
||||||
peach = "#f5a97f"
|
|
||||||
yellow = "#eed49f"
|
|
||||||
green = "#a6da95"
|
|
||||||
teal = "#8bd5ca"
|
|
||||||
sky = "#91d7e3"
|
|
||||||
sapphire = "#7dc4e4"
|
|
||||||
blue = "#8aadf4"
|
|
||||||
lavender = "#b7bdf8"
|
|
||||||
text = "#cad3f5"
|
|
||||||
subtext1 = "#b8c0e0"
|
|
||||||
subtext0 = "#a5adcb"
|
|
||||||
overlay2 = "#939ab7"
|
|
||||||
overlay1 = "#8087a2"
|
|
||||||
overlay0 = "#6e738d"
|
|
||||||
surface2 = "#5b6078"
|
|
||||||
surface1 = "#494d64"
|
|
||||||
surface0 = "#363a4f"
|
|
||||||
base = "#24273a"
|
|
||||||
mantle = "#1e2030"
|
|
||||||
crust = "#181926"
|
|
||||||
|
|
||||||
cursorline = "#303347"
|
|
||||||
secondary_cursor = "#b6a6a7"
|
|
||||||
secondary_cursor_normal = "#8b91bf"
|
|
||||||
secondary_cursor_insert = "#80a57a"
|
|
||||||
@@ -1,156 +0,0 @@
|
|||||||
# Syntax highlighting
|
|
||||||
# -------------------
|
|
||||||
"attribute" = "yellow"
|
|
||||||
|
|
||||||
"type" = "yellow"
|
|
||||||
"type.enum.variant" = "teal"
|
|
||||||
|
|
||||||
"constructor" = "sapphire"
|
|
||||||
|
|
||||||
"constant" = "peach"
|
|
||||||
"constant.character" = "teal"
|
|
||||||
"constant.character.escape" = "pink"
|
|
||||||
|
|
||||||
"string" = "green"
|
|
||||||
"string.regexp" = "pink"
|
|
||||||
"string.special" = "blue"
|
|
||||||
"string.special.symbol" = "red"
|
|
||||||
|
|
||||||
"comment" = { fg = "overlay2" }
|
|
||||||
|
|
||||||
"variable" = "text"
|
|
||||||
"variable.parameter" = { fg = "maroon" }
|
|
||||||
"variable.builtin" = "red"
|
|
||||||
"variable.other.member" = "teal"
|
|
||||||
|
|
||||||
"label" = "sapphire" # used for lifetimes
|
|
||||||
|
|
||||||
"punctuation" = "overlay2"
|
|
||||||
"punctuation.special" = "sky"
|
|
||||||
|
|
||||||
"keyword" = "mauve"
|
|
||||||
"keyword.control.conditional" = { fg = "mauve" }
|
|
||||||
|
|
||||||
"operator" = "sky"
|
|
||||||
|
|
||||||
"function" = "blue"
|
|
||||||
"function.macro" = "mauve"
|
|
||||||
|
|
||||||
"tag" = "blue"
|
|
||||||
|
|
||||||
"namespace" = { fg = "yellow" }
|
|
||||||
|
|
||||||
"special" = "blue" # fuzzy highlight
|
|
||||||
|
|
||||||
"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
"markup.heading.1" = "lavender"
|
|
||||||
"markup.heading.2" = "mauve"
|
|
||||||
"markup.heading.3" = "green"
|
|
||||||
"markup.heading.4" = "yellow"
|
|
||||||
"markup.heading.5" = "pink"
|
|
||||||
"markup.heading.6" = "teal"
|
|
||||||
"markup.list" = "mauve"
|
|
||||||
"markup.bold" = { modifiers = ["bold"] }
|
|
||||||
"markup.italic" = { modifiers = ["italic"] }
|
|
||||||
"markup.link.url" = { fg = "blue", modifiers = ["underlined"] }
|
|
||||||
"markup.link.text" = "blue"
|
|
||||||
"markup.raw" = "flamingo"
|
|
||||||
|
|
||||||
"diff.plus" = "green"
|
|
||||||
"diff.minus" = "red"
|
|
||||||
"diff.delta" = "blue"
|
|
||||||
|
|
||||||
# User Interface
|
|
||||||
# --------------
|
|
||||||
"ui.background" = { fg = "text", bg = "base" }
|
|
||||||
|
|
||||||
"ui.linenr" = { fg = "surface1" }
|
|
||||||
"ui.linenr.selected" = { fg = "lavender" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "subtext1", bg = "mantle" }
|
|
||||||
"ui.statusline.inactive" = { fg = "surface2", bg = "mantle" }
|
|
||||||
"ui.statusline.normal" = { fg = "base", bg = "lavender", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.insert" = { fg = "base", bg = "green", modifiers = ["bold"] }
|
|
||||||
"ui.statusline.select" = { fg = "base", bg = "flamingo", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.popup" = { fg = "text", bg = "surface0" }
|
|
||||||
"ui.window" = { fg = "crust" }
|
|
||||||
"ui.help" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
|
|
||||||
"ui.bufferline" = { fg = "subtext0", bg = "mantle" }
|
|
||||||
"ui.bufferline.active" = { fg = "mauve", bg = "base", underline = { color = "mauve", style = "line" } }
|
|
||||||
"ui.bufferline.background" = { bg = "crust" }
|
|
||||||
|
|
||||||
"ui.text" = "text"
|
|
||||||
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }
|
|
||||||
"ui.text.inactive" = { fg = "overlay1" }
|
|
||||||
|
|
||||||
"ui.virtual" = "overlay0"
|
|
||||||
"ui.virtual.ruler" = { bg = "surface0" }
|
|
||||||
"ui.virtual.indent-guide" = "surface0"
|
|
||||||
"ui.virtual.inlay-hint" = { fg = "surface1", bg = "mantle" }
|
|
||||||
"ui.virtual.jump-label" = { fg = "rosewater", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.selection" = { bg = "surface1" }
|
|
||||||
|
|
||||||
"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
|
|
||||||
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.cursor.primary.normal" = { fg = "base", bg = "lavender" }
|
|
||||||
"ui.cursor.primary.insert" = { fg = "base", bg = "green" }
|
|
||||||
"ui.cursor.primary.select" = { fg = "base", bg = "flamingo" }
|
|
||||||
|
|
||||||
"ui.cursor.normal" = { fg = "base", bg = "secondary_cursor_normal" }
|
|
||||||
"ui.cursor.insert" = { fg = "base", bg = "secondary_cursor_insert" }
|
|
||||||
"ui.cursor.select" = { fg = "base", bg = "secondary_cursor" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "cursorline" }
|
|
||||||
|
|
||||||
"ui.highlight" = { bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"ui.menu" = { fg = "overlay2", bg = "surface0" }
|
|
||||||
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }
|
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "red", style = "curl" } }
|
|
||||||
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
|
|
||||||
"diagnostic.info" = { underline = { color = "sky", style = "curl" } }
|
|
||||||
"diagnostic.hint" = { underline = { color = "teal", style = "curl" } }
|
|
||||||
|
|
||||||
error = "red"
|
|
||||||
warning = "yellow"
|
|
||||||
info = "sky"
|
|
||||||
hint = "teal"
|
|
||||||
|
|
||||||
[palette]
|
|
||||||
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"
|
|
||||||
text = "#cdd6f4"
|
|
||||||
subtext1 = "#bac2de"
|
|
||||||
subtext0 = "#a6adc8"
|
|
||||||
overlay2 = "#9399b2"
|
|
||||||
overlay1 = "#7f849c"
|
|
||||||
overlay0 = "#6c7086"
|
|
||||||
surface2 = "#585b70"
|
|
||||||
surface1 = "#45475a"
|
|
||||||
surface0 = "#313244"
|
|
||||||
base = "#1e1e2e"
|
|
||||||
mantle = "#181825"
|
|
||||||
crust = "#11111b"
|
|
||||||
|
|
||||||
cursorline = "#2a2b3c"
|
|
||||||
secondary_cursor = "#b5a6a8"
|
|
||||||
secondary_cursor_normal = "#878ec0"
|
|
||||||
secondary_cursor_insert = "#7ea87f"
|
|
||||||
@@ -28,10 +28,17 @@ application/x-bittorrent=org.qbittorrent.qBittorrent.desktop;
|
|||||||
inode/directory=yazi.desktop;
|
inode/directory=yazi.desktop;
|
||||||
x-scheme-handler/msteams=teams.desktop;
|
x-scheme-handler/msteams=teams.desktop;
|
||||||
text/calendar=userapp-khalimport.desktop;
|
text/calendar=userapp-khalimport.desktop;
|
||||||
x-scheme-handler/discord=vesktop.desktop:
|
x-scheme-handler/discord=discord.desktop
|
||||||
application/vnd.openxmlformats-officedocument.wordprocessingml.document=org.kde.okular.desktop;
|
application/vnd.openxmlformats-officedocument.wordprocessingml.document=org.kde.okular.desktop;
|
||||||
text/markdown=org.kde.okular.desktop;
|
text/markdown=org.kde.okular.desktop;
|
||||||
application/zip=userapp-file-roller.desktop
|
application/zip=userapp-file-roller.desktop;
|
||||||
|
x-scheme-handler/rdp=org.remmina.Remmina.desktop;
|
||||||
|
x-scheme-handler/spice=org.remmina.Remmina.desktop;
|
||||||
|
x-scheme-handler/vnc=org.remmina.Remmina.desktop;
|
||||||
|
x-scheme-handler/remmina=org.remmina.Remmina.desktop;
|
||||||
|
application/x-remmina=org.remmina.Remmina.desktop;
|
||||||
|
application/vnd.openxmlformats-officedocument.wordprocessingml.document=libreoffice-writer.desktop;
|
||||||
|
image/heif=qimgv.desktop
|
||||||
|
|
||||||
[Added Associations]
|
[Added Associations]
|
||||||
|
|
||||||
|
|||||||
@@ -1,98 +0,0 @@
|
|||||||
# ttrss
|
|
||||||
ttrss-flag-publish "b"
|
|
||||||
ttrss-flag-star "a"
|
|
||||||
ttrss-login "admin"
|
|
||||||
ttrss-mode "multi"
|
|
||||||
ttrss-passwordeval "pass show ttrss"
|
|
||||||
ttrss-url "https://rss.hjarl.com/"
|
|
||||||
urls-source "ttrss"
|
|
||||||
|
|
||||||
# data
|
|
||||||
cache-file "~/.cache/newsboat/cache.db"
|
|
||||||
cookie-cache "~/.cache/newsboat/cookies.txt"
|
|
||||||
|
|
||||||
# feeds
|
|
||||||
auto-reload yes
|
|
||||||
delete-read-articles-on-quit yes
|
|
||||||
feed-sort-order unreadarticlecount-asc
|
|
||||||
prepopulate-query-feeds yes
|
|
||||||
reload-threads 11
|
|
||||||
reload-time 30
|
|
||||||
scrolloff 15
|
|
||||||
|
|
||||||
# display
|
|
||||||
article-sort-order date
|
|
||||||
datetime-format "%D %R"
|
|
||||||
download-full-page yes
|
|
||||||
external-url-viewer "urlscan"
|
|
||||||
html-renderer "w3m -dump -T text/html"
|
|
||||||
show-read-articles no
|
|
||||||
show-read-feeds no
|
|
||||||
text-width 72
|
|
||||||
|
|
||||||
# navigation
|
|
||||||
browser "$BROWSER %u >/dev/null 2>&1 &"
|
|
||||||
#browser "w3m %u"
|
|
||||||
goto-next-feed yes
|
|
||||||
goto-first-unread no
|
|
||||||
mark-as-read-on-hover yes
|
|
||||||
|
|
||||||
# bindings
|
|
||||||
# original bindings here https://raw.githubusercontent.com/newsboat/newsboat/master/src/keymap.cpp
|
|
||||||
# unbind
|
|
||||||
unbind-key f
|
|
||||||
unbind-key F
|
|
||||||
unbind-key C
|
|
||||||
unbind-key n
|
|
||||||
unbind-key p
|
|
||||||
unbind-key ^k
|
|
||||||
unbind-key ,
|
|
||||||
# bind
|
|
||||||
bind SPACE everywhere macro-prefix
|
|
||||||
bind l everywhere open
|
|
||||||
bind h everywhere quit
|
|
||||||
bind j everywhere down
|
|
||||||
bind k everywhere up
|
|
||||||
bind J everywhere next-feed
|
|
||||||
bind K everywhere prev-feed
|
|
||||||
bind J article next
|
|
||||||
bind K article prev
|
|
||||||
bind n everywhere next
|
|
||||||
bind p everywhere prev
|
|
||||||
bind g everywhere home
|
|
||||||
bind G everywhere end
|
|
||||||
bind ^F everywhere halfpagedown
|
|
||||||
bind ^B everywhere halfpageup
|
|
||||||
bind ^D everywhere pagedown
|
|
||||||
bind ^U everywhere pageup
|
|
||||||
bind d everywhere delete-article
|
|
||||||
bind D everywhere delete-all-articles
|
|
||||||
bind $ everywhere purge-deleted
|
|
||||||
bind a everywhere mark-all-above-as-read
|
|
||||||
bind A everywhere mark-feed-read
|
|
||||||
bind ^A everywhere mark-all-feeds-read
|
|
||||||
bind i everywhere sort
|
|
||||||
bind I everywhere rev-sort
|
|
||||||
bind T everywhere set-tag
|
|
||||||
bind t everywhere toggle-article-read
|
|
||||||
bind b everywhere toggle-source-view
|
|
||||||
bind U everywhere toggle-show-read-feeds
|
|
||||||
|
|
||||||
# macros
|
|
||||||
macro w set browser "w3m %u"; open-in-browser ; set browser "$BROWSER %u >/dev/null 2>&1 &"
|
|
||||||
macro l set browser "links %u"; open-in-browser ; set browser "$BROWSER %u >/dev/null 2>&1 &"
|
|
||||||
macro m set browser "mpv %u"; open-in-browser ; set browser "$BROWSER %u >/dev/null 2>&1 &"
|
|
||||||
|
|
||||||
# format
|
|
||||||
feedlist-title-format "(%u unread, %t total) Your feeds%?T? - tag ‘%T’&?"
|
|
||||||
articlelist-title-format "(%u unread, %t total) Articles in feed %T - %U"
|
|
||||||
searchresult-title-format "(%u unread, %t total) Search result"
|
|
||||||
itemview-title-format "(%u unread, %t total) Article %T"
|
|
||||||
filebrowser-title-format "%?O?Open File&Save File? - %f"
|
|
||||||
help-title-format "Help"
|
|
||||||
selecttag-title-format "Select Tag"
|
|
||||||
selectfilter-title-format "Select Filter"
|
|
||||||
urlview-title-format "URLs"
|
|
||||||
dialogs-title-format "Dialogs"
|
|
||||||
|
|
||||||
include "~/.config/newsboat/themes/catppuccin.dark"
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
# https://raw.githubusercontent.com/catppuccin/newsboat/refs/heads/main/themes/dark
|
|
||||||
color listnormal color15 default
|
|
||||||
color listnormal_unread color2 default
|
|
||||||
color listfocus_unread color2 color0
|
|
||||||
color listfocus default color0
|
|
||||||
color background default default
|
|
||||||
color article default default
|
|
||||||
color end-of-text-marker color8 default
|
|
||||||
color info color4 color8
|
|
||||||
color hint-separator default color8
|
|
||||||
color hint-description default color8
|
|
||||||
color title color14 color8
|
|
||||||
|
|
||||||
highlight article "^(Feed|Title|Author|Link|Date): .+" color4 default bold
|
|
||||||
highlight article "^(Feed|Title|Author|Link|Date):" color14 default bold
|
|
||||||
|
|
||||||
highlight article "\\((link|image|video)\\)" color8 default
|
|
||||||
highlight article "https?://[^ ]+" color4 default
|
|
||||||
highlight article "\[[0-9]+\]" color6 default bold
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
# https://raw.githubusercontent.com/catppuccin/newsboat/refs/heads/main/themes/latte
|
|
||||||
color listnormal color15 default
|
|
||||||
color listnormal_unread color2 default
|
|
||||||
color listfocus_unread color2 color15
|
|
||||||
color listfocus default color15
|
|
||||||
color background default default
|
|
||||||
color article default default
|
|
||||||
color end-of-text-marker color8 default
|
|
||||||
color info color4 color7
|
|
||||||
color hint-separator default color7
|
|
||||||
color hint-description default color7
|
|
||||||
color title color14 color7
|
|
||||||
|
|
||||||
highlight article "^(Feed|Title|Author|Link|Date): .+" color4 default bold
|
|
||||||
highlight article "^(Feed|Title|Author|Link|Date):" color14 default bold
|
|
||||||
|
|
||||||
highlight article "\\((link|image|video)\\)" color8 default
|
|
||||||
highlight article "https?://[^ ]+" color4 default
|
|
||||||
highlight article "\[[0-9]+\]" color6 default bold
|
|
||||||
@@ -2,3 +2,4 @@ vim.o.colorcolumn = "100"
|
|||||||
vim.opt.tabstop = 4
|
vim.opt.tabstop = 4
|
||||||
vim.opt.shiftwidth = 4
|
vim.opt.shiftwidth = 4
|
||||||
vim.opt.softtabstop = 4
|
vim.opt.softtabstop = 4
|
||||||
|
vim.g.no_python_maps = 1
|
||||||
|
|||||||
+401
-267
File diff suppressed because it is too large
Load Diff
@@ -1,22 +1,27 @@
|
|||||||
from typing import TYPE_CHECKING
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from typing import Any
|
from qutebrowser.config.config import ConfigContainer
|
||||||
|
from qutebrowser.config.configfiles import ConfigAPI
|
||||||
|
|
||||||
config: Any = None
|
c: "ConfigContainer" = c # type: ignore # noqa: F821
|
||||||
c: Any = None
|
config: "ConfigAPI" = config # type: ignore # noqa: F821
|
||||||
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
config.load_autoconfig(True)
|
config.load_autoconfig(True)
|
||||||
config.bind("<", "tab-move -")
|
config.bind("<", "tab-move -")
|
||||||
config.bind("<Ctrl+Shift+Tab>", "tab-prev")
|
config.bind("<Ctrl+Shift+Tab>", "tab-prev")
|
||||||
config.bind("<Ctrl+Tab>", "tab-next")
|
config.bind("<Ctrl+Tab>", "tab-next")
|
||||||
config.bind("<Ctrl+l>", "cmd-set-text :open {url:pretty}")
|
config.bind("<Ctrl+l>", "cmd-set-text :open {url:pretty}")
|
||||||
config.bind("<Ctrl+r>", "reload")
|
config.unbind("r", mode="normal")
|
||||||
|
config.bind("<Ctrl+r>", "reload -f")
|
||||||
|
config.bind("R", "reload", mode="normal")
|
||||||
config.bind("<Ctrl+n>", "tab-clone -w")
|
config.bind("<Ctrl+n>", "tab-clone -w")
|
||||||
config.bind("<Ctrl+t>", "tab-clone -t")
|
config.bind("<Ctrl+t>", "tab-clone -t")
|
||||||
config.bind("<Ctrl+Shift+r>", "restart", mode="normal")
|
config.bind("<Ctrl+Shift+r>", "restart", mode="normal")
|
||||||
config.bind("<Ctrl+h>", "history")
|
config.bind("<Ctrl+h>", "history")
|
||||||
config.bind("<F8>", "config-cycle colors.webpage.darkmode.enabled true false")
|
config.bind("<F2>", "edit-url")
|
||||||
|
config.bind("<F10>", "config-cycle colors.webpage.darkmode.enabled true false")
|
||||||
config.bind("<F11>", "config-cycle tabs.position top left")
|
config.bind("<F11>", "config-cycle tabs.position top left")
|
||||||
config.bind("<F12>", "devtools")
|
config.bind("<F12>", "devtools")
|
||||||
config.bind("<Shift+F12>", "view-source")
|
config.bind("<Shift+F12>", "view-source")
|
||||||
@@ -45,8 +50,8 @@ config.bind("wk", "forward -w", mode="normal")
|
|||||||
config.bind("ø", "cmd-set-text :")
|
config.bind("ø", "cmd-set-text :")
|
||||||
config.bind("m", 'cmd-set-text :quickmark-add {url:pretty} "', mode="normal")
|
config.bind("m", 'cmd-set-text :quickmark-add {url:pretty} "', mode="normal")
|
||||||
config.bind("D", "tab-close")
|
config.bind("D", "tab-close")
|
||||||
config.bind(",m", "hint links spawn mpv {hint-url}", mode="normal")
|
config.bind(",m", "hint links spawn -d mpv {hint-url}", mode="normal")
|
||||||
config.bind(",M", "spawn mpv {url}", mode="normal")
|
config.bind(",M", "spawn -d mpv {url}", mode="normal")
|
||||||
config.unbind("co") # close all tabs except this one
|
config.unbind("co") # close all tabs except this one
|
||||||
config.unbind("<Ctrl+x>") # navigate decrement
|
config.unbind("<Ctrl+x>") # navigate decrement
|
||||||
config.unbind("<Ctrl+a>") # navigate increment
|
config.unbind("<Ctrl+a>") # navigate increment
|
||||||
@@ -65,9 +70,10 @@ c.completion.open_categories = [
|
|||||||
"history",
|
"history",
|
||||||
"filesystem",
|
"filesystem",
|
||||||
]
|
]
|
||||||
|
c.content.register_protocol_handler = False
|
||||||
c.content.blocking.enabled = True
|
c.content.blocking.enabled = True
|
||||||
c.content.fullscreen.window = True
|
c.content.fullscreen.window = True
|
||||||
c.content.blocking.method = "both"
|
c.content.blocking.method = "adblock"
|
||||||
c.content.blocking.adblock.lists = [
|
c.content.blocking.adblock.lists = [
|
||||||
"https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/filters.txt",
|
"https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/filters.txt",
|
||||||
"https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/badware.txt",
|
"https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/badware.txt",
|
||||||
@@ -105,12 +111,14 @@ urlconfigs: dict[str, list[tuple[str, bool | str | dict[str, str]]]] = {
|
|||||||
{"X-YouTube-Client-Name": "85", "X-YouTube-Client-Version": "2.0"},
|
{"X-YouTube-Client-Name": "85", "X-YouTube-Client-Version": "2.0"},
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
# "https://mail.google.com?extsrc=mailto&url=%25s": [
|
"https://*.altinn.no": [
|
||||||
# ("content.register_protocol_handler", True)
|
("content.cookies.accept", "all"),
|
||||||
# ],
|
("content.javascript.can_open_tabs_automatically", True),
|
||||||
# "https://calendar.google.com?cid=%25s": [
|
],
|
||||||
# ("content.register_protocol_handler", True)
|
"https://*.bankid.no": [
|
||||||
# ],
|
("content.cookies.accept", "all"),
|
||||||
|
("content.javascript.can_open_tabs_automatically", True),
|
||||||
|
],
|
||||||
}
|
}
|
||||||
for url, urlconfig in urlconfigs.items():
|
for url, urlconfig in urlconfigs.items():
|
||||||
for setting, value in urlconfig:
|
for setting, value in urlconfig:
|
||||||
@@ -119,12 +127,11 @@ for url, urlconfig in urlconfigs.items():
|
|||||||
c.downloads.position = "bottom"
|
c.downloads.position = "bottom"
|
||||||
c.downloads.prevent_mixed_content = False
|
c.downloads.prevent_mixed_content = False
|
||||||
c.editor.command = [
|
c.editor.command = [
|
||||||
"foot",
|
"footclient",
|
||||||
"-title",
|
"--app-id",
|
||||||
"scratchpad",
|
"floating_shell",
|
||||||
"-geometry",
|
"--window-size-chars",
|
||||||
"86x24+40+60",
|
"80x45",
|
||||||
"-e",
|
|
||||||
"nvim",
|
"nvim",
|
||||||
"-f",
|
"-f",
|
||||||
"{}",
|
"{}",
|
||||||
@@ -135,15 +142,7 @@ c.input.insert_mode.auto_load = True
|
|||||||
c.input.insert_mode.auto_leave = False
|
c.input.insert_mode.auto_leave = False
|
||||||
c.input.insert_mode.plugins = True
|
c.input.insert_mode.plugins = True
|
||||||
c.messages.timeout = 5000
|
c.messages.timeout = 5000
|
||||||
c.qt.args = [
|
c.qt.force_platform = "wayland"
|
||||||
"disable-features=PermissionElement",
|
|
||||||
"ozone-platform-hint=wayland",
|
|
||||||
"ignore-gpu-blocklist",
|
|
||||||
"enable-gpu-rasterization",
|
|
||||||
"enable-accelerated-video-decode",
|
|
||||||
"enable-quic",
|
|
||||||
"enable-zero-copy",
|
|
||||||
]
|
|
||||||
c.qt.highdpi = True
|
c.qt.highdpi = True
|
||||||
c.scrolling.bar = "always"
|
c.scrolling.bar = "always"
|
||||||
c.scrolling.smooth = False
|
c.scrolling.smooth = False
|
||||||
@@ -176,10 +175,10 @@ c.tabs.tabs_are_windows = False
|
|||||||
c.tabs.title.format = "{index}.{current_title}"
|
c.tabs.title.format = "{index}.{current_title}"
|
||||||
c.tabs.undo_stack_size = 1000
|
c.tabs.undo_stack_size = 1000
|
||||||
c.tabs.width = "15%"
|
c.tabs.width = "15%"
|
||||||
c.url.start_pages = "http://www.google.com/search?hl=en&source=hp"
|
c.url.start_pages = "https://www.google.com/search?hl=en&source=hp"
|
||||||
c.url.default_page = "http://www.google.com/search?hl=en&source=hp"
|
c.url.default_page = "https://www.google.com/search?hl=en&source=hp"
|
||||||
c.url.searchengines = dict(
|
c.url.searchengines = dict(
|
||||||
DEFAULT="http://www.google.com/search?hl=en&source=hp&q={}",
|
DEFAULT="https://www.google.com/search?hl=en&source=hp&q={}",
|
||||||
aw="https://wiki.archlinux.org/?search={}",
|
aw="https://wiki.archlinux.org/?search={}",
|
||||||
ap="https://www.archlinux.org/packages/?q={}",
|
ap="https://www.archlinux.org/packages/?q={}",
|
||||||
gh="https://github.com/search?q={}&type=repositories",
|
gh="https://github.com/search?q={}&type=repositories",
|
||||||
|
|||||||
+52
-28
@@ -67,7 +67,7 @@ set $powermenu ~/.config/sway/scripts/power_menu.sh
|
|||||||
# ------------------------------------------
|
# ------------------------------------------
|
||||||
# Launch the terminal
|
# Launch the terminal
|
||||||
bindsym $mod+Return exec $term
|
bindsym $mod+Return exec $term
|
||||||
bindsym $mod+Shift+Return exec foot
|
bindsym Mod4+Shift+Return exec foot bash
|
||||||
# Kill focused window
|
# Kill focused window
|
||||||
bindsym $mod+Shift+q kill
|
bindsym $mod+Shift+q kill
|
||||||
# Lock screen
|
# Lock screen
|
||||||
@@ -157,15 +157,15 @@ bindsym {
|
|||||||
floating_modifier $mod normal
|
floating_modifier $mod normal
|
||||||
bindsym {
|
bindsym {
|
||||||
# Resize with arrow keys
|
# Resize with arrow keys
|
||||||
$mod+ctrl+Right resize shrink width 10 px
|
$mod+ctrl+Right resize shrink width 100 px
|
||||||
$mod+ctrl+Up resize grow height 10 px
|
$mod+ctrl+Up resize grow height 100 px
|
||||||
$mod+ctrl+Down resize shrink height 10 px
|
$mod+ctrl+Down resize shrink height 100 px
|
||||||
$mod+ctrl+Left resize grow width 10 px
|
$mod+ctrl+Left resize grow width 100 px
|
||||||
# Resize with Vim keys
|
# Resize with Vim keys
|
||||||
$mod+ctrl+$right resize shrink width 10 px
|
$mod+ctrl+$right resize shrink width 100 px
|
||||||
$mod+ctrl+$up resize grow height 10 px
|
$mod+ctrl+$up resize grow height 100 px
|
||||||
$mod+ctrl+$down resize shrink height 10 px
|
$mod+ctrl+$down resize shrink height 100 px
|
||||||
$mod+ctrl+$left resize grow width 10 px
|
$mod+ctrl+$left resize grow width 100 px
|
||||||
}
|
}
|
||||||
# Resize floating windows with mouse scroll
|
# Resize floating windows with mouse scroll
|
||||||
bindsym --whole-window --border {
|
bindsym --whole-window --border {
|
||||||
@@ -198,18 +198,45 @@ bindsym {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# workspaces
|
# workspaces
|
||||||
set {
|
bindsym {
|
||||||
$ws1 number 1
|
# Switch to workspace
|
||||||
$ws2 number 2
|
$mod+1 workspace 1
|
||||||
$ws3 number 3
|
$mod+2 workspace 2
|
||||||
$ws4 number 4
|
$mod+3 workspace 3
|
||||||
$ws5 number 5
|
$mod+4 workspace 4
|
||||||
$ws6 number 6
|
$mod+5 workspace 5
|
||||||
$ws7 number 7
|
$mod+6 workspace 6
|
||||||
$ws8 number 8
|
$mod+7 workspace 7
|
||||||
$ws9 number 9
|
$mod+8 workspace 8
|
||||||
$ws10 number 10
|
$mod+9 workspace 9
|
||||||
|
$mod+0 workspace 10
|
||||||
|
$mod+Insert workspace INS
|
||||||
|
$mod+Delete workspace DEL
|
||||||
|
$mod+Home workspace HOM
|
||||||
|
$mod+End workspace END
|
||||||
|
$mod+Prior workspace PUp
|
||||||
|
$mod+Next workspace Pdn
|
||||||
|
|
||||||
|
# Move focused container to workspace
|
||||||
|
$mod+Shift+1 move container to workspace 1
|
||||||
|
$mod+Shift+2 move container to workspace 2
|
||||||
|
$mod+Shift+3 move container to workspace 3
|
||||||
|
$mod+Shift+4 move container to workspace 4
|
||||||
|
$mod+Shift+5 move container to workspace 5
|
||||||
|
$mod+Shift+6 move container to workspace 6
|
||||||
|
$mod+Shift+7 move container to workspace 7
|
||||||
|
$mod+Shift+8 move container to workspace 8
|
||||||
|
$mod+Shift+9 move container to workspace 9
|
||||||
|
$mod+Shift+0 move container to workspace 10
|
||||||
|
$mod+Shift+Insert move container to workspace INS
|
||||||
|
$mod+Shift+Delete move container to workspace DEL
|
||||||
|
$mod+Shift+Home move container to workspace HOM
|
||||||
|
$mod+Shift+End move container to workspace END
|
||||||
|
$mod+Shift+Prior move container to workspace PUp
|
||||||
|
$mod+Shift+Next move container to workspace Pdn
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# local config
|
||||||
include $HOME/.config/sway/local_config
|
include $HOME/.config/sway/local_config
|
||||||
|
|
||||||
# apps
|
# apps
|
||||||
@@ -260,7 +287,6 @@ exec hash dbus-update-activation-environment 2>/dev/null && \
|
|||||||
|
|
||||||
# Idle configuration
|
# Idle configuration
|
||||||
exec_always swayidle -w \
|
exec_always swayidle -w \
|
||||||
timeout 240 'brightnessctl set 1' resume 'brightnessctl -r' \
|
|
||||||
timeout 1200 'gtklock -d' \
|
timeout 1200 'gtklock -d' \
|
||||||
timeout 2400 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
|
timeout 2400 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
|
||||||
before-sleep 'gtklock -d' \
|
before-sleep 'gtklock -d' \
|
||||||
@@ -268,7 +294,7 @@ exec_always swayidle -w \
|
|||||||
idlehint 240
|
idlehint 240
|
||||||
|
|
||||||
# Start foot server
|
# Start foot server
|
||||||
exec_always --no-startup-id foot --server
|
exec systemctl --user enable --now foot-server.service
|
||||||
|
|
||||||
exec {
|
exec {
|
||||||
# Desktop notifications
|
# Desktop notifications
|
||||||
@@ -294,9 +320,6 @@ exec_always {
|
|||||||
# nwg-drawer
|
# nwg-drawer
|
||||||
nwg-drawer -r -c 7 -is 90 -mb 10 -ml 50 -mr 50 -mt 10
|
nwg-drawer -r -c 7 -is 90 -mb 10 -ml 50 -mr 50 -mt 10
|
||||||
|
|
||||||
# flashfocus
|
|
||||||
systemctl --user start flashfocus
|
|
||||||
|
|
||||||
# persist clipboard after close
|
# persist clipboard after close
|
||||||
pkill -x wl-clip-persist
|
pkill -x wl-clip-persist
|
||||||
wl-clip-persist --clipboard regular --all-mime-type-regex '(?i)^(?!image/x-inkscape-svg).+'
|
wl-clip-persist --clipboard regular --all-mime-type-regex '(?i)^(?!image/x-inkscape-svg).+'
|
||||||
@@ -326,6 +349,8 @@ for_window [app_id="floating_shell"] floating enable, border pixel 1, sticky ena
|
|||||||
for_window [title="Picture in picture"] floating enable, sticky enable
|
for_window [title="Picture in picture"] floating enable, sticky enable
|
||||||
for_window [title="Save File"] floating enable
|
for_window [title="Save File"] floating enable
|
||||||
for_window [app_id="firefox" title="Firefox — Sharing Indicator"] kill
|
for_window [app_id="firefox" title="Firefox — Sharing Indicator"] kill
|
||||||
|
# only thunderbird main window as float
|
||||||
|
for_window [app_id="org.mozilla.Thunderbird" title="^((?!Mozilla Thunderbird).)*$"] floating enable
|
||||||
|
|
||||||
# steam
|
# steam
|
||||||
# https://github.com/ValveSoftware/steam-for-linux/issues/1040
|
# https://github.com/ValveSoftware/steam-for-linux/issues/1040
|
||||||
@@ -352,9 +377,8 @@ input type:touchpad {
|
|||||||
}
|
}
|
||||||
|
|
||||||
input type:keyboard {
|
input type:keyboard {
|
||||||
xkb_layout "us"
|
xkb_layout "us_custom,us_norwegian"
|
||||||
xkb_variant "altgr-weur"
|
xkb_options "grp:shifts_toggle,caps:escape"
|
||||||
xkb_options "caps:escape"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
input type:mouse {
|
input type:mouse {
|
||||||
|
|||||||
+24
-10
@@ -12,9 +12,14 @@ set -g allow-passthrough
|
|||||||
set -g history-limit 100000
|
set -g history-limit 100000
|
||||||
set -g focus-events on
|
set -g focus-events on
|
||||||
|
|
||||||
# screen colors
|
# Advertise tmux correctly to programs running inside it.
|
||||||
set -g default-terminal "tmux-256color"
|
set -g default-terminal "tmux-256color"
|
||||||
set -sa terminal-features ",xterm-256color:RGB"
|
|
||||||
|
# Tell tmux which features the outer Foot client supports.
|
||||||
|
set -as terminal-features ',foot*:RGB,clipboard,focus,title'
|
||||||
|
|
||||||
|
# Allow image passthrough
|
||||||
|
set -gq allow-passthrough on
|
||||||
|
|
||||||
# Start with index 1
|
# Start with index 1
|
||||||
set -g base-index 1
|
set -g base-index 1
|
||||||
@@ -28,11 +33,8 @@ bg_active_window="color252"
|
|||||||
bg_highlight="red"
|
bg_highlight="red"
|
||||||
|
|
||||||
# pane title
|
# pane title
|
||||||
ps_pid='#(pgrep -P "#{pane_pid}" | tr "\n" " ")'
|
|
||||||
cmd='#(ps --no-headers -o args $(pgrep -P "#{pane_pid}"))'
|
|
||||||
# cmd='#(ps --no-headers -t #{pane_tty} -o args -O-c | tr "\n" " ")'
|
|
||||||
setw -g pane-border-status top
|
setw -g pane-border-status top
|
||||||
setw -g pane-border-format " #{pane_current_path} #{=/-20/…:pane_current_command} ${ps_pid}[${cmd}] #{?alternate_on,<Alt Mode> ,}"
|
setw -g pane-border-format " #{pane_current_path} #{=/-40/…:pane_current_command} #{?alternate_on,<Alt Mode> ,}"
|
||||||
set -g pane-border-style "fg=${fg_inactive_pane}"
|
set -g pane-border-style "fg=${fg_inactive_pane}"
|
||||||
set -g pane-active-border-style "fg=${fg_active_pane}"
|
set -g pane-active-border-style "fg=${fg_active_pane}"
|
||||||
|
|
||||||
@@ -65,11 +67,12 @@ set -g set-titles on
|
|||||||
# Note : you can press super key by set M.
|
# Note : you can press super key by set M.
|
||||||
# (tested with tty only)
|
# (tested with tty only)
|
||||||
set -g prefix M-a
|
set -g prefix M-a
|
||||||
bind M-a send-prefix
|
|
||||||
|
|
||||||
# First remove *all* keybindings
|
# First remove *all* keybindings
|
||||||
unbind -a
|
unbind -a
|
||||||
|
|
||||||
|
bind M-a send-prefix
|
||||||
|
|
||||||
# Basic bindings
|
# Basic bindings
|
||||||
bind ? list-keys
|
bind ? list-keys
|
||||||
bind d detach-client
|
bind d detach-client
|
||||||
@@ -77,18 +80,23 @@ bind D choose-client
|
|||||||
bind : command-prompt
|
bind : command-prompt
|
||||||
bind '~' show-messages
|
bind '~' show-messages
|
||||||
|
|
||||||
|
# Fix Home and End keys
|
||||||
|
bind-key -n Home send-keys "\033[H"
|
||||||
|
bind-key -n End send-keys "\033[F"
|
||||||
|
|
||||||
# Copy mode
|
# Copy mode
|
||||||
bind c copy-mode
|
bind c copy-mode
|
||||||
|
|
||||||
# clipboard control
|
# clipboard control
|
||||||
bind p paste-buffer
|
bind p paste-buffer
|
||||||
bind -T copy-mode-vi v send-keys -X begin-selection
|
bind -T copy-mode-vi v send-keys -X begin-selection
|
||||||
bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -i -f -selection primary | xclip -i -selection clipboard"
|
bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "wl-copy"
|
||||||
|
bind -T copy-mode-vi Enter send-keys -X copy-selection-and-cancel
|
||||||
bind -T copy-mode-vi r send-keys -X rectangle-toggle
|
bind -T copy-mode-vi r send-keys -X rectangle-toggle
|
||||||
bind -T copy-mode-vi Escape send-keys -X cancel
|
bind -T copy-mode-vi Escape send-keys -X cancel
|
||||||
bind -T copy-mode-vi q send-keys -X clear-selection
|
bind -T copy-mode-vi q send-keys -X clear-selection
|
||||||
bind -T copy-mode MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -selection primary -filter | xclip -selection clipboard"
|
bind -T copy-mode MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "wl-copy"
|
||||||
bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -selection primary -filter | xclip -selection clipboard"
|
bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "wl-copy"
|
||||||
|
|
||||||
# Rename window
|
# Rename window
|
||||||
bind , command-prompt "rename-window %%"
|
bind , command-prompt "rename-window %%"
|
||||||
@@ -99,6 +107,10 @@ bind t clock-mode
|
|||||||
|
|
||||||
# Show pane numbers
|
# Show pane numbers
|
||||||
bind i display-panes
|
bind i display-panes
|
||||||
|
ps_pid='#(pgrep -P "#{pane_pid}" | tr "\n" " ")'
|
||||||
|
cmd='#(ps --no-headers -o args $(pgrep -P "#{pane_pid}"))'
|
||||||
|
bind P display-message -d 100000 "${cmd} FOLDER:#{pane_current_path} CMD:#{=/-20/…:pane_current_command} PID:${ps_pid}"
|
||||||
|
|
||||||
|
|
||||||
# Config Reloads
|
# Config Reloads
|
||||||
bind r source-file ~/.config/tmux/tmux.conf \; refresh-client \; display-message "Config reloaded"
|
bind r source-file ~/.config/tmux/tmux.conf \; refresh-client \; display-message "Config reloaded"
|
||||||
@@ -114,6 +126,8 @@ bind v split-window -h -c "#{pane_current_path}"
|
|||||||
bind s split-window -v -c "#{pane_current_path}"
|
bind s split-window -v -c "#{pane_current_path}"
|
||||||
bind V split-window -fh -c "#{pane_current_path}"
|
bind V split-window -fh -c "#{pane_current_path}"
|
||||||
bind S split-window -fv -c "#{pane_current_path}"
|
bind S split-window -fv -c "#{pane_current_path}"
|
||||||
|
bind x split-window -fh bash
|
||||||
|
|
||||||
|
|
||||||
# Change layouts
|
# Change layouts
|
||||||
bind o rotate-window
|
bind o rotate-window
|
||||||
|
|||||||
@@ -63,17 +63,6 @@
|
|||||||
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 120x45 isd'"
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 120x45 isd'"
|
||||||
},
|
},
|
||||||
|
|
||||||
"network": {
|
|
||||||
"format-disabled": " Disabled",
|
|
||||||
"format-wifi": " {bandwidthDownBits:>} {bandwidthUpBits:>} ({signalStrength}%)",
|
|
||||||
"tooltip-format-wifi": "{essid}",
|
|
||||||
"format-ethernet": " {bandwidthDownBits:>} {bandwidthUpBits:>} ",
|
|
||||||
"tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}",
|
|
||||||
"format-disconnected": " Disconnected",
|
|
||||||
"on-click": "footclient --app-id floating_shell --window-size-chars 60x45 -e nmtui",
|
|
||||||
"interval": 2
|
|
||||||
},
|
|
||||||
|
|
||||||
// Configuration - modules-right
|
// Configuration - modules-right
|
||||||
|
|
||||||
"idle_inhibitor": {
|
"idle_inhibitor": {
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
[screencast]
|
||||||
|
chooser_type = dmenu
|
||||||
|
chooser_cmd = fuzzel --dmenu
|
||||||
|
output_name=DP-1
|
||||||
|
max_fps=30
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
foot.desktop
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
partial alphanumeric_keys
|
||||||
|
xkb_symbols "basic" {
|
||||||
|
include "us(basic)"
|
||||||
|
name[Group1]= "US Custom";
|
||||||
|
key <MENU> { [ Super_L ] };
|
||||||
|
};
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
partial alphanumeric_keys
|
||||||
|
xkb_symbols "basic" {
|
||||||
|
include "us(basic)"
|
||||||
|
name[Group1]= "US Custom Norwegian";
|
||||||
|
|
||||||
|
key <MENU> { [ Super_L ] };
|
||||||
|
key <AD01> { [ q, Q, aring, Aring ] };
|
||||||
|
key <AD11> { [ bracketleft, braceleft, aring, Aring ] };
|
||||||
|
key <AD02> { [ w, W, ae, AE ] };
|
||||||
|
key <AC11> { [apostrophe, quotedbl, ae, AE ] };
|
||||||
|
key <AD05> { [ t, T, oslash, Oslash ] };
|
||||||
|
key <AC10> { [ semicolon, colon, oslash, Oslash ] };
|
||||||
|
key <AC03> { [ d, D, eacute, Eacute ] };
|
||||||
|
|
||||||
|
include "level3(ralt_switch)"
|
||||||
|
};
|
||||||
@@ -0,0 +1,314 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--The Xournal++ settings file. Do not edit this file! Most settings are available in the Settings dialog, the others are commented in this file, but handle with care!-->
|
||||||
|
<settings>
|
||||||
|
<property name="pressureSensitivity" value="true"/>
|
||||||
|
<property name="minimumPressure" value="0.05"/>
|
||||||
|
<property name="pressureMultiplier" value="1"/>
|
||||||
|
<property name="zoomGesturesEnabled" value="true"/>
|
||||||
|
<property name="selectedToolbar" value="Portrait"/>
|
||||||
|
<property name="lastSavePath" value="/home/hjalmarlucius/Downloads"/>
|
||||||
|
<property name="lastOpenPath" value=""/>
|
||||||
|
<property name="lastImagePath" value=""/>
|
||||||
|
<property name="edgePanSpeed" value="20"/>
|
||||||
|
<property name="edgePanMaxMult" value="5"/>
|
||||||
|
<property name="zoomStep" value="10"/>
|
||||||
|
<property name="zoomStepScroll" value="2"/>
|
||||||
|
<property name="displayDpi" value="72"/>
|
||||||
|
<property name="mainWndWidth" value="1702"/>
|
||||||
|
<property name="mainWndHeight" value="1398"/>
|
||||||
|
<property name="maximized" value="false"/>
|
||||||
|
<property name="showToolbar" value="true"/>
|
||||||
|
<property name="showSidebar" value="true"/>
|
||||||
|
<property name="sidebarWidth" value="159"/>
|
||||||
|
<property name="sidebarNumberingStyle" value="1"/>
|
||||||
|
<property name="sidebarOnRight" value="false"/>
|
||||||
|
<property name="scrollbarOnLeft" value="false"/>
|
||||||
|
<property name="menubarVisible" value="false"/>
|
||||||
|
<property name="filepathShownInTitlebar" value="false"/>
|
||||||
|
<property name="pageNumberShownInTitlebar" value="false"/>
|
||||||
|
<property name="numColumns" value="1"/>
|
||||||
|
<property name="numRows" value="1"/>
|
||||||
|
<property name="viewFixedRows" value="false"/>
|
||||||
|
<property name="showPairedPages" value="false"/>
|
||||||
|
<property name="layoutVertical" value="false"/>
|
||||||
|
<property name="layoutRightToLeft" value="false"/>
|
||||||
|
<property name="layoutBottomToTop" value="false"/>
|
||||||
|
<property name="numPairsOffset" value="1"/>
|
||||||
|
<!--The icon theme, allowed values are "disabled", "onDrawOfLastPage", and "onScrollOfLastPage"-->
|
||||||
|
<property name="emptyLastPageAppend" value="onScrollOfLastPage"/>
|
||||||
|
<property name="presentationMode" value="false"/>
|
||||||
|
<!--Which GUI elements are shown in default view mode, separated by a colon (,)-->
|
||||||
|
<property name="defaultViewModeAttributes" value="showMenubar,showToolbar"/>
|
||||||
|
<!--Which GUI elements are shown in fullscreen view mode, separated by a colon (,)-->
|
||||||
|
<property name="fullscreenViewModeAttributes" value="goFullscren,showToolbar,showSidebar"/>
|
||||||
|
<!--Which GUI elements are shown in presentation view mode, separated by a colon (,)-->
|
||||||
|
<property name="presentationViewModeAttributes" value="goFullscren,showToolbar"/>
|
||||||
|
<!--The cursor icon used with a stylus, allowed values are "none", "dot", "big", "arrow"-->
|
||||||
|
<property name="stylusCursorType" value="dot"/>
|
||||||
|
<!--The eraser cursor visibility used with a stylus, allowed values are "never", "always", "hover", "touch"-->
|
||||||
|
<property name="eraserVisibility" value="always"/>
|
||||||
|
<!--The icon theme, allowed values are "iconsColor", "iconsLucide"-->
|
||||||
|
<property name="iconTheme" value="iconsColor"/>
|
||||||
|
<!--Dark/light mode, allowed values are "useSystem", "forceLight", "forceDark"-->
|
||||||
|
<property name="themeVariant" value="useSystem"/>
|
||||||
|
<property name="highlightPosition" value="true"/>
|
||||||
|
<property name="cursorHighlightColor" value="2164260608"/>
|
||||||
|
<property name="cursorHighlightBorderColor" value="2147483903"/>
|
||||||
|
<property name="cursorHighlightRadius" value="30"/>
|
||||||
|
<property name="cursorHighlightBorderWidth" value="0"/>
|
||||||
|
<property name="useStockIcons" value="false"/>
|
||||||
|
<property name="disableScrollbarFadeout" value="false"/>
|
||||||
|
<property name="disableAudio" value="false"/>
|
||||||
|
<!--Hides scroolbars in the main window, allowed values: "none", "horizontal", "vertical", "both"-->
|
||||||
|
<property name="scrollbarHideType" value="none"/>
|
||||||
|
<property name="autoloadMostRecent" value="false"/>
|
||||||
|
<property name="autoloadPdfXoj" value="true"/>
|
||||||
|
<property name="defaultSaveName" value="%F-Note-%H-%M"/>
|
||||||
|
<property name="defaultPdfExportName" value="%{name}_annotated"/>
|
||||||
|
<property name="autosaveEnabled" value="true"/>
|
||||||
|
<property name="autosaveTimeout" value="3"/>
|
||||||
|
<property name="addHorizontalSpace" value="false"/>
|
||||||
|
<property name="addHorizontalSpaceAmountRight" value="150"/>
|
||||||
|
<property name="addHorizontalSpaceAmountLeft" value="150"/>
|
||||||
|
<property name="addVerticalSpace" value="false"/>
|
||||||
|
<property name="addVerticalSpaceAmountAbove" value="150"/>
|
||||||
|
<property name="addVerticalSpaceAmountBelow" value="150"/>
|
||||||
|
<property name="unlimitedScrolling" value="false"/>
|
||||||
|
<property name="drawDirModsEnabled" value="false"/>
|
||||||
|
<property name="drawDirModsRadius" value="50"/>
|
||||||
|
<property name="snapRotation" value="true"/>
|
||||||
|
<property name="snapRotationTolerance" value="0.3"/>
|
||||||
|
<property name="snapGrid" value="false"/>
|
||||||
|
<property name="snapGridTolerance" value="0.5"/>
|
||||||
|
<property name="snapGridSize" value="14.17"/>
|
||||||
|
<property name="strokeRecognizerMinSize" value="40"/>
|
||||||
|
<property name="touchDrawing" value="false"/>
|
||||||
|
<property name="gtkTouchInertialScrolling" value="true"/>
|
||||||
|
<property name="pressureGuessing" value="false"/>
|
||||||
|
<property name="recolor.enabled" value="false"/>
|
||||||
|
<property name="recolor.sidebar" value="false"/>
|
||||||
|
<property name="recolor.dark" value="4281349190"/>
|
||||||
|
<property name="recolor.light" value="4291219701"/>
|
||||||
|
<property name="selectionBorderColor" value="4294901760"/>
|
||||||
|
<property name="backgroundColor" value="4292664021"/>
|
||||||
|
<property name="selectionMarkerColor" value="4285702095"/>
|
||||||
|
<property name="activeSelectionColor" value="4286381056"/>
|
||||||
|
<property name="touchZoomStartThreshold" value="0"/>
|
||||||
|
<property name="pageRerenderThreshold" value="5"/>
|
||||||
|
<!--The count of rendered PDF pages which will be cached.-->
|
||||||
|
<property name="pdfPageCacheSize" value="10"/>
|
||||||
|
<property name="preloadPagesBefore" value="3"/>
|
||||||
|
<property name="preloadPagesAfter" value="5"/>
|
||||||
|
<property name="eagerPageCleanup" value="true"/>
|
||||||
|
<!--Config for new pages-->
|
||||||
|
<property name="pageTemplate" value="xoj/template copyLastPageSettings=true size=595.275591x841.889764 backgroundType=lined backgroundColor=#ffffff "/>
|
||||||
|
<property name="sizeUnit" value=""/>
|
||||||
|
<property name="audioFolder" value=""/>
|
||||||
|
<property name="audioInputDevice" value="-1"/>
|
||||||
|
<property name="audioOutputDevice" value="-1"/>
|
||||||
|
<property name="audioSampleRate" value="44100"/>
|
||||||
|
<property name="audioGain" value="1"/>
|
||||||
|
<property name="defaultSeekTime" value="5"/>
|
||||||
|
<property name="pluginEnabled" value=""/>
|
||||||
|
<property name="pluginDisabled" value=""/>
|
||||||
|
<property name="strokeFilterIgnoreTime" value="150"/>
|
||||||
|
<property name="strokeFilterIgnoreLength" value="1"/>
|
||||||
|
<property name="strokeFilterSuccessiveTime" value="500"/>
|
||||||
|
<property name="strokeFilterEnabled" value="false"/>
|
||||||
|
<property name="doActionOnStrokeFiltered" value="false"/>
|
||||||
|
<property name="trySelectOnStrokeFiltered" value="false"/>
|
||||||
|
<property name="snapRecognizedShapesEnabled" value="false"/>
|
||||||
|
<property name="restoreLineWidthEnabled" value="false"/>
|
||||||
|
<property name="numIgnoredStylusEvents" value="0"/>
|
||||||
|
<property name="inputSystemTPCButton" value="false"/>
|
||||||
|
<property name="inputSystemDrawOutsideWindow" value="true"/>
|
||||||
|
<property name="preferredLocale" value=""/>
|
||||||
|
<property name="useSpacesForTab" value="false"/>
|
||||||
|
<property name="numberOfSpacesForTab" value="4"/>
|
||||||
|
<property name="laserPointerFadeOutTime" value="500"/>
|
||||||
|
<property name="stabilizerAveragingMethod" value="0"/>
|
||||||
|
<property name="stabilizerPreprocessor" value="0"/>
|
||||||
|
<property name="stabilizerBuffersize" value="20"/>
|
||||||
|
<property name="stabilizerSigma" value="0.5"/>
|
||||||
|
<property name="stabilizerDeadzoneRadius" value="1.3"/>
|
||||||
|
<property name="stabilizerDrag" value="0.4"/>
|
||||||
|
<property name="stabilizerMass" value="5"/>
|
||||||
|
<property name="stabilizerCuspDetection" value="true"/>
|
||||||
|
<property name="stabilizerFinalizeStroke" value="true"/>
|
||||||
|
<property name="colorPalette" value="/usr/share/xournalpp/palettes/xournal.gpl"/>
|
||||||
|
<property name="latexSettings.autoCheckDependencies" value="true"/>
|
||||||
|
<property name="latexSettings.defaultText" value="x^2"/>
|
||||||
|
<property name="latexSettings.globalTemplatePath" value="/usr/share/xournalpp/resources/default_template.tex"/>
|
||||||
|
<property name="latexSettings.genCmd" value="pdflatex -halt-on-error -interaction=nonstopmode '{}'"/>
|
||||||
|
<property name="latexSettings.sourceViewThemeId" value="classic"/>
|
||||||
|
<property name="latexSettings.editorFont" value="Monospace 12"/>
|
||||||
|
<property name="latexSettings.useCustomEditorFont" value="false"/>
|
||||||
|
<property name="latexSettings.editorWordWrap" value="true"/>
|
||||||
|
<property name="latexSettings.sourceViewAutoIndent" value="true"/>
|
||||||
|
<property name="latexSettings.sourceViewSyntaxHighlight" value="true"/>
|
||||||
|
<property name="latexSettings.sourceViewShowLineNumbers" value="false"/>
|
||||||
|
<property name="latexSettings.useExternalEditor" value="false"/>
|
||||||
|
<property name="latexSettings.externalEditorAutoConfirm" value="false"/>
|
||||||
|
<property name="latexSettings.externalEditorCmd" value=""/>
|
||||||
|
<property name="latexSettings.temporaryFileExt" value="tex"/>
|
||||||
|
<property name="font" font="Sans" size="12"/>
|
||||||
|
<data name="buttonConfig">
|
||||||
|
<data name="default">
|
||||||
|
<attribute name="color" type="hex" value="ff000000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="thin"/>
|
||||||
|
<attribute name="strokeType" type="string" value="none"/>
|
||||||
|
<attribute name="tool" type="string" value="pen"/>
|
||||||
|
</data>
|
||||||
|
<data name="eraser">
|
||||||
|
<attribute name="eraserMode" type="string" value="none"/>
|
||||||
|
<attribute name="size" type="string" value="none"/>
|
||||||
|
<attribute name="tool" type="string" value="eraser"/>
|
||||||
|
</data>
|
||||||
|
<data name="left">
|
||||||
|
<attribute name="tool" type="string" value="none"/>
|
||||||
|
</data>
|
||||||
|
<data name="middle">
|
||||||
|
<attribute name="tool" type="string" value="hand"/>
|
||||||
|
</data>
|
||||||
|
<data name="right">
|
||||||
|
<attribute name="tool" type="string" value="none"/>
|
||||||
|
</data>
|
||||||
|
<data name="stylus">
|
||||||
|
<attribute name="color" type="hex" value="ffffff00"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="none"/>
|
||||||
|
<attribute name="tool" type="string" value="highlighter"/>
|
||||||
|
</data>
|
||||||
|
<data name="stylus2">
|
||||||
|
<attribute name="tool" type="string" value="none"/>
|
||||||
|
</data>
|
||||||
|
<data name="touch">
|
||||||
|
<attribute name="device" type="string" value=""/>
|
||||||
|
<attribute name="disableDrawing" type="boolean" value="false"/>
|
||||||
|
<attribute name="tool" type="string" value="none"/>
|
||||||
|
</data>
|
||||||
|
</data>
|
||||||
|
<data name="deviceClasses">
|
||||||
|
<data name="">
|
||||||
|
<attribute name="deviceClass" type="int" value="0"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="0"/>
|
||||||
|
</data>
|
||||||
|
<data name="Wacom Co.,Ltd. Wacom One pen tablet small">
|
||||||
|
<attribute name="deviceClass" type="int" value="2"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="1"/>
|
||||||
|
</data>
|
||||||
|
<data name="Wacom Co.,Ltd. Wacom One pen tablet small (Eraser)">
|
||||||
|
<attribute name="deviceClass" type="int" value="3"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="2"/>
|
||||||
|
</data>
|
||||||
|
<data name="Wayland Pointer">
|
||||||
|
<attribute name="deviceClass" type="int" value="1"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="0"/>
|
||||||
|
</data>
|
||||||
|
<data name="Wayland Wheel Scrolling">
|
||||||
|
<attribute name="deviceClass" type="int" value="1"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="0"/>
|
||||||
|
</data>
|
||||||
|
</data>
|
||||||
|
<data name="tools">
|
||||||
|
<attribute name="current" type="string" value="pen"/>
|
||||||
|
<data name="drawArrow">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawCoordinateSystem">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawDoubleArrow">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawEllipse">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawRect">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawSpline">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="eraser">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="MEDIUM"/>
|
||||||
|
<attribute name="type" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="hand">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="highlighter">
|
||||||
|
<attribute name="color" type="hex" value="ffffff00"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="fill" type="int" value="0"/>
|
||||||
|
<attribute name="fillAlpha" type="int" value="128"/>
|
||||||
|
<attribute name="size" type="string" value="MEDIUM"/>
|
||||||
|
</data>
|
||||||
|
<data name="image">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="laserPointerHighlighter">
|
||||||
|
<attribute name="color" type="hex" value="ffff0000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="MEDIUM"/>
|
||||||
|
</data>
|
||||||
|
<data name="laserPointerPen">
|
||||||
|
<attribute name="color" type="hex" value="ffff0000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="MEDIUM"/>
|
||||||
|
</data>
|
||||||
|
<data name="pen">
|
||||||
|
<attribute name="color" type="hex" value="ffff00ff"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="fill" type="int" value="0"/>
|
||||||
|
<attribute name="fillAlpha" type="int" value="128"/>
|
||||||
|
<attribute name="size" type="string" value="THIN"/>
|
||||||
|
<attribute name="style" type="string" value="plain"/>
|
||||||
|
</data>
|
||||||
|
<data name="playObject">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectMultiLayerRect">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectMultiLayerRegion">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectObject">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectPdfTextLinear">
|
||||||
|
<attribute name="color" type="hex" value="ff000000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectPdfTextRect">
|
||||||
|
<attribute name="color" type="hex" value="ff000000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectRect">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectRegion">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="showFloatingToolbox">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="text">
|
||||||
|
<attribute name="color" type="hex" value="ff000000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="verticalSpace">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
</data>
|
||||||
|
<data name="touch">
|
||||||
|
<attribute name="cmdDisable" type="string" value=""/>
|
||||||
|
<attribute name="cmdEnable" type="string" value=""/>
|
||||||
|
<attribute name="disableTouch" type="boolean" value="false"/>
|
||||||
|
<attribute name="method" type="string" value="auto"/>
|
||||||
|
<attribute name="timeout" type="int" value="1000"/>
|
||||||
|
</data>
|
||||||
|
</settings>
|
||||||
+15
-15
@@ -12,7 +12,7 @@ max_height = 1500
|
|||||||
|
|
||||||
[open]
|
[open]
|
||||||
prepend_rules = [
|
prepend_rules = [
|
||||||
{ name = "*.csv", use = "text" },
|
{ url = "*.csv", use = "text" },
|
||||||
]
|
]
|
||||||
|
|
||||||
[opener]
|
[opener]
|
||||||
@@ -24,36 +24,36 @@ text = [
|
|||||||
[input]
|
[input]
|
||||||
cursor_blink = true
|
cursor_blink = true
|
||||||
|
|
||||||
|
[[plugin.append_previewers]]
|
||||||
|
url = "*"
|
||||||
|
run = "file-extra-metadata"
|
||||||
|
|
||||||
[[plugin.prepend_fetchers]]
|
[[plugin.prepend_fetchers]]
|
||||||
id = "git"
|
group = "git"
|
||||||
name = "*"
|
url = "*"
|
||||||
run = "git"
|
run = "git"
|
||||||
|
|
||||||
[[plugin.prepend_fetchers]]
|
[[plugin.prepend_fetchers]]
|
||||||
id = "git"
|
group = "git"
|
||||||
name = "*/"
|
url = "*/"
|
||||||
run = "git"
|
run = "git"
|
||||||
|
|
||||||
[[plugin.prepend_previewers]]
|
[[plugin.prepend_previewers]]
|
||||||
name = "*.tar*"
|
url = "*.tar*"
|
||||||
run = 'piper --format=url -- tar tf "$1"'
|
run = 'piper --format=url -- tar tf "$1"'
|
||||||
|
|
||||||
[[plugin.prepend_previewers]]
|
[[plugin.prepend_previewers]]
|
||||||
name = "*.csv"
|
url = "*.csv"
|
||||||
run = 'piper -- bat -p --color=always "$1"'
|
run = 'piper -- bat -p --color=always "$1"'
|
||||||
|
|
||||||
[[plugin.prepend_previewers]]
|
[[plugin.prepend_previewers]]
|
||||||
name = "*.md"
|
url = "*.md"
|
||||||
run = 'piper -- CLICOLOR_FORCE=1 glow -w=$w -s=dark "$1"'
|
run = 'piper -- CLICOLOR_FORCE=1 glow -w=$w -s=dark "$1"'
|
||||||
|
|
||||||
[[plugin.prepend_previewers]]
|
[[plugin.prepend_previewers]]
|
||||||
name = "*/"
|
url = "*/"
|
||||||
run = 'piper -- eza -TL=3 --color=always --icons=always --group-directories-first --no-quotes "$1"'
|
run = 'piper -- eza -TL=3 --color=always --icons=always --group-directories-first --no-quotes "$1"'
|
||||||
|
|
||||||
[[plugin.append_previewers]]
|
|
||||||
name = "*"
|
|
||||||
run = 'file-extra-metadata'
|
|
||||||
|
|
||||||
[[plugin.prepend_spotters]]
|
[[plugin.prepend_spotters]]
|
||||||
name = "*"
|
url = "*"
|
||||||
run = 'file-extra-metadata'
|
run = "file-extra-metadata"
|
||||||
|
|||||||
@@ -13,6 +13,14 @@ export SAVEHIST=200000
|
|||||||
alias ls='ls --color=auto -Ah'
|
alias ls='ls --color=auto -Ah'
|
||||||
alias ..='cd ..'
|
alias ..='cd ..'
|
||||||
alias ...='cd ../..'
|
alias ...='cd ../..'
|
||||||
|
catai () {
|
||||||
|
rg -l --hidden --glob '!.git/*' '^' -- "$@" | while IFS= read -r f; do
|
||||||
|
printf "\n── %s ──\n" "$f"
|
||||||
|
echo '```'
|
||||||
|
cat "$f"
|
||||||
|
echo '```'
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
# --- basic keybinds ---
|
# --- basic keybinds ---
|
||||||
bindkey '^[[Z' reverse-menu-complete # shift-tab
|
bindkey '^[[Z' reverse-menu-complete # shift-tab
|
||||||
|
|||||||
@@ -1,70 +1,23 @@
|
|||||||
|
# output
|
||||||
set $out-left DP-1
|
set $out-left DP-1
|
||||||
set $out-right DP-2
|
set $out-right DP-2
|
||||||
output $out-left resolution 2560x1440 position 0 0
|
output $out-left resolution 2560x1440 position 0 0
|
||||||
output $out-right resolution 3840x2160 position 2560 0
|
output $out-right resolution 3840x2160 position 2560 0
|
||||||
|
|
||||||
# switch to workspace
|
# switch to workspace
|
||||||
workspace $ws1 output $out-left
|
workspace 1 output $out-left
|
||||||
workspace $ws2 output $out-right
|
workspace 2 output $out-left
|
||||||
workspace $ws3 output $out-left
|
workspace 3 output $out-left
|
||||||
workspace $ws4 output $out-right
|
workspace 4 output $out-left
|
||||||
workspace $ws5 output $out-left
|
workspace 5 output $out-left
|
||||||
workspace $ws6 output $out-right
|
workspace 6 output $out-right
|
||||||
workspace $ws7 output $out-left
|
workspace 7 output $out-right
|
||||||
workspace $ws8 output $out-right
|
workspace 8 output $out-right
|
||||||
workspace $ws9 output $out-left
|
workspace 9 output $out-right
|
||||||
workspace $ws10 output $out-right
|
workspace 10 output $out-right
|
||||||
|
workspace INS output $out-left
|
||||||
# switch to workspace
|
workspace DEL output $out-right
|
||||||
bindsym $mod+1 workspace $ws1
|
workspace HOM output $out-left
|
||||||
bindsym $mod+2 workspace $ws2
|
workspace END output $out-right
|
||||||
bindsym $mod+3 workspace $ws3
|
workspace PUp output $out-left
|
||||||
bindsym $mod+4 workspace $ws4
|
workspace PDn output $out-right
|
||||||
bindsym $mod+5 workspace $ws5
|
|
||||||
bindsym $mod+6 workspace $ws6
|
|
||||||
bindsym $mod+7 workspace $ws7
|
|
||||||
bindsym $mod+8 workspace $ws8
|
|
||||||
bindsym $mod+9 workspace $ws9
|
|
||||||
bindsym $mod+0 workspace $ws10
|
|
||||||
bindsym $mod+Insert workspace $ws5
|
|
||||||
bindsym $mod+Delete workspace $ws6
|
|
||||||
bindsym $mod+Home workspace $ws7
|
|
||||||
bindsym $mod+End workspace $ws8
|
|
||||||
bindsym $mod+Prior workspace $ws9
|
|
||||||
bindsym $mod+Next workspace $ws10
|
|
||||||
|
|
||||||
# Move focused container to workspace
|
|
||||||
bindsym $mod+Ctrl+1 move container to workspace $ws1
|
|
||||||
bindsym $mod+Ctrl+2 move container to workspace $ws2
|
|
||||||
bindsym $mod+Ctrl+3 move container to workspace $ws3
|
|
||||||
bindsym $mod+Ctrl+4 move container to workspace $ws4
|
|
||||||
bindsym $mod+Ctrl+5 move container to workspace $ws5
|
|
||||||
bindsym $mod+Ctrl+6 move container to workspace $ws6
|
|
||||||
bindsym $mod+Ctrl+7 move container to workspace $ws7
|
|
||||||
bindsym $mod+Ctrl+8 move container to workspace $ws8
|
|
||||||
bindsym $mod+Ctrl+9 move container to workspace $ws9
|
|
||||||
bindsym $mod+Ctrl+0 move container to workspace $ws10
|
|
||||||
bindsym $mod+Ctrl+Insert move container to workspace $ws5
|
|
||||||
bindsym $mod+Ctrl+Delete move container to workspace $ws6
|
|
||||||
bindsym $mod+Ctrl+Home move container to workspace $ws7
|
|
||||||
bindsym $mod+Ctrl+End move container to workspace $ws8
|
|
||||||
bindsym $mod+Ctrl+Prior move container to workspace $ws9
|
|
||||||
bindsym $mod+Ctrl+Next move container to workspace $ws10
|
|
||||||
|
|
||||||
# Move to workspace with focused container
|
|
||||||
bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
|
|
||||||
bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2
|
|
||||||
bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3
|
|
||||||
bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4
|
|
||||||
bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5
|
|
||||||
bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
|
|
||||||
bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
|
|
||||||
bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
|
|
||||||
bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9
|
|
||||||
bindsym $mod+Shift+0 move container to workspace $ws10; workspace $ws10
|
|
||||||
bindsym $mod+Shift+Insert move container to workspace $ws5; workspace $ws5
|
|
||||||
bindsym $mod+Shift+Delete move container to workspace $ws8; workspace $ws6
|
|
||||||
bindsym $mod+Shift+Home move container to workspace $ws6; workspace $ws7
|
|
||||||
bindsym $mod+Shift+End move container to workspace $ws9; workspace $ws8
|
|
||||||
bindsym $mod+Shift+Prior move container to workspace $ws7; workspace $ws9
|
|
||||||
bindsym $mod+Shift+Next move container to workspace $ws10; workspace $ws10
|
|
||||||
|
|||||||
@@ -1,4 +1,15 @@
|
|||||||
{
|
{
|
||||||
|
"network": {
|
||||||
|
"interface": "enp6s0",
|
||||||
|
"format-disabled": " Disabled",
|
||||||
|
"format-wifi": " {bandwidthDownBits:>} {bandwidthUpBits:>} ({signalStrength}%)",
|
||||||
|
"tooltip-format-wifi": "{essid}",
|
||||||
|
"format-ethernet": " {bandwidthDownBits:>} {bandwidthUpBits:>} ",
|
||||||
|
"tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}",
|
||||||
|
"format-disconnected": " Disconnected",
|
||||||
|
"on-click": "footclient --app-id floating_shell --window-size-chars 60x45 -e nmtui",
|
||||||
|
"interval": 2
|
||||||
|
},
|
||||||
"disk#hdd1": {
|
"disk#hdd1": {
|
||||||
"path": "/mnt/hdd1",
|
"path": "/mnt/hdd1",
|
||||||
"interval": 30,
|
"interval": 30,
|
||||||
|
|||||||
@@ -2,31 +2,25 @@
|
|||||||
input type:tablet_tool map_to_region 2560 0 2560 1440
|
input type:tablet_tool map_to_region 2560 0 2560 1440
|
||||||
|
|
||||||
# output
|
# output
|
||||||
output DP-1 resolution 5120x1440
|
exec create_output HEADLESS-1
|
||||||
|
output DP-1 resolution 5120x1440 position 0 0
|
||||||
|
output HEADLESS-1 resolution 2560x1440 position 5120 0
|
||||||
|
bindsym $mod+x output create HEADLESS-1
|
||||||
|
bindsym $mod+Shift+x output HEADLESS-1 unplug
|
||||||
|
|
||||||
# workspaces
|
workspace 1 output DP-1
|
||||||
bindsym {
|
workspace 2 output DP-1
|
||||||
# Switch to workspace
|
workspace 3 output DP-1
|
||||||
$mod+1 workspace $ws1
|
workspace 4 output DP-1
|
||||||
$mod+2 workspace $ws2
|
workspace 5 output DP-1
|
||||||
$mod+3 workspace $ws3
|
workspace 6 output DP-1
|
||||||
$mod+4 workspace $ws4
|
workspace 7 output DP-1
|
||||||
$mod+5 workspace $ws5
|
workspace 8 output DP-1
|
||||||
$mod+6 workspace $ws6
|
workspace 9 output DP-1
|
||||||
$mod+7 workspace $ws7
|
workspace 10 output DP-1
|
||||||
$mod+8 workspace $ws8
|
workspace INS output HEADLESS-1
|
||||||
$mod+9 workspace $ws9
|
workspace DEL output HEADLESS-1
|
||||||
$mod+0 workspace $ws10
|
workspace HOM output HEADLESS-1
|
||||||
|
workspace END output HEADLESS-1
|
||||||
# Move focused container to workspace
|
workspace PUp output HEADLESS-1
|
||||||
$mod+Shift+1 move container to workspace $ws1
|
workspace PDn output HEADLESS-1
|
||||||
$mod+Shift+2 move container to workspace $ws2
|
|
||||||
$mod+Shift+3 move container to workspace $ws3
|
|
||||||
$mod+Shift+4 move container to workspace $ws4
|
|
||||||
$mod+Shift+5 move container to workspace $ws5
|
|
||||||
$mod+Shift+6 move container to workspace $ws6
|
|
||||||
$mod+Shift+7 move container to workspace $ws7
|
|
||||||
$mod+Shift+8 move container to workspace $ws8
|
|
||||||
$mod+Shift+9 move container to workspace $ws9
|
|
||||||
$mod+Shift+0 move container to workspace $ws10
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,4 +1,15 @@
|
|||||||
{
|
{
|
||||||
|
"network": {
|
||||||
|
"interface": "wlan0",
|
||||||
|
"format-disabled": " Disabled",
|
||||||
|
"format-wifi": " {bandwidthDownBits:>} {bandwidthUpBits:>} ({signalStrength}%)",
|
||||||
|
"tooltip-format-wifi": "{essid}",
|
||||||
|
"format-ethernet": " {bandwidthDownBits:>} {bandwidthUpBits:>} ",
|
||||||
|
"tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}",
|
||||||
|
"format-disconnected": " Disconnected",
|
||||||
|
"on-click": "footclient --app-id floating_shell --window-size-chars 60x45 -e nmtui",
|
||||||
|
"interval": 2
|
||||||
|
},
|
||||||
"disk#hdd1": {
|
"disk#hdd1": {
|
||||||
"path": "/mnt/hdd1",
|
"path": "/mnt/hdd1",
|
||||||
"interval": 30,
|
"interval": 30,
|
||||||
|
|||||||
@@ -5,30 +5,3 @@ input type:touchpad {
|
|||||||
|
|
||||||
# output
|
# output
|
||||||
output eDP-1 resolution 2736x1824 scale 1.6
|
output eDP-1 resolution 2736x1824 scale 1.6
|
||||||
|
|
||||||
# workspaces
|
|
||||||
bindsym {
|
|
||||||
# Switch to workspace
|
|
||||||
$mod+1 workspace $ws1
|
|
||||||
$mod+2 workspace $ws2
|
|
||||||
$mod+3 workspace $ws3
|
|
||||||
$mod+4 workspace $ws4
|
|
||||||
$mod+5 workspace $ws5
|
|
||||||
$mod+6 workspace $ws6
|
|
||||||
$mod+7 workspace $ws7
|
|
||||||
$mod+8 workspace $ws8
|
|
||||||
$mod+9 workspace $ws9
|
|
||||||
$mod+0 workspace $ws10
|
|
||||||
|
|
||||||
# Move focused container to workspace
|
|
||||||
$mod+Shift+1 move container to workspace $ws1
|
|
||||||
$mod+Shift+2 move container to workspace $ws2
|
|
||||||
$mod+Shift+3 move container to workspace $ws3
|
|
||||||
$mod+Shift+4 move container to workspace $ws4
|
|
||||||
$mod+Shift+5 move container to workspace $ws5
|
|
||||||
$mod+Shift+6 move container to workspace $ws6
|
|
||||||
$mod+Shift+7 move container to workspace $ws7
|
|
||||||
$mod+Shift+8 move container to workspace $ws8
|
|
||||||
$mod+Shift+9 move container to workspace $ws9
|
|
||||||
$mod+Shift+0 move container to workspace $ws10
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,4 +1,14 @@
|
|||||||
{
|
{
|
||||||
|
"network": {
|
||||||
|
"format-disabled": " Disabled",
|
||||||
|
"format-wifi": " {bandwidthDownBits:>} {bandwidthUpBits:>} ({signalStrength}%)",
|
||||||
|
"tooltip-format-wifi": "{essid}",
|
||||||
|
"format-ethernet": " {bandwidthDownBits:>} {bandwidthUpBits:>} ",
|
||||||
|
"tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}",
|
||||||
|
"format-disconnected": " Disconnected",
|
||||||
|
"on-click": "footclient --app-id floating_shell --window-size-chars 60x45 -e nmtui",
|
||||||
|
"interval": 2
|
||||||
|
},
|
||||||
"modules-right": [
|
"modules-right": [
|
||||||
"idle_inhibitor",
|
"idle_inhibitor",
|
||||||
"cpu",
|
"cpu",
|
||||||
|
|||||||
@@ -6,30 +6,3 @@ bindswitch tablet:on busctl call --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0
|
|||||||
|
|
||||||
# output
|
# output
|
||||||
output eDP-1 resolution 2496x1664 scale 1.6
|
output eDP-1 resolution 2496x1664 scale 1.6
|
||||||
|
|
||||||
# workspaces
|
|
||||||
bindsym {
|
|
||||||
# Switch to workspace
|
|
||||||
$mod+1 workspace $ws1
|
|
||||||
$mod+2 workspace $ws2
|
|
||||||
$mod+3 workspace $ws3
|
|
||||||
$mod+4 workspace $ws4
|
|
||||||
$mod+5 workspace $ws5
|
|
||||||
$mod+6 workspace $ws6
|
|
||||||
$mod+7 workspace $ws7
|
|
||||||
$mod+8 workspace $ws8
|
|
||||||
$mod+9 workspace $ws9
|
|
||||||
$mod+0 workspace $ws10
|
|
||||||
|
|
||||||
# Move focused container to workspace
|
|
||||||
$mod+Shift+1 move container to workspace $ws1
|
|
||||||
$mod+Shift+2 move container to workspace $ws2
|
|
||||||
$mod+Shift+3 move container to workspace $ws3
|
|
||||||
$mod+Shift+4 move container to workspace $ws4
|
|
||||||
$mod+Shift+5 move container to workspace $ws5
|
|
||||||
$mod+Shift+6 move container to workspace $ws6
|
|
||||||
$mod+Shift+7 move container to workspace $ws7
|
|
||||||
$mod+Shift+8 move container to workspace $ws8
|
|
||||||
$mod+Shift+9 move container to workspace $ws9
|
|
||||||
$mod+Shift+0 move container to workspace $ws10
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,4 +1,14 @@
|
|||||||
{
|
{
|
||||||
|
"network": {
|
||||||
|
"format-disabled": " Disabled",
|
||||||
|
"format-wifi": " {bandwidthDownBits:>} {bandwidthUpBits:>} ({signalStrength}%)",
|
||||||
|
"tooltip-format-wifi": "{essid}",
|
||||||
|
"format-ethernet": " {bandwidthDownBits:>} {bandwidthUpBits:>} ",
|
||||||
|
"tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}",
|
||||||
|
"format-disconnected": " Disconnected",
|
||||||
|
"on-click": "footclient --app-id floating_shell --window-size-chars 60x45 -e nmtui",
|
||||||
|
"interval": 2
|
||||||
|
},
|
||||||
"modules-right": [
|
"modules-right": [
|
||||||
"idle_inhibitor",
|
"idle_inhibitor",
|
||||||
"cpu",
|
"cpu",
|
||||||
|
|||||||
@@ -6,15 +6,15 @@
|
|||||||
# ]
|
# ]
|
||||||
# ///
|
# ///
|
||||||
# TODO
|
# TODO
|
||||||
# fix btop colors
|
|
||||||
# pre-luks remote ssh
|
# pre-luks remote ssh
|
||||||
# add
|
# add ufw setup
|
||||||
# - sudo ufw allow 22/tcp comment "ssh"
|
# - sudo ufw allow 22/tcp comment "ssh"
|
||||||
# - sudo ufw default allow FORWARD
|
# - sudo ufw default allow FORWARD
|
||||||
# - sudo ufw allow 2222
|
# - sudo ufw allow 2222
|
||||||
# - ... etc
|
# - ... etc
|
||||||
# - sudo enable ufw
|
# - sudo enable ufw
|
||||||
from difflib import unified_diff
|
from difflib import unified_diff
|
||||||
|
from getpass import getuser
|
||||||
from os.path import lexists
|
from os.path import lexists
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from shutil import rmtree
|
from shutil import rmtree
|
||||||
@@ -22,14 +22,15 @@ from subprocess import run
|
|||||||
from urllib.request import urlretrieve
|
from urllib.request import urlretrieve
|
||||||
|
|
||||||
HOSTNAME = open("/etc/hostname").read().strip()
|
HOSTNAME = open("/etc/hostname").read().strip()
|
||||||
HOME_TGT = Path("~").expanduser()
|
HOME_TGT = Path.home()
|
||||||
ROOT_TGT = Path("/")
|
ROOT_TGT = Path("/")
|
||||||
DOTFILES = HOME_TGT / "dotfiles"
|
DOTFILES = Path(__file__).resolve().parent
|
||||||
HOME_SRC = DOTFILES / "HOME"
|
HOME_SRC = DOTFILES / "HOME"
|
||||||
ROOT_SRC = DOTFILES / "ROOT"
|
ROOT_SRC = DOTFILES / "ROOT"
|
||||||
CFG_TGT = HOME_TGT / ".config"
|
CFG_TGT = HOME_TGT / ".config"
|
||||||
CFG_SRC = DOTFILES / "CONFIG"
|
CFG_SRC = DOTFILES / "CONFIG"
|
||||||
CUSTOM_SRC = DOTFILES / f"custom-{HOSTNAME}"
|
CUSTOM_SRC = DOTFILES / f"custom-{HOSTNAME}"
|
||||||
|
USERNAME = getuser()
|
||||||
installmap = dict(
|
installmap = dict(
|
||||||
fonts=(
|
fonts=(
|
||||||
"noto-fonts-emoji",
|
"noto-fonts-emoji",
|
||||||
@@ -87,6 +88,8 @@ installmap = dict(
|
|||||||
"v4l-utils",
|
"v4l-utils",
|
||||||
# photos
|
# photos
|
||||||
"qimgv",
|
"qimgv",
|
||||||
|
"kimageformats5", # heif support
|
||||||
|
"digikam",
|
||||||
# music
|
# music
|
||||||
"quodlibet",
|
"quodlibet",
|
||||||
"gst-plugins-good", # required deb
|
"gst-plugins-good", # required deb
|
||||||
@@ -111,7 +114,6 @@ installmap = dict(
|
|||||||
"qutebrowser",
|
"qutebrowser",
|
||||||
"firefox",
|
"firefox",
|
||||||
"google-chrome",
|
"google-chrome",
|
||||||
"microsoft-edge-stable-bin",
|
|
||||||
"w3m",
|
"w3m",
|
||||||
"python-adblock", # for qutebrowser ad blocker
|
"python-adblock", # for qutebrowser ad blocker
|
||||||
"python-tldextract",
|
"python-tldextract",
|
||||||
@@ -122,12 +124,11 @@ installmap = dict(
|
|||||||
"khard", # contacts
|
"khard", # contacts
|
||||||
"khal", # calendar
|
"khal", # calendar
|
||||||
"aerc", # email
|
"aerc", # email
|
||||||
"newsboat", # rss reader
|
"eilmeldung", # rss reader
|
||||||
"vdirsyncer", # sync calendar+contacts
|
"vdirsyncer", # sync calendar+contacts
|
||||||
"pandoc", # md2html for aerc
|
"pandoc", # md2html for aerc
|
||||||
"pass", # password manager for aerc and newsboat
|
"pass", # password manager for aerc
|
||||||
"w3m", # terminal browser for aerc and newsboat
|
"w3m", # terminal browser for aerc
|
||||||
"urlscan", # url finder for newsboat
|
|
||||||
"python-aiohttp-oauthlib", # for google vdirsyncer
|
"python-aiohttp-oauthlib", # for google vdirsyncer
|
||||||
),
|
),
|
||||||
monitors=(
|
monitors=(
|
||||||
@@ -139,12 +140,12 @@ installmap = dict(
|
|||||||
"bandwhich", # network
|
"bandwhich", # network
|
||||||
"sysstat",
|
"sysstat",
|
||||||
),
|
),
|
||||||
apps=("keepassxc", "bitwarden", "qalculate-gtk", "vesktop"),
|
apps=("keepassxc", "bitwarden", "qalculate-gtk", "discord"),
|
||||||
sway=(
|
sway=(
|
||||||
|
"xdg-terminal-exec",
|
||||||
# visuals
|
# visuals
|
||||||
"wlsunset", # eye saver
|
"wlsunset", # eye saver
|
||||||
"wdisplays", # ui for display settings
|
"wdisplays", # ui for display settings
|
||||||
"flashfocus", # quick flash when changing app in focus
|
|
||||||
# clipboard
|
# clipboard
|
||||||
"wl-clip-persist", # keep clipboard after close
|
"wl-clip-persist", # keep clipboard after close
|
||||||
# div
|
# div
|
||||||
@@ -170,6 +171,21 @@ installmap = dict(
|
|||||||
"flux-bin",
|
"flux-bin",
|
||||||
"open-iscsi", # required by longhorn
|
"open-iscsi", # required by longhorn
|
||||||
"kubectl-cnpg",
|
"kubectl-cnpg",
|
||||||
|
# ssh for luks unlocking
|
||||||
|
"dracut-crypt-ssh",
|
||||||
|
"dropbear",
|
||||||
|
),
|
||||||
|
virtwin=(
|
||||||
|
"qemu-full", # the emulator itself
|
||||||
|
"libvirt", # the backend manager - handles running qemu
|
||||||
|
"virt-manager", # the graphical dashboard
|
||||||
|
"virt-viewer", # the display window
|
||||||
|
"iptables-nft", # for using iptables instead of nft
|
||||||
|
"dnsmasq", # lightweight DHCP and DNS server
|
||||||
|
"bridge-utils", # tools for creating network bridges
|
||||||
|
"vde2", # networking plumbing
|
||||||
|
"openbsd-netcat", # networking plumbing
|
||||||
|
"swtpm", # win11 requirement
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -195,7 +211,7 @@ def helper_maybe_copy(
|
|||||||
src = src_folder.expanduser() / sub
|
src = src_folder.expanduser() / sub
|
||||||
tgt = tgt_folder.expanduser() / sub
|
tgt = tgt_folder.expanduser() / sub
|
||||||
assert src.exists()
|
assert src.exists()
|
||||||
tgt.parent.mkdir(exist_ok=True)
|
tgt.parent.mkdir(exist_ok=True, parents=True)
|
||||||
if lexists(tgt):
|
if lexists(tgt):
|
||||||
if not overwrite:
|
if not overwrite:
|
||||||
if diff := compare(src, tgt):
|
if diff := compare(src, tgt):
|
||||||
@@ -222,7 +238,7 @@ def helper_clone_foldercontents(
|
|||||||
) -> None:
|
) -> None:
|
||||||
src_folder = src_parent.expanduser() / folder
|
src_folder = src_parent.expanduser() / folder
|
||||||
tgt_folder = tgt_parent.expanduser() / folder
|
tgt_folder = tgt_parent.expanduser() / folder
|
||||||
tgt_folder.mkdir(exist_ok=True)
|
tgt_folder.mkdir(exist_ok=True, parents=True)
|
||||||
assert src_folder.is_dir()
|
assert src_folder.is_dir()
|
||||||
assert tgt_folder.is_dir() or tgt_folder.is_symlink()
|
assert tgt_folder.is_dir() or tgt_folder.is_symlink()
|
||||||
for src in src_folder.iterdir():
|
for src in src_folder.iterdir():
|
||||||
@@ -249,7 +265,7 @@ def helper_install(*pkgs: str, reinstall: bool) -> None:
|
|||||||
|
|
||||||
def install_fonts(reinstall: bool) -> None:
|
def install_fonts(reinstall: bool) -> None:
|
||||||
tgt = Path("~/.local/share/fonts/Akkurat-Mono.otf").expanduser()
|
tgt = Path("~/.local/share/fonts/Akkurat-Mono.otf").expanduser()
|
||||||
tgt.parent.mkdir(exist_ok=True)
|
tgt.parent.mkdir(exist_ok=True, parents=True)
|
||||||
urlretrieve(
|
urlretrieve(
|
||||||
"https://raw.githubusercontent.com/SUNET/static_sunet_se/refs/heads/master/fonts/Akkurat-Mono.otf",
|
"https://raw.githubusercontent.com/SUNET/static_sunet_se/refs/heads/master/fonts/Akkurat-Mono.otf",
|
||||||
tgt,
|
tgt,
|
||||||
@@ -293,6 +309,7 @@ def install_gittools(overwrite: bool, reinstall: bool) -> None:
|
|||||||
|
|
||||||
def install_readers(overwrite: bool, reinstall: bool) -> None:
|
def install_readers(overwrite: bool, reinstall: bool) -> None:
|
||||||
helper_install(*installmap["readers"], reinstall=reinstall)
|
helper_install(*installmap["readers"], reinstall=reinstall)
|
||||||
|
helper_clone_foldercontents(CFG_SRC, CFG_TGT, "xournalpp", overwrite)
|
||||||
helper_clone_foldercontents(CFG_SRC, CFG_TGT, "sioyek", overwrite)
|
helper_clone_foldercontents(CFG_SRC, CFG_TGT, "sioyek", overwrite)
|
||||||
helper_clone_foldercontents(CFG_SRC, CFG_TGT, "zathura", overwrite)
|
helper_clone_foldercontents(CFG_SRC, CFG_TGT, "zathura", overwrite)
|
||||||
|
|
||||||
@@ -340,21 +357,20 @@ def install_monitors(overwrite: bool, reinstall: bool) -> None:
|
|||||||
|
|
||||||
def install_emailcalrss(overwrite: bool, reinstall: bool) -> None:
|
def install_emailcalrss(overwrite: bool, reinstall: bool) -> None:
|
||||||
helper_install(*installmap["emailcalrss"], reinstall=reinstall)
|
helper_install(*installmap["emailcalrss"], reinstall=reinstall)
|
||||||
for tgt in ["vdirsyncer", "khard", "khal", "aerc", "newsboat"]:
|
for tgt in ["vdirsyncer", "khard", "khal", "aerc"]:
|
||||||
helper_clone_foldercontents(CFG_SRC, CFG_TGT, tgt, overwrite)
|
helper_clone_foldercontents(CFG_SRC, CFG_TGT, tgt, overwrite)
|
||||||
tgt = ".local/share/applications/userapp-khalimport.desktop"
|
tgt = ".local/share/applications/userapp-khalimport.desktop"
|
||||||
helper_maybe_copy(HOME_SRC, HOME_TGT, tgt, overwrite, symlink=True)
|
helper_maybe_copy(HOME_SRC, HOME_TGT, tgt, overwrite, symlink=True)
|
||||||
run("systemctl enable --user --now vdirsyncer.timer".split())
|
run("systemctl enable --user --now vdirsyncer.timer".split())
|
||||||
run(f"chmod 600 {CFG_TGT / 'aerc/accounts.conf'}".split())
|
run(f"chmod 600 {CFG_TGT / 'aerc/accounts.conf'}".split())
|
||||||
(HOME_TGT / ".cache/newsboat").mkdir(exist_ok=True)
|
|
||||||
(HOME_TGT / "Calendars").mkdir(exist_ok=True)
|
(HOME_TGT / "Calendars").mkdir(exist_ok=True)
|
||||||
(HOME_TGT / "Contacts").mkdir(exist_ok=True)
|
(HOME_TGT / "Contacts").mkdir(exist_ok=True)
|
||||||
|
|
||||||
|
|
||||||
def install_sway(overwrite: bool, reinstall: bool) -> None:
|
def install_sway(overwrite: bool, reinstall: bool) -> None:
|
||||||
# sudo
|
|
||||||
helper_uninstall("autotiling", "cliphist")
|
helper_uninstall("autotiling", "cliphist")
|
||||||
helper_install(*installmap["sway"], reinstall=reinstall)
|
helper_install(*installmap["sway"], reinstall=reinstall)
|
||||||
|
# sudo stuff
|
||||||
for sub in [
|
for sub in [
|
||||||
"etc/systemd/logind.conf.d/suspend.conf",
|
"etc/systemd/logind.conf.d/suspend.conf",
|
||||||
"etc/systemd/sleep.conf.d/hibernate.conf",
|
"etc/systemd/sleep.conf.d/hibernate.conf",
|
||||||
@@ -374,22 +390,35 @@ def install_sway(overwrite: bool, reinstall: bool) -> None:
|
|||||||
run(["sudo", "rm", str(tgt)])
|
run(["sudo", "rm", str(tgt)])
|
||||||
run(["sudo", "cp", str(src), str(tgt)])
|
run(["sudo", "cp", str(src), str(tgt)])
|
||||||
run("sudo systemctl enable --now bluetooth".split())
|
run("sudo systemctl enable --now bluetooth".split())
|
||||||
# user
|
# div app configs
|
||||||
run("systemctl --user enable --now flashfocus".split())
|
if (tgt := CFG_TGT / "waybar/config").exists(): # precedence over config.jsonc
|
||||||
if (tgt := CFG_TGT / "waybar/config").exists():
|
|
||||||
tgt.unlink()
|
tgt.unlink()
|
||||||
for sub in ["sway", "waybar", "gtk-3.0", "mako", "fuzzel", "nwg-drawer"]:
|
for sub in [
|
||||||
|
"sway",
|
||||||
|
"waybar",
|
||||||
|
"gtklock",
|
||||||
|
"gtk-3.0",
|
||||||
|
"mako",
|
||||||
|
"fuzzel",
|
||||||
|
"nwg-drawer",
|
||||||
|
"xdg-desktop-portal-wlr",
|
||||||
|
"foot",
|
||||||
|
"xkb/symbols",
|
||||||
|
]:
|
||||||
helper_clone_foldercontents(CFG_SRC, CFG_TGT, sub, overwrite)
|
helper_clone_foldercontents(CFG_SRC, CFG_TGT, sub, overwrite)
|
||||||
helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "sway", overwrite)
|
helper_maybe_copy(CFG_SRC, CFG_TGT, "xdg-terminals.list", overwrite, symlink=True)
|
||||||
helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "waybar", overwrite)
|
|
||||||
helper_maybe_copy(CFG_SRC, CFG_TGT, "mimeapps.list", overwrite, symlink=True)
|
helper_maybe_copy(CFG_SRC, CFG_TGT, "mimeapps.list", overwrite, symlink=True)
|
||||||
|
# custom sway configs
|
||||||
|
helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "sway", overwrite)
|
||||||
|
# custom waybar configs
|
||||||
|
helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "waybar", overwrite)
|
||||||
|
# desktop entries
|
||||||
helper_clone_foldercontents(
|
helper_clone_foldercontents(
|
||||||
HOME_SRC,
|
HOME_SRC,
|
||||||
HOME_TGT,
|
HOME_TGT,
|
||||||
".local/share/applications",
|
".local/share/applications",
|
||||||
overwrite,
|
overwrite,
|
||||||
)
|
)
|
||||||
helper_clone_foldercontents(CFG_SRC, CFG_TGT, "foot", overwrite)
|
|
||||||
|
|
||||||
|
|
||||||
def configure_pytools(overwrite: bool) -> None:
|
def configure_pytools(overwrite: bool) -> None:
|
||||||
@@ -399,6 +428,14 @@ def configure_pytools(overwrite: bool) -> None:
|
|||||||
helper_clone_foldercontents(HOME_SRC, HOME_TGT, sub, overwrite)
|
helper_clone_foldercontents(HOME_SRC, HOME_TGT, sub, overwrite)
|
||||||
|
|
||||||
|
|
||||||
|
def install_virtwin(overwrite: bool, reinstall: bool) -> None:
|
||||||
|
helper_install(*installmap["virtwin"], reinstall=reinstall)
|
||||||
|
run(["sudo", "usermod", "-aG", "libvirt", USERNAME])
|
||||||
|
run("sudo virsh net-start default".split())
|
||||||
|
run("sudo virsh net-autostart default".split())
|
||||||
|
run("systemctl enable --now libvirtd".split())
|
||||||
|
|
||||||
|
|
||||||
def install_k8sreqs(overwrite: bool, reinstall: bool) -> None:
|
def install_k8sreqs(overwrite: bool, reinstall: bool) -> None:
|
||||||
# sudo
|
# sudo
|
||||||
helper_install(*installmap["k8s"], reinstall=reinstall)
|
helper_install(*installmap["k8s"], reinstall=reinstall)
|
||||||
@@ -408,6 +445,11 @@ def install_k8sreqs(overwrite: bool, reinstall: bool) -> None:
|
|||||||
run("sudo systemctl enable --now iscsid".split())
|
run("sudo systemctl enable --now iscsid".split())
|
||||||
# user
|
# user
|
||||||
helper_clone_foldercontents(CFG_SRC, CFG_TGT, "k9s", overwrite)
|
helper_clone_foldercontents(CFG_SRC, CFG_TGT, "k9s", overwrite)
|
||||||
|
# luks
|
||||||
|
run("sudo mkdir -p /root/.ssh".split())
|
||||||
|
run("sudo chmod 700 /root/.ssh".split())
|
||||||
|
run("sudo touch /root/.ssh/authorized_keys".split())
|
||||||
|
run("sudo chmod 600 /root/.ssh/authorized_keys".split())
|
||||||
|
|
||||||
|
|
||||||
def installer(
|
def installer(
|
||||||
@@ -463,6 +505,7 @@ def installer(
|
|||||||
print("installed coolercontrol")
|
print("installed coolercontrol")
|
||||||
if HOSTNAME in ["mothership"]:
|
if HOSTNAME in ["mothership"]:
|
||||||
helper_install(*installmap["docker"], reinstall=reinstall)
|
helper_install(*installmap["docker"], reinstall=reinstall)
|
||||||
|
install_virtwin(overwrite, reinstall)
|
||||||
helper_clone_foldercontents(
|
helper_clone_foldercontents(
|
||||||
CFG_SRC, CFG_TGT, "homeassistant", overwrite, symlink=False
|
CFG_SRC, CFG_TGT, "homeassistant", overwrite, symlink=False
|
||||||
)
|
)
|
||||||
@@ -484,13 +527,28 @@ def installer(
|
|||||||
coolercontrold.service`
|
coolercontrold.service`
|
||||||
|
|
||||||
# k8s
|
# k8s
|
||||||
- configure `/etc/hosts`
|
- configure /etc/hosts
|
||||||
|
- /etc/hosts: configure
|
||||||
|
- /root/.ssh/authorized_keys: add permitted ssh keys
|
||||||
|
- /etc/dracut.conf.d/crypt-ssh.conf: set port + 'unlock' helper
|
||||||
|
- /etc/dracut.conf.d/eos-defaults.conf: don't omit network
|
||||||
|
- /etc/kernel/cmdline: add `rd.neednet=1 ip=dhcp` arguments
|
||||||
|
- `sudo dracut-rebuild`
|
||||||
- run `hjarl-system/k8s.py` scripts
|
- run `hjarl-system/k8s.py` scripts
|
||||||
|
|
||||||
# docker / home assistant
|
# docker / home assistant
|
||||||
- docker with non-root daemon
|
- docker with non-root daemon
|
||||||
`sudo groupadd docker && sudo usermod -aG docker $USER`
|
`sudo groupadd docker && sudo usermod -aG docker $USER`
|
||||||
- run home assistant and music assistant scripts to start docker services
|
- run home assistant and music assistant scripts to start docker services
|
||||||
|
|
||||||
|
# virtual machine
|
||||||
|
- /etc/libvirt/network.conf: set `firewall_backend = "iptables"` and restart libvirtd
|
||||||
|
- download windows + virtio driver ISOs
|
||||||
|
- vm setup:
|
||||||
|
- CPUs: Uncheck "Copy host CPU configuration" and select host-passthrough
|
||||||
|
- Disk (IDE/SATA): Change the "Disk bus" to VirtIO
|
||||||
|
- NIC (Network): Change "Device model" to virtio
|
||||||
|
- Add Hardware: Click "Add Hardware" -> "Storage" -> Select "CDROM" -> select virtio driver iso
|
||||||
""")
|
""")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user