Szópár-elemzés projekt — dokumentáció
Egyszerű, megbízható eszköz nagy szövegek szópár-elemzéséhez és interaktív megjelenítéséhez.
Stabil alap • Minimalista viewer
András — Kecskemét
Cél
A projekt célja: nagy szövegfájlok hatékony feldolgozása és az eredmények interaktív megjelenítése. A feldolgozó script streaming módon dolgozza fel a forrást, bucketelést használ a memóriakezeléshez, és időbélyegzett JSON fájlokba menti a leggyakoribb szópárokat. A viewer megjeleníti a forrásszöveget, kiemeli a JSON‑ban szereplő szavakat, és keresési/kontextus funkciókat kínál.
Fájlok és szerepük
| Fájl / könyvtár | Szerep |
|---|---|
| index.html | Ez a dokumentációs oldal (frissített változat). |
| analyze.php | Feldolgozó script: streaming, bucket pufferelés, aggregálás, JSON mentés. |
| make_latest.php | Segédscript: legfrissebb analyze_*.json → analyze_latest.json. |
| analyze_YYYYMMDD_HHMMSS.json | Időbélyeges elemzés eredménye. |
| analyze_latest.json | Viewer által alapértelmezettként betöltött legfrissebb eredmény. |
| txtviewer.php | Forrásszöveg megjelenítő: tokenizál, kiemel, keresés, kontextus panel. |
| txtviewer.css | Viewer stíluslap; kontrasztos, mobilbarát. |
| txtviewer.js | Viewer logika: JSON betöltés, normalizálás, kiemelés, keresés, találati panel. |
| txt/elemzes.txt | Forrás szöveg, amit az analyze.php feldolgoz. |
| buckets/ | Ideiglenes bucket fájlok a feldolgozás során. |
| analyze_viewer.html | Top párok táblázatos megjelenítése (opcionális). |
Gyors telepítés
- Másold fel a fájlokat a szerverre.
- Győződj meg róla, hogy a webserver felhasználó írhat a projekt könyvtárába (buckets, log, JSON).
- Futtasd a feldolgozást CLI‑ben vagy böngészőből:
php -d memory_limit=1024M analyze.php?top=200&buckets=512&buffer=2000&save=1
- Frissítsd a legfrissebb JSON-t:
php make_latest.php
- Nyisd meg a viewer-t:
- txtviewer.php — forrásszöveg és kiemelés
- analyze_viewer.html — top párok táblázat
Használat (alap)
- Betöltés: a viewer alapértelmezettként az
analyze_latest.json-t tölti be. - Kiemelés: a JSON
top_pairs_globalmezőjéből származó szavak kerülnek kiemelésre. - Keresés: a kereső csak a találatos mondatokat vagy bekezdéseket listázza; kattintásra a szövegben ugrik a találathoz.
- Proximity: állítható, hány token távolságot tekintünk szókapcsolatnak.
Hibakeresés — gyors tippek
- JSON nem töltődik: ellenőrizd a
analyze_latest.jsonelérhetőségét és a szerver logot. - JS hibák: nyisd meg a böngésző DevTools Console‑t; a piros hibák megmutatják a fájl és sor számát.
- Nincs kiemelés: futtasd a debug snippetet a konzolban, hogy lásd a token‑JSON normalizációs különbségeket.
- Memory exhausted: csökkentsd a
bufferértékét vagy növeld abucketsszámát.
Változásnapló (legutóbbi)
- v1.3 — Keresési eredmény panel: mondat/bekezdés alapú listázás és ugrás; erős kiemelés a találatokban.
- v1.2 — Stabil, minimalista viewer; normalizálás javítva; proximity jelölés.
- v1.0 — Alapfunkciók: tokenize, top párok JSON export, egyszerű viewer.
Roadmap — mit érdemes következőként beépíteni
- Virtualizált renderelés nagyon nagy forrásokhoz (csak a látható tokenek a DOM‑ban).
- Forráshivatkozás: ha a JSON tartalmaz mondatindexet, kattintásra pontos mondatugrás.
- Export snippet funkció: kiválasztott kontextus másolása vágólapra.
- Automatikus CI lépés: analyze.php futtatása és make_latest.php meghívása feldolgozás után.