settings.json

{// userhomeidr/.config/Code/User "editor.fontSize": 18, "editor.bracketPairColorization.enabled": true, "editor.guides.bracketPairs": "active", "todo-tree.tree.showScanModeButton": false, "go.formatTool": "goimports", "go.toolsManagement.autoUpdate": true, "vim.easymotion": true, "vim.sneak": true, "vim.visualstar": true, "vim.ignorecase": false, "vim.useSystemClipboard": true, "vim.useCtrlKeys": true, "vim.hlsearch": true, "vim.insertModeKeyBindings": [ { "before": [ "k", "j" ], "after": [ "Esc" ] } ], "vim.leader": ",", "vim.visualModeKeyBindingsNonRecursive": [ { "before": [ "v" ], "commands": [ "editor.action.smartSelect.expand" ] }, { "before": [ "%" ], "commands": [ "extension.matchitJumpItems" ] }, { "before": [ "<leader>", "x", "x" ], "commands": [ "editor.action.smartSelect.expand" ] }, { "before": [ "<leader>", "z", "z" ], "commands": [ "editor.action.smartSelect.shrink" ] }, { "before": [ "<leader>", "c", "i" ], "commands": [ "editor.action.commentLine" ] }, { "before": [ "<leader>", "a", "a" ], "commands": [ "editor.action.clipboardCopyAction" ] }, { "before": [ "<leader>", "q", "q" ], "commands": [ "workbench.action.findInFiles" ] }, { "before": [ "<leader>", "s", "s" ], "commands": [ "actions.find" ] } ], "vim.normalModeKeyBindingsNonRecursive": [ { "before": [ "<leader>", "r", "v" ], "commands": [ "editor.action.rename" ] }, { "before": [ "<leader>", "q", "q" ], "commands": [ "workbench.action.findInFiles" ] }, { "before": [ "<leader>", "f", "p" ], "commands": [ "workbench.action.files.copyPathOfActiveFile" ] }, { "before": [ "<leader>", "f", "n" ], "commands": [ "copyRelativeFilePath" ] }, { "before": [ "<leader>", "n", "f" ], "commands": [ "workbench.action.files.newUntitledFile" ] }, { "before": [ "<leader>", "t", "p" ], "commands": [ "workbench.action.togglePanel" ] }, { "before": [ "<leader>", "x", "m" ], "commands": [ "workbench.action.showCommands" ] }, { "before": [ "<leader>", "c", "i" ], "commands": [ "editor.action.commentLine" ] }, { "before": [ "<leader>", "x", "x" ], "commands": [ "editor.action.smartSelect.expand" ] }, { "before": [ "<leader>", "z", "z" ], "commands": [ "editor.action.smartSelect.shrink" ] }, { "before": [ "<leader>", "t", "a" ], "commands": [ "workbench.action.toggleActivityBarVisibility" ] }, { "before": [ "<leader>", "t", "b" ], "commands": [ "workbench.action.toggleSidebarVisibility" ] }, { "before": [ "<leader>", "x", "s" ], "commands": [ "workbench.action.files.save" ] }, { "before": [ "<leader>", "s", "s" ], "commands": [ "actions.find" ] }, { "before": [ "%" ], "commands": [ "extension.matchitJumpItems" ] }, { "before": [ "<leader>", "s", "i" ], "commands": [ "extension.matchitSelectItems" ] }, { "before": [ "<leader>", "d", "i" ], "commands": [ "extension.matchitDeleteItems" ] }, { "before": [ "<leader>", "x", "f" ], "commands": [ "workbench.action.files.openFile" ] }, { "before": [ "<leader>", "x", "k" ], "commands": [ "workbench.action.closeActiveEditor" ] }, { "before": [ "<leader>", "r", "r" ], "commands": [ "workbench.action.openRecent" ] }, { "before": [ "<leader>", "k", "k" ], "commands": [ "workbench.action.quickOpen" ] }, { "before": [ "<leader>", "i", "i" ], "commands": [ "workbench.action.gotoSymbol" ] }, { "before": [ "<leader>", "x", "1" ], "commands": [ "workbench.action.editorLayoutSingle" ] }, { "before": [ "<leader>", "x", "3" ], "commands": [ "workbench.action.splitEditorRight" ] }, { "before": [ "<leader>", "x", "2" ], "commands": [ "workbench.action.splitEditorDown" ] }, { "before": [ "<leader>", "x", "4" ], "commands": [ "workbench.action.editorLayoutTwoByTwoGrid" ] }, { "before": [ "<leader>", "x", "0" ], "commands": [ "workbench.action.closeGroup" ] }, { "before": [ "<leader>", "t" ], "commands": [ "workbench.action.terminal.focus" ] }, { "before": [ "<Ctrl>", "j" ], "commands": [ "workbench.action.navigateBack" ] }, { "before": [ "<leader>", "f", "f" ], "commands": [ "workbench.action.toggleZenMode" ] }, { "before": [ "<leader>", "w", "h" ], "after": [ "<C-w>", "h" ] }, { "before": [ "<leader>", "w", "j" ], "after": [ "<C-w>", "j" ] }, { "before": [ "<leader>", "w", "k" ], "after": [ "<C-w>", "k" ] }, { "before": [ "<leader>", "w", "l" ], "after": [ "<C-w>", "l" ] }, { "before": [ "<leader>", "w", "q" ], "after": [ ":wq" ], } ], "vim.handleKeys": { "<C-a>": false, }, "zenMode.centerLayout": false, "window.zoomLevel": 1, "editor.minimap.enabled": false, "search.exclude": { "/.git": true, "/*.bundle.js": true, "/bin-packages": true, "/frontend-dist": true, "**/npm-packages-offline-cache": true }, "search.useGlobalIgnoreFiles": true, "files.autoSave": "afterDelay", "workbench.colorTheme": "Solarized Dark", "workbench.statusBar.visible": true, "editor.renderWhitespace": "none", "editor.renderControlCharacters": false, "window.titleBarStyle": "native", "editor.renderLineHighlight": "none", "extensions.ignoreRecommendations": true, "editor.occurrencesHighlight": false, "[dart]": { "editor.formatOnSave": true, "editor.formatOnType": true, "editor.rulers": [ 80 ], "editor.selectionHighlight": false, "editor.suggest.snippetsPreventQuickSuggestions": false, "editor.suggestSelection": "first", "editor.tabCompletion": "onlySnippets", "editor.wordBasedSuggestions": false }, "git.openRepositoryInParentFolders": "never", // https://zhuanlan.zhihu.com/p/398790625?utm_id=0 // [[C/C++]] // // cpptools "C_Cpp.intelliSenseEngine": "disabled", // 禁用微软 Cpptools 插件的提示功能 "C_Cpp.codeAnalysis.runAutomatically": false, "C_Cpp.formatting": "disabled", // clangd "clangd.path": "/home/huanghe/soft/clang/bin/clangd", // clangd 安装路径 // "clangd.path": "c:\\Users\\Sirius\\AppData\\Roaming\\Code\\User\\globalStorage\\llvm-vs-code-extensions.vscode-clangd\\install\\15.0.3\\clangd_15.0.3\\bin\\clangd.exe", // clangd 安装路径 // Clangd 运行参数(在终端/命令行输入 clangd --help-list-hidden 可查看更多) "clangd.arguments": [ "--all-scopes-completion", // 全局补全(补全建议会给出在当前作用域不可见的索引,插入后自动补充作用域标识符),例如在main()中直接写cout,即使没有`#include <iostream>`,也会给出`std::cout`的建议,配合"--header-insertion=iwyu",还可自动插入缺失的头文件 "--background-index", // 后台分析并保存索引文件 "--clang-tidy", // 启用 Clang-Tidy 以提供「静态检查」,下面设置 clang tidy 规则 "--clang-tidy-checks=performance-*, bugprone-*, misc-*, google-*, modernize-*, readability-*, portability-*", "--compile-commands-dir=${workspaceFolder}/.vscode", // 编译数据库(例如 compile_commands.json 文件)的目录位置 "--completion-parse=auto", // 当 clangd 准备就绪时,用它来分析建议 "--completion-style=detailed", // 建议风格:打包(重载函数只会给出一个建议);还可以设置为 detailed // "--query-driver=/usr/bin/clang++", // MacOS 上需要设定 clang 编译器的路径,homebrew 安装的clang 是 /usr/local/opt/llvm/bin/clang++ // 启用配置文件(YAML格式)项目配置文件是在项目文件夹里的“.clangd”,用户配置文件是“clangd/config.yaml”,该文件来自:Windows: %USERPROFILE%\AppData\Local || MacOS: ~/Library/Preferences/ || Others: $XDG_CONFIG_HOME, usually ~/.config "--enable-config", "--fallback-style=Webkit", // 默认格式化风格: 在没找到 .clang-format 文件时采用,可用的有 LLVM, Google, Chromium, Mozilla, Webkit, Microsoft, GNU "--function-arg-placeholders=true", // 补全函数时,将会给参数提供占位符,键入后按 Tab 可以切换到下一占位符,乃至函数末 "--header-insertion-decorators", // 输入建议中,已包含头文件的项与还未包含头文件的项会以圆点加以区分 "--header-insertion=iwyu", // 插入建议时自动引入头文件 iwyu "--include-cleaner-stdlib", // 为标准库头文件启用清理功能(不成熟!!!) "--log=verbose", // 让 Clangd 生成更详细的日志 "--pch-storage=memory", // pch 优化的位置(Memory 或 Disk,前者会增加内存开销,但会提升性能) "--pretty", // 输出的 JSON 文件更美观 "--ranking-model=decision_forest", // 建议的排序方案:hueristics (启发式), decision_forest (决策树) "-j=12" // 同时开启的任务数量 ], // Clangd 找不到编译数据库(例如 compile_flags.json 文件)时采用的设置,缺陷是不能直接索引同一项目的不同文件,只能分析系统头文件、当前文件和include的文件 "clangd.fallbackFlags": [ "-pedantic", "-Wall", "-Wextra", "-Wcast-align", "-Wdouble-promotion", "-Wformat=2", "-Wimplicit-fallthrough", "-Wmisleading-indentation", "-Wnon-virtual-dtor", "-Wnull-dereference", "-Wold-style-cast", "-Woverloaded-virtual", "-Wpedantic", "-Wshadow", "-Wunused", "-pthread", "-fuse-ld=lld", "-fsanitize=address", "-fsanitize=undefined", "-stdlib=libc++", // "-std=c++2a" "-std=c++20" ], "clangd.checkUpdates": true, // 自动检测 clangd 更新 "clangd.onConfigChanged": "restart", // 重启 clangd 时重载配置,具体方法: F1 + Fn 打开命令面板,然后搜索“clangd: restart” "clangd.serverCompletionRanking": true, // 借助网上的信息排序建议 "clangd.detectExtensionConflicts": true, // 当其它拓展与 clangd 冲突时警告并建议禁用 "editor.suggest.snippetsPreventQuickSuggestions": false, // clangd的snippets有很多的跳转点,不用这个就必须手动触发Intellisense了 "[cpp]": { "editor.defaultFormatter": "llvm-vs-code-extensions.vscode-clangd" }, // // [[LLDB]] // "lldb.commandCompletions": true, // LLDB 指令自动补全 "lldb.dereferencePointers": true, // LLDB 指针显示解引用内容 "lldb.evaluateForHovers": true, // LLDB 鼠标悬停在变量上时预览变量值 "lldb.launch.expressions": "native", // LLDB 监视表达式的默认类型 "lldb.showDisassembly": "never", // LLDB 不显示汇编代码 "lldb.verboseLogging": true, "xmake.debugConfigType": "codelldb", "workbench.activityBar.visible": false, "editor.fontFamily": "DroidSansMono Nerd Font", // LLDB 生成更详细的日志 "terminal.integrated.fontFamily": "Hack Nerd Font", }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章