diff options
| author | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-10-30 19:01:51 +0100 |
|---|---|---|
| committer | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-10-30 19:01:51 +0100 |
| commit | 8350aa04f51882f11bd40a51eacd4a0c47bafc02 (patch) | |
| tree | 69e94b2e26ca370108c476eade15150c34b307d1 | |
| parent | 1cb7eb48c4e81626d3df6736fd0e2a866674def5 (diff) | |
| parent | 2b09251962f4b80eeee1c6e11bde8d29536915e6 (diff) | |
Merge branch 'main' of git.sr.ht:~rbdr/dotfiles
| -rw-r--r-- | config/btop/btop.conf | 224 | ||||
| -rw-r--r-- | config/btop/themes/tranquil-light.theme | 124 | ||||
| -rw-r--r-- | config/karabiner/karabiner.json | 125 | ||||
| -rw-r--r-- | config/kitty/kitty.conf | 131 | ||||
| -rw-r--r-- | config/ncmpcpp/config | 20 | ||||
| -rw-r--r-- | config/nvim/colors/tranquil-light.vim | 160 | ||||
| -rw-r--r-- | config/nvim/init.lua | 6 | ||||
| -rw-r--r-- | config/nvim/lazy-lock.json | 26 | ||||
| -rw-r--r-- | config/nvim/lua/lsp.lua | 80 | ||||
| -rw-r--r-- | config/nvim/lua/plugins.lua | 6 | ||||
| -rw-r--r-- | config/nvim/lua/treesitter_config.lua | 1 | ||||
| -rwxr-xr-x | install | 3 | ||||
| -rw-r--r-- | provisioning/brew_cask_essential | 4 | ||||
| -rw-r--r-- | provisioning/brew_cask_full | 7 | ||||
| -rw-r--r-- | provisioning/brew_cask_nice | 2 | ||||
| -rw-r--r-- | provisioning/brew_essential | 1 | ||||
| -rw-r--r-- | runcoms/zshrc | 4 | ||||
| -rw-r--r-- | scripts/colors.py | 59 | ||||
| -rw-r--r-- | zsh/modules/color.zsh | 2 | ||||
| -rw-r--r-- | zsh/modules/prompt.zsh | 3 |
20 files changed, 901 insertions, 87 deletions
diff --git a/config/btop/btop.conf b/config/btop/btop.conf new file mode 100644 index 0000000..c706619 --- /dev/null +++ b/config/btop/btop.conf @@ -0,0 +1,224 @@ +#? Config file for btop v. 1.4.5 + +#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. +#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" +color_theme = "tranquil-light" + +#* If the theme set background should be shown, set to False if you want terminal background transparency. +theme_background = True + +#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. +truecolor = True + +#* Set to true to force tty mode regardless if a real tty has been detected or not. +#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols. +force_tty = False + +#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets. +#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box. +#* Use whitespace " " as separator between different presets. +#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty" +presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty" + +#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. +#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. +vim_keys = False + +#* Rounded corners on boxes, is ignored if TTY mode is ON. +rounded_corners = True + +#* Default symbols to use for graph creation, "braille", "block" or "tty". +#* "braille" offers the highest resolution but might not be included in all fonts. +#* "block" has half the resolution of braille but uses more common characters. +#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY. +#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view. +graph_symbol = "braille" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_cpu = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_mem = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_net = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_proc = "default" + +#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace. +shown_boxes = "cpu mem net proc" + +#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs. +update_ms = 2000 + +#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct", +#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly. +proc_sorting = "cpu lazy" + +#* Reverse sorting order, True or False. +proc_reversed = False + +#* Show processes as a tree. +proc_tree = False + +#* Use the cpu graph colors in the process list. +proc_colors = True + +#* Use a darkening gradient in the process list. +proc_gradient = True + +#* If process cpu usage should be of the core it's running on or usage of the total available cpu power. +proc_per_core = False + +#* Show process memory as bytes instead of percent. +proc_mem_bytes = True + +#* Show cpu graph for each process. +proc_cpu_graphs = True + +#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate) +proc_info_smaps = False + +#* Show proc box on left side of screen instead of right. +proc_left = False + +#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). +proc_filter_kernel = False + +#* In tree-view, always accumulate child process resources in the parent process. +proc_aggregate = False + +#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. +#* Select from a list of detected attributes from the options menu. +cpu_graph_upper = "Auto" + +#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available. +#* Select from a list of detected attributes from the options menu. +cpu_graph_lower = "Auto" + +#* Toggles if the lower CPU graph should be inverted. +cpu_invert_lower = True + +#* Set to True to completely disable the lower CPU graph. +cpu_single_graph = False + +#* Show cpu box at bottom of screen instead of top. +cpu_bottom = False + +#* Shows the system uptime in the CPU box. +show_uptime = True + +#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo. +show_cpu_watts = True + +#* Show cpu temperature. +check_temp = True + +#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors. +cpu_sensor = "Auto" + +#* Show temperatures for cpu cores also if check_temp is True and sensors has been found. +show_coretemp = True + +#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core. +#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine. +#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries. +#* Example: "4:0 5:1 6:3" +cpu_core_map = "" + +#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine". +temp_scale = "celsius" + +#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. +base_10_sizes = False + +#* Show CPU frequency. +show_cpu_freq = True + +#* Draw a clock at top of screen, formatting according to strftime, empty string to disable. +#* Special formatting: /host = hostname | /user = username | /uptime = system uptime +clock_format = "%X" + +#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort. +background_update = True + +#* Custom cpu model name, empty string to disable. +custom_cpu_name = "" + +#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ". +#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user" +disks_filter = "" + +#* Show graphs instead of meters for memory values. +mem_graphs = True + +#* Show mem box below net box instead of above. +mem_below_net = False + +#* Count ZFS ARC in cached and available memory. +zfs_arc_cached = True + +#* If swap memory should be shown in memory box. +show_swap = True + +#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. +swap_disk = True + +#* If mem box should be split to also show disks info. +show_disks = True + +#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. +only_physical = True + +#* Read disks list from /etc/fstab. This also disables only_physical. +use_fstab = True + +#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool) +zfs_hide_datasets = False + +#* Set to true to show available disk space for privileged users. +disk_free_priv = False + +#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. +show_io_stat = True + +#* Toggles io mode for disks, showing big graphs for disk read/write speeds. +io_mode = False + +#* Set to True to show combined read/write io graphs in io mode. +io_graph_combined = False + +#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ". +#* Example: "/mnt/media:100 /:20 /boot:1". +io_graph_speeds = "" + +#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False. +net_download = 100 + +net_upload = 100 + +#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest. +net_auto = True + +#* Sync the auto scaling for download and upload to whichever currently has the highest scale. +net_sync = True + +#* Starts with the Network Interface specified here. +net_iface = "" + +#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes. +base_10_bitrate = "Auto" + +#* Show battery stats in top right if battery is present. +show_battery = True + +#* Which battery to use if multiple are present. "Auto" for auto detection. +selected_battery = "Auto" + +#* Show power stats of battery next to charge indicator. +show_battery_watts = True + +#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". +#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. +log_level = "WARNING" diff --git a/config/btop/themes/tranquil-light.theme b/config/btop/themes/tranquil-light.theme new file mode 100644 index 0000000..60c5b1c --- /dev/null +++ b/config/btop/themes/tranquil-light.theme @@ -0,0 +1,124 @@ +#Bashtop "tranquil-light" theme +#by rbdr + +# Colors should be in 6 or 2 character hexadecimal or single spaced rgb decimal: "#RRGGBB", "#BW" or "0-255 0-255 0-255" +# example for white: "#FFFFFF", "#ff" or "255 255 255". + +# All graphs and meters can be gradients +# For single color graphs leave "mid" and "end" variable empty. +# Use "start" and "end" variables for two color gradient +# Use "start", "mid" and "end" for three color gradient + +# Main background, empty for terminal default, need to be empty if you want transparent background +theme[main_bg]="" + +# Main text color +# Deep Slate Green +theme[main_fg]="#0F261F" + +# Title color for boxes +# rbdr Blue +theme[title]="#0000F1" + +# Highlight color for keyboard shortcuts +# Eosine Pink +theme[hi_fg]="#FF5EC4" + +# Background color of selected item in processes box +# Light Porcelain Green +theme[selected_bg]="#23C17C" + +# Foreground color of selected item in processes box +# Light Porcelain Green +theme[selected_fg]="#FFFFFF" + +# Color of inactive/disabled text +# Dark Neutral Gray +theme[inactive_fg]="#90A6A2" + +# Misc colors for processes box including mini cpu graphs, details memory graph and details status text +theme[proc_misc]="#FF00FF" + +# Cpu box outline color +# Deep Slate Green +theme[cpu_box]="#0F261F" + +# Memory/disks box outline color +# Deep Slate Green +theme[mem_box]="#0F261F" + +# Net up/down box outline color +# Deep Slate Green +theme[net_box]="#0F261F" + +# Processes box outline color +# Deep Slate Green +theme[proc_box]="#0F261F" + +# Box divider line and small boxes line color +# Deep Slate Green +theme[div_line]="#0F261F" + +# Temperature graph colors +# Light Porcelain Green +theme[temp_start]="#23C17C" +# Golden Yellow +theme[temp_mid]="#FFAB00" +# Jasper Red +theme[temp_end]="#FA2B00" + +# CPU graph colors +# Light Porcelain Green +theme[cpu_start]="#23C17C" +# Golden Yellow +theme[cpu_mid]="#FFAB00" +# Jasper Red +theme[cpu_end]="#FA2B00" + +# Mem/Disk free meter +# Light Porcelain Green +theme[free_start]="#23C17C" +# Golden Yellow +theme[free_mid]="#FFAB00" +# Jasper Red +theme[free_end]="#FA2B00" + +# Mem/Disk cached meter +# Light Porcelain Green +theme[cached_start]="#23C17C" +# Golden Yellow +theme[cached_mid]="#FFAB00" +# Jasper Red +theme[cached_end]="#FA2B00" + +# Mem/Disk available meter +# Light Porcelain Green +theme[available_start]="#23C17C" +# Golden Yellow +theme[available_mid]="#FFAB00" +# Jasper Red +theme[available_end]="#FA2B00" + +# Mem/Disk used meter +# Light Porcelain Green +theme[used_start]="#23C17C" +# Golden Yellow +theme[used_mid]="#FFAB00" +# Jasper Red +theme[used_end]="#FA2B00" + +# Download graph colors +# Light Porcelain Green +theme[download_start]="#23C17C" +# Golden Yellow +theme[download_mid]="#FFAB00" +# Jasper Red +theme[download_end]="#FA2B00" + +# Upload graph colors +# Light Porcelain Green +theme[upload_start]="#23C17C" +# Golden Yellow +theme[upload_mid]="#FFAB00" +# Jasper Red +theme[upload_end]="#FA2B00" diff --git a/config/karabiner/karabiner.json b/config/karabiner/karabiner.json index 8a77fbc..eb006a3 100644 --- a/config/karabiner/karabiner.json +++ b/config/karabiner/karabiner.json @@ -5,6 +5,89 @@ "complex_modifications": { "rules": [ { + "description": "Show Desktop", + "manipulators": [ + { + "from": { + "key_code": "f5", + "modifiers": { "mandatory": ["command"] } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": ["command", "control"] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Next MPC Track", + "manipulators": [ + { + "from": { + "key_code": "f9", + "modifiers": { "mandatory": ["command"] } + }, + "to": [{ "shell_command": "/opt/homebrew/bin/mpc next" }], + "type": "basic" + } + ] + }, + { + "description": "Previous MPC Track", + "manipulators": [ + { + "from": { + "key_code": "f7", + "modifiers": { "mandatory": ["command"] } + }, + "to": [{ "shell_command": "/opt/homebrew/bin/mpc prev" }], + "type": "basic" + } + ] + }, + { + "description": "Play / Pause MPC", + "manipulators": [ + { + "from": { + "key_code": "f8", + "modifiers": { "mandatory": ["command"] } + }, + "to": [{ "shell_command": "/opt/homebrew/bin/mpc toggle" }], + "type": "basic" + } + ] + }, + { + "description": "Change Wallpaper", + "manipulators": [ + { + "from": { + "key_code": "f5", + "modifiers": { "mandatory": ["command", "option"] } + }, + "to": [{ "shell_command": "/Users/rbdr/.wpaperalt" }], + "type": "basic" + } + ] + }, + { + "description": "Change Wallpaper Set", + "manipulators": [ + { + "from": { + "key_code": "f5", + "modifiers": { "mandatory": ["command", "option", "control"] } + }, + "to": [{ "shell_command": "/Users/rbdr/.wpaperalt --switch" }], + "type": "basic" + } + ] + }, + { "description": "print_screen to command+shift+4", "manipulators": [ { @@ -61,7 +144,17 @@ "product_id": 25903, "vendor_id": 3141 }, - "manipulate_caps_lock_led": false + "manipulate_caps_lock_led": false, + "simple_modifications": [ + { + "from": { "key_code": "left_command" }, + "to": [{ "key_code": "left_option" }] + }, + { + "from": { "key_code": "left_option" }, + "to": [{ "key_code": "left_command" }] + } + ] }, { "identifiers": { @@ -79,6 +172,30 @@ "to": [{ "key_code": "grave_accent_and_tilde" }] } ] + }, + { + "identifiers": { + "is_keyboard": true, + "product_id": 41617, + "vendor_id": 1241 + }, + "manipulate_caps_lock_led": false + }, + { + "identifiers": { + "is_consumer": true, + "product_id": 41617, + "vendor_id": 1241 + }, + "ignore": false + }, + { + "identifiers": { + "is_keyboard": true, + "product_id": 32777, + "vendor_id": 44064 + }, + "ignore": true } ], "fn_function_keys": [ @@ -101,6 +218,12 @@ ], "name": "Default profile", "selected": true, + "simple_modifications": [ + { + "from": { "key_code": "caps_lock" }, + "to": [{ "key_code": "left_control" }] + } + ], "virtual_hid_keyboard": { "country_code": 0, "keyboard_type_v2": "ansi" diff --git a/config/kitty/kitty.conf b/config/kitty/kitty.conf index 8badd10..2f9e845 100644 --- a/config/kitty/kitty.conf +++ b/config/kitty/kitty.conf @@ -1,9 +1,9 @@ # Font -font_family InputMonoCondensed-Thin +font_family InputMonoCondensed-Light bold_font InputMonoCondensed-Medium -italic_font InputMonoCondensed-ThinItalic +italic_font InputMonoCondensed-LightItalic bold_italic_font InputMonoCondensed-MediumItalic -font_size 12.0 +font_size 13 # Cursor cursor none @@ -14,75 +14,146 @@ cursor_trail 1 # Mouse mouse_hide_wait 0 -background_opacity 0.95 +background_opacity 0.93 + +# Color Scheme - Ruben Tranquil Light +foreground #0F261F +# Almost White +background #FFFFFA +# Middle C Gray +selection_foreground #CCCCCC +# rbdr Blue +selection_background #0000F1 +# Olympic Blue +active_border_color #4F8FE6 +# Light Neutral Gray +inactive_border_color #DAE6E3 + +# Just White +active_tab_foreground #FFFFFF +# rbdr Blue +active_tab_background #0000F1 +# Deep Slate Green +inactive_tab_foreground #0F261F +# Neutral Gray +inactive_tab_background #CCCCCC + +# Regular Colors - Ruben Tranquil +# black +# Deep Slate Green +color0 #0F261F +# red +# Jasper Red +color1 #FA2B00 +# green +# Light Porcelain Green +color2 #23C17C +# yellow +# Golden Yellow +color3 #ffab00 +# blue +# rbdr Blue +color4 #0000F1 +# magenta +# Eosine Pink +color5 #ff5ec4 +# cyan +# Cerulian Blue +color6 #29bdad +# white +color7 #ffffff + +# black +# Dark Neutral Gray +color8 #90A6A2 +# red +# Grenadine Pink +color9 #FF616B +# green +color10 #55ff55 +# yellow +# Cinnamon Buff +color11 #ffbf6e +# blue +# Olympic Blue +color12 #4F8FE6 +# magenta +# Hermosa Pink +color13 #FFB4F0 +# cyan +# Salvia Blue +color14 #96bfe6 +# white +# Neutral Gray +color15 #B5D1CC # Color Scheme - Ruben Tranquil -foreground #ffffff +# foreground #ffffff # Deep Slate Green -background #0F261F +# background #0F261F # Deep Slate Green -selection_foreground #0F261F +# selection_foreground #0F261F # Light Neutral Gray -selection_background #DAE6E3 +# selection_background #DAE6E3 # Calamine Blue -active_border_color #80FFCC +# active_border_color #80FFCC # Light Neutral Gray -inactive_border_color #DAE6E3 +# inactive_border_color #DAE6E3 # Deep Slate Green -active_tab_foreground #0F261F +# active_tab_foreground #0F261F # Calamine Blue -active_tab_background #80FFCC +# active_tab_background #80FFCC # Neutral Gray -inactive_tab_foreground #B5D1CC +# inactive_tab_foreground #B5D1CC # Deep Slate Green (-5% brightness) -inactive_tab_background #0e241d +# inactive_tab_background #0e241d # Regular Colors - Ruben Tranquil # black # Dark Neutral Gray -color0 #90A6A2 +# color0 #90A6A2 # red # Jasper Red -color1 #FA2B00 +# color1 #FA2B00 # green # Light Porcelain Green -color2 #23C17C +# color2 #23C17C # yellow # Naples Yellow -color3 #FAED8F +# color3 #FAED8F # blue # Olympic Blue -color4 #4F8FE6 +# color4 #4F8FE6 # magenta # Hermosa Pink -color5 #FFB4F0 +# color5 #FFB4F0 # cyan # Calamine Blue -color6 #80FFCC +# color6 #80FFCC # white # Light Neutral Gray -color7 #DAE6E3 +# color7 #DAE6E3 # black # Neutral Gray -color8 #B5D1CC +# color8 #B5D1CC # red # Grenadine Pink -color9 #FF616B +# color9 #FF616B # green -color10 #55ff55 +# color10 #55ff55 # yellow -color11 #ffff55 +# color11 #ffff55 # blue -color12 #5555ff +# color12 #5555ff # magenta # Seashell Pink -color13 #FFCFC4 +# color13 #FFCFC4 # cyan -color14 #55ffff +# color14 #55ffff # white -color15 #ffffff +# color15 #ffffff # Color Scheme - Ruben Primary # foreground #ffffff diff --git a/config/ncmpcpp/config b/config/ncmpcpp/config index f9627a8..4001d04 100644 --- a/config/ncmpcpp/config +++ b/config/ncmpcpp/config @@ -1,4 +1,6 @@ -mpd_music_dir "~/.config/mpd/music" +mpd_host = music.bdr.place +mpd_port = 6600 +mpd_music_dir "/mnt/hogganfield/archive/music/Music" visualizer_output_name = Visualizer feed visualizer_data_source = /tmp/mpd.fifo @@ -18,18 +20,24 @@ state_flags_color = blue_white:b window_border_color = green main_window_color = blue -progressbar_elapsed_color = white_blue:b -progressbar_color = white_blue:b +progressbar_elapsed_color = blue_0:b +progressbar_color = blue_0:b statusbar_color = white_green player_state_color = white_green:b -statusbar_time_color = green_white +statusbar_time_color = black_white # Progress Bar progressbar_look = █◗ # Playlist -song_columns_list_format = (20)[blue]{a} (50)[white]{t|f:Title} (20)[cyan]{b} (7f)[magenta]{l} +song_columns_list_format = (20)[blue]{a} (50)[black]{t|f:Title} (20)[cyan]{b} (7f)[magenta]{l} # Library -song_library_format = $(black){%n}$(white) {%t}|{%f} +song_library_format = $(blue){%n}$(black) {%t}|{%f} + +# Selected Formatting +current_item_prefix = $(black_yellow) +current_item_suffix = $0 +current_item_inactive_column_prefix = $(white_cyan) +current_item_inactive_column_suffix = $0 diff --git a/config/nvim/colors/tranquil-light.vim b/config/nvim/colors/tranquil-light.vim new file mode 100644 index 0000000..4046a97 --- /dev/null +++ b/config/nvim/colors/tranquil-light.vim @@ -0,0 +1,160 @@ +" Vim color scheme +" +" Name: tranquil-light.vim +" Maintainer: Rubén Beltrán del Río <ben@nsovocal.com> +" Last Change: 05 Mar 2025 +" License: public domain +" Version: 1.1.0 +" +" 256 color scheme using tranquil systems palette in light mode + +set background=light +hi clear +if exists("syntax_on") + syntax reset +endif + +let g:colors_name = "tranquil-light" + +" Variables & Constants +hi @variable guifg=#0F261F +hi link @lsp.type.unresolvedReference.rust DiagnosticUnderlineError +hi Constant guifg=#0000F1 gui=NONE,nocombine cterm=NONE,nocombine + +" Types & Structs +hi Structure guifg=#0000F1 +hi Type guifg=#0000F1 gui=bold cterm=bold +hi Typedef guifg=#80FFCC +hi Function guifg=#FF5EC4 + +" Functions and Macros +hi link @lsp.type.macro.rust Macro +hi link @function.macro.rust Macro +hi Macro guifg=#23C17C gui=bold cterm=bold +hi Include guifg=#23C17C gui=none cterm=none +hi Define guifg=#23C17C gui=italic cterm=italic +hi PreProc guifg=#23C17C +hi PreCondit guifg=#23C17C gui=bold cterm=bold + +" Language +hi Comment guifg=#0F261F guibg=#FFB4F0 +hi SpecialComment guifg=#0F261F gui=bold cterm=bold +hi Todo guifg=#0F261F guibg=bg gui=bold cterm=bold +hi Delimiter guifg=#90A6A2 +hi Identifier guifg=#4F8FE6 +hi Statement guifg=#6F807C gui=bold cterm=bold +hi Keyword guifg=#6F807C gui=bold,italic cterm=bold,italic +hi Repeat guifg=#6F807C gui=bold cterm=bold +hi Exception guifg=#6F807C gui=bold cterm=bold +hi Operator guifg=#FA2B00 +hi Special guifg=#FA2B00 gui=italic cterm=italic +hi SpecialChar guifg=#FA2B00 gui=bold cterm=bold +hi Label guifg=#6F807C gui=none cterm=none +hi StorageClass guifg=#6F807C gui=italic cterm=italic + +" Text +hi Normal guifg=#0F261F guibg=NONE ctermbg=NONE +hi Underlined guifg=#B5D1CC gui=underline cterm=underline +hi Ignore guifg=#B5D1CC guibg=bg +hi Error guifg=#FFFFFF guibg=#FA2B00 +hi Debug guifg=#FFB4F0 gui=bold cterm=bold + +" Specific Types +hi Boolean guifg=#19a6b0 +hi Number guifg=#19a6b0 +hi Float guifg=#19A6B0 +hi Character guifg=#23C17C guibg=#FEFEFE +hi String guifg=#23C17C guibg=#FEFEFE +hi Conditional guifg=#FA2B00 gui=bold cterm=bold + +" File Browser +hi Directory guifg=#23C17C gui=bold + +" Editor +hi Cursor guifg=#FFFFFF guibg=#0000F1 +hi CursorLine guibg=#F1F1F1 +hi CursorColumn guibg=#F1F1F1 +hi LineNr guifg=#0000F1 guibg=#FEFEFE +hi CursorLineNr guifg=#FFFFFF guibg=#0000F1 +hi NonText guifg=#90A6A2 guibg=none +hi SpecialKey guifg=#0000F1 +hi ColorColumn guifg=#FFFFFF guibg=#FA4B00 +hi WinSep guifg=#0f261F +hi SignColumn guifg=#23C17C guibg=#DAE6E3 +hi StatusLine guifg=#FFFFFF guibg=#0F261F +hi StatusLineNC guifg=#DAE6E3 guibg=#90A6A2 +hi TabLineFill guifg=#FFFFFF guibg=#0F261F +hi TabLine guifg=#FFFFFF guibg=#0F261F +hi TabLineSel guifg=#FFFFFF guibg=#23C17C +hi Tag guifg=#0F261F gui=underline cterm=underline guisp=#0000F1 +hi Title guifg=#4F8FE6 +hi VertSplit guifg=#0F261F guibg=#FFFFFF gui=bold cterm=bold + +" Editor / Search & Matching +hi IncSearch guifg=#0F261F guibg=#FFAB00 +hi CurSearch guifg=#FFFFFF guibg=#23C17C +hi Search guifg=#0F261F guibg=#FFBF6E +hi Substitute guifg=#0F261F guibg=#29BDAD +hi MatchParen guifg=#0F261F guibg=#FFAB00 gui=bold cterm=bold +hi VisualNOS guibg=#0024CC +hi Visual guibg=#0024CC guifg=#FFFFFF + +" Editor / Text Folding +hi FoldColumn guifg=#FFFFFF guibg=#0F261F +hi Folded guifg=#FFFFFF guibg=#90A6A2 + +" Diffing +hi DiffAdd guifg=#23C17C guibg=#F1F1F1 +hi DiffChange guifg=#FFFFFF guibg=#0000F1 +hi DiffDelete guifg=#FA2B00 guibg=#90A6A2 +hi DiffText gui=bold cterm=bold +hi DiffTextAdd gui=bold cterm=bold +hi link @text.diff.add DiffAdd +hi link @text.diff.delete DiffDelete + +" Editor / Messages +hi MsgArea guibg=#FFFFFF +hi OkMsg guifg=#FFFFFF guibg=#23C17C gui=bold cterm=bold +hi ErrorMsg guifg=#FFFFFF guibg=#FA2B00 gui=bold cterm=bold +hi WarningMsg guifg=#0F261F guibg=#FFAB00 gui=bold cterm=bold +hi StderrMsg guifg=#FA2B00 +hi StdoutMsg guifg=#0F261F +hi ModeMsg guifg=#FFFFFF guibg=#0000F1 +hi MoreMsg guifg=#FFFFFF guibg=#23C17C +hi Question guifg=#0F261F guibg=#80FFCC + +" Complete Menu +hi Pmenu guifg=#0F261F guibg=#80FFCC +hi PmenuSel guifg=#FFFFFF guibg=#0F261F +hi PmenuSbar guibg=#0F261F +hi PmenuThumb guifg=#80FFCC +hi WildMenu guifg=#80FFCC guibg=#0F261F + +" WhichKey +hi WhichKeyNormal guibg=#0F261F +hi WhichKeyBorder guibg=#23C17C guifg=#FFFFFF +hi WhichKeyDesc guifg=#90A6A2 +hi WhichKeyGroup guifg=#23C17C +hi WhichKeyIcon guibg=#0F261F guifg=#FA2B00 +hi WhichKeyIconAzure guibg=#0F261F guifg=#FFB4F0 +hi WhichKeyIconBlue guibg=#0F261F guifg=#4F8FE6 +hi WhichKeyIconCyan guibg=#0F261F guifg=#80FFCC +hi WhichKeyIconGreen guibg=#0F261F guifg=#23C17C +hi WhichKeyIconGrey guibg=#0F261F guifg=#90A6A2 +hi WhichKeyIconOrange guibg=#0F261F guifg=#FFCFC4 +hi WhichKeyIconPurple guibg=#0F261F guifg=#FF616B +hi WhichKeyIconRed guibg=#0F261F guifg=#FA2B00 +hi WhichKeyIconYellow guibg=#0F261F guifg=#FAED8F +hi WhichKeySeparator guifg=#B5D1CC +hi WhichKeyTitle guifg=#23C17C + +" LSP Related +hi LspInlayHint guifg=#90A6A2 +hi DiagnosticError guifg=#FFFFFF guibg=#FA2B00 +hi DiagnosticWarn guifg=#0F261F guibg=#FAED8F +hi DiagnosticInfo guifg=#FFFFFF guibg=#4F8FE6 +hi DiagnosticHint guifg=#0F261F guibg=#FFB4F0 +hi DiagnosticUnderlineError guifg=#0F261F guisp=#FA2B00 gui=undercurl,italic cterm=undercurl,italic + +" FZF +hi @fzf.hlplus guifg=#FFFFFF diff --git a/config/nvim/init.lua b/config/nvim/init.lua index f614402..8bf4824 100644 --- a/config/nvim/init.lua +++ b/config/nvim/init.lua @@ -10,7 +10,7 @@ vim.opt.colorcolumn='80,150' -- Show color columns -- Color vim.opt.termguicolors = true -vim.cmd.color('tranquil') +vim.cmd.color('tranquil-light') -- Tab Style (Always override with editorconfig) vim.opt.tabstop = 2 -- 2 Spaces per tab @@ -29,9 +29,11 @@ vim.opt.smartcase = true -- Unless we use both cases in searc vim.opt.wildmode = 'list:longest,list:full' -- Autocomplete common matching string -- Folding Behavior -vim.opt.foldmethod = 'syntax' -- Use syntax highlight to define folds +vim.opt.foldmethod = 'expr' -- Use treesitter for folds +vim.opt.foldexpr = "v:lua.vim.treesitter.foldexpr()" vim.opt.foldnestmax = 10 -- Max 10 folds vim.opt.foldlevelstart = 99 -- Start with all folds open +vim.opt.foldcolumn = "auto" -- Relative Number Behavior vim.api.nvim_create_autocmd({'FocusLost', 'InsertEnter'}, { diff --git a/config/nvim/lazy-lock.json b/config/nvim/lazy-lock.json index bef9479..9d6f765 100644 --- a/config/nvim/lazy-lock.json +++ b/config/nvim/lazy-lock.json @@ -1,27 +1,27 @@ { "LargeFile": { "branch": "master", "commit": "3941a37b2b0288524300348a39521a46539bf9f6" }, - "coq_nvim": { "branch": "coq", "commit": "8ff6e8a9983b537b94be65c18d27710810c764c9" }, - "fzf-lua": { "branch": "main", "commit": "fd6588ee052e150eb61f578fa8c40648def5b334" }, + "coq_nvim": { "branch": "coq", "commit": "a63d28a9aa59c20a503ce38608fb6bc7cb3842f4" }, + "fzf-lua": { "branch": "main", "commit": "c102a4eeb10a04ed7e69ce80918923c4175c19d8" }, "gemini.vim": { "branch": "master", "commit": "c9efb59c97b71c28d4678c79fd21fbdd3a69d196" }, - "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, - "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, + "lazy.nvim": { "branch": "main", "commit": "1ea3c4085785f460fb0e46d2fe1ee895f5f9e7c1" }, + "lazydev.nvim": { "branch": "main", "commit": "e28ce52fc7ff79fcb76f0e79ee6fb6182fca90b9" }, "neogen": { "branch": "main", "commit": "d7f9461727751fb07f82011051338a9aba07581d" }, "nota.nvim": { "branch": "main", "commit": "503bfaa93968986a9df5376c4543207c70dd2a07" }, - "nvim-autopairs": { "branch": "master", "commit": "2647cce4cb64fb35c212146663384e05ae126bdf" }, - "nvim-dap": { "branch": "master", "commit": "2edd6375692d9ac1053d50acfe415c1eb2ba92d0" }, - "nvim-dap-ui": { "branch": "master", "commit": "73a26abf4941aa27da59820fd6b028ebcdbcf932" }, + "nvim-autopairs": { "branch": "master", "commit": "7a2c97cccd60abc559344042fefb1d5a85b3e33b" }, + "nvim-dap": { "branch": "master", "commit": "6782b097af2417a4c3e33849b0a26ae2188bd7ea" }, + "nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" }, "nvim-dap-vscode-js": { "branch": "main", "commit": "03bd29672d7fab5e515fc8469b7d07cc5994bbf6" }, - "nvim-lspconfig": { "branch": "master", "commit": "69a1624aff5dc30dddd0c59d99a947b63c80bf2a" }, + "nvim-lspconfig": { "branch": "master", "commit": "ac98db2f9f06a56498ec890a96928774eae412c3" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, - "nvim-treesitter-endwise": { "branch": "master", "commit": "d6cbb83307d516ec076d17c9a33d704ef626ee8c" }, - "oil.nvim": { "branch": "master", "commit": "08c2bce8b00fd780fb7999dbffdf7cd174e896fb" }, + "nvim-treesitter-endwise": { "branch": "master", "commit": "a61a9de7965324d4019fb1637b66bfacdcb01f51" }, + "oil.nvim": { "branch": "master", "commit": "7e1cd7703ff2924d7038476dcbc04b950203b902" }, "oleoboard.nvim": { "branch": "main", "commit": "3652b39db3a8faca3fb767ace799479124bc79f3" }, "snes-syntax-vim": { "branch": "master", "commit": "a6a699c8905f7b6119bf91e44f960667d9f03d59" }, "tree-sitter-api-notation": { "branch": "main", "commit": "3113c6077d9ed1e662a891714ac00e1ee3bb7657" }, - "undotree": { "branch": "master", "commit": "b951b87b46c34356d44aa71886aecf9dd7f5788a" }, - "vim-fugitive": { "branch": "master", "commit": "593f831d6f6d779cbabb70a4d1e6b1b1936a88af" }, + "undotree": { "branch": "master", "commit": "0f1c9816975b5d7f87d5003a19c53c6fd2ff6f7f" }, + "vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" }, "vim-indent-object": { "branch": "master", "commit": "8ab36d5ec2a3a60468437a95e142ce994df598c6" }, "vim-togglelist": { "branch": "master", "commit": "48f0d30292efdf20edc883e61b121e6123e03df7" }, - "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } + "which-key.nvim": { "branch": "main", "commit": "b4177e3eaf15fe5eb8357ebac2286d488be1ed00" } } diff --git a/config/nvim/lua/lsp.lua b/config/nvim/lua/lsp.lua index 7dfb050..6c69119 100644 --- a/config/nvim/lua/lsp.lua +++ b/config/nvim/lua/lsp.lua @@ -1,15 +1,37 @@ -local lspconfig = require('lspconfig') local coq = require('coq') -local capabilities = vim.lsp.protocol.make_client_capabilities() -capabilities.textDocument.completion.completionItem.snippetSupport = true -lspconfig.ts_ls.setup(coq.lsp_ensure_capabilities({})) -lspconfig.eslint.setup(coq.lsp_ensure_capabilities({})) -lspconfig.svelte.setup(coq.lsp_ensure_capabilities({})) -lspconfig.pyright.setup(coq.lsp_ensure_capabilities({})) -lspconfig.dartls.setup(coq.lsp_ensure_capabilities({})) -lspconfig.rust_analyzer.setup(coq.lsp_ensure_capabilities({ - -- Server-specific settings. See `:help lspconfig-setup` +vim.lsp.config('ts_ls', coq.lsp_ensure_capabilities({ + cmd = { 'typescript-language-server', '--stdio' }, + filetypes = { 'javascript', 'javascriptreact', 'typescript', 'typescriptreact' }, + root_markers = { 'package.json', 'tsconfig.json', 'jsconfig.json' } +})) +vim.lsp.enable('ts_ls') + +vim.lsp.config('eslint', coq.lsp_ensure_capabilities({ + cmd = { 'vscode-eslint-language-server', '--stdio' }, + filetypes = { 'javascript', 'javascriptreact', 'typescript', 'typescriptreact' }, + root_markers = { '.eslintrc', '.eslintrc.js', '.eslintrc.json', 'package.json' } +})) +vim.lsp.enable('eslint') + +vim.lsp.config('svelte', coq.lsp_ensure_capabilities({ + cmd = { 'svelteserver', '--stdio' }, + filetypes = { 'svelte' }, + root_markers = { 'package.json', 'svelte.config.js' } +})) +vim.lsp.enable('svelte') + +vim.lsp.config('pyright', coq.lsp_ensure_capabilities({ + cmd = { 'pyright-langserver', '--stdio' }, + filetypes = { 'python' }, + root_markers = { 'pyproject.toml', 'setup.py', 'requirements.txt' } +})) +vim.lsp.enable('pyright') + +vim.lsp.config('rust_analyzer', coq.lsp_ensure_capabilities({ + cmd = { 'rust-analyzer' }, + filetypes = { 'rust' }, + root_markers = { 'Cargo.toml', 'rust-project.json' }, settings = { ['rust-analyzer'] = { imports = { @@ -27,18 +49,39 @@ lspconfig.rust_analyzer.setup(coq.lsp_ensure_capabilities({ enable = true }, checkOnSave = { + enable = true, command = "clippy" } }, }, - on_attach = function(client, bufnr) - vim.lsp.inlay_hint.enable(true, { bufnr = bufnr }) - end })) -lspconfig.lua_ls.setup(coq.lsp_ensure_capabilities({})) +vim.lsp.enable('rust_analyzer') --- Global mappings. --- See `:help vim.diagnostic.*` for documentation on any of the below functions +vim.lsp.config('lua_ls', coq.lsp_ensure_capabilities({ + cmd = { 'lua-language-server' }, + filetypes = { 'lua' }, + root_markers = { '.luarc.json', '.luarc.jsonc', '.luacheckrc', 'stylua.toml', 'selene.toml' }, +})) +vim.lsp.enable('lua_ls') + +vim.lsp.config('gleam', coq.lsp_ensure_capabilities({ + cmd = { 'gleam', 'lsp' }, + filetypes = { 'gleam' }, + root_markers = { 'gleam.toml' }, +})) +vim.lsp.enable('gleam') + +-- Enable inlay hints for Rust when LSP attaches +vim.api.nvim_create_autocmd('LspAttach', { + callback = function(args) + local client = vim.lsp.get_client_by_id(args.data.client_id) + if client and client.name == 'rust_analyzer' then + vim.lsp.inlay_hint.enable(true, { bufnr = args.buf }) + end + end, +}) + +-- Global mappings vim.keymap.set('n', '<space>e', vim.diagnostic.open_float) vim.keymap.set('n', '[d', vim.diagnostic.goto_prev) vim.keymap.set('n', ']d', vim.diagnostic.goto_next) @@ -51,9 +94,8 @@ vim.api.nvim_create_autocmd('LspAttach', { callback = function(ev) -- Enable completion triggered by <c-x><c-o> vim.bo[ev.buf].omnifunc = 'v:lua.vim.lsp.omnifunc' - - -- Buffer local mappings. - -- See `:help vim.lsp.*` for documentation on any of the below functions + + -- Buffer local mappings local opts = { buffer = ev.buf } vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, opts) vim.keymap.set('n', 'gd', vim.lsp.buf.definition, opts) diff --git a/config/nvim/lua/plugins.lua b/config/nvim/lua/plugins.lua index 882c76d..ce637e9 100644 --- a/config/nvim/lua/plugins.lua +++ b/config/nvim/lua/plugins.lua @@ -28,9 +28,9 @@ require('lazy').setup({ ['fg'] = {'fg', 'Normal'}, ['bg'] = {'bg', 'Normal'}, ['hl'] = {'fg', 'Comment'}, - ['fg+'] = {'fg', 'CursorLine'}, - ['bg+'] = {'bg', 'CursorLine'}, - ['hl+'] = {'fg', 'Statement'}, + ['fg+'] = {'fg', 'Type'}, + ['bg+'] = {'bg', 'Comment'}, + ['hl+'] = {'fg', '@fzf.hlplus'}, ['info'] = {'fg', 'PreProc'}, ['prompt'] = {'fg', 'Conditional'}, ['pointer'] = {'fg', 'Exception'}, diff --git a/config/nvim/lua/treesitter_config.lua b/config/nvim/lua/treesitter_config.lua index ded65ac..16986d6 100644 --- a/config/nvim/lua/treesitter_config.lua +++ b/config/nvim/lua/treesitter_config.lua @@ -8,6 +8,7 @@ require'nvim-treesitter.configs'.setup { 'diff', 'dockerfile', 'gitcommit', + 'gleam', 'graphql', 'html', 'htmldjango', @@ -101,6 +101,9 @@ ln -fns ../.dotfiles/config/weechat ~/.config/weechat # wpaperd ln -fns ../.dotfiles/config/wpaperd ~/.config/wpaperd +# btop +ln -fns ../.dotfiles/config/btop ~/.config/btop + # age recipients ln -fns .dotfiles/age-recipients ~/.age-recipients diff --git a/provisioning/brew_cask_essential b/provisioning/brew_cask_essential index 38a3c5a..e15e7b2 100644 --- a/provisioning/brew_cask_essential +++ b/provisioning/brew_cask_essential @@ -2,8 +2,9 @@ alt-tab bitwarden captura +cardhop clipy -busycal +fantastical firefox kitty mailmate@beta @@ -13,4 +14,3 @@ quicksilver rectangle spamsieve keka -tresorit diff --git a/provisioning/brew_cask_full b/provisioning/brew_cask_full index b4c061f..373e1f1 100644 --- a/provisioning/brew_cask_full +++ b/provisioning/brew_cask_full @@ -5,19 +5,12 @@ audacity blender calibre cycling74-max -inky -mellel multipatch musescore qflipper -qutebrowser raspberry-pi-manager scrivener -sketch -soulseek thonny transmission utm -wireshark -xld yubico-key-manager diff --git a/provisioning/brew_cask_nice b/provisioning/brew_cask_nice index cda2879..1ed429a 100644 --- a/provisioning/brew_cask_nice +++ b/provisioning/brew_cask_nice @@ -1,7 +1,6 @@ --cask chai daisydisk -deepl hex-fiend ia-presenter iina @@ -30,7 +29,6 @@ syntax-highlight tailscale textual the-clock -timeular transmit veracrypt xscope diff --git a/provisioning/brew_essential b/provisioning/brew_essential index 3b951b1..19ea95f 100644 --- a/provisioning/brew_essential +++ b/provisioning/brew_essential @@ -11,6 +11,7 @@ fzf git-delta gnupg htop +jujutsu neovim pinentry-mac ripgrep diff --git a/runcoms/zshrc b/runcoms/zshrc index 550bb09..1683eea 100644 --- a/runcoms/zshrc +++ b/runcoms/zshrc @@ -23,6 +23,7 @@ source "${ZDOTDIR:-$HOME}/.dotfiles/zsh/modules/prompt.zsh" source "${ZDOTDIR:-$HOME}/.dotfiles/zsh/modules/vendor/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" source "${ZDOTDIR:-$HOME}/.dotfiles/zsh/modules/completion.zsh" source "${ZDOTDIR:-$HOME}/.dotfiles/zsh/modules/aliases.zsh" +source "${ZDOTDIR:-$HOME}/.dotfiles/zsh/modules/color.zsh" ################################################################################ # ENV VARIABLES @@ -93,3 +94,6 @@ fi if [[ -s "~/.asdf/plugins/java/set-java-home.zsh" ]]; then . ~/.asdf/plugins/java/set-java-home.zsh fi + +# Difftastic +export DFT_BACKGROUND=light diff --git a/scripts/colors.py b/scripts/colors.py new file mode 100644 index 0000000..ccc6d51 --- /dev/null +++ b/scripts/colors.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python3 + +# ANSI color codes +colors = { + 'black': 30, + 'red': 31, + 'green': 32, + 'yellow': 33, + 'blue': 34, + 'magenta': 35, + 'cyan': 36, + 'white': 37, + 'bright_black': 90, + 'bright_red': 91, + 'bright_green': 92, + 'bright_yellow': 93, + 'bright_blue': 94, + 'bright_magenta': 95, + 'bright_cyan': 96, + 'bright_white': 97 +} + +backgrounds = { + 'black': 40, + 'red': 41, + 'green': 42, + 'yellow': 43, + 'blue': 44, + 'magenta': 45, + 'cyan': 46, + 'white': 47, + 'bright_black': 100, + 'bright_red': 101, + 'bright_green': 102, + 'bright_yellow': 103, + 'bright_blue': 104, + 'bright_magenta': 105, + 'bright_cyan': 106, + 'bright_white': 107 +} + +pangram = "Sphinx of black quartz, judge my vow" + +print("=" * 60) +print("QUARTZ SPHINX PANGRAM - ALL COLOR COMBINATIONS") +print("=" * 60) +print() + +for bg_name, bg_code in backgrounds.items(): + print(f"\n--- Background: {bg_name.upper().replace('_', ' ')} ---") + for fg_name, fg_code in colors.items(): + # Create the ANSI escape sequence + colored_text = f"\033[{fg_code};{bg_code}m{pangram}\033[0m" + print(f"{fg_name:20} | {colored_text}") + print() + +print("=" * 60) +print("Total combinations:", len(colors) * len(backgrounds)) +print("=" * 60) diff --git a/zsh/modules/color.zsh b/zsh/modules/color.zsh new file mode 100644 index 0000000..1d4c2a3 --- /dev/null +++ b/zsh/modules/color.zsh @@ -0,0 +1,2 @@ +ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=green,bg=white' +ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=green,bg=white' diff --git a/zsh/modules/prompt.zsh b/zsh/modules/prompt.zsh index 615ca95..5b79b3e 100644 --- a/zsh/modules/prompt.zsh +++ b/zsh/modules/prompt.zsh @@ -46,8 +46,7 @@ function prompt_setup { # Define prompts. PROMPT=' -%{%F{black}%}$(env_info) $(node_info) $(rust_info) $(python_info) -%{%F{magenta}%}%n%{%f%}@%{%F{yellow}%}$(hostname -s)%{%f%} %{%B%F{green}%}${PWD/#$HOME/~}%{%f%b%}$(git_info)%{%f%} +%{%F{black}%}$(env_info)%{%F{magenta}%}%n%{%F{8}%}@%{%F{cyan}%}$(hostname -s)%{%f%} %{%B%F{blue}%}${PWD/#$HOME/~}%{%f%b%}$(git_info)%{%f%} %(?,,%{${%B%F{white}%}[%?]%{%f%b%} )%% ' } |