2021-12-15 07:21:36 -06:00
|
|
|
// *** vs-code.code-workspace.template is an autogenerated file created by configure.ac ***
|
|
|
|
// any changes to the vs-code.code-workspace.template file WILL BE OVERRIDDEN
|
2021-12-21 11:58:04 -06:00
|
|
|
// use the vs-code.code-workspace file (make vscode-ide-integration) for your own edits
|
2020-12-13 09:01:55 -06:00
|
|
|
{
|
|
|
|
"extensions": {
|
|
|
|
"recommendations": [
|
|
|
|
"ms-vscode.cpptools"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"folders": [
|
|
|
|
{
|
|
|
|
"name": "srcdir",
|
|
|
|
"path": "@SRC_ROOT@"
|
|
|
|
},
|
|
|
|
{
|
2021-12-15 07:19:31 -06:00
|
|
|
// BUILDDIR may be configured separate from SRCDIR
|
2020-12-13 09:01:55 -06:00
|
|
|
"name": "builddir",
|
|
|
|
"path": "@BUILDDIR@"
|
2021-12-15 07:19:31 -06:00
|
|
|
},
|
2020-12-13 09:01:55 -06:00
|
|
|
],
|
|
|
|
"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
|
|
|
|
},
|
2021-05-19 08:29:26 -05:00
|
|
|
"files.associations": {
|
|
|
|
"*.patch.[0-9]": "diff"
|
|
|
|
},
|
2022-11-30 04:30:23 -06:00
|
|
|
"C_Cpp.default.compileCommands": "@BUILDDIR@/compile_commands.json",
|
2020-12-13 09:01:55 -06:00
|
|
|
// 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": [
|
2021-12-23 08:21:23 -06:00
|
|
|
"@WORKDIR@/UnpackedTarball/**",
|
2020-12-13 09:01:55 -06:00
|
|
|
"/usr/include/libxml2/"
|
|
|
|
],
|
|
|
|
"C_Cpp.default.browse.limitSymbolsToIncludedHeaders": true,
|
2023-10-23 10:07:23 -05:00
|
|
|
"C_Cpp.default.cppStandard": "c++20",
|
2020-12-13 09:01:55 -06:00
|
|
|
// 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
|
2021-05-28 08:23:27 -05:00
|
|
|
],
|
2021-12-22 10:53:57 -06:00
|
|
|
// files in the repo should in general have a newline at end-of-file
|
|
|
|
"files.insertFinalNewline": true,
|
2023-10-23 08:36:13 -05:00
|
|
|
"editor.renderFinalNewline": "off",
|
2021-05-28 08:23:27 -05:00
|
|
|
"gitlens.autolinks": [
|
|
|
|
{
|
|
|
|
"prefix": "tdf#",
|
|
|
|
"url": "https://bugs.documentfoundation.org/show_bug.cgi?id=<num>"
|
|
|
|
}
|
2023-04-05 05:32:58 -05:00
|
|
|
],
|
|
|
|
"terminal.integrated.profiles.windows": {
|
|
|
|
"Cygwin": {
|
|
|
|
"path": "@CYGWIN_BASH@",
|
|
|
|
"args": [
|
|
|
|
"--login"
|
|
|
|
],
|
|
|
|
// prevent changing to $(HOME)
|
|
|
|
"env": {
|
|
|
|
"CHERE_INVOKING": "1"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"terminal.integrated.defaultProfile.windows": "Cygwin"
|
2020-12-13 09:01:55 -06:00
|
|
|
},
|
|
|
|
"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": {
|
2021-12-23 08:21:23 -06:00
|
|
|
"cwd": "@BUILDDIR@"
|
2020-12-13 09:01:55 -06:00
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"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": {
|
2021-12-23 08:21:23 -06:00
|
|
|
"cwd": "@BUILDDIR@"
|
2020-12-13 09:01:55 -06:00
|
|
|
},
|
|
|
|
"problemMatcher": [] // don't ask when manually running the task
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"label": "remove profile-dir",
|
2021-02-12 05:29:18 -06:00
|
|
|
"detail": "removes the temporary user-profile directory",
|
2020-12-13 09:01:55 -06:00
|
|
|
"type": "shell",
|
|
|
|
"command": "rm",
|
|
|
|
"args": [
|
|
|
|
"-rf",
|
2021-12-23 08:21:23 -06:00
|
|
|
"@WORKDIR@/vs-code-temporary-user-profile"
|
2020-12-13 09:01:55 -06:00
|
|
|
],
|
|
|
|
"group": "none",
|
|
|
|
"dependsOn": [
|
|
|
|
"full make"
|
|
|
|
],
|
|
|
|
"options": {
|
2021-12-23 08:21:23 -06:00
|
|
|
"cwd": "@BUILDDIR@"
|
2020-12-13 09:01:55 -06:00
|
|
|
},
|
|
|
|
"problemMatcher": []
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"launch": {
|
|
|
|
"configurations": [
|
|
|
|
{
|
2021-02-12 05:29:18 -06:00
|
|
|
"name": "run in debugger after make",
|
2020-12-13 09:01:55 -06:00
|
|
|
"type": "cppdbg",
|
|
|
|
"request": "launch",
|
2021-12-23 08:21:23 -06:00
|
|
|
"program": "@INSTROOT@/program/soffice.bin",
|
2020-12-13 09:01:55 -06:00
|
|
|
"args": [],
|
|
|
|
"stopAtEntry": false,
|
2021-12-23 08:21:23 -06:00
|
|
|
"cwd": "@BUILDDIR@",
|
2020-12-13 09:01:55 -06:00
|
|
|
"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,
|
2021-02-12 05:29:18 -06:00
|
|
|
"linux": {
|
2023-04-05 05:32:58 -05:00
|
|
|
"MIMode": "gdb",
|
2023-10-23 08:36:13 -05:00
|
|
|
"miDebuggerPath": "gdb",
|
2023-04-05 05:32:58 -05:00
|
|
|
"setupCommands": [
|
|
|
|
{
|
|
|
|
"description": "Enable pretty-printing for gdb",
|
|
|
|
"text": "-enable-pretty-printing",
|
|
|
|
"ignoreFailures": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"description": "Mark pretty-printers (in solenv/gdb) safe",
|
|
|
|
"text": "add-auto-load-safe-path @SRC_ROOT@/solenv/gdb",
|
|
|
|
"ignoreFailures": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"description": "Mark pretty-printers bootstrap (in instdir/program) safe",
|
|
|
|
"text": "add-auto-load-safe-path @INSTROOT@",
|
|
|
|
"ignoreFailures": true
|
|
|
|
},
|
|
|
|
]
|
2021-02-12 05:29:18 -06:00
|
|
|
},
|
|
|
|
"osx": {
|
2021-12-23 08:21:23 -06:00
|
|
|
"program": "@INSTROOT@/MacOS/soffice",
|
2021-02-12 05:29:18 -06:00
|
|
|
"MIMode": "lldb",
|
|
|
|
"setupCommands": [
|
|
|
|
{
|
2022-03-13 06:41:36 -05:00
|
|
|
"description": "load helpers for lldb",
|
2021-02-12 05:29:18 -06:00
|
|
|
"text": "command script import ${workspaceFolder:srcdir}/solenv/lldb/libreoffice/LO.py",
|
|
|
|
"ignoreFailures": false
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2023-04-05 05:32:58 -05:00
|
|
|
"windows": {
|
|
|
|
"type": "cppvsdbg"
|
|
|
|
},
|
2020-12-13 09:01:55 -06:00
|
|
|
"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",
|
2021-12-23 08:21:23 -06:00
|
|
|
"program": "@INSTROOT@/program/soffice.bin",
|
2020-12-13 09:01:55 -06:00
|
|
|
"args": [
|
2021-12-23 08:21:23 -06:00
|
|
|
"-env:UserInstallation=file:///@WORKDIR@/vs-code-temporary-user-profile"
|
2020-12-13 09:01:55 -06:00
|
|
|
],
|
|
|
|
"stopAtEntry": false,
|
2021-12-23 08:21:23 -06:00
|
|
|
"cwd": "@BUILDDIR@",
|
2020-12-13 09:01:55 -06:00
|
|
|
"environment": [
|
|
|
|
{
|
|
|
|
"name": "SAL_LOG_DISABLED",
|
|
|
|
"value": "+INFO.ucb+WARN"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"externalConsole": false,
|
2021-02-12 05:29:18 -06:00
|
|
|
"linux": {
|
2023-04-05 05:32:58 -05:00
|
|
|
"MIMode": "gdb",
|
2023-10-23 08:36:13 -05:00
|
|
|
"miDebuggerPath": "gdb",
|
2023-04-05 05:32:58 -05:00
|
|
|
"setupCommands": [
|
|
|
|
{
|
|
|
|
"description": "Enable pretty-printing for gdb",
|
|
|
|
"text": "-enable-pretty-printing",
|
|
|
|
"ignoreFailures": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"description": "Mark pretty-printers (in solenv/gdb) safe",
|
|
|
|
"text": "add-auto-load-safe-path @SRC_ROOT@/solenv/gdb",
|
|
|
|
"ignoreFailures": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"description": "Mark pretty-printers bootstrap (in instdir/program) safe",
|
|
|
|
"text": "add-auto-load-safe-path @INSTROOT@",
|
|
|
|
"ignoreFailures": true
|
|
|
|
},
|
|
|
|
]
|
2021-02-12 05:29:18 -06:00
|
|
|
},
|
|
|
|
"osx": {
|
2021-12-23 08:21:23 -06:00
|
|
|
"program": "@INSTROOT@/MacOS/soffice",
|
2021-02-12 05:29:18 -06:00
|
|
|
"MIMode": "lldb",
|
|
|
|
"setupCommands": [
|
|
|
|
{
|
|
|
|
"description": "load helpers for for lldb",
|
|
|
|
"text": "command script import ${workspaceFolder:srcdir}/solenv/lldb/libreoffice/LO.py",
|
|
|
|
"ignoreFailures": false
|
|
|
|
}
|
|
|
|
]
|
2023-04-05 05:32:58 -05:00
|
|
|
},
|
|
|
|
"windows": {
|
|
|
|
"type": "cppvsdbg"
|
2021-02-12 05:29:18 -06:00
|
|
|
}
|
2020-12-13 09:01:55 -06:00
|
|
|
}
|
|
|
|
],
|
|
|
|
"compounds": []
|
|
|
|
}
|
2021-12-21 11:58:04 -06:00
|
|
|
}
|