From 46a953454222a06161fdeea2b96a15a51c8c5a9b Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 23 Jan 2026 08:43:25 +0000 Subject: [PATCH 1/2] docs: Add introductory paragraph to server tuning guide Resolved TODO comment by adding a clear introduction that explains the purpose of server tuning, its benefits, and sets expectations for the content. This helps readers understand why server tuning is important for Nextcloud deployments. https://claude.ai/code/session_015DrKcsC9ZyGKjDbvfGHEmu --- admin_manual/installation/server_tuning.rst | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/admin_manual/installation/server_tuning.rst b/admin_manual/installation/server_tuning.rst index 82b1612b7a4..cf2bef8963a 100644 --- a/admin_manual/installation/server_tuning.rst +++ b/admin_manual/installation/server_tuning.rst @@ -2,7 +2,12 @@ Server tuning ============= -.. TODO: Add introductory paragraph +Server tuning helps optimize Nextcloud's performance, responsiveness, and resource utilization. +This guide covers various configuration options and best practices to improve your Nextcloud +server's efficiency. While a default Nextcloud installation works out of the box, implementing +these tuning recommendations can significantly enhance the user experience, especially for +larger deployments or systems with limited resources. + .. TODO: Sort according to (generalized) difficulty .. TODO: Consider adding a category (or even table) with Impact vs Difficulty From 4e63c8b1654208c6bf10483059b43ffad9623b1f Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 23 Jan 2026 15:01:57 +0000 Subject: [PATCH 2/2] feat: Enhance VS Code development experience for documentation Added comprehensive VS Code configuration to improve the development workflow for contributors working on Nextcloud documentation: - Added .vscode/settings.json with RST-specific editor settings - Enforces 80-character line wrapping per README guidelines - Configures rulers and word wrap for better formatting - Adds search/watcher exclusions for better performance - Added .vscode/extensions.json with recommended extensions - RST syntax support and preview - Spell checker for documentation quality - Git integration and YAML support - Added .vscode/tasks.json with build automation - Quick commands for building HTML, PDF, and all docs - Auto-build watch mode task for live preview - Clean build task - Enhanced .devcontainer/devcontainer.json - Upgraded to modern RST extensions - Added spell checking and enhanced Git support - Included editor settings for consistency - Updated .gitignore to track .vscode/ directory - Allows sharing of workspace configuration - Helps onboard new contributors faster These changes make it easier for contributors to work on the documentation with consistent formatting and helpful tooling. https://claude.ai/code/session_015DrKcsC9ZyGKjDbvfGHEmu --- .devcontainer/devcontainer.json | 18 ++++++++-- .gitignore | 2 +- .vscode/extensions.json | 22 ++++++++++++ .vscode/settings.json | 40 +++++++++++++++++++++ .vscode/tasks.json | 63 +++++++++++++++++++++++++++++++++ 5 files changed, 141 insertions(+), 4 deletions(-) create mode 100644 .vscode/extensions.json create mode 100644 .vscode/settings.json create mode 100644 .vscode/tasks.json diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index ad5d0211a96..d708e869700 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -7,9 +7,21 @@ "customizations": { "vscode": { "extensions": [ - "tht13.rst-vscode", - "tomoki1207.pdf" - ] + "lextudio.restructuredtext", + "trond-snekvik.simple-rst", + "streetsidesoftware.code-spell-checker", + "eamodio.gitlens", + "tomoki1207.pdf", + "yzhang.markdown-all-in-one", + "redhat.vscode-yaml" + ], + "settings": { + "editor.rulers": [80], + "editor.wordWrap": "wordWrapColumn", + "editor.wordWrapColumn": 80, + "files.trimTrailingWhitespace": true, + "files.insertFinalNewline": true + } } }, "postCreateCommand": "python3 -m pip install -r requirements.txt && python3 -m pip install sphinx-autobuild && cd build && composer install --ignore-platform-reqs" diff --git a/.gitignore b/.gitignore index 38330aa3cd0..a60771d242f 100644 --- a/.gitignore +++ b/.gitignore @@ -41,7 +41,7 @@ developer_manual/_static/stoplight-elements.css venv # VScode -.vscode/ +# Note: .vscode/ is intentionally tracked to share recommended settings and extensions *.code-workspace # Sublime Text diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 00000000000..ebe8683ad36 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,22 @@ +{ + "recommendations": [ + // ReStructuredText support + "lextudio.restructuredtext", + "trond-snekvik.simple-rst", + + // Spell checking for documentation + "streetsidesoftware.code-spell-checker", + + // Git integration + "eamodio.gitlens", + + // PDF viewer + "tomoki1207.pdf", + + // Markdown support (for README files) + "yzhang.markdown-all-in-one", + + // YAML support (for devcontainer and other config files) + "redhat.vscode-yaml" + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000000..b7fd92aaff6 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,40 @@ +{ + // Editor settings for reStructuredText documentation + "editor.rulers": [80], + "editor.wordWrap": "wordWrapColumn", + "editor.wordWrapColumn": 80, + "editor.wrappingIndent": "same", + + // File associations + "files.associations": { + "*.rst": "restructuredtext" + }, + + // Trim trailing whitespace + "files.trimTrailingWhitespace": true, + "files.insertFinalNewline": true, + + // ReStructuredText specific settings + "[restructuredtext]": { + "editor.wordWrap": "wordWrapColumn", + "editor.wordWrapColumn": 80, + "editor.rulers": [80], + "editor.formatOnSave": false + }, + + // Search exclusions for better performance + "search.exclude": { + "**/_build": true, + "**/venv": true, + "**/.venv": true, + "**/node_modules": true, + "**/*.pdf": true + }, + + // File watcher exclusions + "files.watcherExclude": { + "**/_build/**": true, + "**/venv/**": true, + "**/.venv/**": true + } +} diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 00000000000..ca260b01680 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,63 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Build All Documentation", + "type": "shell", + "command": "make all", + "group": { + "kind": "build", + "isDefault": true + }, + "presentation": { + "reveal": "always", + "panel": "new" + }, + "problemMatcher": [] + }, + { + "label": "Build HTML Documentation", + "type": "shell", + "command": "make html", + "group": "build", + "presentation": { + "reveal": "always", + "panel": "new" + }, + "problemMatcher": [] + }, + { + "label": "Build PDF Documentation", + "type": "shell", + "command": "make pdf", + "group": "build", + "presentation": { + "reveal": "always", + "panel": "new" + }, + "problemMatcher": [] + }, + { + "label": "Auto-build HTML (watch mode)", + "type": "shell", + "command": "make SPHINXBUILD=sphinx-autobuild html", + "isBackground": true, + "presentation": { + "reveal": "always", + "panel": "new" + }, + "problemMatcher": [] + }, + { + "label": "Clean Build", + "type": "shell", + "command": "make clean", + "group": "build", + "presentation": { + "reveal": "always", + "panel": "new" + }, + "problemMatcher": [] + } + ] +}