Alguns recursos personalitzats
Contingut
- 1 Visualitzador Markdown Web
- 2 Des de la terminal
- 3 o
- 4 o
- 5 Python 3
- 6 Node.js (si tens http-server instal·lat)
- 7 PHP
- 7.1 Opció 3: Publicar online
- 7.2 📋 Com funciona
- 7.3 🛠️ Tecnologies
- 7.4 🎨 Format suportat
- 7.5 💡 Avantatges vs versions desktop
- 7.6 🌍 Compatibilitat de navegadors
- 7.7 🔒 Seguretat
- 7.8 📱 Ús en mòbil
- 7.9 🎯 Casos d'ús
- 7.10 🔧 Personalització
- 7.11 📦 Versió offline
- 7.12 🐛 Solució de problemes
- 7.13 📊 Comparativa de versions
- 7.14 🎓 Aprenentatge
- 7.15 📄 Llicència
Visualitzador Markdown Web
Aplicació web pura (HTML + CSS + JavaScript) per visualitzar fitxers Markdown amb capacitat de copiar el contingut formatat a processadors de text.
🌐 Característiques
- ✅ 100% client-side - No necessita servidor
- ✅ Zero dependències locals - Usa CDN per Marked.js
- ✅ Drag & Drop - Arrossega fitxers directament
- ✅ Copiar formatat - Compatible amb LibreOffice i Word
- ✅ Responsive - Funciona en mòbil i escriptori
- ✅ Estils inline - Els estils es mantenen en copiar
🚀 Ús
Opció 1: Obrir directament
Simplement obre index.html amb qualsevol navegador modern:
``bash
Des de la terminal
firefox index.html
o
google-chrome index.html
o
open index.html # macOS
`
Opció 2: Servidor local
Si vols servir-ho localment:
`bash
Python 3
python -m http.server 8000
Node.js (si tens http-server instal·lat)
npx http-server
PHP
php -S localhost:8000
`
Després obre: http://localhost:8000
Opció 3: Publicar online
Puja index.html a qualsevol hosting estàtic:
- GitHub Pages
- Netlify
- Vercel
- GitLab Pages
📋 Com funciona
1. Obrir fitxer
- Mètode 1: Clica "📂 Obrir Markdown"
- Mètode 2: Arrossega un fitxer .md a la finestra
2. Visualitzar
El contingut es converteix automàticament de Markdown a HTML amb estils professionals.
3. Copiar
- Botó "📋 Copiar Formatat": Copia tot amb format
- Selecció manual: Selecciona amb el ratolí i Ctrl+C
- A LibreOffice: Enganxa amb Ctrl+V
4. Recarregar
Si modifiques el fitxer extern, clica "🔄 Recarregar" per veure els canvis.
🛠️ Tecnologies
Marked.js
Llibreria JavaScript per convertir Markdown a HTML:
- CDN: https://cdn.jsdelivr.net/npm/marked/marked.min.js
- Documentació: https://marked.js.org/
Clipboard API
API moderna del navegador per copiar al portapapers:
`javascript
await navigator.clipboard.write([clipboardItem]);
`
Amb fallback per navegadors antics:
`javascript
document.execCommand('copy');
`
🎨 Format suportat
El visualitzador renderitza:
- Capçaleres (h1-h6) amb vores de color
- Negreta i cursiva
Codi inlineamb fons gris i text vermell- Blocs de codi amb vora blava
- Taules amb capçalera blava i files zebrades
- Llistes ordenades i desordenades
- Cites (blockquotes) amb vora blava
- Enllaços en blau
- Imatges (responsive)
💡 Avantatges vs versions desktop
Pros:
- ✅ No requereix instal·lació
- ✅ Funciona en qualsevol sistema operatiu
- ✅ Es pot compartir via URL
- ✅ Més lleuger (un sol fitxer HTML)
- ✅ Fàcil d'actualitzar
Cons:
- ❌ Requereix navegador modern
- ❌ Limitat per la sandbox del navegador
- ❌ Clipboard API pot no funcionar en alguns navegadors
Funcionalitat completa:
- Chrome/Edge 76+
- Firefox 87+
- Safari 13.1+
Funcionalitat limitada (sense Clipboard API moderna):
- IE11 (amb fallback)
- Navegadors antics (selecció manual funciona)
🔒 Seguretat
- Tot el processament és client-side
- No s'envien dades a cap servidor
- Marked.js sanititza HTML per defecte
- No executa scripts dels fitxers Markdown
📱 Ús en mòbil
L'aplicació funciona en mòbils però amb limitacions:
- ✅ Visualització funciona perfectament
- ⚠️ Copiar formatat pot ser limitat
- ⚠️ Alguns navegadors mòbils no suporten Clipboard API
🎯 Casos d'ús
Per a estudiants:
- Visualitzar apunts en Markdown
- Copiar contingut per treballs
- Compartir l'eina via USB
Per a professors:
- Crear materials educatius
- Distribuir via intranet escolar
- Funciona sense connexió
Per a desenvolupadors:
- Previsualitzar README.md
- Convertir documentació a format editable
- Integrar en altres projectes web
🔧 Personalització
Canviar colors
Edita les variables CSS a la secció <style>:
`css
/ Colors principals /
- 3498db → El teu color primari
- 2c3e50 → Color del text
- f4f4f4 → Fons del codi
`
Afegir extensions Marked
`javascript
marked.setOptions({
breaks: true,
gfm: true,
// Afegeix més opcions aquí
});
`
Canviar estils inline
Modifica l'objecte styles dins la funció applyInlineStyles().
📦 Versió offline
Per fer-la completament offline:
1. Descarrega Marked.js:
`bash
wget https://cdn.jsdelivr.net/npm/marked/marked.min.js
`
2. Canvia la línia al HTML:
`html
<script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
<script src="marked.min.js"></script>
``
Ara funciona sense connexió! ✈️
🐛 Solució de problemes
El botó copiar no funciona
- Obre amb HTTPS o localhost (requeriment de Clipboard API)
- Usa la selecció manual + Ctrl+C com alternativa
Els estils no es mantenen a LibreOffice
- Assegura't d'usar Ctrl+V (no Ctrl+Shift+V)
- Prova "Enganxa especial" → HTML
No es pot obrir el fitxer
- Verifica que l'extensió sigui .md o .markdown
- Comprova que el fitxer tingui contingut
📊 Comparativa de versions
| Característica | Web | PyQt6 | PySide6+QML | |----------------|-----|-------|-------------| | Instal·lació | ❌ No | ✅ Sí | ✅ Sí | | Multiplataforma | ✅ | ✅ | ✅ | | Pes | 1 fitxer | ~50MB | ~50MB | | Offline | ✅* | ✅ | ✅ | | Distribució | URL | Executable | Executable |
- Amb Marked.js descarregat
🎓 Aprenentatge
Aquest projecte és ideal per aprendre:
- FileReader API
- Clipboard API moderna
- Drag & Drop API
- DOM manipulation
- Conversió Markdown → HTML
- Estils inline vs CSS extern
📄 Llicència
Codi lliure per a ús educatiu i personal.