// *** Autogenerated file - created by configure.ac *** // you should save the auto-generated vs-code-templates.code-workspace to a separate file // to prevent your changes from being overwritten { "extensions": { "recommendations": [ "ms-vscode.cpptools" ] }, "folders": [ { "name": "srcdir", "path": "@SRC_ROOT@" }, { "name": "builddir", "path": "@BUILDDIR@" } ], "settings": { "search.exclude": { "/compile_commands.json": true, "/dictionaries/": true, "/helpcontent2/": true, "/icon-themes/": true, "/translations/": true }, "files.watcherExclude": { "/dictionaries/": true, "/helpcontent2/": true, "/icon-themes/": true, "/translations/": true }, "files.associations": { "*.patch.[0-9]": "diff" }, // FIXME: arguably the generator should place it in the builddir, not srcdir "C_Cpp.default.compileCommands": "${workspaceFolder:srcdir}/compile_commands.json", // only used if the file doesn't match anything in the compile_commands.json - aka externals // libxml includes just added as example/for reference "C_Cpp.default.includePath": [ "@WORKDIR@/UnpackedTarball/**", "/usr/include/libxml2/" ], "C_Cpp.default.browse.limitSymbolsToIncludedHeaders": true, "C_Cpp.default.cppStandard": "c++17", // point this to LibreOffice's version of clang-format 5.0.0, // otherwise clang-format from the plugin is used, and that // gives slightly different results "C_Cpp.clang_format_path": "/opt/lo/bin/clang-format", "editor.rulers": [ 100 ], "gitlens.autolinks": [ { "prefix": "tdf#", "url": "https://bugs.documentfoundation.org/show_bug.cgi?id=" } ] }, "tasks": { "version": "2.0.0", "tasks": [ { "label": "full make", "detail": "runs make in builddir to update everything", "type": "shell", "command": "make", "group": { "kind": "build", "isDefault": true }, "options": { "cwd": "@BUILDDIR@" } }, { "label": "create compile-commands.json", "detail": "runs make vim-ide-integration to create the compile-commands.json file", "type": "shell", "command": "make", "args": [ "vim-ide-integration" ], "group": "build", // doesn't really depend on full make, but doesn't hurt // updating the compile-commands is not needed all the time and also demonstrate // how to use dependencies in tasks… "dependsOn": [ "full make" ], "options": { "cwd": "@BUILDDIR@" }, "problemMatcher": [] // don't ask when manually running the task }, { "label": "remove profile-dir", "detail": "removes the temporary user-profile directory", "type": "shell", "command": "rm", "args": [ "-rf", "@WORKDIR@/vs-code-temporary-user-profile" ], "group": "none", "dependsOn": [ "full make" ], "options": { "cwd": "@BUILDDIR@" }, "problemMatcher": [] } ] }, "launch": { "configurations": [ { "name": "run in debugger after make", "type": "cppdbg", "request": "launch", "program": "@INSTROOT@/program/soffice.bin", "args": [], "stopAtEntry": false, "cwd": "@BUILDDIR@", "environment": [ { // added in disabled form for convenience/as an example // (proper name is just SAL_LOG), // see https://docs.libreoffice.org/sal/html/sal_log.html "name": "SAL_LOG_DISABLED", "value": "+INFO.ucb+WARN" } ], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "Enable prett-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "linux": { "miDebuggerPath": "/usr/libexec/gdb" }, "osx": { "program": "@INSTROOT@/MacOS/soffice", "MIMode": "lldb", "setupCommands": [ { "description": "load helpers for for lldb", "text": "command script import ${workspaceFolder:srcdir}/solenv/lldb/libreoffice/LO.py", "ignoreFailures": false } ] }, "preLaunchTask": "full make" }, { // FIXME: not happy here when creating the profile while running in debugger // no problem passing the profile dir once it was launched outside debugger once, // but clearing out the user-profile dir needs to be triggered manually "name": "run in gdb with clear userprofile", // "preLaunchTask": "remove profile-dir", "type": "cppdbg", "request": "launch", "program": "@INSTROOT@/program/soffice.bin", "args": [ "-env:UserInstallation=file:///@WORKDIR@/vs-code-temporary-user-profile" ], "stopAtEntry": false, "cwd": "@BUILDDIR@", "environment": [ { "name": "SAL_LOG_DISABLED", "value": "+INFO.ucb+WARN" } ], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "linux": { "miDebuggerPath": "/usr/libexec/gdb" }, "osx": { "program": "@INSTROOT@/MacOS/soffice", "MIMode": "lldb", "setupCommands": [ { "description": "load helpers for for lldb", "text": "command script import ${workspaceFolder:srcdir}/solenv/lldb/libreoffice/LO.py", "ignoreFailures": false } ] } } ], "compounds": [] } }