Added slidecontent scrollbar with calculated height and deploy task for live server

This commit is contained in:
Matthias Lotz 2025-12-06 16:20:51 +01:00
parent c34d837847
commit d5bcb6d9ee
7 changed files with 185 additions and 0 deletions

71
.vscode/DEBUG_ANLEITUNG.md vendored Normal file
View File

@ -0,0 +1,71 @@
# DokuWiki S5 Plugin - Debugging Anleitung
## Entwicklungsumgebung
Die VSCode-Entwicklungsumgebung ist nun eingerichtet mit:
### Dateien erstellt:
- `.vscode/tasks.json` - PHP Server Tasks
- `.vscode/settings.json` - PHP & Xdebug Einstellungen
- `.vscode/launch.json` - Debug-Konfigurationen (aktualisiert)
- `.vscode/extensions.json` - Empfohlene Extensions
## Voraussetzungen
1. **PHP Xdebug Extension installieren:**
```bash
sudo apt-get install php-xdebug
```
2. **Xdebug konfigurieren** (`/etc/php/*/mods-available/xdebug.ini`):
```ini
zend_extension=xdebug.so
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_port=9003
xdebug.client_host=localhost
xdebug.idekey=VSCODE
```
3. **VSCode Extensions installieren:**
- PHP Debug (xdebug.php-debug)
- PHP Intelephense (bmewburn.vscode-intelephense-client)
## Verwendung
### Option 1: Manueller PHP Server Start
1. Terminal öffnen und starten:
```bash
php -S localhost:8080 -t /home/lotzm/dokuwik-dev/dokuwiki
```
2. Debug-Konfiguration "Listen for Xdebug" wählen
3. F5 drücken zum Starten des Debuggers
### Option 2: Automatischer Start mit VSCode Task
1. **Strg+Shift+P** → "Tasks: Run Task" → "Start PHP Server"
2. Debug-Konfiguration "Listen for Xdebug" wählen
3. F5 drücken
### Option 3: Automatischer Start beim Debugging
1. Debug-Konfiguration "Launch DokuWiki with Xdebug" wählen
2. F5 drücken - Server startet automatisch im Hintergrund
### Server stoppen
- **Strg+Shift+P** → "Tasks: Run Task" → "Stop PHP Server"
## Debugging
1. Breakpoints in den PHP-Dateien setzen (renderer.php, syntax.php)
2. Im Browser öffnen: `http://localhost:8080`
3. DokuWiki mit S5 Plugin nutzen
4. Debugger stoppt an den Breakpoints
## URL zum Testen
- DokuWiki: http://localhost:8080
- Installation (falls nötig): http://localhost:8080/install.php
## Tipps
- Der PHP Server läuft im Hintergrund als VSCode Task
- Logs sind im Terminal "Task - Start PHP Server" sichtbar
- Bei Problemen: Server stoppen und neu starten
- pathMappings in launch.json passt Pfade zwischen WSL2 und Windows an

7
.vscode/extensions.json vendored Normal file
View File

@ -0,0 +1,7 @@
{
"recommendations": [
"xdebug.php-debug",
"bmewburn.vscode-intelephense-client",
"zobo.php-intellisense"
]
}

26
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,26 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug (Docker)",
"type": "php",
"request": "launch",
"port": 9003,
"pathMappings": {
"/var/www/html": "/mnt/c/Users/lotzm/SynologyDrive/HobbyHimmel/web/wiki.neu.hobbyhimmel.de",
"/var/www/html/lib/plugins/s5": "${workspaceFolder}"
}
},
{
"name": "Launch DokuWiki with Docker",
"type": "php",
"request": "launch",
"port": 9003,
"pathMappings": {
"/var/www/html": "/mnt/c/Users/lotzm/SynologyDrive/HobbyHimmel/web/wiki.neu.hobbyhimmel.de",
"/var/www/html/lib/plugins/s5": "${workspaceFolder}"
},
"preLaunchTask": "Start Docker DokuWiki"
}
]
}

17
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,17 @@
{
// PHP Einstellungen
"php.validate.enable": true,
"php.validate.run": "onType",
// Xdebug Einstellungen
"php.debug.ideKey": "VSCODE",
// Datei-Ausschlüsse
"files.exclude": {
"**/.git": true,
"**/.DS_Store": true
},
// Automatische Aufgaben
"task.allowAutomaticTasks": "on"
}

56
.vscode/tasks.json vendored Normal file
View File

@ -0,0 +1,56 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "Start Docker DokuWiki",
"type": "shell",
"command": "cd /home/lotzm/dokuwik-dev/apache && docker compose up -d",
"problemMatcher": [],
"presentation": {
"reveal": "always",
"panel": "dedicated"
}
},
{
"label": "Stop Docker DokuWiki",
"type": "shell",
"command": "cd /home/lotzm/dokuwik-dev/apache && docker compose down",
"problemMatcher": [],
"presentation": {
"reveal": "always",
"panel": "dedicated"
}
},
{
"label": "Restart Docker DokuWiki",
"type": "shell",
"command": "cd /home/lotzm/dokuwik-dev/apache && docker compose restart",
"problemMatcher": [],
"presentation": {
"reveal": "always",
"panel": "dedicated"
}
},
{
"label": "Show Docker Logs",
"type": "shell",
"command": "cd /home/lotzm/dokuwik-dev/apache && docker compose logs -f",
"isBackground": true,
"problemMatcher": [],
"presentation": {
"reveal": "always",
"panel": "dedicated"
}
},
{
"label": "Deploy to Live Server",
"type": "shell",
"command": "scp -r /home/lotzm/dokuwik-dev/dokuwiki-plugin-s5/* ssh-w01244fe@w01244fe.kasserver.com:/www/htdocs/w01244fe/wiki.neu.hobbyhimmel.de/lib/plugins/s5/",
"problemMatcher": [],
"presentation": {
"reveal": "always",
"panel": "dedicated"
}
}
]
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

View File

@ -94,3 +94,11 @@ ul li {list-style-type: square}
li {color: #436976; font-weight: bold; }
li div.li {color: #000; font-weight:normal; }
/* Slidecontent scrollbar wenn Inhalt zu lang ist */
.slidecontent {
overflow-y: auto; /* Vertikales Scrollen wenn nötig */
max-height: calc(100vh - 8em); /* Viewport minus Platz für h1 (oben) und footer (unten) */
padding-right: 1em; /* Platz für Scrollbar */
padding-top: 0.5em;
padding-bottom: 2em; /* Extra Abstand zum Footer */
}