forked from Shinonome/dots-hyprland
make vscode theming work with some not-vs-vscode
This commit is contained in:
@@ -1,16 +1,30 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
COLOR_FILE_PATH="${XDG_STATE_HOME:-$HOME/.local/state}/quickshell/user/generated/color.txt"
|
COLOR_FILE_PATH="${XDG_STATE_HOME:-$HOME/.local/state}/quickshell/user/generated/color.txt"
|
||||||
CODE_SETTINGS_PATH="${XDG_CONFIG_HOME:-$HOME/.config}/Code/User/settings.json"
|
|
||||||
|
# Define an array of possible VSCode settings file paths for various forks
|
||||||
|
settings_paths=(
|
||||||
|
"${XDG_CONFIG_HOME:-$HOME/.config}/Code/User/settings.json"
|
||||||
|
"${XDG_CONFIG_HOME:-$HOME/.config}/VSCodium/User/settings.json"
|
||||||
|
"${XDG_CONFIG_HOME:-$HOME/.config}/Code - OSS/User/settings.json"
|
||||||
|
"${XDG_CONFIG_HOME:-$HOME/.config}/Code - Insiders/User/settings.json"
|
||||||
|
"${XDG_CONFIG_HOME:-$HOME/.config}/Cursor/User/settings.json"
|
||||||
|
# Add more paths as needed for other forks
|
||||||
|
)
|
||||||
|
|
||||||
new_color=$(cat "$COLOR_FILE_PATH")
|
new_color=$(cat "$COLOR_FILE_PATH")
|
||||||
|
|
||||||
# Try to update the key if it exists
|
# Loop through each settings file path
|
||||||
if grep -q '"material-code.primaryColor"' "$CODE_SETTINGS_PATH"; then
|
for CODE_SETTINGS_PATH in "${settings_paths[@]}"; do
|
||||||
sed -i -E \
|
if [[ -f "$CODE_SETTINGS_PATH" ]]; then
|
||||||
"s/(\"material-code.primaryColor\"\s*:\s*\")[^\"]*(\")/\1${new_color}\2/" \
|
# Try to update the key if it exists
|
||||||
"$CODE_SETTINGS_PATH"
|
if grep -q '"material-code.primaryColor"' "$CODE_SETTINGS_PATH"; then
|
||||||
else # If the key is not already there, add it
|
sed -i -E \
|
||||||
sed -i '$ s/}/,\n "material-code.primaryColor": "'${new_color}'"\n}/' "$CODE_SETTINGS_PATH"
|
"s/(\"material-code.primaryColor\"\s*:\s*\")[^\"]*(\")/\1${new_color}\2/" \
|
||||||
sed -i '$ s/,\n,/,/' "$CODE_SETTINGS_PATH"
|
"$CODE_SETTINGS_PATH"
|
||||||
fi
|
else # If the key is not already there, add it
|
||||||
|
sed -i '$ s/}/,\n "material-code.primaryColor": "'${new_color}'"\n}/' "$CODE_SETTINGS_PATH"
|
||||||
|
sed -i '$ s/,\n,/,/' "$CODE_SETTINGS_PATH"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user