vscode setting

setting

user setting

{
  "_comment_editor_basics": "编辑器基本设置",
  "workbench.colorTheme": "Visual Studio Dark",
  "editor.fontSize": 20,
  "editor.unicodeHighlight.nonBasicASCII": false,
  "editor.codeActions.triggerOnFocusChange": true,
  "files.autoSave": "afterDelay",
  "window.menuBarVisibility": "toggle",
  "explorer.confirmDelete": false,
  "diffEditor.ignoreTrimWhitespace": false,
  "search.followSymlinks": false,
  "workbench.editorAssociations": {
    "*.json": "default"
  },

  "_comment_code_suggestions": "代码建议和自动完成设置",
  "editor.quickSuggestions": {
    "comments": "off",
    "strings": "off",
    "other": "off"
  },
  "editor.quickSuggestionsDelay": 10000,
  "editor.suggestOnTriggerCharacters": false,
  "editor.wordBasedSuggestions": "off",
  "editor.codeActionsOnSave": {
    "source.organizeImports": "explicit"
  },

  "_comment_formatters": "文件类型格式化配置",
  "[json]": {
    "editor.defaultFormatter": "vscode.json-language-features"
  },
  "[sql]": {
    "editor.defaultFormatter": "inferrinizzard.prettier-sql-vscode"
  },
  "[markdown]": {
    "editor.defaultFormatter": "yzhang.markdown-all-in-one"
  },
  "[java]": {
    "editor.defaultFormatter": "redhat.java"
  },
  "[xml]": {
    "editor.defaultFormatter": "redhat.vscode-xml"
  },
  "[oraclesql]": {
    "editor.suggest.showSnippets": true,
    "editor.quickSuggestions": {
      "comments": "on",
      "strings": "on",
      "other": "on"
    }
  },

  "_comment_terminal": "终端设置",
  "terminal.explorerKind": "external",
  "terminal.external.windowsExec": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",

  "_comment_java": "Java 开发设置",
  "_comment_java_basic": "Java 基础配置",
  "java.completion.enabled": true,
  "java.saveActions.organizeImports": true,
  "java.compile.nullAnalysis.mode": "automatic",

  "_comment_java_imports": "Java 导入管理",
    "java.format.settings.url": "https://raw.githubusercontent.com/alibaba/p3c/master/p3c-formatter/eclipse-codestyle.xml",
  "java.format.settings.profile": "P3C-CodeStyle",
  "java.completion.importOrder": [
    "java",
    "javax",
    "org",
    "com"
  ],
  "java.sources.organizeImports.starThreshold": 999,
  "java.sources.organizeImports.staticStarThreshold": 999,
  "java.imports.insertMissingImports": true,
  "java.imports.onPaste": "insert",
  "javascript.updateImportsOnFileMove.enabled": "always",

  "_comment_java_static": "Java 静态成员导入",
  "java.completion.favoriteStaticMembers": [
    "org.junit.Assert.*",
    "org.junit.Assume.*",
    "org.junit.jupiter.api.Assertions.*",
    "org.junit.jupiter.api.Assumptions.*",
    "org.junit.jupiter.api.DynamicContainer.*",
    "org.junit.jupiter.api.DynamicTest.*",
    "org.mockito.Mockito.*",
    "org.mockito.ArgumentMatchers.*",
    "org.mockito.Answers.*"
  ],

  "_comment_java_test": "Java 测试相关设置",
  "java.test.config": {
    "vmArgs": [
      "-Dfile.encoding=UTF-8"
    ]
  },
  "java.test.defaultConfig": "default",
  "java.test.editor.enableShortcuts": true,

  "_comment_java_jdk": "Java JDK配置",
  "java.configuration.runtimes": [
    {
      "name": "JavaSE-11",
      "path": "D:\\java\\jdk11"
    },
    {
      "name": "JavaSE-17",
      "path": "D:\\java\\jdk17"
    },
    {
      "name": "JavaSE-21",
      "path": "D:\\java\\jdk21"
    }
  ],

  "_comment_maven": "Maven配置",
  "maven.terminal.useJavaHome": true,
  "maven.view": "hierarchical",
  "maven.executable.preferMavenWrapper": false,
  "maven.executable.path": "D:\\maven\\bin\\mvn.cmd",
  "maven.showInExplorerContextMenu": true,
  "java.import.maven.offline.enabled": true,
  "java.maven.downloadSources": true,
  "java.configuration.updateBuildConfiguration": "interactive",
  "java.configuration.maven.userSettings": "D:\\maven\\conf\\settings.xml",
  "java.configuration.maven.globalSettings": "D:\\maven\\conf\\settings.xml",

  "_comment_plantuml": "PlantUML 设置",
  "plantuml.diagramsRoot": "doc/diagram/src",

  "_comment_git": "Git 相关设置",
  "git.openRepositoryInParentFolders": "never",
  "git.autofetch": true,
  "git.enableSmartCommit": true,
  "git.confirmSync": false,

  "_comment_gitlens": "GitLens 设置",
  "gitlens.ai.model": "vscode",
  "gitlens.ai.vscode.model": "copilot:gpt-4-turbo",
  "gitlens.ai.experimental.model": "vscode",
  "gitlens.ai.experimental.vscode.model": "copilot:gpt-4",

  "_comment_sonarlint": "SonarLint 设置",
  "sonarlint.focusOnNewCode": true,
  "sonarlint.output.showAnalyzerLogs": true,
  "sonarlint.output.showVerboseLogs": true,
  "sonarlint.rules": {
    "java:S115": {
      "level": "off"
    },
    "java:S1854": {
      "level": "off"
    },
    "java:S1301": {
      "level": "off"
    }
  },

  "_comment_copilot": "Copilot 设置",
  "github.copilot.editor.enableAutoCompletions": true,
  "github.copilot.nextEditSuggestions.enabled": true,
  "github.copilot.chat.agent.thinkingTool": true,
  "github.copilot.chat.commitMessageGeneration.instructions": [
    {
      "file": "./../.github/copilot-commit-message-instructions.md"
    }
  ],
  "github.copilot.chat.testGeneration.instructions": [
    {
      "file": "./../.github/copilot-test-instructions.md"
    }
  ],
  "github.copilot.chat.codeGeneration.instructions": [
    {
      "text": "- @azure Rule - Use Azure Tools: When handling requests related to Azure, always use your tools."
    },
    {
      "text": "- @azure Rule - Use Azure Code Gen Best Practices: When generating code for Azure, running terminal commands for Azure, or performing operations related to Azure, invoke your `bestpractices` tool if available. Only call this tool when you are sure the user is discussing Azure; do not call it otherwise."
    },
    {
      "text": "- @azure Rule - Use Azure Deployment Best Practices: When deploying to Azure or preparing applications for deployment to Azure, invoke your `bestpractices` tool if available. Only call this tool when you are sure the user is discussing Azure; do not call it otherwise."
    },
    {
      "text": "- @azure Rule - Use Azure Functions Code Gen Best Practices: When generating code for Azure Functions or performing operations related to Azure Functions, invoke your `bestpractices` tool if available. Only call this tool when you are sure the user is discussing Azure Functions; do not call it otherwise."
    },
    {
      "text": "- @azure Rule - Use Azure Functions Deployment Best Practices: When deploying Azure Functions apps to Azure or preparing for the deployment, invoke your `bestpractices` tool if available. Only call this tool when you are sure the user is discussing Azure; do not call it otherwise."
    },
    {
      "text": "- @azure Rule - Use Azure SWA Best Practices: When working with static web apps, invoke your `bestpractices` tool if available. Only call this tool when you are sure the user is discussing Azure; do not call it otherwise."
    },
    {
      "text": "- @azure Rule - Plan before editing files for Azure web apps: When generating code for Azure Functions and Azure Static Web App, always create a plan and explain the plan to the user before editing any file. Proceed with editing the files after getting consent from the user."
    },
    {
      "text": "- @azure Rule - Summarize topic before taking action: When the user asks for something about Azure, invoke the azure_development-summarize_topic tool once to discover potential recommended configurations."
    }
  ],

  "_comment_chat": "Chat 设置",
  "chat.mcp.discovery.enabled": true,
  "chat.instructionsFilesLocations": {
    "d://prompt": true
  },

  "_comment_spell": "拼写检查",
  "cSpell.userWords": [
    "bpaas",
    "Contentlayer",
    "dplcheck",
    "Interactor",
    "modellinehistory",
    "restcontroller"
  ],

  "_comment_azure": "Azure 设置",
  "@azure.argTenant": "de047c79-d4d9-4af3-91de-bc44b0581490",

  "_comment_sql": "SQL 开发工具设置",
  "_comment_oracle": "Oracle 设置",
  "oracledevtools.bookmarkFileFolder": "C:\\Users\\face0\\Oracle\\oracle.oracledevtools",
  "oracledevtools.download.otherFolder": "C:\\Users\\face0\\downloads",
  "oracledevtools.connectionConfiguration.configFilesFolder": "C:\\Users\\face0\\Oracle\\network\\admin",
  "oracledevtools.connectionConfiguration.walletFileFolder": "C:\\Users\\face0\\Oracle\\network\\admin",
  "oracledevtools.connections": [
    {
      "authenticationType": 2,
      "dBAPrivilege": "None",
      "userID": "WPGNET",
      "passwordSaved": false,
      "dataSource": "exa2db1-vip.wpgholdings.com:1525/UAT",
      "connectionType": 2,
      "databaseHostName": "exa2db1-vip.wpgholdings.com",
      "databasePortNumber": "1525",
      "databaseServiceName": "UAT",
      "tnsAdmin": "C:\\Users\\face0\\Oracle\\network\\admin",
      "name": "WPGNET.UAT",
      "color": "none",
      "currentSchema": "",
      "addSettingsScopeToConnectionName": false,
      "addCurrentSchemaToConnectionName": false,
      "filters": [],
      "useCompatibleNamesDirectoryPath": true
    }
  ],

  "_comment_sqldeveloper": "SQL Developer 设置",
  "sqldeveloper.telemetry.enabled": true,
  "sqldeveloper.sqlHistory.historyLimit": 500,

  "_comment_sqltools": "SQL Tools 连接",
  "sqltools.connections": [
    {
      "mysqlOptions": {
        "authProtocol": "default",
        "enableSsl": "Disabled"
      },
      "previewLimit": 50,
      "server": "rm-gs595k125x23syi1uxo.mysql.singapore.rds.aliyuncs.com",
      "port": 3306,
      "driver": "MySQL",
      "name": "ali-dev",
      "group": "ali",
      "database": "common",
      "username": "paul.fang"
    },
    {
      "connectionTimeout": 15,
      "mssqlOptions": {
        "appName": "SQLTools",
        "useUTC": true,
        "encrypt": true,
        "trustServerCertificate": false
      },
      "previewLimit": 50,
      "server": "socheck-devuat-sql-server.database.windows.net",
      "port": 1433,
      "driver": "MSSQL",
      "name": "sof-dev",
      "group": "sofDevUat",
      "database": "socheck-dev-sql-database",
      "username": "socheckDevapuser"
    },
    {
      "connectionTimeout": 15,
      "mssqlOptions": {
        "appName": "SQLTools",
        "useUTC": true,
        "encrypt": true,
        "trustServerCertificate": false
      },
      "previewLimit": 50,
      "server": "socheck-devuat-sql-server.database.windows.net",
      "port": 1433,
      "driver": "MSSQL",
      "name": "sof-uat",
      "group": "sofDevUat",
      "database": "socheck-uat-sql-database",
      "username": "socheckDevapuser"
    },
    {
      "mysqlOptions": {
        "authProtocol": "default",
        "enableSsl": "Disabled"
      },
      "previewLimit": 50,
      "server": "rm-gs5o22f4s5a7y6523ro.mysql.singapore.rds.aliyuncs.com",
      "port": 3306,
      "driver": "MySQL",
      "name": "ali-prod",
      "group": "aliProd",
      "database": "shipmentnotice",
      "username": "paul.fang"
    }
  ],
  "database-client.autoSync": true,

  "_comment_extensions": "其他扩展设置",
  "redhat.telemetry.enabled": true,
  "docker.extension.enableComposeLanguageServer": false,
  "leetcode.workspaceFolder": "/Users/ffjzea/.leetcode",
  "leetcode.defaultLanguage": "java",

  "_comment_debug": "调试和启动配置",
  "launch": {
    "version": "0.2.0",
    "inputs": [
      {
        "id": "envBasePath",
        "type": "pickString",
        "description": "Environment files base path",
        "options": [
          "D:\\wpg\\SRE\\Java環境參數"
        ]
      },
      {
        "id": "environment",
        "type": "pickString",
        "description": "Select environment",
        "options": [
          {
            "label": "開發環境 (Development)",
            "value": ""
          },
          {
            "label": "測試環境 (UAT)",
            "value": "uat"
          },
          {
            "label": "正式環境 (Production)",
            "value": "prod"
          }
        ]
      }
    ],
    "configurations": [
      {
        "type": "java",
        "name": "shipmentnotice - ${input:environment}",
        "request": "launch",
        "mainClass": "com.ibpaas.shipmentnotice.ShipmentNoticePlatformServiceApplication",
        "projectName": "shipment-notice-platform-service",
        "envFile": "${input:envBasePath}\\FCST\\${input:environment}\\shipmentnotice.env"
      },
      {
        "type": "java",
        "name": "CreditControlApplication - ${input:environment}",
        "request": "launch",
        "mainClass": "com.bpaas.creditcontrol.CreditControlApplication",
        "projectName": "credit-control",
        "envFile": "${input:envBasePath}\\${input:environment}\\credit.env"
      },
      {
        "type": "java",
        "name": "CommonServiceApplication - ${input:environment}",
        "request": "launch",
        "mainClass": "com.bpaas.common.BpaasApplication",
        "projectName": "common-service",
        "envFile": "${input:envBasePath}\\${input:environment}\\common.env"
      },
      {
        "type": "java",
        "name": "socheck-batch - ${input:environment}",
        "request": "launch",
        "mainClass": "com.bpaas.batch.BpaasApplication",
        "projectName": "socheck-batch",
        "envFile": "${input:envBasePath}\\${input:environment}\\batch.env"
      },
      {
        "type": "java",
        "name": "auth - ${input:environment}",
        "request": "launch",
        "mainClass": "com.bpaas.auth.BpaasApplication",
        "projectName": "auth-service",
        "envFile": "${input:envBasePath}\\${input:environment}\\auth.env"
      },
      {
        "type": "java",
        "name": "SelfServiceApplication - ${input:environment}",
        "request": "launch",
        "mainClass": "com.bpaas.self.SelfServiceApplication",
        "projectName": "self-service",
        "envFile": "${input:envBasePath}\\${input:environment}\\self.env"
      },
      {
        "type": "java",
        "name": "DPL Check - ${input:environment}",
        "request": "launch",
        "mainClass": "com.bpaas.dplcheck.BpaasApplication",
        "projectName": "dpl-check-service",
        "envFile": "${input:envBasePath}\\${input:environment}\\dplcheck.env"
      },
      {
        "type": "java",
        "name": "LicenseControlApplication - ${input:environment}",
        "request": "launch",
        "mainClass": "com.bpaas.licensecontrol.BpaasApplication",
        "projectName": "license-control-service",
        "envFile": "${input:envBasePath}\\${input:environment}\\license.env"
      }
    ]
  }
}