BesService/Readme.md
Simon Rozman 63584185ae Unify nomenclature
Our thing is a grammar checking service for HTML editors. Not editor as
such.
2024-03-13 12:35:54 +01:00

59 lines
2.0 KiB
Markdown

# Servis za preverjanje pravopisa v dokumentih HTML
Servis je nadgradnja urejevalnikov HTML `<div contenteditable="true">`, ki v besedilu urejevalnika preverja in podčrta pravopisne napake. Namenjen je vgradnji v različne spletne strani in storitve, kjer uporabniki vnašajo besedila v naravnem jeziku.
## Sistemske zahteve
- Pravopisni strežnik Amebis Besana na http://localhost:225. V končni verziji bo URL pravopisnega strežnika nastavljiv.
- Sodobni brskalnik s podporo za ECMA v(TODO: Vpiši najstarejšo verzijo, kjer še dela) in HTML(TODO: Vpiši najstarejšo verzijo, kjer še dela)
## Navodila za vgradnjo
V svoji kodi HTML vključimo servis za preverjanje pravopisa tako, da:
### 1. Vključimo JavaScript in CSS servisa
Primer:
```html
<head>
...
<link rel="stylesheet" href="styles.css" />
<script src="service.js"></script>
</head>
```
### 2. V kodo HTML vstavimo servis
Primer:
```html
<!-- Vsi elementi z razredom CSS `bes-service` se registrirajo samodejno v document.onload. -->
<div class="bes-service" contenteditable="true">Začetno besedilo</div>
<!-- V dokument mora biti mesto, kjer servis uredi prikaz okna na klik napake. -->
<bes-popup-el></bes-popup-el>
```
Kadar vstavljamo servis v HTML-jev DOM dinamično (npr. z uporabo JavaScript), registriramo servis tako, da kličemo metodo `BesService.register(el)`, kjer `el` predstavlja element DOM našega urejevalnika. V tem primeru razred CSS `bes-service` ni potreben.
Primer:
```JavaScript
const el = document.createElement('div')
// Nastavimo, da uporabnik lahko ureja vsebino elementa urejevalnika.
el.contentEditable = "true";
// Element urejevalnika vstavimo v DOM. Element urejevalnika mora biti
// vstavljen v dokument pred klicem `BesService.register(el)`, ker
// registracija potrebuje njegovo pozicijo v drevesu DOM.
parent.appendChild(el)
// Registriramo servis za naš urejevalnik.
BesService.register(el)
```
## Navodila za razvijalce
Programsko kodo v tem repozitoriju razvijamo s programom Visual Studio Code. Potrebna je namestitev vtičnika `esbenp.prettier-vscode`.