Pull action
Some checks failed
Deploy to School / deploy (push) Has been cancelled

This commit is contained in:
Chewico 2025-09-02 22:23:01 +02:00
parent 2cf12e3c9d
commit 30cd390e3c
190 changed files with 27012 additions and 57940 deletions

View File

@ -0,0 +1,14 @@
name: Deploy to School
on:
push:
branches: [main]
jobs:
deploy:
runs-on: self-hosted
steps:
- name: Update School repo
run: |
cd /gits/School
git pull origin main

10
.obsidian/bookmarks.json vendored Normal file
View File

@ -0,0 +1,10 @@
{
"items": [
{
"type": "folder",
"ctime": 1756832387880,
"path": "Introducción Quimica",
"title": "Quimica"
}
]
}

View File

@ -1,3 +1,4 @@
[
"obsidian-excalidraw-plugin"
"obsidian-excalidraw-plugin",
"obsidian-plugin-toc"
]

14
.obsidian/graph.json vendored
View File

@ -1,22 +1,22 @@
{
"collapse-filter": true,
"collapse-filter": false,
"search": "",
"showTags": false,
"showAttachments": false,
"hideUnresolved": false,
"showOrphans": true,
"collapse-color-groups": true,
"collapse-color-groups": false,
"colorGroups": [],
"collapse-display": true,
"collapse-display": false,
"showArrow": false,
"textFadeMultiplier": 0,
"nodeSizeMultiplier": 1,
"lineSizeMultiplier": 1,
"collapse-forces": true,
"centerStrength": 0.518713248970312,
"repelStrength": 10,
"collapse-forces": false,
"centerStrength": 0.363692497684471,
"repelStrength": 20,
"linkStrength": 1,
"linkDistance": 250,
"scale": 1,
"scale": 0.6050268332454847,
"close": false
}

View File

@ -10,24 +10,24 @@
"loadChineseFonts": false,
"loadJapaneseFonts": false,
"loadKoreanFonts": false,
"compress": true,
"compress": false,
"decompressForMDView": false,
"onceOffCompressFlagReset": true,
"onceOffGPTVersionReset": true,
"autosave": true,
"autosaveIntervalDesktop": 60000,
"autosaveIntervalMobile": 30000,
"drawingFilenamePrefix": "Drawing ",
"drawingFilenamePrefix": "img_",
"drawingEmbedPrefixWithFilename": true,
"drawingFilnameEmbedPostfix": " ",
"drawingFilenameDateTime": "YYYY-MM-DD HH.mm.ss",
"drawingFilenameDateTime": "DD-MM-YY_HH",
"useExcalidrawExtension": true,
"cropSuffix": "",
"cropPrefix": "cropped_",
"annotateSuffix": "",
"annotatePrefix": "annotated_",
"annotatePreserveSize": false,
"previewImageType": "SVGIMG",
"previewImageType": "SVG",
"renderingConcurrency": 3,
"allowImageCache": true,
"allowImageCacheInScene": true,
@ -87,7 +87,7 @@
"autoexportPNG": false,
"autoExportLightAndDark": false,
"autoexportExcalidraw": false,
"embedType": "excalidraw",
"embedType": "SVG",
"embedMarkdownCommentLinks": true,
"embedWikiLink": true,
"syncExcalidraw": false,

View File

@ -0,0 +1,6 @@
{
"minimumDepth": 2,
"maximumDepth": 6,
"listStyle": "number",
"useMarkdown": false
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,10 @@
{
"id": "obsidian-plugin-toc",
"name": "Table of Contents",
"author": "Andrew Lisowski",
"authorUrl": "https://twitter.com/hipstersmoothie",
"description": "Create a table of contents for a note.",
"isDesktopOnly": false,
"minAppVersion": "0.10.12",
"version": "0.2.0"
}

31
.obsidian/snippets/style.css vendored Normal file
View File

@ -0,0 +1,31 @@
/* ==== TOC Styling ==== */
.markdown-preview-view .toc ul {
list-style: none;
padding-left: 0.5em;
margin: 0;
}
.markdown-preview-view .toc li {
margin: 4px 0;
padding: 3px 6px;
border-left: 2px solid var(--background-modifier-border);
font-size: 0.9em;
color: var(--text-muted);
transition: all 0.2s ease;
}
.markdown-preview-view .toc li:hover {
background: var(--background-secondary);
border-left-color: var(--text-accent);
color: var(--text-normal);
}
.markdown-preview-view .toc a {
color: var(--text-normal) !important;
text-decoration: none;
}
.markdown-preview-view .toc a:hover {
text-decoration: underline;
}

View File

@ -10,75 +10,31 @@
{
"id": "1e64a086cfa120b9",
"type": "leaf",
"pinned": true,
"state": {
"type": "markdown",
"state": {
"file": "Introducción Quimica/Sustancias Inorgánicas.md",
"mode": "source",
"source": false
},
"pinned": true,
"icon": "lucide-file",
"title": "Sustancias Inorgánicas"
}
},
{
"id": "f5cef156152cfc22",
"type": "leaf",
"pinned": true,
"state": {
"type": "image",
"state": {
"file": "Introducción Quimica/Contenido/TablaPeriódica.png"
},
"pinned": true,
"icon": "lucide-image",
"title": "TablaPeriódica"
}
},
{
"id": "c2b7919162d7bb30",
"type": "leaf",
"pinned": true,
"state": {
"type": "image",
"state": {
"file": "Introducción Quimica/Contenido/TablaPeriódicaNO.webp"
},
"pinned": true,
"icon": "lucide-image",
"title": "TablaPeriódicaNO"
}
},
{
"id": "e169ed270ae9fda1",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "Introducción Quimica/Estequinetría de las reacciónes químicas.md",
"file": "Introducción Quimica/Sustancias Inorgánicas/4.Otras combinaciónes.md",
"mode": "source",
"source": false
},
"icon": "lucide-file",
"title": "Estequinetría de las reacciónes químicas"
"title": "4.Otras combinaciónes"
}
},
{
"id": "46ddf1a195c955e8",
"id": "f7841f259bd4bb62",
"type": "leaf",
"state": {
"type": "excalidraw",
"state": {
"file": "Ilustraciónes/Drawing 2025-09-02 09.39.04.excalidraw.md"
"file": "Ilustraciónes/img_02-09-25_20.excalidraw.md"
},
"icon": "excalidraw-icon",
"title": "Drawing 2025-09-02 09.39.04.excalidraw"
"title": "img_02-09-25_20.excalidraw"
}
}
],
"currentTab": 4
"currentTab": 1
}
],
"direction": "vertical"
@ -135,7 +91,7 @@
}
],
"direction": "horizontal",
"width": 200
"width": 542.5086555480957
},
"right": {
"id": "0411853e83b6cf82",
@ -227,53 +183,54 @@
"obsidian-excalidraw-plugin:New drawing": false
}
},
"active": "46ddf1a195c955e8",
"active": "f7841f259bd4bb62",
"lastOpenFiles": [
"Ilustraciónes/Drawing 2025-09-02 09.39.04.excalidraw.svg",
"Pasted Image 20250902211302_215.png",
"Ilustraciónes/img_02-09-25_20.excalidraw.svg",
"Introducción Quimica/Sustancias Inorgánicas/4.Otras combinaciónes.md",
"Ilustraciónes/img_02-09-25_20.excalidraw.md",
"Ilustraciónes",
"Introducción Quimica/Sustancias Inorgánicas/3.Combinaciones del Oxigeno.md",
"Introducción Quimica/Sustancias Inorgánicas/2.Combinaciones del Hidrógeno.md",
"Introducción Quimica/Sustancias Inorgánicas/1.Sustancias Simples.md",
"Introducción Quimica/Sustancias Inorgánicas/0.Sustancias Inorgánicas Introducción.md",
"Introducción Quimica/Introducción Química.md",
"Apuntes.md",
"Introducción Quimica/Sustancias orgánicas.md",
"Introducción Quimica/Sustancias Inorgánicas.md",
"Introducción Quimica/Contenido/TablaPeriódica.png",
"Introducción Quimica/Contenido/TablaPeriódicaNO.webp",
"Introducción Quimica/Estequinetría de las reacciónes químicas.md",
"Introducción Quimica/Sustancias Inorgánicas.md",
"Introducción Quimica/Sustancias Inorgánicas",
"Introducción Quimica/Ilustraciónes",
"Ilustraciónes/Estequinetría de las reacciónes químicas 02-09-25_19.excalidraw.svg",
"Ilustraciónes/Estequinetría de las reacciónes químicas 02-09-25_19.excalidraw.md",
"Ilustraciónes/Sustancias Inorgánicas 02-09-25_19.excalidraw.svg",
"Ilustraciónes/Sustancias Inorgánicas 02-09-25_19_1.excalidraw.md",
"Ilustraciónes/Sustancias Inorgánicas 02-09-25_19_1.excalidraw.svg",
"Ilustraciónes/Sustancias Inorgánicas 02-09-25_19_0.excalidraw.md",
"Ilustraciónes/Sustancias Inorgánicas 02-09-25_19_0.excalidraw.svg",
"Ilustraciónes/Sustancias Inorgánicas 02-09-25_19.excalidraw.md",
"Introducción Quimica/Contenido/TablaPeriódica.png",
"Ilustraciónes/Drawing 2025-09-01 19.07.05.excalidraw",
"Ilustraciónes/Drawing 2025-09-01 19.07.05.excalidraw.md",
"Ilustraciónes/Drawing 2025-09-01 19.07.05.excalidraw.svg",
"Ilustraciónes/Drawing 2025-09-02 09.39.04.excalidraw.md",
"Introducción Quimica/Contenido/TablaPeriódica2.pdf",
"Ilustraciónes/Drawing 2025-09-02 09.35.04.excalidraw.md",
"Ilustraciónes/Drawing 2025-09-02 09.35.04.excalidraw.svg",
"Ilustraciónes/Drawing 2025-09-02 09.39.04.excalidraw.svg",
"Introducción Quimica/Contenido/TablaPeriódicaNO.webp",
"2025-09-02.md",
"Untitled.base",
"Untitled.canvas",
"Untitled.md",
"Introducción Quimica/Contenido/TablaPeriódica2.pdf",
"Perlite/SECURITY.md",
"Perlite/README.md",
"Perlite/Changelog.md",
"Introducción Quimica/Drawing 2025-09-02 10.13.03.excalidraw.md",
"Introducción Quimica/Drawing 2025-09-02 10.01.02.excalidraw.md",
"Ilustraciónes/Drawing 2025-09-02 09.35.04.excalidraw.md",
"Ilustraciónes/Drawing 2025-09-02 09.35.04.excalidraw.svg",
"Introducción Quimica/Contenido",
"Perlite/web/conf.d/default.conf",
"Perlite/web/conf.d",
"Ilustraciónes/Drawing 2025-09-01 19.07.05.excalidraw.svg",
"Introducción Quimica/Enlaces.md",
"Introducción Quimica/Composición de materiales.md",
"Introducción Quimica/Elementos y átomos.md",
"Introducción Quimica/Iones.md",
"docker-compose.yml",
"Perlite/web/config/default.conf",
"Perlite/perlite/School",
"Perlite/web/config/perlite.conf",
"Perlite/web/config",
"Perlite/web",
"Perlite/screenshots/screenshot.png",
"Perlite/screenshots/plugin_options.png",
"Perlite/screenshots/plugin.png",
"Perlite/screenshots/link.png",
"Perlite/screenshots/graph.png",
"Perlite/perlite/vendor/erusev/parsedown/README.md",
"Perlite/perlite/Demo/README.md",
"Perlite/perlite/Demo/Demo Documents/Markdown Samples.md",
"Perlite/perlite/Demo/Demo Documents/Links and Embedded.md",
"Perlite/perlite/Demo/Demo Documents/Latex and Mermaid.md",
"Perlite/perlite/Demo/Demo Documents/Images.md",
"Perlite/perlite/Demo/Demo Documents/Callouts and Frontmatter.md",
"Dr.md",
"Ilustraciónes/Drawing 2025-09-01 19.07.05.excalidraw.md",
"Docs/Introducción Quimica/Iones.md"
"docker-compose.yml"
]
}

5
Apuntes.md Normal file
View File

@ -0,0 +1,5 @@
Arnau Alier Torres
# Introducción a Química
#### [[Introducción Quimica/Introducción Química|Introducción Química]]

View File

@ -1,338 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
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
Kc0E+sAAnUCAAnUEAA==
```
%%

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 112 KiB

View File

@ -1,198 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
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
```
%%

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 22 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 2.4 MiB

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 523 KiB

View File

@ -14,7 +14,7 @@ Los **átomos** están formados por protones(+), electrones(-) y neutrones (0).
- Las **átomos** del mismo elemento tienen el mismo número de protones.
- Mismo número de **electrones** (igual que el numero de protones).
- Pueden tener diferentes números de neutrones (**isótopos**).
![[../Ilustraciónes/Drawing 2025-09-01 19.07.05.excalidraw.svg|200]]
---------------
# Iones
Los átomos de los elementos pueden ganar y perder electrones formando **iones**

View File

@ -0,0 +1,4 @@
# [[Sustancias Inorgánicas/0.Sustancias Inorgánicas Introducción|Sustancias Inorgánicas]]
#### [[Introducción Quimica/Estequinetría de las reacciónes químicas|Estequinetría de las reacciónes químicas]]
#### [[Introducción Quimica/Sustancias orgánicas|Sustancias orgánicas]]

View File

@ -1,163 +0,0 @@
# Números o estados de oxidación (n.o)
Número de electrones ganado o perdido por un átomo de ese elemento cuando forma un ion, o bien el número de electrones que pone en juego un átomo de un elemento para formar un compuesto
## Reglas
- **Elemento libre:**
- El n.o de cualquier elemento libre es 0.
- Ejemplo: O₂, N₂, Fe → NOX = 0
- **Ion monoatómico:**
- Un solo átomo con carga.
- Su n.o es igual a la **carga del ion**.
- Ejemplo: Na⁺ → NOX = +1, Cl⁻ → NOX = -1
- **Ion poliatómico:**
- Varios átomos unidos químicamente **con carga global**.
- La suma de los n.o de todos los átomos = **carga del ion**.
- Ejemplo: SO₄²⁻ → S = +6, O = -2
- **Compuesto neutro:**
- Varios átomos unidos químicamente **sin carga global**.
- La suma de los n.o de todos los átomos = 0.
- Ejemplo: H₂O → H = +1, O = -2
> [!NOTE] **Aclaración:**
> Si la suma de los n.o de los átomos unidos es 0 → compuesto neutro.
> Si la suma de los n.o ≠ 0 → ion poliatómico.
>[!QUESTION]
> Cual es el n.o del N en : $N_2O_4$, $NH_3$ , $KNO_3$ , $NO_3$
> [!IMPORTANT] Importante:
> Prefijos y sufijos para cada elemento según su numero de diferentes N.O's expresado de mayor a mayor a menor
> - N.O 1:
> - -ico
> - N.O 2:
> - -ico (**Grande**)
> - -oso (**Pequeño**)
> - N.O 3:
> - -ico (**Mayor**)
> - -oso
> - hipo- ... -ico (**Pequeño**)
> - N.O 4:
> - per- ... -ico (**Mayor**)
> - -ico
> - -oso
> - hipo- ... -oso (**Pequeño**)
---------------------------
# Sustancias simples
Constituidas por átomos de un solo elemento.
Si no indica carga su numero de oxidación o n.o es 0.
| H2 | Hidrógeno | Dihidrógeno |
| --- | ------------------ | ---------------- |
| F2 | Flúor | Diflúor |
| O2 | Oxígeno | Dioxígeno |
| O3 | Ozono | Trioxígeno |
| S8 | Azufre rómbico | Ciclo-octaazufre |
| S6 | Azufre monoclínico | Hezaazufre |
| P4 | Fósforo blanco | Tetrafósforo |
----------------------------------------
# Combinaciones binarias del Hidrógeno
Elementos que combinan el Hidógeno
## Hidrácidos
Compuesto formado por hidrogeno i un elemento no metalico
Al disolverse en agua dan disoluciones ácidas.
#### Formulación
- **HX** (Donde X => halógeno)
- **H$_2$E** (Donde E => elemento del grupo VIA excepto O)
| Fórmula | Nombre sistematico | En dión acuosa | Fórmula |
| ------- | ---------------------- | ------------------ | -------- |
| HF | Fluoruro de hidrógeno | Ácido fluorhídrico | HF(aq) |
| H2Se | Seleniuro de hidrógeno | Ácido selenhidrico | H2Se(aq) |
| H2Te | Telururo de hidrógeno | Ácido telurhidrico | H2Te(aq) |
>[!INFO] Nomenclatura
>- Elemento-uro + de + hidrogeno
>- **Disolución acuosa**: Ácido + Elemento-hídrico
## Hidrácidos con otros no metales
| Fórmula | Nombre trad. y CAS | Nombre estequiométrico | IUPAC nueva |
| ------- | ------------------ | --------------------------- | ----------- |
| NH3 | **Amoníaco** | Trihidruro de nitrógeno | Azano |
| N2H4 | Hidrazina | Tetrahidruro de dinitrógeno | Diazano |
| PH3 | **Fosfina** | Trihidruro de fósforo | Fosfano |
| P2H4 | Disfosfina | Tetrahidruro de difósforo | Difosfano |
| AsH3 | Arsina | Trihidruro de arsénico | Arsano |
| SbH3 | Estibina | Trihidruro de antimonio | Estibano |
| CH4 | **Metano** | Tetrahidruro de carbono | Metano |
| SiH4 | Silano | Tetrahidruro de silicio | Silano |
| BH3 | Borano | Trihidruro de boro | Borano |
| B2H6 | Diborano | Hexahidruro de diboro | Diborano |
## Hidrácidos con metales
>[!INFO] Nomenclatura
>- **Hidruro** + de + nombre del metal **(n.o del elemento en Números romanos)**
| Fórmula | N. estequiométrica IUPAC | N. Stock | N. Tradicional |
| ------- | ------------------------ | --------------------- | ----------------- |
| LiH | Hidruro de litio | Hidruro de litio | |
| NaH | Hidruro de sodio | Hidruro de sodio | Hidruro sódico |
| CsH | Hidruro de cesio | Hidruro de cesio | Hidruro césico |
| BeH2 | Hidruro de berilio | Hidruro de berilio | Hidruro berílico |
| CaH2 | Hidruro de calcio | Hidruro de calcio | Hidruro cálcico |
| SnH4 | Tetrahidruro de estaño | Hidruro de estaño(IV) | Hidruro estannico |
>[!WARNING] Recuerda
>El n.o de hidrogeno cuando se junta con un metal es de -1
**Ejemplo**:
- Hidruro de hierro(III) => Fe³⁺H⁻ => Fe³⁺H⁻3
- Hidruro ferroso => Fe²⁺(**Ferr -oso**)H => Fe²⁺H2
- Hidruro de potasio => K⁺H⁻
-------------------
## Combinaciones binarias y pseudobinarias del oxigeno
### Óxidos
Elementos combinados con oxigeno
#### Formulación: EyOx
>[!INFO] Nomenclatura
>Óxido + de + Elemento (**n.o del Elemento en numeros romanos**)
| Fórmula | N. estequiométrico | N. Stock | N. tradicional |
| ------- | ------------------------- | ----------------------- | ------------------------------------- |
| FeO | Monóxido de hierro | Óxido de hierro(II) | Óxido ferroso |
| Fe₂O₃ | Trióxido de dihierro | Óxido de hierro(III) | Óxido férrico |
| N₂O | Óxido de dinitrógeno | Óxido de nitrógeno(I) | Óxido nitroso (Anhídrido hiponitroso) |
| NO | Monóxido de nitrógeno | Óxido de nitrógeno(II) | Óxido nítrico |
| N₂O₃ | Trióxido de dinitrógeno | Óxido de nitrógeno(III) | Anhídrido nitroso |
| NO₂ | Dióxido de nitrógeno | Óxido de nitrógeno(IV) | Dióxido de nitrógeno |
| N₂O₄ | Tetraóxido de dinitrógeno | Óxido de nitrógeno(IV) | Tetraóxido de nitrógeno |
| N₂O₅ | Pentaóxido de dinitrógeno | Óxido de nitrógeno(V) | Anhídrido nítrico |
### Peróxidos O2²⁻, hiperóxidos (o2⁻) y ozónicos (O2⁻)
## Peróxidos (O₂²⁻)
- **Li₂O₂** → peróxido de litio
- **H₂O₂** → peróxido de hidrógeno (agua oxigenada)
- **BaO₂** → peróxido de bario
- **CuO₂** → peróxido de cobre(II)
## Hiperóxidos o superóxidos (O₂⁻)
- **KO₂** → hiperóxido o superóxido de potasio
- **RbO₂** → hiperóxido o superóxido de rubidio
- **NaO₂** → hiperóxido o superóxido de sodio
- **BaO₄** → hiperóxido o superóxido de bario
- **MgO₄** → hiperóxido o superóxido de magnesio
## Ozónidos (O₃⁻)
- **KO₃** → ozónido de potasio
- **RbO₃** → ozónido de rubidio
- **CsO₃** → ozónido de cesio
--------------
## Otras combinaciones binarias y pseudobinarias
#### Formulación: AyBx (A => metal de n.o x, B => metal de n.o de y)
>[!INFO] Nomenclatura
>NoMetal-uro + de + Metal (N.O si es variable en numeros romanos)
| Fórmula | N. estequiométrico | N. Stock | N. tradicional |
| --------- | -------------------- | ------------------------ | -------------------------------- |
| **CaF₂** | Difluoruro de calcio | Fluoruro de calcio | Fluoruro cálcico |
| **FeCl₃** | Tricloruro de hierro | Cloruro de hierro(III) | Cloruro férrico |
| **WC** | Carburo de wolframio | Carburo de wolframio(IV) | Carburo wolfrámico (carburundum) |
### No metal - No metal
...
### Pseudobinarias
...
### Oxoácidos
...

View File

@ -0,0 +1,47 @@
# Números o estados de oxidación (n.o)
Número de electrones ganado o perdido por un átomo de ese elemento cuando forma un ion, o bien el número de electrones que pone en juego un átomo de un elemento para formar un compuesto
## Reglas
- **Elemento libre:**
- El n.o de cualquier elemento libre es 0.
- Ejemplo: O₂, N₂, Fe → NOX = 0
- **Ion monoatómico:**
- Un solo átomo con carga.
- Su n.o es igual a la **carga del ion**.
- Ejemplo: Na⁺ → NOX = +1, Cl⁻ → NOX = -1
- **Ion poliatómico:**
- Varios átomos unidos químicamente **con carga global**.
- La suma de los n.o de todos los átomos = **carga del ion**.
- Ejemplo: SO₄²⁻ → S = +6, O = -2
- **Compuesto neutro:**
- Varios átomos unidos químicamente **sin carga global**.
- La suma de los n.o de todos los átomos = 0.
- Ejemplo: H₂O → H = +1, O = -2
> [!NOTE] **Aclaración:**
> Si la suma de los n.o de los átomos unidos es 0 → compuesto neutro.
> Si la suma de los n.o ≠ 0 → ion poliatómico.
> [!IMPORTANT] Importante:
> Prefijos y sufijos para cada elemento según su numero de diferentes N.O's
> - N.O 1:
> - -ico
> - N.O 2:
> - -oso (**Pequeño**)
> - -ico (**Grande**)
> - N.O 3:
> - per- ... -ico (**Pequeño**)
> - -oso
> - -ico (**Mayor**)
> - N.O 4:
> - per- ... -ico (**Pequeño**)
> - -ico
> - -oso
> - hipo- ... -oso (**Mayor**)
# Combinaciónes
## [[1.Sustancias Simples|Sustancias Simples]]
## [[2.Combinaciones del Hidrógeno|Combinaciones del Hidrógeno]]
## [[3.Combinaciones del Oxigeno|Combinaciones del Oxigeno]]
## [[4.Otras combinaciónes|Otras combinaciónes]]

View File

@ -0,0 +1,12 @@
# Sustancias simples
Constituidas por átomos de un solo elemento.
Si no indica carga su numero de oxidación o n.o es 0.
| H2 | Hidrógeno | Dihidrógeno |
| --- | ------------------ | ---------------- |
| F2 | Flúor | Diflúor |
| O2 | Oxígeno | Dioxígeno |
| O3 | Ozono | Trioxígeno |
| S8 | Azufre rómbico | Ciclo-octaazufre |
| S6 | Azufre monoclínico | Hezaazufre |
| P4 | Fósforo blanco | Tetrafósforo |

View File

@ -0,0 +1,51 @@
# Combinaciones binarias del Hidrógeno
Elementos que combinan el Hidógeno
## Hidrácidos
Compuesto formado por hidrogeno i un elemento no metalico
Al disolverse en agua dan disoluciones ácidas.
#### Formulación
- **HX** (Donde X => halógeno)
- **H$_2$E** (Donde E => elemento del grupo VIA excepto O)
| Fórmula | Nombre sistematico | En dión acuosa | Fórmula |
| ------- | ---------------------- | ------------------ | -------- |
| HF | Fluoruro de hidrógeno | Ácido fluorhídrico | HF(aq) |
| H2Se | Seleniuro de hidrógeno | Ácido selenhidrico | H2Se(aq) |
| H2Te | Telururo de hidrógeno | Ácido telurhidrico | H2Te(aq) |
>[!INFO] Nomenclatura
>- Elemento-uro + de + hidrogeno
>- **Disolución acuosa**: Ácido + Elemento-hídrico
## Hidrácidos con otros no metales
| Fórmula | Nombre trad. y CAS | Nombre estequiométrico | IUPAC nueva |
| ------- | ------------------ | --------------------------- | ----------- |
| NH3 | **Amoníaco** | Trihidruro de nitrógeno | Azano |
| N2H4 | Hidrazina | Tetrahidruro de dinitrógeno | Diazano |
| PH3 | **Fosfina** | Trihidruro de fósforo | Fosfano |
| P2H4 | Disfosfina | Tetrahidruro de difósforo | Difosfano |
| AsH3 | Arsina | Trihidruro de arsénico | Arsano |
| SbH3 | Estibina | Trihidruro de antimonio | Estibano |
| CH4 | **Metano** | Tetrahidruro de carbono | Metano |
| SiH4 | Silano | Tetrahidruro de silicio | Silano |
| BH3 | Borano | Trihidruro de boro | Borano |
| B2H6 | Diborano | Hexahidruro de diboro | Diborano |
## Hidrácidos con metales
>[!INFO] Nomenclatura
>- **Hidruro** + de + nombre del metal **(n.o del elemento en Números romanos)**
| Fórmula | N. estequiométrica IUPAC | N. Stock | N. Tradicional |
| ------- | ------------------------ | --------------------- | ----------------- |
| LiH | Hidruro de litio | Hidruro de litio | |
| NaH | Hidruro de sodio | Hidruro de sodio | Hidruro sódico |
| CsH | Hidruro de cesio | Hidruro de cesio | Hidruro césico |
| BeH2 | Hidruro de berilio | Hidruro de berilio | Hidruro berílico |
| CaH2 | Hidruro de calcio | Hidruro de calcio | Hidruro cálcico |
| SnH4 | Tetrahidruro de estaño | Hidruro de estaño(IV) | Hidruro estannico |
>[!WARNING] Recuerda
>El n.o de hidrogeno cuando se junta con un metal es de -1
**Ejemplo**:
- Hidruro de hierro(III) => Fe³⁺H⁻ => Fe³⁺H⁻3
- Hidruro ferroso => Fe²⁺(**Ferr -oso**)H => Fe²⁺H2
- Hidruro de potasio => K⁺H⁻

View File

@ -0,0 +1,34 @@
## Combinaciones binarias y pseudobinarias del oxigeno
### Óxidos
Elementos combinados con oxigeno
#### Formulación: EyOx
>[!INFO] Nomenclatura
>Óxido + de + Elemento (**n.o del Elemento en numeros romanos**)
| Fórmula | N. estequiométrico | N. Stock | N. tradicional |
| ------- | ------------------------- | ----------------------- | ------------------------------------- |
| FeO | Monóxido de hierro | Óxido de hierro(II) | Óxido ferroso |
| Fe₂O₃ | Trióxido de dihierro | Óxido de hierro(III) | Óxido férrico |
| N₂O | Óxido de dinitrógeno | Óxido de nitrógeno(I) | Óxido nitroso (Anhídrido hiponitroso) |
| NO | Monóxido de nitrógeno | Óxido de nitrógeno(II) | Óxido nítrico |
| N₂O₃ | Trióxido de dinitrógeno | Óxido de nitrógeno(III) | Anhídrido nitroso |
| NO₂ | Dióxido de nitrógeno | Óxido de nitrógeno(IV) | Dióxido de nitrógeno |
| N₂O₄ | Tetraóxido de dinitrógeno | Óxido de nitrógeno(IV) | Tetraóxido de nitrógeno |
| N₂O₅ | Pentaóxido de dinitrógeno | Óxido de nitrógeno(V) | Anhídrido nítrico |
### Peróxidos O2²⁻, hiperóxidos (o2⁻) y ozónicos (O2⁻)
## Peróxidos (O₂²⁻)
- **Li₂O₂** → peróxido de litio
- **H₂O₂** → peróxido de hidrógeno (agua oxigenada)
- **BaO₂** → peróxido de bario
- **CuO₂** → peróxido de cobre(II)
## Hiperóxidos o superóxidos (O₂⁻)
- **KO₂** → hiperóxido o superóxido de potasio
- **RbO₂** → hiperóxido o superóxido de rubidio
- **NaO₂** → hiperóxido o superóxido de sodio
- **BaO₄** → hiperóxido o superóxido de bario
- **MgO₄** → hiperóxido o superóxido de magnesio
## Ozónidos (O₃⁻)
- **KO₃** → ozónido de potasio
- **RbO₃** → ozónido de rubidio
- **CsO₃** → ozónido de cesio

View File

@ -0,0 +1,24 @@
# Otras combinaciones binarias y pseudobinarias
## No metales con metales (seles binarias)
#### Formulación: AyBx (A => metal de n.o x, B => metal de n.o de y)
| Fórmula | N. estequiométrico | N. Stock | N. tradicional |
| --------- | -------------------- | ------------------------ | -------------------------------- |
| **CaF₂** | Difluoruro de calcio | Fluoruro de calcio | Fluoruro cálcico |
| **FeCl₃** | Tricloruro de hierro | Cloruro de hierro(III) | Cloruro férrico |
| **WC** | Carburo de wolframio | Carburo de wolframio(IV) | Carburo wolfrámico (carburundum) |
>[!INFO] Nomenclatura Stock
>NoMetal-uro + de + Metal (n.o si es variable en numeros romanos)
## No metal - No metal
#### Formulación: B$_y$C$_x$ (B no metal de valencia x, C no metal de valencia y)
>[!REMEMBER] Recuerda
>En cualquier combinación binaria entre no metales se coloque más a la izquierda de la fórmula el elemento que va antes en la siguiente lista:
>**B Si C Sb As P N H Te Se S At I Br Cl O F**
### Pseudobinarias
...
### Oxoácidos
...

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

View File

@ -1,277 +0,0 @@
## 1.6
- get rid of mb_strlen, fixed issue [#151](https://github.com/secure-77/Perlite/issues/151) thanks to @Sephral
- hide X / Twitter when not set, issue [#152](https://github.com/secure-77/Perlite/issues/152), thanks to @EKNr1
- implemented settings.php, issue [#119](https://github.com/secure-77/Perlite/issues/119), thanks to @EKNr1
- implemented pretty urls, issue [#140](https://github.com/secure-77/Perlite/issues/140)
- removed not used Dockerfile
- fixed issue [#148](https://github.com/secure-77/Perlite/issues/148)
- fixed issue [#149](https://github.com/secure-77/Perlite/issues/149)
- implemented highlight support [#150](https://github.com/secure-77/Perlite/issues/150)
- implemented TOC mobile support [#141](https://github.com/secure-77/Perlite/issues/141)
- implemented Tags in side view [#122](https://github.com/secure-77/Perlite/issues/122)
- added possibility to allow access to MD files in hidden folders via HIDDEN_FILE_ACCESS variable, thanks to @EKNr1 for the idea.
- updated katex to 0.16.22
- updated highlight.js to 11.11.1
- updated mermaid to 11.6.0
\
**Important Update Note**\
As Perlite is now using pretty URLs you need to change your Nginx / Webserver config to make perlite work again after this release! This affects also the docker version, you need to get the latest [perlite.conf](https://github.com/secure-77/Perlite/blob/main/web/config/perlite.conf)
Please take a look at the [updated wiki](https://github.com/secure-77/Perlite/wiki/01---Setup-(no-Docker)#adjust-the-nginx-config) for more details.
## 1.5.9
- added YouTube link support [#133](https://github.com/secure-77/Perlite/issues/133) thanks to @rsubr
- added image postion support thanks to @ar0x4
- fixed direct page links [#90](https://github.com/secure-77/Perlite/issues/90)
- added support for webp images [#126](https://github.com/secure-77/Perlite/issues/126)
- fixed kartex problem PR [#131](https://github.com/secure-77/Perlite/pull/131) thanks to @Yaro2709
- fixed obsidian edit link thanks to klgzzz
- changed site title to use the env. variable site_title
- fixed issue [#128](https://github.com/secure-77/Perlite/issues/128) thanks to @rgaricano
- added m4a support thanks to @rgaricano
- added img link support to external urls issue [#89](https://github.com/secure-77/Perlite/issues/89)
- added tasks support, issue [#118](https://github.com/secure-77/Perlite/issues/118)
- updated mermaid to 11.2.1
- updated katex to 0.16.11
- updated highlight.js to 11.10.0
- changed base image for perlite_web to nginx:stable, issue [#100](https://github.com/secure-77/Perlite/issues/100)
## 1.5.8
- merged PR #111 thanks to @selfiens
- merged PR #112 thanks to @selfiens
- merged PR #106 thanks to @Shardbyte
- updated obsidian app.css
- fixed yaml frontmatter [#107](https://github.com/secure-77/Perlite/issues/107)
- added support for alternate image text [#92](https://github.com/secure-77/Perlite/issues/92)
- added support for collapsed callouts [#113](https://github.com/secure-77/Perlite/issues/113)
- added support for embedded pdf and videos [#105](https://github.com/secure-77/Perlite/issues/105)
- added random node function [#109](https://github.com/secure-77/Perlite/issues/109)
- added support for absolut pathes [#90](https://github.com/secure-77/Perlite/issues/90)
- updated Demo Documetns and Themes
- updated build.sh to force composer updates
- updated highlight.js to 11.9.0
- updated katex to 0.16.9
- updated vis-network to 9.1.9
- added new custom logo and social media section
- fixed issue Folder arrow marker randomly disappears [#94](https://github.com/secure-77/Perlite/issues/94)
- changed to show TOC and local Graph at the same time
## 1.5.7
- added social media meta tags and variables
- added github action for docker build process and arm support, issue #65
- improved loading performance, the graph linking will only be done at the first page load, issue #97
- provided a python script to perform as alternative for the link generation, issue #97
- included mermaid 10.3.0 via cdn as composer had issues to load it
- updated highlight.js to 11.8.0
- updated katex to 0.16.8
- updated jquery to 3.7.1
- fixed issue #74 (custom heading links)
- fixed heading references in links to other notes
- implemented copy code button issue #68
- added a little padding for the headers
- merged PR #102 (thx to @selfiens)
- seperated php composer into two files (npm-assets and php-assets)
- fixed issue #91
## 1.5.6
- fixed heading references (issue #74)
- added safemode environment variable (PR #88) thanks to @NotGovernor
- added default side panel size related of screen size (issue #85)
## 1.5.5
- updated some html structure to fit the latest app.css and theme styles
- updated app.css
- removed Bootstrap dependency
- fixed ampersand problem in global graph (issue #47)
- added default font size environment variable (issue #80)
- added escape key function for modal close button (PR #82) thank to @stellarix
- added homepage environment variable (PR #84) thanks to @NotGovernor
- added composer
- added build script
- updated highlight.js to 11.7.0
- updated jquery to 3.7.0
- updated mermaid to 8.12.1
- updated vis-network to 9.1.6
## 1.5.4
- fixed img max width
- fixed image modal (issue #58)
- fixed double links to nodes (issue #45) thanks to @catrone3
- added svg format, thanks to @lennartbrandin
- added variable for allowed file link types, thanks to @dbohn
- changed the gprah render solver from barnesHut to forceAtlas2Based to improve perfomance (issue #66)
- added graph loading text
- added option and default behavior to disable Pop Hovers
- added default behavior to show table of content instead of local graph
## 1.5.3
- support file links with exclamation mark and aliases (issue #55)
- support image resizing (issue #54)
- fixed $refName missing php variable (PR #56)
## 1.5.2
- fixed $closing variable error
- set focus to search field
- fixed #Header reference in internal links (Issue #32)
- fixed error with links to non existing files (Graph)
- fixed ampersand problem in internal links and graph (Issue #47)
- added mousehover for internal links, feature request #43
- added popup feature for internal links on mobile (setting), feature request #43
- fixed padding-right issue on mobile view
- moved some instructions to the wiki
- added light mode (in the settings)
- updated katex to 0.16.4
- fixed problem with two _ (underscorces) per line in katex context
## 1.5.1
- fixed tags containing a hyphen or slash (Issue #39)
- fixed docker-compose-dev.yml config
- fixed callouts and contiuned quotes (Issue #40 and #27)
- fixed logo position
- Demo Vault is default if no NOTES_PATH is defined
- fixed line breaks if LINE_BREAKS isn´t defined
## 1.5
- Complete redesign based on obsidian css
- support for Obsidian themes
- added tag search
- added metadata support
- added different settings for the graph styling
- added different settings for the viewer, like text size
- settings stored in local browser storage
- updated JQuery to version 3.6.1
- updated HighlightJS to version 11.6.0
- updated Docker image to use latest php:fpm-alpine version (8.1.11)
- updatet Nginx config to allow Themes
- added docker compose variable for markdown linebreaks
## 1.4.5 RC
- added "edit button", enable it via cookie, thx to @Tooa
## 1.4.4
- some code cleanup
- replaced mermaid.min.js with the correct one (29.1.)
- implemented start page (README.md) for non mobile view
- hide graph display, when node has no graph
- some visual graph updates
- changed order: folders are now always on top
- fixed sort order to be case insensitive
- adjusted the docker image and container naming
- updated the nginx version to 1.22 and php to 7.4.30 for docker
- adjusted blockquote style and added callouts support (thanks to @Tooa)
- fixed sidebar menu height
- fixed problem with direct links and `&` chars
- fixed a graph linking error when some files are missing from the metadata.json
## 1.4.3
- added mermaid 8.7.0 (mermaid.min.js)
- changed order for folders and files with underscores (they are now on top)
- added sec77/perlite:latest to the docker hub
- changed the docker compose files, the hub images is used now
- updated vis-js to version 9.1.2
- fixed problems with multiple links in one line
## 1.4.2
- enabled simple line break in parsedown
- fixed sidebar height
- fixed max img width & height
- removed # from title
- added Perlite Discord Server
- added support for custom internal Obsidian link names
- improved style of tables
- url update in browser
## 1.4.1
- some code cleanup
- added separate perlite.svg for the about header
- changed nginx docker config
- fixed multibyte utf basename to support chinese characters in file name and path
- fixed menu collapse problem when folder name contains dots or begins with a number
- fixed image size in mobile view
- fixed image line break issue
- fixed full graph view when current node has no links and no-link filter is enabled
- changed color of current node in the graph view
- LaTeX support
- added katex.min.js
- added katex.min.css
- added fonts
- added auto-render.min.js
- fixed navigator when file or folder names are to long
## 1.4
- updated highlight.js to 11.4.0
- updated Bootstrap JS files to 5.1.3
- changed default (dark) theme from darkly to Bootswatch theme "slate"
- fixed direct links when Perlite is in a subfolder of the root direcotry
- removed the flatly theme, a11y-light theme and disabled the "light mode"
- many layout redesigns like
- changed the header size
- moved the searchbar to the navbar
- added Nerd Fonts as default Font
- added a right navbar for the graph
- highlight current navbar entry
- set focus on current navbar entry if called by a link
- other small layout changes
- added separated scrollbars for navbar and content
- added rel="noopener noreferrer" attributes for external links
- added icon for external links
- added a visual graph via vis.js
- metadata.json parsing (only adds nodes if they really exists in the folder structure)
- show graph and direct links for every note in the right navbar
- added modal for full graph view
- added filter (hide nodes without link) in the full graph view (saved via cookie)
- improved the search
- enabled case insensitive
- included filename for the search
- removed the "open recent search" (because its unnecessary)
- updated the Readme
- updated the Demo Documents
## 1.3
- added support for inplace links
- added support for PDF files / links
- changed in place image behaviour
- new logo
- added favicon
- adjust image view in about modal
- changed "About" behaviour
- added changelog
- outsourced docker instructions from readme
- changes link behaviour (added link get parameter to fix problems with unwanted queries)
- removed "not allowed" content
- added cookie for theme settings
- adjust mobile margins
## 1.2
- added Docker
- added direct Links
- changed base dir logic
- update Readme
## 1.1
- added mobile responsive
- added search
- added theme support and darkmode
## 1.0
- First prod. ready release

View File

@ -1,21 +0,0 @@
MIT License
Copyright (c) 2025 secure-77
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -1,77 +0,0 @@
# Perlite
![GitHub release (latest by date)](https://img.shields.io/github/v/release/secure-77/perlite) ![GitHub](https://img.shields.io/github/license/secure-77/perlite) ![GitHub last commit](https://img.shields.io/github/last-commit/secure-77/Perlite)
A web based markdown viewer optimized for [Obsidian](https://obsidian.md/) Notes
Just put your whole Obsidian vault or markdown folder/file structure in your web directory. The page builds itself.
Its an open source alternative to [obsidian publish](https://obsidian.md/publish).
Read more about Perlite and staging tips on my blog post: [Perlite on Secure77](https://secure77.de/perlite).
If you want to discuss Perlite you can join the [Perlite Discord Server](https://discord.gg/pkJ347ssWT)
## Demo
[Perlite Demo](https://perlite.secure77.de/)
![Demo Screenshot](https://raw.githubusercontent.com/secure-77/Perlite/main/screenshots/screenshot.png "Demo Screenshot")
![Graph Screenshot](https://raw.githubusercontent.com/secure-77/Perlite/main/screenshots/graph.png "Graph Screenshot")
## Features
- Auto build up, based on your folder (vault) structure
- No Database required
- Obsidian Themes Support
- Fully Responsive
- No manual parsing or converting necessary
- Full interactive Graph
- LaTeX and Mermaid Support
- Link to Obsidian Vault
- Search
- Obsidian tags, links, images and preview Support
- Dark and Light Mode
## Install
Please make sure you read the [required settings](https://github.com/secure-77/Perlite/wiki/03---Perlite-Settings#required-settings) first!
You can download the latest release from github or git clone the project and use docker.
- For non Docker please check [Setup](https://github.com/secure-77/Perlite/wiki/01---Setup-(no-Docker))
- For Docker, please check [Docker Setup](https://github.com/secure-77/Perlite/wiki/02---Setup-Docker)
## Wiki
Please check the [wiki](https://github.com/secure-77/Perlite/wiki), here you will find further information, for example:
- [Themes](https://github.com/secure-77/Perlite/wiki/Themes)
- [Graph Setup and Settings](https://github.com/secure-77/Perlite/wiki/Graph)
- [Perlite Settings](https://github.com/secure-77/Perlite/wiki/03---Perlite-Settings)
- [Troubleshooting](https://github.com/secure-77/Perlite/wiki/Troubleshooting)
## Security
- The [Safemode](https://github.com/erusev/parsedown#security) from Parsedown is active, but I would not recommend to allow untrusted user input.
- You should prevent that the .md files are direct accessible via the browser (only the php engine need access to it) or at least make sure that the md files will be downloaded and not be rendered by browser
- You should prevent that the metadata.json file is direct accessible via the browser (only the php engine need access to it). The extracted metadata.json contains the whole obsidian structure, so this file could be sensitive if you plan to exclude some files or folders from Perlite. However, the parsing is done by the php engine and it checks for every path if the file really exists in the provided vault, so files you excluded from the vault will also not be visible in the graph, but they are still present in the metadata.json. This is why you should prevent access to it.
## Contributing
Want to contribute? Awesome! Please use the [dev branch](https://github.com/secure-77/Perlite/tree/dev) for pull requests.
## Why Perlite?
[Wiki](https://en.wikipedia.org/wiki/Perlite):
*Perlite is an amorphous volcanic glass ... typically formed by the hydration of obsidian.*
## Previous Versions and Changelog
- [Changelog](https://github.com/secure-77/Perlite/blob/main/Changelog.md)
- [Perlite 1.4.4 Demo](https://perlite.secure77.de/1.4.4)
- [Perlite 1.3 Demo](https://perlite.secure77.de/1.3)

View File

@ -1,5 +0,0 @@
# Security Policy
## Reporting a Vulnerability
If you have found a vulnerability, please send an email to sec77@ secure77.de or contact me via direct message on Discord sec77#5109

View File

@ -1 +0,0 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("katex")):"function"==typeof define&&define.amd?define(["katex"],t):"object"==typeof exports?exports.renderMathInElement=t(require("katex")):e.renderMathInElement=t(e.katex)}("undefined"!=typeof self?self:this,(function(e){return function(){"use strict";var t={757:function(t){t.exports=e}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var i=n[e]={exports:{}};return t[e](i,i.exports,r),i.exports}r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,{a:t}),t},r.d=function(e,t){for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};var o={};r.d(o,{default:function(){return p}});var i=r(757),a=r.n(i);const l=function(e,t,n){let r=n,o=0;const i=e.length;for(;r<t.length;){const n=t[r];if(o<=0&&t.slice(r,r+i)===e)return r;"\\"===n?r++:"{"===n?o++:"}"===n&&o--,r++}return-1},s=/^\\begin{/;var d=function(e,t){let n;const r=[],o=new RegExp("("+t.map((e=>e.left.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"))).join("|")+")");for(;n=e.search(o),-1!==n;){n>0&&(r.push({type:"text",data:e.slice(0,n)}),e=e.slice(n));const o=t.findIndex((t=>e.startsWith(t.left)));if(n=l(t[o].right,e,t[o].left.length),-1===n)break;const i=e.slice(0,n+t[o].right.length),a=s.test(i)?i:e.slice(t[o].left.length,n);r.push({type:"math",data:a,rawData:i,display:t[o].display}),e=e.slice(n+t[o].right.length)}return""!==e&&r.push({type:"text",data:e}),r};const c=function(e,t){const n=d(e,t.delimiters);if(1===n.length&&"text"===n[0].type)return null;const r=document.createDocumentFragment();for(let e=0;e<n.length;e++)if("text"===n[e].type)r.appendChild(document.createTextNode(n[e].data));else{const o=document.createElement("span");let i=n[e].data;t.displayMode=n[e].display;try{t.preProcess&&(i=t.preProcess(i)),a().render(i,o,t)}catch(o){if(!(o instanceof a().ParseError))throw o;t.errorCallback("KaTeX auto-render: Failed to parse `"+n[e].data+"` with ",o),r.appendChild(document.createTextNode(n[e].rawData));continue}r.appendChild(o)}return r},f=function(e,t){for(let n=0;n<e.childNodes.length;n++){const r=e.childNodes[n];if(3===r.nodeType){let o=r.textContent,i=r.nextSibling,a=0;for(;i&&i.nodeType===Node.TEXT_NODE;)o+=i.textContent,i=i.nextSibling,a++;const l=c(o,t);if(l){for(let e=0;e<a;e++)r.nextSibling.remove();n+=l.childNodes.length-1,e.replaceChild(l,r)}else n+=a}else if(1===r.nodeType){const e=" "+r.className+" ";-1===t.ignoredTags.indexOf(r.nodeName.toLowerCase())&&t.ignoredClasses.every((t=>-1===e.indexOf(" "+t+" ")))&&f(r,t)}}};var p=function(e,t){if(!e)throw new Error("No element provided to render");const n={};for(const e in t)t.hasOwnProperty(e)&&(n[e]=t[e]);n.delimiters=n.delimiters||[{left:"$$",right:"$$",display:!0},{left:"\\(",right:"\\)",display:!1},{left:"\\begin{equation}",right:"\\end{equation}",display:!0},{left:"\\begin{align}",right:"\\end{align}",display:!0},{left:"\\begin{alignat}",right:"\\end{alignat}",display:!0},{left:"\\begin{gather}",right:"\\end{gather}",display:!0},{left:"\\begin{CD}",right:"\\end{CD}",display:!0},{left:"\\[",right:"\\]",display:!0}],n.ignoredTags=n.ignoredTags||["script","noscript","style","textarea","pre","code","option"],n.ignoredClasses=n.ignoredClasses||[],n.errorCallback=n.errorCallback||console.error,n.macros=n.macros||{},f(e,n)};return o=o.default}()}));

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,73 +0,0 @@
#!/bin/bash
# update JS dependencies
# force update on asset-packagist
curl https://asset-packagist.org/package/npm-asset/katex -D - >/dev/null
curl https://asset-packagist.org/package/npm-asset/vis-network -D - >/dev/null
curl https://asset-packagist.org/package/npm-asset/jquery -D - >/dev/null
curl https://asset-packagist.org/package/npm-asset/highlightjs--cdn-assets -D - >/dev/null
# curl https://asset-packagist.org/package/npm-asset/mermaid -D - >/dev/null
# curl https://asset-packagist.org/package/npm-asset/roughjs -D - >/dev/null
# curl https://asset-packagist.org/package/npm-asset/stylis -D - >/dev/null
# curl https://asset-packagist.org/package/npm-asset/mlly -D - >/dev/null
# curl https://asset-packagist.org/package/npm-asset/tinyexec -D - >/dev/null
# curl https://asset-packagist.org/package/npm-asset/package-manager-detector -D - >/dev/null
# curl https://asset-packagist.org/package/npm-asset/iconify--utils -D - >/dev/null
# curl https://asset-packagist.org/package/npm-asset/antfu--install-pkg -D - >/dev/null
# composer clear-cache
# rm -rf vendor
composer update -v
# update highlight js
cp vendor/npm-asset/highlightjs--cdn-assets/highlight.min.js ../.js/
cp vendor/npm-asset/highlightjs--cdn-assets/styles/atom-one-dark.min.css ../.styles/
# update jquery
cp vendor/npm-asset/jquery/dist/jquery.min.js ../.js/
# update katex
cp vendor/npm-asset/katex/dist/katex.min.js ../.js/
cp vendor/npm-asset/katex/dist/contrib/auto-render.min.js ../.js/
cp vendor/npm-asset/katex/dist/katex.min.css ../.styles/
cp -r vendor/npm-asset/katex/dist/fonts ../.styles/
# update mermaid
# cp vendor/npm-asset/mermaid/dist/mermaid.min.js ../.js/
# cp vendor/npm-asset/mermaid/dist/mermaid.min.js.map ../.js/
# update vis-network
cp vendor/npm-asset/vis-network/dist/vis-network.min.js ../.js/
cp vendor/npm-asset/vis-network/dist/vis-network.min.js.map ../.js/
cp vendor/npm-asset/vis-network/dist/dist/vis-network.min.css ../.styles/
# update Parsedown dependencie
cd ..
# composer clear-cache
# rm -rf vendor
composer update -v
#cp perlite/vendor/erusev/parsedown/Parsedown.php perlite/
# remove old container and images
# docker container rm perlite;
# docker container rm perlite_web;
# docker container rm perlite_web_dev;
# docker image rm sec77/perlite_web:stable;
# docker image rm sec77/perlite;
# docker image rm php;
# # rebuild and start
# cd perlite
# docker build -t sec77/perlite:latest . --network host;
# cd ..;
# docker-compose --file docker-compose.yml up

View File

@ -1,39 +0,0 @@
{
"name": "secure-77/perlite",
"description": "A web based markdown viewer optimized for Obsidian Notes",
"version": "1.5.9",
"type": "project",
"keywords": ["markdown viewer","obsidian notes"],
"homepage": "https://github.com/secure-77/Perlite",
"license": "MIT",
"authors": [
{
"name": "secure-77",
"email": "sec77@secure77.de",
"homepage": "https://secure77.de"
}
],
"support": {
"issues": "https://github.com/secure-77/Perlite/issues",
"wiki": "https://github.com/secure-77/Perlite/wiki",
"chat": "https://discord.gg/pkJ347ssWT"
},
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
}
],
"config": {
"preferred-install": "dist"
},
"require": {
"npm-asset/vis-network": "^9.1",
"npm-asset/katex": ">=0.16.8",
"npm-asset/jquery": "^3.7",
"npm-asset/highlightjs--cdn-assets": "^11.7"
}
}

View File

@ -1,82 +0,0 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "804283b252f55afc81b79735bfa0c2c1",
"packages": [
{
"name": "npm-asset/commander",
"version": "8.3.0",
"dist": {
"type": "tar",
"url": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz"
},
"type": "npm-asset",
"license": [
"MIT"
]
},
{
"name": "npm-asset/highlightjs--cdn-assets",
"version": "11.11.1",
"dist": {
"type": "tar",
"url": "https://registry.npmjs.org/@highlightjs/cdn-assets/-/cdn-assets-11.11.1.tgz"
},
"type": "npm-asset",
"license": [
"BSD-3-Clause"
]
},
{
"name": "npm-asset/jquery",
"version": "3.7.1",
"dist": {
"type": "tar",
"url": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz"
},
"type": "npm-asset",
"license": [
"MIT"
]
},
{
"name": "npm-asset/katex",
"version": "0.16.22",
"dist": {
"type": "tar",
"url": "https://registry.npmjs.org/katex/-/katex-0.16.22.tgz"
},
"require": {
"npm-asset/commander": ">=8.3.0,<9.0.0"
},
"type": "npm-asset",
"license": [
"MIT"
]
},
{
"name": "npm-asset/vis-network",
"version": "9.1.9",
"dist": {
"type": "tar",
"url": "https://registry.npmjs.org/vis-network/-/vis-network-9.1.9.tgz"
},
"type": "npm-asset",
"license": [
"(Apache-2.0 OR MIT)"
]
}
],
"packages-dev": [],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": [],
"prefer-stable": false,
"prefer-lowest": false,
"platform": [],
"platform-dev": [],
"plugin-api-version": "2.6.0"
}

View File

@ -1,93 +0,0 @@
import json
import hashlib
def remove_extension(path):
return path[:-3]
def check_array(node_path):
return True
json_metadata_file = "../Demo/metadata.json"
metadata_temp_file = "/tmp/metadata.temp"
metadata_temp_file_sum = "/tmp/metadata.md5"
with open(json_metadata_file, "r") as file:
json_data = file.read()
if json_data is None:
exit()
json_obj = json.loads(json_data)
if not isinstance(json_obj, list):
exit()
graph_nodes = []
graph_edges = []
current_node = -1
node_id = 0
# create nodes
for node in json_obj:
node_path = remove_extension(node['relativePath'])
if check_array(node_path):
graph_nodes.append({'id': node_id, 'label': node['fileName'], 'title': node_path})
node_id += 1
target_id = -1
source_id = -1
for node in json_obj:
node_path = remove_extension(node['relativePath'])
if check_array(node_path):
if 'links' in node:
for link in node['links']:
source = ""
target = ""
if 'relativePath' in node:
temp_path = remove_extension(node['relativePath'])
if check_array(temp_path):
source = temp_path
if 'relativePath' in link:
temp_path = remove_extension(link['relativePath'])
if check_array(temp_path):
target = temp_path
if source and target:
for element in graph_nodes:
element_title = element['title']
if element_title == target:
target_id = element['id']
if element_title == source:
source_id = element['id']
edge_exists = any(
edge['from'] == source_id and edge['to'] == target_id or
edge['to'] == source_id and edge['from'] == target_id
for edge in graph_edges
)
if target_id != -1 and source_id != -1:
if not edge_exists:
graph_edges.append({'from': source_id, 'to': target_id})
target_id = -1
source_id = -1
my_graph_nodes = json.dumps(graph_nodes, separators=(',', ':'), ensure_ascii=False)
my_graph_edges = json.dumps(graph_edges, separators=(',', ':'), ensure_ascii=False)
graph_html = f'<div id="allGraphNodes" style="display: none">{my_graph_nodes}</div><div id="allGraphEdges" style="display: none">{my_graph_edges}</div>'
with open(metadata_temp_file, "w") as file:
file.write(graph_html)
with open(metadata_temp_file_sum, "w") as file_handler:
md5_filesum = hashlib.md5()
with open(json_metadata_file, "rb") as json_file:
while chunk := json_file.read(8192):
md5_filesum.update(chunk)
file_handler.write(md5_filesum.hexdigest())

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}

View File

@ -1 +0,0 @@
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Font Awesome</title><path d="M24 .857v18c-3.375 1.232-4.393 1.714-6.375 1.714-3.375 0-4.66-1.714-8.036-1.714-1.071 0-1.928.214-2.732.429v-3.429c.804-.214 1.661-.428 2.732-.428 3.375 0 4.661 1.714 8.036 1.714 1.071 0 1.875-.16 2.946-.482V5.518C19.5 5.839 18.696 6 17.625 6c-3.375 0-4.66-1.714-8.036-1.714-2.732 0-4.017 1.125-6.16 1.553v16.447A1.693 1.693 0 011.714 24 1.693 1.693 0 010 22.286V1.714A1.693 1.693 0 011.714 0 1.693 1.693 0 013.43 1.714v.697C5.572 1.982 6.857.857 9.589.857c3.375 0 4.661 1.715 8.036 1.715 1.982 0 3-.483 6.375-1.715Z"/></svg>

Before

Width:  |  Height:  |  Size: 647 B

Some files were not shown because too many files have changed in this diff Show More