Sedillator - scapati de diacriticele cu virgula in clipboard
Scris: 01 Feb 2013, 23:35
Salut
M-am enervat foarte tare cand am vazut azi ca google translate foloseste noile diacritice cu virgula asa ca am creat un script in autoit care sa transforme automat in clipboard diacriticele cu virgula in diacritice cu sedila.
Practic, cu utilitarul pornit in system tray copiati un text si, daca contine diacritice noi, acestea vor fi transformate automat dupa care veti primi un mesaj de tipul baloon tip si o avertizare sonora. Apoi puteti face paste unde doriti cu textul gata inlocuit sau puteti folosi functia read clipboard din jaws - presupun ca exista asa ceva desi nu stiu sigur - ca sa cititi textul.
Daca doriti sa il testati descarcati Sedillator.exe
Pun mai jos codul utilitarului daca doriti sa il modificati in scopuri personale:
Mentionez ca pentru o compilare corecta fisierul au3 trebuie sa fie UTF-8.
Toate cele bune!
Campus
M-am enervat foarte tare cand am vazut azi ca google translate foloseste noile diacritice cu virgula asa ca am creat un script in autoit care sa transforme automat in clipboard diacriticele cu virgula in diacritice cu sedila.
Practic, cu utilitarul pornit in system tray copiati un text si, daca contine diacritice noi, acestea vor fi transformate automat dupa care veti primi un mesaj de tipul baloon tip si o avertizare sonora. Apoi puteti face paste unde doriti cu textul gata inlocuit sau puteti folosi functia read clipboard din jaws - presupun ca exista asa ceva desi nu stiu sigur - ca sa cititi textul.
Daca doriti sa il testati descarcati Sedillator.exe
Pun mai jos codul utilitarului daca doriti sa il modificati in scopuri personale:
Cod: Selectaţi tot
#region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Compression=0
#AutoIt3Wrapper_UseUpx=n
#endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <Misc.au3>
#include <Constants.au3>
_Singleton("Sedillator")
Global $_Enabled = True
Global $_nrReplacements = 0
Local $converted
Global $_titluProgram = "Sedillator"
Opt("TrayMenuMode", 1)
TraySetIcon("shell32.dll", 243)
SoundPlay(@WindowsDir & "\Media\chimes.wav")
TrayTip($_titluProgram, $_titluProgram&" este activ!"&@CR&"Diacriticele noi din clipboard vor fi modificate automat!", 10, 1)
TraySetToolTip($_titluProgram)
$menu_About = TrayCreateItem("Despre " & $_titluProgram)
$menu_Enabled = TrayCreateItem("Dezactivare " & $_titluProgram)
$menu_Exit = TrayCreateItem("Ieşire")
While 1
$msg = TrayGetMsg()
Select
Case $msg = $menu_About
MsgBox(64, "Despre " & $_titluProgram, $_titluProgram & @CR & "Program creat de Campus!" & @CR & "Înlocuieşte automat în clipboard diacriticele cu virgulă" & @CR & "cu cele cu sedilă.")
TrayItemSetState($msg, $TRAY_UNCHECKED)
Case $msg = $menu_Enabled
Switch $_Enabled
Case True
$_Enabled = False
TrayTip($_titluProgram, "Monitorizare clipboard dezactivată!", 10, 1)
TraySetToolTip($_titluProgram&" inactiv")
Case False
$_Enabled = True
TrayTip($_titluProgram, "Monitorizare clipboard activată!", 10, 1)
TraySetToolTip($_titluProgram)
EndSwitch
Case $msg = $menu_Exit
$iMsgBoxAnswer = MsgBox(36, $_titluProgram, "Sigur ieşiţi din program?" & @CRLF & "De acum înainte diacriticele nu vor mai fi modificate în clipboard.")
Select
Case $iMsgBoxAnswer = 6 ;Yes
Exit
Case $iMsgBoxAnswer = 7 ;No
TrayItemSetState($msg, $TRAY_UNCHECKED)
EndSelect
EndSelect
If $_Enabled = True Then
$text = ClipGet()
If IsString($text) Then
If $text <> $converted Then
$converted = _RomanianCedilla($text)
If $_nrReplacements <> 0 Then
SoundPlay(@WindowsDir & "\Media\chimes.wav")
ClipPut($converted)
TrayTip("Clipboard modificat", $_nrReplacements & " diacritice au fost modificate in clipboard", 10, 1)
$_nrReplacements = 0
EndIf
EndIf
EndIf
EndIf
WEnd
Func _RomanianCedilla($text)
Local $ra[8] = ["Ș", "Ş", "ș", "ş", "Ț", "Ţ", "ț", "ţ"]
For $i = 0 To 6 Step 2
$text = StringReplace($text, $ra[$i], $ra[$i + 1], 0, 1)
$_nrReplacements += @extended
Next
Return $text
EndFunc ;==>_RomanianCedilla
Toate cele bune!
Campus