Simon Rozman b7315dd608 Expose the rest of the public classes
Keep this repo open for all use cases it is intended to provide proofing
services for. Even if there is no existing known client for it yet.
2024-11-25 14:58:23 +01:00
2024-06-28 11:51:09 +02:00

Servis za preverjanje pravopisa v dokumentih HTML

Servis je nadgradnja urejevalnikov HTML, 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

Navodila za vgradnjo

V svoji kodi HTML vključimo servis za preverjanje pravopisa tako, da:

1. Vključimo JavaScript in CSS servisa

Primer:

<head>
    ...
    <link rel="stylesheet" href="styles.css" />
    <script>const besUrl = 'http://localhost:225/api/v2';</script>
    <script src="service.js"></script>
</head>

Poti do datotek styles.css in service.js prilagodimo glede na imenik, kjer hranimo ta repozitorij. Spremenljivko besUrl nastavimo po navodilih Amebisa.

2. V kodo HTML vstavimo servis

Primer:

<!-- Vsi elementi z razredom CSS `bes-service` se registrirajo samodejno v document.onload. -->
<div class="bes-service" contenteditable="true">Začetno besedilo</div>
<!-- V dokumentu 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.registerByElement(el), kjer el predstavlja element DOM našega urejevalnika. V tem primeru razred CSS bes-service ni potreben.

Primer:

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.registerByElement(el)

3. Spremljanje dogodkov

Po potrebi lahko spremljamo dogodke v servisu tako, da ob registraciji servisa dodamo instanco razreda, v katerem implementiramo metode, ki jih servis kliče ob posameznih dogodkih. Primer takega razreda, ki doda prikaz statusne ikone, je v datoteki samples\common.js.

Kategorije pravopisnih pravil

Privzeto servis preverja vnaprej določen nabor pravopisnih pravil. Pravila so razdeljena v kategorije (skupine) in za vsak servis posebej lahko vklapljamo ali izklapljamo vsa pravopisna pravila iz določene kategorije z uporabo metod enableCategory() in disableCategory().

Primer:

// Registriramo servis za naš urejevalnik.
BesService
  .registerByElement(el)
  .enableCategory('BESANA_CAT_6')
  .disableCategory('BESANA_CAT_1')
  .disableCategory('BESANA_CAT_2')

Kategorije pravopisnih pravil so:

ID | opis -------------+------------------------------------------------ BESANA_CAT_1 | strogo slogovne napake BESANA_CAT_2 | slogovne napake BESANA_CAT_3 | slogovno-slovnične napake BESANA_CAT_4 | strogo slovnične napake BESANA_CAT_5 | slovnične napake BESANA_CAT_6 | nomotehnične napake (potrebuje posebno licenco)

Navodila za razvijalce

Programsko kodo v tem repozitoriju razvijamo s programom Visual Studio Code. Potrebna je namestitev vtičnika esbenp.prettier-vscode.

Description
Storitev za preverjanje pravopisa v DOM HTML
Readme 2.2 MiB
Languages
JavaScript 98.8%
CSS 1.2%