Newsgroup: it.comp.lang.javascript
Titolo: controllo ortografico textarea

Salve a tutto il NG
premetto che conosco poco di js in ogni caso ho la necessità di creare un
controllo ortografico su una textarea.
Avevo pensato ad uno script che effettua un controllo su ogni termine
inserito all'interno della textarea confrontandolo con un file che dovrebbe
contenere una raccolta di tutti i termini italiani per poi evidenziare
quelli non trovati.
Vi sembra una cosa fattibile? Come dovrei fare?
Grazie in anticipo michele


Se lo implementi fammi sapere che ti offro come minimo un aperitivo...;o)
Te lo meriteresti.

 Vi sembra una cosa fattibile? Come dovrei fare?
Se usi un intranet puoi farlo solo con JS se invece usi internet non puoi, o
meglio devi neccessariamente associare un linguaggio server-side per
riuscire a leggere il file che contiene i termini italiani. Comunque essendo
questi un pò numerosi e l'algoritmo che useresti per quanto sia spendido (ad
es. bisezione) farebbe un pò tanta fatica, il consiglio è di usare un DB...
Ciao e auguri

Prova a leggere qua.....
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?lngWId=4&txtCodeId=6561
L'esempio ti spiega come utilizzare il controllo ortografico di Word.
Ciao
Dani
--------------------------------
Inviato via 
http://usenet.libero.it

 Vi sembra una cosa fattibile? Come dovrei fare?
Fattibile è fattibile, ma hai idea di quanto sarebbe grosso e pesante il 
file del vocabolario?
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
 ---- Bring Your Site To Life!!!!
------------------------------------------------------------------------
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
Per rispondere: togli il PUNTO e metti un .

 per ottenerla? Se c'è mi è oscuro, anzi, divento scuro in volto :)
Non usare una textarea:
<div id="pippo" style="position:relative;width:300px;height:200px;overflow:
auto;" CONTENTEDITABLE></div>

 textarea, e non solo: dicriminando i vocaboli. Pure.
Come diceva "Nonno Oreste" poco sopra: probabilmente se Word e' installato
nel sistema e nel suo modello ad oggetti ci sono interfacce per il
correttore ortografico...

Ciao,
io lo ho utilizzato per poter formattare un testo che va in un db con tutte
le formattazioni del caso.
Un unica cosa vorrei chiederti se faccio il copia ed incolla di un testo
formattato da un documento word mi genera il codice html che andrà nel db
come codice html di word quindi zeppo di roba inutile mentre se lo stesso
documento lo apro con notepad e faccio il copia ed incolla il testo è molto
piu' pulito.
C'è un modo per evitare questo e cioè avere un codice pulito anche facendo
il copia ed incolla da word? Non è che si puo' specificare una codifica
dell'html?
Grazie in anticipo
Michele


 textarea, e non solo: dicriminando i vocaboli. Pure.
Beh, con un po' di regexp non ci vuole molto, al peggio splitti tutte le 
parole attorno allo spazio (o agli spazi vari: \s in regexp) in un array 
e controlli le parole ad una ad una... ma il problema sta proprio nel 
vocabolario.
Ho un file words.italian.txt (prelevato tempo fa da qualche sito hacker-
related) che riporta l'elenco delle parole italiane da provare in un 
brute force attack alla caccia di password che è grande la bellezza di 
550 KILOBytes... ed è solo puro testo on gli a capo (1 parola 1 riga)
Si può pure ragionarci, ma non in un contesto internet sicuramente.


 auto;" CONTENTEDITABLE></div>
Dio ce ne scampi. Modifica la sintassi, e l'XHTML e' tutto bello 
contento. Tant'e' che cmq "contenteditable" prende 3 diverse stringhe 
come impostazioni.
Inoltre per fare "editor" e' preferibile usare documenti a se' stanti 
(iframe) impostando il designMode.
-- 
C'ya,
ZER0
  :. job profile - coder.gfxer.webDesigner
"When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)

 Afaik è materiale solo Win - solo IE, nun ne vogghie sape' :)
Ehehe.. fai bene. Cmq per funzionare doveva in ogni caso istanziare 
ActiveX, ergo Mac gli avrebbe risposto "I don't speak 'Microsoft Trash 
Language', sorry".


 Si puň pure ragionarci, ma non in un contesto internet sicuramente.
Perche' no? A me vengono in mente almeno un paio di soluzioni 
fattibilissime in un contesto internet: Server-Side o Applet Java.
Con la prima il client non ha da scaricare alcun che', lo svantaggio e' 
che il controllo ortografico non e' in tempo reale, ma avviene al submit 
della form.
Come succede in altre applicazioni web, l'utente decidera' se spuntare 
un check per il controllo ortografico oppure no. In caso lo spunti, dopo 
il submit della form gli verra' riproposto il testo inserito con i 
vocaboli errati.. Se poi uno vuole fare il figo, gli puo' proporre 
quelli che "eventualmente" avrebbe voluto scrivere.
Con un applet java imposti l'interfaccia come vuoi tu: Rich Text con 
correttore visivo in real time, il dizionario lo puoi comprimere in un 
jar separato, che scarica solamente la prima volta.


 dell'html?
Quel che ho fatto io e' intercettare "l'incollaggio" dell'utente e potare
selvaggiamente tutto il codice html che c'era negli appunti.

 (iframe) impostando il designMode.
Dove ci hai trovato tutta sta differenza? A parte dover rendere non
editabili gli elementi della pagina perche' l'execCommand non faccia
macelli?

 Dove ci hai trovato tutta sta differenza?
Piu' di "tutta". A pacchi, direi.
Almeno per quanto riguarda fare "web-editor".
Inoltre, l'altra sintassi, con i dovuti accorgimenti, funziona anche su 
Mozilla.
Cerchiamo di mantere lo stesso codice, laddove possibile no?


 giorni vedo.
Nono. Mozilla 1.3 c'e' anche per Mac, almeno per il Mac OS X.. 
(
www.mozilla.org
)


> Afaik č materiale solo Win - solo IE, nun ne vogghie sape' :)
E' possibile utilizzare quello script anche con una tecnologia server side
come ASP, e quindi non limitare l'applicazione a IE e Win........


 come ASP, e quindi non limitare l'applicazione a IE e Win........
Dovrebbe cmq essere un server che gira sotto Windows/IIS, con installato 
Office.. quanto meno Word. Ora, solitamente i Server che sono abbastanza 
carichi di lavoro, evitano di installarci programmi che li 
appesantiscono inutilmente.. soprattutto considerato che *difficilmente* 
qualcuno si mettera' a comporre una lettera in Word su un server :)
Certo, se prendi un PC e lo metti in Housing.. puoi farci tutte le 
puttanate che vuoi, ma il gioco vale la candela? E soprattutto, un conto 
e' creare un istanza Word su ogni macchina client che fa richiesta del 
controllo ortografico (il carico di lavoro e' distribuito), un conto e' 
creare "n" instanze di Word contemporanee sulla stessa macchina (il 
Server).. Anche se prendi un PC in housing, mi sa' che arrivato ad un 
certo limite "esplode".. Dover tirare su lato server 50 mega di 
applicativo solo per uno spell check per utente non mi pare la scelta 
piu' azzeccata.
E' preferibile a questo punto optare per un controllo dedicato.


 Almeno per quanto riguarda fare "web-editor".
Era ironico, rileggi il pezzo che non hai quotato.

 Era ironico, rileggi il pezzo che non hai quotato.
Intendi:
"A parte dover rendere non editabili gli elementi della pagina perche' 
l'execCommand non faccia macelli?"
..?
Beh, dove sta l'ironia? E cmq la differenza era relativa a tutt'altro. 
In ultimo, se gia' tu poni la questione in questi termini, perche' hai 
suggerito il contenteditable su un div..?


 suggerito il contenteditable su un div..?
Era autoironia: mi sembra un buon motivo di base avere un iframe con un
document a se' stante invece che dover gestire gli elementi del document
corrente per permettere ad un div di accettare execCommand senza mandare a
puttane tutto.
Solo che in quel momento ero evidentemente buono per il ricovero e ho tirato
fuori il div...
La domanda era invece seria: quali altre sensibili differenze se non quella
di cui sopra?

 di cui sopra?
Quella di avere un document diverso appunto dal corrente, che bada bene, 
non era stata notificata precedentemente, e ha altri vantaggi oltre i 
puttanai che puoi fare con l'execCommand.. che tra l'altro si puo' anche 
evitare di usare..che si basano sempre su avere una gerarchia di un 
oggetto classe HTMLDocument indipendente.
Oltre al fatto di essere cross-browser con Mozilla 1.3, ovviamente.


 pure loro lo trattano cosi': i tre valori vengono assegnati solo da script.
Non vengono assegnati solo da script, o - almeno - non e' quel che si 
nota dando una breve scorsa alla pagina relativa al contenteditable su 
MSDN:
Syntax
HTML <ELEMENT CONTENTEDITABLE = sCanEdit... >  
Scripting object.contentEditable(v) [ = sCanEdit ] 
Che puo' in HTML 4 essere omessa, visto che cmq esiste un valore di 
default, e' un altro conto dal dire "i tre valori vengono assegnati 
*solo* da script".
