Forum: Italian Ruby user group Sostituire è con `

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-05-31 23:52
Salve a tutti,
qualcuno mi sa dire come sostituire la e verbo , è, con il relativo
codice html è?

@variabile=232.chr
guide.description=guide.description.gsub(/@variabile/,"è")
guide.save
%>

Grazie.
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 00:39
(Received via mailing list)
Luigi ha scritto:

Se hai charset UTF-8 sul tuo documento non hai bisogno di utilizzare
l'entity, puoi direttamente usare "è".
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 09:49
Ciao Giovanni, grazie per la risposta.
Ma per la validazione W3C non è necessario usare è ?
Anche qui nel forum infatti questi caratteri speciali non vengono
visualizzati correttamente.
Ad ogni modo dato che mi seve cmq capire come funziona il comando di
sostituzione caratteri e anche sequenze di caratteri, mi sa dire come
fare.

Grazie mille.
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 10:19
(Received via mailing list)
Il giorno 01/giu/07, alle ore 09:49, Luigi ha scritto:

> Ma per la validazione W3C non è necessario usare è ?

Dipende dal charset. Se usi utf-8 no.

> Ad ogni modo dato che mi seve cmq capire come funziona il comando di
> sostituzione caratteri e anche sequenze di caratteri, mi sa dire come
> fare.

a = "mèrènda"
a.gsub("è", "`")
=> "m`r`nda"
C1f47304dd52d8b4c4ccace2d5606eda?d=identicon&s=25 Massimiliano Balestrieri (Guest)
on 2007-06-01 10:28
(Received via mailing list)
Il 01/06/07, Giovanni Intini <intinig@pme.it> ha scritto:
> > fare.
>
> a = "mèrènda"
> a.gsub("è", "&grave;")
> => "m&grave;r&grave;nda"



io ho installato il plugin in /vendor:
HtmlHelpers 1.1.1

ho incluso nel controller:

class ProductController < ApplicationController

  include Leftbee::HTMLHelpers

e sulla vista:
encode_entities(valore_da_encodare)


però han ragione loro.
basterebbe lavorare con utf-8.
e stare attenti a non salvare mai un file utf-8 con editors che non si
accorgono della codifica.
9daa9b4739a6e95078cbcfb624d7bb8e?d=identicon&s=25 David Welton (Guest)
on 2007-06-01 10:32
(Received via mailing list)
A proposito, qualcuno conosce un modo per fare il contrario?  Ok, a
parte l'ovvio sub "&egrave;" "e`"... qualche libreria che lo fa gia`?

--
David N. Welton
 - http://www.dedasys.com/davidw/

Linux, Open Source Consulting
 - http://www.dedasys.com/
8d4a94f890b9226726e6de7f71c4db49?d=identicon&s=25 Rob Clarke (Guest)
on 2007-06-01 10:36
(Received via mailing list)
sto usando il gem htmlentities (http://htmlentities.rubyforge.org/)
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 11:26
Ma perche' qua nel forum almeno io non vedo correttamente i caratteri
speciali?

esempio: è
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 11:27
....rettifico...
è si vede ma altri caratteri no...vedi il post di Massimiliano
Balestrieri?!?
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 11:29
(Received via mailing list)
Probabilmente perché vengono tagliati prima del post.

Il giorno 01/giu/07, alle ore 11:26, Luigi ha scritto:

>
> Ma perche' qua nel forum almeno io non vedo correttamente i caratteri
> speciali?
>
> esempio: è
C1f47304dd52d8b4c4ccace2d5606eda?d=identicon&s=25 Massimiliano Balestrieri (Guest)
on 2007-06-01 11:43
(Received via mailing list)
Il 01/06/07, Luigi <support@softwarewin.net> ha scritto:
>
> ....rettifico...
> è si vede ma altri caratteri no...vedi il post di Massimiliano
> Balestrieri?!?
>

altrochè millenium bug!
un giorno vedremo lettere accentate sputtanate ovunque... (addirittura
nelle
info in basso del digitale terrestre).

cmq. fin che non divento scemo preferisco la codifica &egrave;.

almeno sei sicuro che verrà visualizzata correttamente.

per chiarirci come mai il mio post perda le lettere accentate, io uso
gmail
x spedire voi?

l'header di gmail specifica utf-8.

dove si perde la codifica?

misteri del charset :)
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 11:47
Un'altra cosa...ovviamente tutto il testo di cui parlavo è sempre
caricato in un db mysql...non cambia nulla no?
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 12:01
(Received via mailing list)
Hmm credo dipenda da come è configurato mysql.

Il giorno 01/giu/07, alle ore 11:47, Luigi ha scritto:
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 12:30
è configurato per utf8-unicode.
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 13:13
Giovanni intini wrote:

> a = "mèrènda"
> a.gsub("è", "&grave;")
> => "m&grave;r&grave;nda"

Giovanni ma non funge???
mi il seguente errore:

 Showing app/views/admin/w3c.rhtml where line #4 raised:

compile error
C:/temp/INSTAN~1/rails_apps/it/config/../app/views/admin/w3c.rhtml:4:
syntax error, unexpected ';', expecting ')'
guide.description=guide.description.gsub("è","&egrave;")
                                                      ^
C:/temp/INSTAN~1/rails_apps/it/config/../app/views/admin/w3c.rhtml:6:
syntax error, unexpected $undefined, expecting kEND
_erbout.concat "\n"
                 ^
C:/temp/INSTAN~1/rails_apps/it/config/../app/views/admin/w3c.rhtml:6:
unterminated string meets end of file
C:/temp/INSTAN~1/rails_apps/it/config/../app/views/admin/w3c.rhtml:6:
syntax error, unexpected $end, expecting kEND

Extracted source (around line #4):

1: <% for guide in @guide%>
2: <%=@guide.title%>
3: <%
4: guide.description=guide.description.gsub("è","&egrave;")
5: guide.save
6: %>
7: <%end%>

Trace of template inclusion: /app/views/admin/w3c.rhtml
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 13:23
(Received via mailing list)
Il giorno 01/giu/07, alle ore 13:13, Luigi ha scritto:

Ad occhio non vedo l'errore, cmq ti assicuro che funziona, controlla
bene il codice che hai scritto, nel frattempo approfitto per
segnalarti una cosa che di sicuro non va:

* Non usare save nella view! La view è solo per presentare
informazioni. Se vuoi far si che la descrizione sia sempre
"entitizzata" metti nel modello

before_save :accented_to_entities

e poi

protected
def accented_to_entities
   self.description.gsub!("è", "&grave;")
end

In questo modo prima che il record venga salvato le accentate vengono
trasformate in entità e nella view puoi semplicemente richiamare
description senza bisogno di mischiare logica e presentazione.

Un altro appunto, di fatto solo stilistico, è che preferibilmente si
utilizza l'iteratore each e non il for quando si programma in ruby.
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 14:16
Il file w3c che sta nel view è temporaneo mi serve solo adesso per fare
aggiusti al db, poi lo cancellerò.

Alla soluzione che mi hai consigliato ci avevo anche pensato però se non
funziona la sostituzione che per il momento vorrei fare non funzionerà
neppure il    self.description.gsub!("覱uot;, "&grave;").
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 14:18
(Received via mailing list)
Luigi ha scritto:

Il problema non deriva di sicuro da quell'espressione, provala pure in
irb, deriva probabilmente dall'encoding della view.
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 14:40
...e cioè?
Cmq ho provato a caricare un file html con charset utf-8 ma non va
assolutamente bene perchè tutti i caratteri speciali vengono letti male
così come qui nel forum.
Invece con &egrave; è tutto a posto.

Non sto capendo veramente più nulla.
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 14:48
(Received via mailing list)
Luigi ha scritto:

Il file:
a) era salvato con encoding utf-8?
b) conteneva un doctype corretto ed una meta che specificasse utf-8 come
charset?

Se non sono valide ambo le cose è normale che non funzioni. Un documento
html deve specificare in che formato è salvato in modo che il browser
possa interpretralo correttamente.
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 15:13
Penso sia corretto:
--------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitiona...
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Software Windows - Guide e download gratis dei software per
windows</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-------------

no?
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-01 15:14
Mi sapete indicare un link dove leggere tutte le opzioni di gsub o tutto
quello che può fare il ruby con le stringhe?

Grazie
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 15:16
(Received via mailing list)
Luigi ha scritto:

Si, è corretto, l'editor che usi l'ha salvato in utf-8, giusto?
Dde61819bc154a68a11a41b605ff6b24?d=identicon&s=25 Giovanni Intini (Guest)
on 2007-06-01 15:19
(Received via mailing list)
Luigi ha scritto:

ri String#gsub, in alternativa,
http://www.ruby-doc.org/core/classes/String.html
Cbe503ad4dc0a47353b8dd04ea77a9fb?d=identicon&s=25 Stefano Guglielmetti (Guest)
on 2007-06-01 17:06
(Received via mailing list)
luigi, che editor usi?

la verifica piu rapida la puoi fare con notepad: prendi il file
incriminato, e fai salva con nome, scegliendo come codifica UTF-8

quello che giovanni sta cercando di dirti è che non conta solo la codifica
che tu dichiari, ma il formato in cui è codificato il file. non tutti gli
editor purtroppo supportano utf-8, però, caso strano, notepad si, per cui
con quello puoi fare la verifica al volo.

p.s. se usi rails, anche il controller deve essere salvato in utf-8


jek

________________________________

Da: ml-bounces@lists.ruby-it.org per conto di Giovanni Intini
Inviato: ven 01/06/2007 15.15
A: ml@lists.ruby-it.org
Oggetto: Re: [ruby-it] Re: Re: Re: Re: Re: Re: Re: Sos tituire è con è



Luigi ha scritto:

Si, è corretto, l'editor che usi l'ha salvato in utf-8, giusto?
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-02 01:14
Uso il RoRED.
Ragazzi comunque qualcosa si comincia a muovere scrivendo così:

@variabile=232.chr
@sub="&egrave;"
guide.description=guide.description.tr(@variabile,'&egrave;')
guide.save

Ruby aggancia la è nel db e però, arciderbolina (per non dire un'altra
cosa), la sostituisce solo con & e non con tutto &egrave;

che mi dite?
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-04 09:21
Ho fatto alcune prove di sostituzione di altri caratteri "semplici" con
&egrave; e la funzione gsub(/a/,"&egrave;"),  funziona perfettamente.
Il problema è che non riesce ad agganciare il carattere "è" ma perchè
non capisco.

Chi mi sa aiutare?

Vi ricordo che il db Mysql è in codifica UTF-8.
8d4a94f890b9226726e6de7f71c4db49?d=identicon&s=25 Rob Clarke (Guest)
on 2007-06-04 10:07
(Received via mailing list)
Prova con "\303\250" invece di 'è'.
Cbe503ad4dc0a47353b8dd04ea77a9fb?d=identicon&s=25 Stefano Guglielmetti (Guest)
on 2007-06-04 11:05
(Received via mailing list)
Luigi, hai provato a fare le conversioni delle entities con il tidy
anziché con gsub?

Ruby ha un binding verso il tidy del w3, si installa con gem install
tidy, ed è molto facile da usare

A quel punto ti serve tidylib.so se sei su linux, o tidy.dll se sei su
windows, e lui ti fa tutto il mestiere


Come costruire tidylib.so
http://softwaretrenches.com/2005/02/building_tidylibso.html

Qui si trova tidy.dll
http://dev.int64.org/tidy.html

jeok
8d4a94f890b9226726e6de7f71c4db49?d=identicon&s=25 Rob Clarke (Guest)
on 2007-06-04 11:27
(Received via mailing list)
Hai guardato al htmlentities gem? Ho mandato un link primo ma forse è
stato perso. Un esempio:

string =
"è così"coder = HTMLEntities.new
coder.encode(string, :named) -> "&egrave; cos&igrave;"
3e176ef8d32dbaa2769e3d131249f04b?d=identicon&s=25 Luigi (Guest)
on 2007-06-05 10:29
Ragazzi ho risolto:

nel file database.yml è necessario aggiungere la riga:

encoding: utf8

dopodichè la sostituzione con

.gsub(/è/,"&egrave;")

funziona perfettamente!

Grazie dell'aiuto.
8d4a94f890b9226726e6de7f71c4db49?d=identicon&s=25 Rob Clarke (Guest)
on 2007-09-25 23:01
(Received via mailing list)
Cbe503ad4dc0a47353b8dd04ea77a9fb?d=identicon&s=25 Stefano Guglielmetti (Guest)
on 2007-09-25 23:08
(Received via mailing list)
Cool pure questo!
This topic is locked and can not be replied to.