[Risolto] Correzione automatica

Discussioni sull'applicazione di videoscrittura
Rispondi
masfur

[Risolto] Correzione automatica

Messaggio da masfur »

Buongiorno.
Ho impostato nella Correzione Automatica una routine: se digito e^ il tutto mi viene convertito in ê.
Questo funziona perfettamente solo se la lettera è "a se stante".
Se fa parte di una parola, esempio brisê e digito brise^, la correzione non funzia.
C'è la possibilità di ovviare?
Grazie.
Ultima modifica di masfur il venerdì 2 marzo 2012, 12:22, modificato 1 volta in totale.
luctur
Messaggi: 34
Iscritto il: venerdì 2 marzo 2012, 11:20

Re: Correzione automatica

Messaggio da luctur »

Non mi viene in mente una soluzione con la correzione automatica, ma sarebbe accettabile una scorciatoia da tastiera collegata a una macro che inserisce il carattere speciale durante la digitazione?
Apache OpenOffice 4.0.1, Windows 8.1
masfur

Re: Correzione automatica

Messaggio da masfur »

Intanto grazie della risposta.
Ho anche visto questo post http://user.services.openoffice.org/it/ ... ione#p6392 nel quale c'è il mio stesso problema. Mi scuso se non ho cercato.
La scorciatoia da tastiera sarebbe il massimo: in effetti avevo tempo fa caricato una macro (AltKeyHandler mi sembra si chiami) che impostava shortcuts tramite il tasto ALT. A volte funzionava a volta no.
Poi era di difficile comprensione la sua installazione (almeno per uno con le mie conoscenze).
Se mi suggerisci una macro del genere sarebbe ottimale...
luctur
Messaggi: 34
Iscritto il: venerdì 2 marzo 2012, 11:20

Re: Correzione automatica

Messaggio da luctur »

masfur ha scritto:Intanto grazie della risposta.
Ho anche visto questo post http://user.services.openoffice.org/it/ ... ione#p6392 nel quale c'è il mio stesso problema. Mi scuso se non ho cercato.
La scorciatoia da tastiera sarebbe il massimo: in effetti avevo tempo fa caricato una macro (AltKeyHandler mi sembra si chiami) che impostava shortcuts tramite il tasto ALT. A volte funzionava a volta no.
Poi era di difficile comprensione la sua installazione 8almeno per uno con le mie conoscenze).
Se mi suggerisci una macro del genere sarebbe ottimale...
Sono semplicissime da creare manualmente, col registratore di macro.

Prima di tutto fai partire il registratore delle macro scegliendo Strumenti > Macro > Registra Macro dal menu

Apparirà l'apposita casella flottante.

Adesso scegli Inserisci > Caratteri speciali dal menù e seleziona la lettera che vuoi inserire, premendo alla fine il pulsante OK in questa finestra.

Ora hai tutto il codice della macro registrato e ti basta premere Termina registrazioni nella finestrella che si era aperta in precedenza.

A quel punto si aprirà la finestra di dialogo Macro OpenOffice.org Basic, metti il nome che preferisci al post di Main nell'apposita casella Nome macro, quindi premi il pulsane registra e la macro sarà completa e disponibile.

Per collegarla a una scorciatoia da tastiera scegli Strumenti > Personalizza > Tastiera nella barra dei menù.

Apparirà l'apposita finestra di dialogo.

Nel riquadro Funzioni - Categoria è presente in fondo la voce Macro di OpenOffice.org apri tutte le sezioni fino a user - standard - module1 e troverai elencata la tua macro.

Selezionala nel riquadro Funzioni e scegli nell'apposita sezione la scorciatoia da tastiera che preferisci. Una volta fatto questo, premi il pulsante Cambia e la scorciatoia sarà abbinata alla macro.

E' più difficile e lungo spiegarlo che farlo. ;)

Questa sistema funziona sempre.

Attenzione però che inserisce la lettera nel font (carattere) che era impostato quando hai aperto la finestra "Inserisci carattere". Se scrivi spesso in caratteri diversi da quelli standard, può essere necessario applicare lo stile manualmente o creare una macro collegata a un'altra scorciatoia che lo applichi automaticamente.
Apache OpenOffice 4.0.1, Windows 8.1
Avatar utente
Robert Tucker
Messaggi: 210
Iscritto il: domenica 21 marzo 2010, 11:54
Località: Manchester, UK

Re: Correzione automatica

Messaggio da Robert Tucker »

Una macro:

Codice: Seleziona tutto

REM  *****  BASIC  *****

Sub insertUnicodeCharacter

Dim doc as object
Dim controller as object
Dim textviewcursor as object
Dim character as String

' get current document -> controller -> view cursor
doc = ThisComponent
controller = doc.getCurrentController()
textviewcursor = controller.getViewCursor()

' chr expect an integer value, clng converts a hex value to long
character = chr(clng("&H00ea"))

' insert character at the current cursor position
textviewcursor.setString(character)

' move cursor behind
textviewcursor.goRight(1, false)

End Sub
http://codesnippets.services.openoffice ... acter.snip

Su Windows:

http://allchars.zwolnet.com/
http://vulpeculox.net/ax/

Su Linux:

<tasto compose>+^+e
http://www.fabule.it/caratteri.htm

Su OpenOffice:

http://extensions.services.openoffice.o ... Characters
http://extensions.services.openoffice.o ... accentuate
LibreOffice 7.x.x su Arch e Fedora.
masfur

Re: Correzione automatica

Messaggio da masfur »

Ho seguito il metodo di luctur e tutto funziona alla perfezione. Ho perfino associato la combinazione di tasti che volevo. Ottimo! Grazie!
Ho visto poi il post di Robert Tucker. Ora vedo.
Grazie a tutti.
Avatar utente
lucky63
Volontario molto attivo
Volontario molto attivo
Messaggi: 3094
Iscritto il: martedì 18 maggio 2010, 17:01

Re: [Risolto] Correzione automatica

Messaggio da lucky63 »

In alternativa alle macro si può inserire direttamente il carattere ê

In Windows:
ALT + 0234

In Ubuntu (Gnome)
CTRL+SHIFT+u+ea+invio
Il carattere u deve essere minuscolo
i caratteri ea possono essere minuscoli o maiuscoli
masfur

Re: [Risolto] Correzione automatica

Messaggio da masfur »

Ancora una piccola precisazione.
Giustamente luctur mi informa che la macro creata, inserirà un simbolo con la formattazione corrente al momento della registrazione della macro (font, altezza font, ecc).
In effetti è così, ma guardando il listato della macro creata, penso si possa risolvere:

Codice: Seleziona tutto

rem ----------------------------------------------------------------------
dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Symbols"
args1(0).Value = "ê"
args1(1).Name = "FontName"
args1(1).Value = "Droid Serif"
basta modificare (rimuovere) le righe della formattazione, così diventerà

Codice: Seleziona tutto

rem ----------------------------------------------------------------------
dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Symbols"
args1(0).Value = "ê"
Tutto funzionerà con la formattazione-caratteri corrente.
luctur
Messaggi: 34
Iscritto il: venerdì 2 marzo 2012, 11:20

Re: [Risolto] Correzione automatica

Messaggio da luctur »

Ottima precisazione, fa risparmiare tempo e righe di codice. :super:
Apache OpenOffice 4.0.1, Windows 8.1
Rispondi