generated from nhcarrigan/template
Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
f2c2e19fd9
|
|||
| 8f07b4bf5d | |||
| 904a164dbf | |||
| 6fb0280339 | |||
| 28e2c37fc2 | |||
| 5f6db9d215 | |||
| d57901cea8 | |||
| 17edd07355 | |||
| 9a50754b5a | |||
| 9a4ceb9826 | |||
| 9a3bb2c862 | |||
| 345ec5a2ae | |||
| ff3880e528 | |||
| bec1413137 | |||
| 2f055e6f35 | |||
| 7436a092c0 | |||
| 51388dd929 |
@@ -0,0 +1,177 @@
|
||||
name: Security Scan and Upload
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
pull_request:
|
||||
branches: [ main ]
|
||||
schedule:
|
||||
- cron: '0 0 * * 1'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
security-audit:
|
||||
name: Security & DefectDojo Upload
|
||||
runs-on: ubuntu-latest
|
||||
continue-on-error: true
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# --- AUTO-SETUP PROJECT ---
|
||||
- name: Ensure DefectDojo Product Exists
|
||||
env:
|
||||
DD_URL: ${{ secrets.DD_URL }}
|
||||
DD_TOKEN: ${{ secrets.DD_TOKEN }}
|
||||
PRODUCT_NAME: ${{ github.repository }}
|
||||
PRODUCT_TYPE_ID: 1
|
||||
run: |
|
||||
sudo apt-get install jq -y > /dev/null
|
||||
|
||||
echo "Checking connection to $DD_URL..."
|
||||
|
||||
# Check if product exists - capture HTTP code to debug connection issues
|
||||
RESPONSE=$(curl --write-out "%{http_code}" --silent --output /tmp/response.json \
|
||||
-H "Authorization: Token $DD_TOKEN" \
|
||||
"$DD_URL/api/v2/products/?name=$PRODUCT_NAME")
|
||||
|
||||
# If response is not 200, print error
|
||||
if [ "$RESPONSE" != "200" ]; then
|
||||
echo "::error::Failed to query DefectDojo. HTTP Code: $RESPONSE"
|
||||
cat /tmp/response.json
|
||||
exit 1
|
||||
fi
|
||||
|
||||
COUNT=$(cat /tmp/response.json | jq -r '.count')
|
||||
|
||||
if [ "$COUNT" = "0" ]; then
|
||||
echo "Creating product '$PRODUCT_NAME'..."
|
||||
curl -s -X POST "$DD_URL/api/v2/products/" \
|
||||
-H "Authorization: Token $DD_TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{ "name": "'"$PRODUCT_NAME"'", "description": "Auto-created by Gitea Actions", "prod_type": '$PRODUCT_TYPE_ID' }'
|
||||
else
|
||||
echo "Product '$PRODUCT_NAME' already exists."
|
||||
fi
|
||||
|
||||
# --- 1. TRIVY (Dependencies & Misconfig) ---
|
||||
- name: Install Trivy
|
||||
run: |
|
||||
sudo apt-get install wget apt-transport-https gnupg lsb-release -y
|
||||
wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | sudo apt-key add -
|
||||
echo "deb https://aquasecurity.github.io/trivy-repo/deb $(lsb_release -sc) main" | sudo tee -a /etc/apt/sources.list.d/trivy.list
|
||||
sudo apt-get update && sudo apt-get install trivy -y
|
||||
|
||||
- name: Run Trivy (FS Scan)
|
||||
run: |
|
||||
trivy fs . --scanners vuln,misconfig --format json --output trivy-results.json --exit-code 0
|
||||
|
||||
- name: Upload Trivy to DefectDojo
|
||||
env:
|
||||
DD_URL: ${{ secrets.DD_URL }}
|
||||
DD_TOKEN: ${{ secrets.DD_TOKEN }}
|
||||
run: |
|
||||
echo "Uploading Trivy results..."
|
||||
# Generate today's date in YYYY-MM-DD format
|
||||
TODAY=$(date +%Y-%m-%d)
|
||||
|
||||
HTTP_CODE=$(curl --write-out "%{http_code}" --output response.txt --silent -X POST "$DD_URL/api/v2/import-scan/" \
|
||||
-H "Authorization: Token $DD_TOKEN" \
|
||||
-F "active=true" \
|
||||
-F "verified=true" \
|
||||
-F "scan_type=Trivy Scan" \
|
||||
-F "engagement_name=CI/CD Pipeline" \
|
||||
-F "product_name=${{ github.repository }}" \
|
||||
-F "scan_date=$TODAY" \
|
||||
-F "auto_create_context=true" \
|
||||
-F "file=@trivy-results.json")
|
||||
|
||||
if [[ "$HTTP_CODE" != "200" && "$HTTP_CODE" != "201" ]]; then
|
||||
echo "::error::Upload Failed with HTTP $HTTP_CODE"
|
||||
echo "--- SERVER RESPONSE ---"
|
||||
cat response.txt
|
||||
echo "-----------------------"
|
||||
exit 1
|
||||
else
|
||||
echo "Upload Success!"
|
||||
fi
|
||||
|
||||
# --- 2. GITLEAKS (Secrets) ---
|
||||
- name: Install Gitleaks
|
||||
run: |
|
||||
wget -qO gitleaks.tar.gz https://github.com/gitleaks/gitleaks/releases/download/v8.18.0/gitleaks_8.18.0_linux_x64.tar.gz
|
||||
tar -xzf gitleaks.tar.gz
|
||||
sudo mv gitleaks /usr/local/bin/ && chmod +x /usr/local/bin/gitleaks
|
||||
|
||||
- name: Run Gitleaks
|
||||
run: gitleaks detect --source . -v --report-path gitleaks-results.json --report-format json --no-git || true
|
||||
|
||||
- name: Upload Gitleaks to DefectDojo
|
||||
env:
|
||||
DD_URL: ${{ secrets.DD_URL }}
|
||||
DD_TOKEN: ${{ secrets.DD_TOKEN }}
|
||||
run: |
|
||||
echo "Uploading Gitleaks results..."
|
||||
TODAY=$(date +%Y-%m-%d)
|
||||
|
||||
HTTP_CODE=$(curl --write-out "%{http_code}" --output response.txt --silent -X POST "$DD_URL/api/v2/import-scan/" \
|
||||
-H "Authorization: Token $DD_TOKEN" \
|
||||
-F "active=true" \
|
||||
-F "verified=true" \
|
||||
-F "scan_type=Gitleaks Scan" \
|
||||
-F "engagement_name=CI/CD Pipeline" \
|
||||
-F "product_name=${{ github.repository }}" \
|
||||
-F "scan_date=$TODAY" \
|
||||
-F "auto_create_context=true" \
|
||||
-F "file=@gitleaks-results.json")
|
||||
|
||||
if [[ "$HTTP_CODE" != "200" && "$HTTP_CODE" != "201" ]]; then
|
||||
echo "::error::Upload Failed with HTTP $HTTP_CODE"
|
||||
echo "--- SERVER RESPONSE ---"
|
||||
cat response.txt
|
||||
echo "-----------------------"
|
||||
exit 1
|
||||
else
|
||||
echo "Upload Success!"
|
||||
fi
|
||||
|
||||
# --- 3. SEMGREP (SAST) ---
|
||||
- name: Install Semgrep (via pipx)
|
||||
run: |
|
||||
sudo apt-get install pipx -y
|
||||
pipx install semgrep
|
||||
# Add pipx binary path to GITHUB_PATH so next steps can see 'semgrep'
|
||||
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
||||
|
||||
- name: Run Semgrep
|
||||
run: semgrep scan --config=p/security-audit --config=p/owasp-top-ten --json --output semgrep-results.json . || true
|
||||
|
||||
- name: Upload Semgrep to DefectDojo
|
||||
env:
|
||||
DD_URL: ${{ secrets.DD_URL }}
|
||||
DD_TOKEN: ${{ secrets.DD_TOKEN }}
|
||||
run: |
|
||||
echo "Uploading Semgrep results..."
|
||||
TODAY=$(date +%Y-%m-%d)
|
||||
|
||||
HTTP_CODE=$(curl --write-out "%{http_code}" --output response.txt --silent -X POST "$DD_URL/api/v2/import-scan/" \
|
||||
-H "Authorization: Token $DD_TOKEN" \
|
||||
-F "active=true" \
|
||||
-F "verified=true" \
|
||||
-F "scan_type=Semgrep JSON Report" \
|
||||
-F "engagement_name=CI/CD Pipeline" \
|
||||
-F "product_name=${{ github.repository }}" \
|
||||
-F "scan_date=$TODAY" \
|
||||
-F "auto_create_context=true" \
|
||||
-F "file=@semgrep-results.json")
|
||||
|
||||
if [[ "$HTTP_CODE" != "200" && "$HTTP_CODE" != "201" ]]; then
|
||||
echo "::error::Upload Failed with HTTP $HTTP_CODE"
|
||||
echo "--- SERVER RESPONSE ---"
|
||||
cat response.txt
|
||||
echo "-----------------------"
|
||||
exit 1
|
||||
else
|
||||
echo "Upload Success!"
|
||||
fi
|
||||
@@ -0,0 +1,25 @@
|
||||
# Package Manager Configuration
|
||||
# Force pnpm usage - breaks npm/yarn intentionally
|
||||
node-linker=pnpm
|
||||
|
||||
# Security: Disable all lifecycle scripts
|
||||
ignore-scripts=true
|
||||
enable-pre-post-scripts=false
|
||||
|
||||
# Security: Require packages to be 10+ days old before installation
|
||||
minimum-release-age=14400
|
||||
|
||||
# Security: Verify package integrity hashes
|
||||
verify-store-integrity=true
|
||||
|
||||
# Security: Enforce strict trust policies
|
||||
trust-policy=strict
|
||||
|
||||
# Security: Strict peer dependency resolution
|
||||
strict-peer-dependencies=true
|
||||
|
||||
# Performance: Use symlinks for node_modules
|
||||
symlink=true
|
||||
|
||||
# Lockfile: Ensure lockfile is not modified during install
|
||||
frozen-lockfile=false
|
||||
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>vscode-themes</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
Vendored
+13
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Extension Development Host",
|
||||
"type": "extensionHost",
|
||||
"request": "launch",
|
||||
"args": [
|
||||
"--extensionDevelopmentPath=${workspaceFolder}"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+7
-7
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PackageManifest Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2011" xmlns:d="http://schemas.microsoft.com/developer/vsx-schema-design/2011">
|
||||
<Metadata>
|
||||
<Identity Language="en-US" Id="ocean-breeze" Version="1.0.0" Publisher="nhcarrigan" />
|
||||
<DisplayName>Ocean Breeze</DisplayName>
|
||||
<Description xml:space="preserve">A soothing VSCode theme inspired by the aqua hues of the ocean.</Description>
|
||||
<Identity Language="en-US" Id="naomis-themes" Version="2.0.0" Publisher="nhcarrigan" />
|
||||
<DisplayName>Naomi's Themes</DisplayName>
|
||||
<Description xml:space="preserve">Various themes Naomi has designed.</Description>
|
||||
<Tags>theme,color-theme,__web_extension</Tags>
|
||||
<Categories>Themes</Categories>
|
||||
<GalleryFlags>Public</GalleryFlags>
|
||||
@@ -18,10 +18,10 @@
|
||||
|
||||
|
||||
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Source" Value="https://codeberg.org/nhcarrigan/ocean-breeze" />
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Getstarted" Value="https://codeberg.org/nhcarrigan/ocean-breeze" />
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Repository" Value="https://codeberg.org/nhcarrigan/ocean-breeze" />
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Support" Value="https://codeberg.org/nhcarrigan/ocean-breeze/issues" />
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Source" Value="https://git.nhcarrigan.com/nhcarrigan/vscode-themes" />
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Getstarted" Value="https://git.nhcarrigan.com/nhcarrigan/vscode-themes" />
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Repository" Value="https://git.nhcarrigan.com/nhcarrigan/vscode-themes" />
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Support" Value="https://git.nhcarrigan.com/nhcarrigan/vscode-themes/issues" />
|
||||
<Property Id="Microsoft.VisualStudio.Services.Links.Learn" Value="https://nhcarrigan.com" />
|
||||
|
||||
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
# Ocean Breeze
|
||||
# Naomi's VSCode Themes
|
||||
|
||||
This is a custom VSCode theme inspired by the aqua hues of the ocean, and built upon Naomi's custom design style.
|
||||
This is a collection of various VSCode themes Naomi has written to suit her ever-changing whims.
|
||||
|
||||
## Feedback and Bugs
|
||||
|
||||
If you have feedback or a bug report, please feel free to open an issue!
|
||||
If you have feedback or a bug report, please [log a ticket on our forum](https://support.nhcarrigan.com).
|
||||
|
||||
## Contributing
|
||||
|
||||
If you would like to contribute to the project, you may create a Pull Request containing your proposed changes and we will review it as soon as we are able! Please review our [contributing guidelines](https://codeberg.org/nhcarrigan/ocean-breeze/src/branch/main/CONTRIBUTING.md) first.
|
||||
If you would like to contribute to the project, you may create a Pull Request containing your proposed changes and we will review it as soon as we are able! Please review our [contributing guidelines](https://git.nhcarrigan.com/nhcarrigan/vscode-themes/src/branch/main/CONTRIBUTING.md) first.
|
||||
|
||||
## Code of Conduct
|
||||
|
||||
Before interacting with our community, please read our [Code of Conduct](https://codeberg.org/nhcarrigan/ocean-breeze/src/branch/main/CODE_OF_CONDUCT.md).
|
||||
Before interacting with our community, please read our [Code of Conduct](https://git.nhcarrigan.com/nhcarrigan/vscode-themes/src/branch/main/CODE_OF_CONDUCT.md).
|
||||
|
||||
## License
|
||||
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 1.3 MiB |
+29
-9
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"name": "ocean-breeze",
|
||||
"displayName": "Ocean Breeze",
|
||||
"name": "naomis-themes",
|
||||
"displayName": "Naomi's Themes",
|
||||
"icon": "icon.png",
|
||||
"version": "1.1.1",
|
||||
"description": "A soothing VSCode theme inspired by the aqua hues of the ocean.",
|
||||
"version": "2.3.0",
|
||||
"description": "Various themes Naomi has created.",
|
||||
"engines": {
|
||||
"vscode": "^1.96.4"
|
||||
},
|
||||
@@ -17,22 +17,42 @@
|
||||
"label": "Ocean Breeze",
|
||||
"uiTheme": "vs-dark",
|
||||
"path": "./themes/ocean-breeze.json"
|
||||
},
|
||||
{
|
||||
"label": "Sakura Dreams",
|
||||
"uiTheme": "vs",
|
||||
"path": "./themes/sakura-dreams.json"
|
||||
},
|
||||
{
|
||||
"label": "Sakura Dreams (Dark)",
|
||||
"uiTheme": "vs-dark",
|
||||
"path": "./themes/sakura-dreams-dark.json"
|
||||
},
|
||||
{
|
||||
"label": "Trans Pride",
|
||||
"uiTheme": "vs",
|
||||
"path": "./themes/trans-pride.json"
|
||||
},
|
||||
{
|
||||
"label": "Witchy Dark",
|
||||
"uiTheme": "vs-dark",
|
||||
"path": "./themes/witchy-dark.json"
|
||||
}
|
||||
]
|
||||
},
|
||||
"scripts": {
|
||||
"package": "vsce package --baseContentUrl https://codeberg.org/nhcarrigan/ocean-breeze/src/branch/main --baseImagesUrl https://codeberg.org/nhcarrigan/ocean-breeze/raw/branch/main"
|
||||
"package": "vsce package --baseContentUrl https://git.nhcarrigan.com/nhcarrigan/vscode-themes --baseImagesUrl https://git.nhcarrigan.com/nhcarrigan/vscode-themes/raw/branch/main"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"author": "Naomi Carrigan",
|
||||
"license": "See license in LICENSE.md",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://codeberg.org/nhcarrigan/ocean-breeze"
|
||||
"url": "https://git.nhcarrigan.com/nhcarrigan/vscode-themes"
|
||||
},
|
||||
"url": "https://codeberg.org/nhcarrigan/ocean-breeze",
|
||||
"url": "https://git.nhcarrigan.com/nhcarrigan/vscode-themes",
|
||||
"bugs": {
|
||||
"url": "https://codeberg.org/nhcarrigan/ocean-breeze/issues"
|
||||
"url": "https://git.nhcarrigan.com/nhcarrigan/vscode-themes/issues"
|
||||
},
|
||||
"homepage": "https://nhcarrigan.com",
|
||||
"__metadata": {
|
||||
|
||||
@@ -0,0 +1,373 @@
|
||||
{
|
||||
"name": "Sakura Dreams Dark",
|
||||
"type": "dark",
|
||||
"colors": {
|
||||
"editor.background": "#2a0a18",
|
||||
"editor.foreground": "#ffb6c1",
|
||||
"activityBar.background": "#3a0d22",
|
||||
"activityBar.foreground": "#ffb6c1",
|
||||
"activityBarBadge.background": "#ff69b4",
|
||||
"activityBarBadge.foreground": "#000000",
|
||||
"sideBar.background": "#3a0d22",
|
||||
"sideBar.foreground": "#ffb6c1",
|
||||
"sideBarTitle.foreground": "#ff69b4",
|
||||
"titleBar.activeBackground": "#4a112a",
|
||||
"titleBar.activeForeground": "#ffb6c1",
|
||||
"statusBar.background": "#4a112a",
|
||||
"statusBar.foreground": "#ffb6c1",
|
||||
"statusBar.noFolderBackground": "#2a0a18",
|
||||
"tab.activeBackground": "#3a0d22",
|
||||
"tab.activeForeground": "#ffb6c1",
|
||||
"tab.inactiveBackground": "#4a112a",
|
||||
"tab.inactiveForeground": "#e35a8f",
|
||||
"editorGroupHeader.tabsBackground": "#3a0d22",
|
||||
"button.background": "#ff69b4",
|
||||
"button.foreground": "#000000",
|
||||
"dropdown.background": "#4a112a",
|
||||
"dropdown.foreground": "#ffb6c1",
|
||||
"input.background": "#3a0d22",
|
||||
"input.foreground": "#ffb6c1",
|
||||
"input.placeholderForeground": "#e35a8f",
|
||||
"focusBorder": "#ff69b4",
|
||||
"list.activeSelectionBackground": "#4a112a",
|
||||
"list.activeSelectionForeground": "#ffb6c1",
|
||||
"list.hoverBackground": "#3a0d22",
|
||||
"list.hoverForeground": "#ffb6c1",
|
||||
"editor.selectionBackground": "#e35a8f",
|
||||
"editor.selectionHighlightBackground": "#e35a8f80",
|
||||
"editor.wordHighlightBackground": "#e35a8f80",
|
||||
"editor.lineHighlightBackground": "#3a0d22",
|
||||
"editorCursor.foreground": "#ff69b4",
|
||||
"editorWhitespace.foreground": "#4a112a",
|
||||
"editorIndentGuide.background": "#4a112a",
|
||||
"editorIndentGuide.activeBackground": "#ffb6c1",
|
||||
"terminal.background": "#2a0a18",
|
||||
"terminal.foreground": "#ffb6c1",
|
||||
"terminal.ansiBlack": "#4a112a",
|
||||
"terminal.ansiBrightBlack": "#3a0d22",
|
||||
"terminal.ansiRed": "#ff69b4",
|
||||
"terminal.ansiBrightRed": "#ff1493",
|
||||
"terminal.ansiGreen": "#e35a8f",
|
||||
"terminal.ansiBrightGreen": "#ff77a8",
|
||||
"terminal.ansiYellow": "#d45a88",
|
||||
"terminal.ansiBrightYellow": "#ffb6c1",
|
||||
"terminal.ansiBlue": "#c96385",
|
||||
"terminal.ansiBrightBlue": "#d87093",
|
||||
"terminal.ansiMagenta": "#e35a8f",
|
||||
"terminal.ansiBrightMagenta": "#ff85a2",
|
||||
"terminal.ansiCyan": "#ff9aac",
|
||||
"terminal.ansiBrightCyan": "#ffafc5",
|
||||
"terminal.ansiWhite": "#ffd1dc",
|
||||
"terminal.ansiBrightWhite": "#fff5f7"
|
||||
},
|
||||
"tokenColors": [
|
||||
{
|
||||
"scope": ["comment", "punctuation.definition.comment"],
|
||||
"settings": {
|
||||
"foreground": "#e5a3b5",
|
||||
"fontStyle": "italic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"string",
|
||||
"string.quoted.single",
|
||||
"string.quoted.double",
|
||||
"string.quoted.triple",
|
||||
"string.template",
|
||||
"constant.character",
|
||||
"constant.other.symbol"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff69b4"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"constant.numeric",
|
||||
"constant.language",
|
||||
"constant.character.escape",
|
||||
"constant.other",
|
||||
"support.constant"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#c96385"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"variable",
|
||||
"variable.other",
|
||||
"variable.parameter",
|
||||
"variable.language",
|
||||
"variable.object.property"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d87093"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"keyword",
|
||||
"keyword.control",
|
||||
"keyword.operator",
|
||||
"keyword.other",
|
||||
"storage.type",
|
||||
"storage.modifier",
|
||||
"punctuation.decorator"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.function",
|
||||
"entity.name.method",
|
||||
"support.function",
|
||||
"meta.function-call",
|
||||
"meta.method-call",
|
||||
"meta.function.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d45a88"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.type",
|
||||
"entity.name.class",
|
||||
"entity.name.struct",
|
||||
"entity.name.enum",
|
||||
"entity.name.union",
|
||||
"entity.name.trait",
|
||||
"entity.name.interface",
|
||||
"support.class",
|
||||
"support.type",
|
||||
"meta.return-type"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8",
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.decorator",
|
||||
"meta.annotation",
|
||||
"punctuation.definition.annotation"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#c96385"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["entity.name.tag", "punctuation.definition.tag"],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.other.attribute-name",
|
||||
"entity.other.attribute-name.html",
|
||||
"entity.other.attribute-name.css",
|
||||
"support.type.property-name.css",
|
||||
"entity.other.attribute-name.class"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.type.primitive",
|
||||
"support.type.builtin",
|
||||
"keyword.type",
|
||||
"storage.type.primitive",
|
||||
"storage.type.built-in",
|
||||
"support.type.primitive.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["string.regexp", "constant.character.escape.regex"],
|
||||
"settings": {
|
||||
"foreground": "#ff69b4"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.heading", "entity.name.section"],
|
||||
"settings": {
|
||||
"foreground": "#d45a88",
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.bold"],
|
||||
"settings": {
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.italic"],
|
||||
"settings": {
|
||||
"fontStyle": "italic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.inline.raw", "markup.fenced_code", "markup.raw"],
|
||||
"settings": {
|
||||
"foreground": "#ff69b4"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.type.property-name.json",
|
||||
"support.type.property-name.jsonc"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"keyword.operator.expression",
|
||||
"keyword.operator.new",
|
||||
"keyword.operator.optional",
|
||||
"keyword.operator.comparison",
|
||||
"keyword.operator.arithmetic",
|
||||
"keyword.operator.assignment",
|
||||
"keyword.operator.logical"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.embedded",
|
||||
"source.groovy.embedded",
|
||||
"meta.template.expression"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d87093"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.object-literal.key",
|
||||
"variable.object.property",
|
||||
"variable.other.property",
|
||||
"variable.other.object.property"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.variable.property",
|
||||
"support.variable.object.process",
|
||||
"support.variable.object.node"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.rust storage.type.rust",
|
||||
"source.rust entity.name.type.rust",
|
||||
"source.rust entity.name.type.struct.rust"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.rust keyword.operator",
|
||||
"source.rust keyword.operator.arithmetic",
|
||||
"source.rust keyword.operator.logical"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.python support.type.python",
|
||||
"source.python support.function.builtin.python"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d45a88"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.cs entity.name.type.class.cs",
|
||||
"source.cs storage.type.cs"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.dart support.class.dart",
|
||||
"source.dart support.type.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.prisma keyword.operator",
|
||||
"source.prisma constant.language",
|
||||
"source.prisma keyword.type"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.graphql support.type",
|
||||
"source.graphql constant.character"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["source.sql keyword.other", "source.sql storage.type"],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.jsx.children",
|
||||
"meta.embedded.block.tsx",
|
||||
"meta.embedded.block.jsx"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d87093"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.decorator.ts",
|
||||
"meta.decorator.tsx",
|
||||
"meta.decorator.angular"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#c96385"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,373 @@
|
||||
{
|
||||
"name": "Sakura Dreams",
|
||||
"type": "light",
|
||||
"colors": {
|
||||
"editor.background": "#ffefef",
|
||||
"editor.foreground": "#d87093",
|
||||
"activityBar.background": "#ffd6e0",
|
||||
"activityBar.foreground": "#d87093",
|
||||
"activityBarBadge.background": "#ff69b4",
|
||||
"activityBarBadge.foreground": "#ffffff",
|
||||
"sideBar.background": "#fff0f5",
|
||||
"sideBar.foreground": "#d87093",
|
||||
"sideBarTitle.foreground": "#ff69b4",
|
||||
"titleBar.activeBackground": "#ffd6e0",
|
||||
"titleBar.activeForeground": "#d87093",
|
||||
"statusBar.background": "#ffd6e0",
|
||||
"statusBar.foreground": "#d87093",
|
||||
"statusBar.noFolderBackground": "#ffefef",
|
||||
"tab.activeBackground": "#ffefef",
|
||||
"tab.activeForeground": "#d87093",
|
||||
"tab.inactiveBackground": "#ffd6e0",
|
||||
"tab.inactiveForeground": "#ff77a8",
|
||||
"editorGroupHeader.tabsBackground": "#ffe4e8",
|
||||
"button.background": "#ff69b4",
|
||||
"button.foreground": "#ffffff",
|
||||
"dropdown.background": "#fff0f5",
|
||||
"dropdown.foreground": "#d87093",
|
||||
"input.background": "#fff0f5",
|
||||
"input.foreground": "#d87093",
|
||||
"input.placeholderForeground": "#ff77a8",
|
||||
"focusBorder": "#ff69b4",
|
||||
"list.activeSelectionBackground": "#ffefef",
|
||||
"list.activeSelectionForeground": "#d87093",
|
||||
"list.hoverBackground": "#fff0f5",
|
||||
"list.hoverForeground": "#d87093",
|
||||
"editor.selectionBackground": "#ffb6c1",
|
||||
"editor.selectionHighlightBackground": "#ffb6c180",
|
||||
"editor.wordHighlightBackground": "#ffb6c180",
|
||||
"editor.lineHighlightBackground": "#fff0f5",
|
||||
"editorCursor.foreground": "#ff69b4",
|
||||
"editorWhitespace.foreground": "#ffe4e8",
|
||||
"editorIndentGuide.background": "#ffe4e8",
|
||||
"editorIndentGuide.activeBackground": "#ffb6c1",
|
||||
"terminal.background": "#ffefef",
|
||||
"terminal.foreground": "#d87093",
|
||||
"terminal.ansiBlack": "#ffe4e8",
|
||||
"terminal.ansiBrightBlack": "#ffefef",
|
||||
"terminal.ansiRed": "#ff1493",
|
||||
"terminal.ansiBrightRed": "#ff0066",
|
||||
"terminal.ansiGreen": "#ff69b4",
|
||||
"terminal.ansiBrightGreen": "#ff77a8",
|
||||
"terminal.ansiYellow": "#ffb6c1",
|
||||
"terminal.ansiBrightYellow": "#ffa6c9",
|
||||
"terminal.ansiBlue": "#db7093",
|
||||
"terminal.ansiBrightBlue": "#f08080",
|
||||
"terminal.ansiMagenta": "#ff85a2",
|
||||
"terminal.ansiBrightMagenta": "#ff9aac",
|
||||
"terminal.ansiCyan": "#ffafc5",
|
||||
"terminal.ansiBrightCyan": "#ffc0cb",
|
||||
"terminal.ansiWhite": "#ffd1dc",
|
||||
"terminal.ansiBrightWhite": "#fff5f7"
|
||||
},
|
||||
"tokenColors": [
|
||||
{
|
||||
"scope": ["comment", "punctuation.definition.comment"],
|
||||
"settings": {
|
||||
"foreground": "#e5a3b5",
|
||||
"fontStyle": "italic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"string",
|
||||
"string.quoted.single",
|
||||
"string.quoted.double",
|
||||
"string.quoted.triple",
|
||||
"string.template",
|
||||
"constant.character",
|
||||
"constant.other.symbol"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff69b4"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"constant.numeric",
|
||||
"constant.language",
|
||||
"constant.character.escape",
|
||||
"constant.other",
|
||||
"support.constant"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#c96385"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"variable",
|
||||
"variable.other",
|
||||
"variable.parameter",
|
||||
"variable.language",
|
||||
"variable.object.property"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d87093"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"keyword",
|
||||
"keyword.control",
|
||||
"keyword.operator",
|
||||
"keyword.other",
|
||||
"storage.type",
|
||||
"storage.modifier",
|
||||
"punctuation.decorator"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.function",
|
||||
"entity.name.method",
|
||||
"support.function",
|
||||
"meta.function-call",
|
||||
"meta.method-call",
|
||||
"meta.function.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d45a88"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.type",
|
||||
"entity.name.class",
|
||||
"entity.name.struct",
|
||||
"entity.name.enum",
|
||||
"entity.name.union",
|
||||
"entity.name.trait",
|
||||
"entity.name.interface",
|
||||
"support.class",
|
||||
"support.type",
|
||||
"meta.return-type"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8",
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.decorator",
|
||||
"meta.annotation",
|
||||
"punctuation.definition.annotation"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#c96385"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["entity.name.tag", "punctuation.definition.tag"],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.other.attribute-name",
|
||||
"entity.other.attribute-name.html",
|
||||
"entity.other.attribute-name.css",
|
||||
"support.type.property-name.css",
|
||||
"entity.other.attribute-name.class"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.type.primitive",
|
||||
"support.type.builtin",
|
||||
"keyword.type",
|
||||
"storage.type.primitive",
|
||||
"storage.type.built-in",
|
||||
"support.type.primitive.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["string.regexp", "constant.character.escape.regex"],
|
||||
"settings": {
|
||||
"foreground": "#ff69b4"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.heading", "entity.name.section"],
|
||||
"settings": {
|
||||
"foreground": "#d45a88",
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.bold"],
|
||||
"settings": {
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.italic"],
|
||||
"settings": {
|
||||
"fontStyle": "italic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.inline.raw", "markup.fenced_code", "markup.raw"],
|
||||
"settings": {
|
||||
"foreground": "#ff69b4"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.type.property-name.json",
|
||||
"support.type.property-name.jsonc"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"keyword.operator.expression",
|
||||
"keyword.operator.new",
|
||||
"keyword.operator.optional",
|
||||
"keyword.operator.comparison",
|
||||
"keyword.operator.arithmetic",
|
||||
"keyword.operator.assignment",
|
||||
"keyword.operator.logical"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.embedded",
|
||||
"source.groovy.embedded",
|
||||
"meta.template.expression"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d87093"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.object-literal.key",
|
||||
"variable.object.property",
|
||||
"variable.other.property",
|
||||
"variable.other.object.property"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.variable.property",
|
||||
"support.variable.object.process",
|
||||
"support.variable.object.node"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.rust storage.type.rust",
|
||||
"source.rust entity.name.type.rust",
|
||||
"source.rust entity.name.type.struct.rust"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.rust keyword.operator",
|
||||
"source.rust keyword.operator.arithmetic",
|
||||
"source.rust keyword.operator.logical"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.python support.type.python",
|
||||
"source.python support.function.builtin.python"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d45a88"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.cs entity.name.type.class.cs",
|
||||
"source.cs storage.type.cs"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.dart support.class.dart",
|
||||
"source.dart support.type.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.prisma keyword.operator",
|
||||
"source.prisma constant.language",
|
||||
"source.prisma keyword.type"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.graphql support.type",
|
||||
"source.graphql constant.character"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#ff77a8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["source.sql keyword.other", "source.sql storage.type"],
|
||||
"settings": {
|
||||
"foreground": "#e35a8f"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.jsx.children",
|
||||
"meta.embedded.block.tsx",
|
||||
"meta.embedded.block.jsx"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#d87093"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.decorator.ts",
|
||||
"meta.decorator.tsx",
|
||||
"meta.decorator.angular"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#c96385"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,187 @@
|
||||
{
|
||||
"name": "Trans Pride Light (Naomi)",
|
||||
"type": "light",
|
||||
"colors": {
|
||||
"editor.background": "#E6F6FF",
|
||||
"editor.foreground": "#DB7093",
|
||||
|
||||
"activityBar.background": "#E6F6FF",
|
||||
"activityBar.foreground": "#DB7093",
|
||||
"activityBarBadge.background": "#FF6B94",
|
||||
"activityBarBadge.foreground": "#FFFFFF",
|
||||
|
||||
"sideBar.background": "#E6F6FF",
|
||||
"sideBar.foreground": "#2A0A18",
|
||||
"sideBarTitle.foreground": "#FF6B94",
|
||||
|
||||
"titleBar.activeBackground": "#E6F6FF",
|
||||
"titleBar.activeForeground": "#2A0A18",
|
||||
|
||||
"statusBar.background": "#E6F6FF",
|
||||
"statusBar.foreground": "#2A0A18",
|
||||
"statusBar.noFolderBackground": "#E6F6FF",
|
||||
|
||||
"tab.activeBackground": "#FFFFFF",
|
||||
"tab.activeForeground": "#DB7093",
|
||||
"tab.inactiveBackground": "#E6F6FF",
|
||||
"tab.inactiveForeground": "#7A5B6A",
|
||||
|
||||
"editorGroupHeader.tabsBackground": "#E6F6FF",
|
||||
|
||||
"button.background": "#FF6B94",
|
||||
"button.foreground": "#FFFFFF",
|
||||
|
||||
"dropdown.background": "#FFFFFF",
|
||||
"dropdown.foreground": "#2A0A18",
|
||||
|
||||
"input.background": "#FFFFFF",
|
||||
"input.foreground": "#2A0A18",
|
||||
"input.placeholderForeground": "#7A5B6A",
|
||||
"focusBorder": "#FF6B94",
|
||||
|
||||
"list.activeSelectionBackground": "#FFF0F6",
|
||||
"list.activeSelectionForeground": "#2A0A18",
|
||||
"list.hoverBackground": "#E6F6FF",
|
||||
"list.hoverForeground": "#2A0A18",
|
||||
|
||||
"editor.selectionBackground": "#FFB6C1",
|
||||
"editor.selectionHighlightBackground": "#FFB6C180",
|
||||
"editor.wordHighlightBackground": "#FFB6C180",
|
||||
"editor.lineHighlightBackground": "#E6F6FF",
|
||||
|
||||
"editorCursor.foreground": "#FF3B6F",
|
||||
|
||||
"editorWhitespace.foreground": "#CFEAFB",
|
||||
"editorIndentGuide.background": "#CFEAFB",
|
||||
"editorIndentGuide.activeBackground": "#ADD8E6",
|
||||
|
||||
"terminal.background": "#E6F6FF",
|
||||
"terminal.foreground": "#2A0A18",
|
||||
|
||||
"terminal.ansiBlack": "#E6F6FF",
|
||||
"terminal.ansiBrightBlack": "#E6F6FF",
|
||||
"terminal.ansiRed": "#FF4F7A",
|
||||
"terminal.ansiBrightRed": "#FF2F66",
|
||||
"terminal.ansiGreen": "#C75B7C",
|
||||
"terminal.ansiBrightGreen": "#D87093",
|
||||
"terminal.ansiYellow": "#FF96B5",
|
||||
"terminal.ansiBrightYellow": "#FFB6C1",
|
||||
"terminal.ansiBlue": "#DB7093",
|
||||
"terminal.ansiBrightBlue": "#E35A8F",
|
||||
"terminal.ansiMagenta": "#C96385",
|
||||
"terminal.ansiBrightMagenta": "#D45A88",
|
||||
"terminal.ansiCyan": "#FF85A2",
|
||||
"terminal.ansiBrightCyan": "#FF9AAC",
|
||||
"terminal.ansiWhite": "#2A0A18",
|
||||
"terminal.ansiBrightWhite": "#000000"
|
||||
},
|
||||
"tokenColors": [
|
||||
{
|
||||
"scope": ["comment", "punctuation.definition.comment"],
|
||||
"settings": { "foreground": "#C79BB1", "fontStyle": "italic" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"string",
|
||||
"string.quoted",
|
||||
"string.template",
|
||||
"constant.character"
|
||||
],
|
||||
"settings": { "foreground": "#FF6B94" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"constant.numeric",
|
||||
"constant.language",
|
||||
"constant.other"
|
||||
],
|
||||
"settings": { "foreground": "#C75B7C" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"variable",
|
||||
"variable.other",
|
||||
"variable.parameter"
|
||||
],
|
||||
"settings": { "foreground": "#DB7093" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"keyword",
|
||||
"keyword.control",
|
||||
"keyword.operator",
|
||||
"storage.type",
|
||||
"storage.modifier"
|
||||
],
|
||||
"settings": { "foreground": "#E35A8F", "fontStyle": "bold" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.function",
|
||||
"entity.name.method",
|
||||
"support.function",
|
||||
"meta.function-call"
|
||||
],
|
||||
"settings": { "foreground": "#D45A88" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.type",
|
||||
"entity.name.class",
|
||||
"entity.name.struct",
|
||||
"entity.name.enum",
|
||||
"support.class"
|
||||
],
|
||||
"settings": { "foreground": "#FF77A8", "fontStyle": "bold" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.tag",
|
||||
"punctuation.definition.tag"
|
||||
],
|
||||
"settings": { "foreground": "#DB7093" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.other.attribute-name",
|
||||
"support.type.property-name"
|
||||
],
|
||||
"settings": { "foreground": "#C96385" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.type.primitive",
|
||||
"support.type.builtin",
|
||||
"keyword.type"
|
||||
],
|
||||
"settings": { "foreground": "#E35A8F" }
|
||||
},
|
||||
{
|
||||
"scope": ["markup.heading"],
|
||||
"settings": { "foreground": "#FF3B6F", "fontStyle": "bold" }
|
||||
},
|
||||
{
|
||||
"scope": ["markup.bold"],
|
||||
"settings": { "fontStyle": "bold" }
|
||||
},
|
||||
{
|
||||
"scope": ["markup.italic"],
|
||||
"settings": { "fontStyle": "italic" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.variable.property",
|
||||
"variable.other.property"
|
||||
],
|
||||
"settings": { "foreground": "#D87093" }
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"keyword.operator",
|
||||
"meta.decorator",
|
||||
"meta.annotation"
|
||||
],
|
||||
"settings": { "foreground": "#D45A88" }
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,463 @@
|
||||
{
|
||||
"name": "Witchy Dark",
|
||||
"type": "dark",
|
||||
"colors": {
|
||||
"editor.background": "#0A0009",
|
||||
"editor.foreground": "#E8D5E8",
|
||||
"activityBar.background": "#150A1E",
|
||||
"activityBar.foreground": "#E8D5E8",
|
||||
"activityBarBadge.background": "#A8577E",
|
||||
"activityBarBadge.foreground": "#F5F5F5",
|
||||
"sideBar.background": "#150A1E",
|
||||
"sideBar.foreground": "#E8D5E8",
|
||||
"sideBarTitle.foreground": "#D4A5C7",
|
||||
"titleBar.activeBackground": "#2B1B3D",
|
||||
"titleBar.activeForeground": "#E8D5E8",
|
||||
"statusBar.background": "#44275A",
|
||||
"statusBar.foreground": "#E8D5E8",
|
||||
"statusBar.noFolderBackground": "#0A0009",
|
||||
"tab.activeBackground": "#2B1B3D",
|
||||
"tab.activeForeground": "#E8D5E8",
|
||||
"tab.inactiveBackground": "#150A1E",
|
||||
"tab.inactiveForeground": "#D4A5C7",
|
||||
"editorGroupHeader.tabsBackground": "#150A1E",
|
||||
"button.background": "#44275A",
|
||||
"button.foreground": "#E8D5E8",
|
||||
"dropdown.background": "#2B1B3D",
|
||||
"dropdown.foreground": "#E8D5E8",
|
||||
"input.background": "#150A1E",
|
||||
"input.foreground": "#E8D5E8",
|
||||
"input.placeholderForeground": "#D4A5C7",
|
||||
"focusBorder": "#A8577E",
|
||||
"list.activeSelectionBackground": "#44275A",
|
||||
"list.activeSelectionForeground": "#E8D5E8",
|
||||
"list.hoverBackground": "#2B1B3D",
|
||||
"list.hoverForeground": "#E8D5E8",
|
||||
"editor.selectionBackground": "#A8577E",
|
||||
"editor.selectionHighlightBackground": "#A8577E50",
|
||||
"editor.wordHighlightBackground": "#A8577E40",
|
||||
"editor.lineHighlightBackground": "#2B1B3D",
|
||||
"editorCursor.foreground": "#A8577E",
|
||||
"editorWhitespace.foreground": "#44275A",
|
||||
"editorIndentGuide.background": "#44275A",
|
||||
"editorIndentGuide.activeBackground": "#A8577E",
|
||||
"terminal.background": "#0A0009",
|
||||
"terminal.foreground": "#E8D5E8",
|
||||
"terminal.ansiBlack": "#2B1B3D",
|
||||
"terminal.ansiBrightBlack": "#44275A",
|
||||
"terminal.ansiRed": "#A8577E",
|
||||
"terminal.ansiBrightRed": "#C96B8E",
|
||||
"terminal.ansiGreen": "#8A7A9E",
|
||||
"terminal.ansiBrightGreen": "#A898C0",
|
||||
"terminal.ansiYellow": "#D4A5C7",
|
||||
"terminal.ansiBrightYellow": "#E8D5E8",
|
||||
"terminal.ansiBlue": "#7B5EA8",
|
||||
"terminal.ansiBrightBlue": "#9B7EC8",
|
||||
"terminal.ansiMagenta": "#A8577E",
|
||||
"terminal.ansiBrightMagenta": "#D4A5C7",
|
||||
"terminal.ansiCyan": "#B8A0D0",
|
||||
"terminal.ansiBrightCyan": "#D0B8E8",
|
||||
"terminal.ansiWhite": "#D4A5C7",
|
||||
"terminal.ansiBrightWhite": "#F5F5F5"
|
||||
},
|
||||
"tokenColors": [
|
||||
{
|
||||
"scope": ["comment", "punctuation.definition.comment"],
|
||||
"settings": {
|
||||
"foreground": "#7A5A8A",
|
||||
"fontStyle": "italic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"string",
|
||||
"string.quoted.single",
|
||||
"string.quoted.double",
|
||||
"string.quoted.triple",
|
||||
"string.template",
|
||||
"constant.character",
|
||||
"constant.other.symbol"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"constant.numeric",
|
||||
"constant.language",
|
||||
"constant.character.escape",
|
||||
"constant.other",
|
||||
"support.constant"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#C88FA8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"variable",
|
||||
"variable.other",
|
||||
"variable.parameter",
|
||||
"variable.language",
|
||||
"variable.object.property"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#E8D5E8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"keyword",
|
||||
"keyword.control",
|
||||
"keyword.operator",
|
||||
"keyword.other",
|
||||
"storage.type",
|
||||
"storage.modifier",
|
||||
"punctuation.decorator"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#A8577E"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.function",
|
||||
"entity.name.method",
|
||||
"support.function",
|
||||
"meta.function-call",
|
||||
"meta.method-call",
|
||||
"meta.function.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#C070A0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.type",
|
||||
"entity.name.class",
|
||||
"entity.name.struct",
|
||||
"entity.name.enum",
|
||||
"entity.name.union",
|
||||
"entity.name.trait",
|
||||
"entity.name.interface",
|
||||
"support.class",
|
||||
"support.type",
|
||||
"meta.return-type"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7",
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.decorator",
|
||||
"meta.annotation",
|
||||
"punctuation.definition.annotation"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#9B5878"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["entity.name.tag", "punctuation.definition.tag"],
|
||||
"settings": {
|
||||
"foreground": "#A8577E"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.other.attribute-name",
|
||||
"entity.other.attribute-name.html",
|
||||
"entity.other.attribute-name.css",
|
||||
"support.type.property-name.css",
|
||||
"entity.other.attribute-name.class"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.type.primitive",
|
||||
"support.type.builtin",
|
||||
"keyword.type",
|
||||
"storage.type.primitive",
|
||||
"storage.type.built-in",
|
||||
"support.type.primitive.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["string.regexp", "constant.character.escape.regex"],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.heading", "entity.name.section"],
|
||||
"settings": {
|
||||
"foreground": "#A8577E",
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.bold"],
|
||||
"settings": {
|
||||
"fontStyle": "bold"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.italic"],
|
||||
"settings": {
|
||||
"fontStyle": "italic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.inline.raw", "markup.fenced_code", "markup.raw"],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.type.property-name.json",
|
||||
"support.type.property-name.jsonc"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"keyword.operator.expression",
|
||||
"keyword.operator.new",
|
||||
"keyword.operator.optional",
|
||||
"keyword.operator.comparison",
|
||||
"keyword.operator.arithmetic",
|
||||
"keyword.operator.assignment",
|
||||
"keyword.operator.logical"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#CF8FAE"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.embedded",
|
||||
"source.groovy.embedded",
|
||||
"meta.template.expression"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#E8D5E8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.object-literal.key",
|
||||
"variable.object.property",
|
||||
"variable.other.property",
|
||||
"variable.other.object.property"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.variable.property",
|
||||
"support.variable.object.process",
|
||||
"support.variable.object.node"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.rust storage.type.rust",
|
||||
"source.rust entity.name.type.rust",
|
||||
"source.rust entity.name.type.struct.rust"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.rust keyword.operator",
|
||||
"source.rust keyword.operator.arithmetic",
|
||||
"source.rust keyword.operator.logical"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#CF8FAE"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.python support.type.python",
|
||||
"source.python support.function.builtin.python"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#C070A0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.cs entity.name.type.class.cs",
|
||||
"source.cs storage.type.cs"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.dart support.class.dart",
|
||||
"source.dart support.type.dart"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.prisma keyword.operator",
|
||||
"source.prisma constant.language",
|
||||
"source.prisma keyword.type"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#A8577E"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"source.graphql support.type",
|
||||
"source.graphql constant.character"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["source.sql keyword.other", "source.sql storage.type"],
|
||||
"settings": {
|
||||
"foreground": "#A8577E"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.jsx.children",
|
||||
"meta.embedded.block.tsx",
|
||||
"meta.embedded.block.jsx"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#E8D5E8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"meta.decorator.ts",
|
||||
"meta.decorator.tsx",
|
||||
"meta.decorator.angular"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#9B5878"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.tag.yaml",
|
||||
"string.unquoted.plain.out.yaml"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.type.property-name.toml",
|
||||
"entity.name.tag.toml"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#D4A5C7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"markup.underline.link",
|
||||
"string.other.link.title.markdown",
|
||||
"meta.link.inline.markdown"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#A8577E"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["markup.quote"],
|
||||
"settings": {
|
||||
"foreground": "#7A5A8A",
|
||||
"fontStyle": "italic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"punctuation.definition.list.begin.markdown",
|
||||
"beginning.punctuation.definition.list.markdown"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#A8577E"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"variable.css",
|
||||
"variable.other.custom-property.css",
|
||||
"support.type.custom-property.css"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#CF8FAE"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"support.macro.rust",
|
||||
"entity.name.function.macro.rust",
|
||||
"meta.macro.rust entity.name.function.rust"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#C070A0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"storage.modifier.lifetime.rust",
|
||||
"entity.name.lifetime.rust",
|
||||
"punctuation.definition.lifetime.rust"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#9B5878"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": ["entity.name.package.go"],
|
||||
"settings": {
|
||||
"foreground": "#C88FA8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"entity.name.package.java",
|
||||
"support.other.package.java",
|
||||
"entity.name.package.kotlin"
|
||||
],
|
||||
"settings": {
|
||||
"foreground": "#C88FA8"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user