Chatkürzelübersetzer

  • Hab heute mal das Script aus Langeweile gemacht, bis jetzt können aber nur Kürzel, die mit einem Sonderzecihen, einem a oder b beginnen übersetzt werden, da ich noch nicht alle IniWrite's drin hab. Aber ein Updater ist natürlich auch dabei.
    Script:

    Spoiler anzeigen
    [autoit]

    #RequireAdmin
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_UseUpx=n
    #AutoIt3Wrapper_Res_Fileversion=1.0.0.2
    #AutoIt3Wrapper_Res_Language=1031
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    ; http://de.wikipedia.org/wiki/Liste_von…28Netzjargon%29
    Global $ashort
    Global $aGUI
    Global $aenglish
    Global $agerman
    RegWrite("HKEY_CLASSES_ROOT\chat", "path", "REG_SZ", @ScriptFullPath)
    If Not FileExists("data.chat") Then notfileexists()
    Opt ("GUIOnEventMode", "1")
    $hGUI = GUICreate("Chatkürzelübersetzer", 275, 149, 192, 124)
    GUISetOnEvent(-3, "_exit")
    $hMenu = GUICtrlCreateMenu("Menü")
    GUICtrlCreateMenuItem("Hinzufügen...", $hMenu)
    GUICtrlSetOnEvent(-1, "createnew")
    GUICtrlCreateMenuItem("", $hMenu)
    GUICtrlCreateMenuItem("Über", $hMenu)
    GUICtrlSetOnEvent(-1, "about")
    $short = GUICtrlCreateInput("", 112, 16, 150, 21)
    GUICtrlCreateLabel("Chatabkürzung:", 16, 18, 79, 17)
    GUICtrlCreateLabel("Englisch:", 16, 50, 47, 17)
    $english = GUICtrlCreateInput("", 112, 48, 150, 21, 2049)
    GUICtrlCreateLabel("Deutsch:", 16, 84, 47, 17)
    $german = GUICtrlCreateInput("", 112, 80, 150, 21, 2049)
    GUISetState(@SW_SHOW)
    AdlibRegister("refresh", 1000)
    While sleep(200)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func refresh()
    $cshort=GUICtrlRead($short)
    GuiCtrlSetData($english, IniRead("data.chat", $cshort, $cshort&"english", ""))
    GuiCtrlSetData($german, IniRead("data.chat", $cshort, $cshort&"german", ""))
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func about()
    MsgBox(64, "Credits", "Abkürzungen: Wikipedia")
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _exit()
    MsgBox(64, "Credits", "Abkürzungen: Wikipedia")
    Exit
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func notfileexists()
    ;sonderzeichen
    IniWrite("data.chat", "2F4U", "2F4Uenglish", "Too Fast For You")
    IniWrite("data.chat", "2F4U", "2F4Ugerman", "Zu schnell für dich")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "2L8", "2F4english", "Too Late")
    IniWrite("data.chat", "2L8", "2F4german", "Zu spät")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "4U", "4Uenglish", "For you")
    IniWrite("data.chat", "4U", "4Ugerman", "Für dich")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "4YEO", "4YEOenglish", "For Your Eyes Only")
    IniWrite("data.chat", "4YEO", "4YEOgerman", "Nur für deine Augen")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "FYEO", "FYEOenglish", "For Your Eyes Only")
    IniWrite("data.chat", "FYEO", "FYEOgerman", "Nur für deine Augen")

    [/autoit] [autoit][/autoit] [autoit]

    ;a
    IniWrite("data.chat", "AAMOF", "AAMOFenglish", "As A Matter Of Fact")
    IniWrite("data.chat", "AAMOF", "AAMOFgerman", "Tatsache ist, ...")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "ACC", "ACCenglish", "Account")
    IniWrite("data.chat", "ACC", "ACCgerman", "Benutzerkonto")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "ACK", "ACKenglish", "Acknowledgment")
    IniWrite("data.chat", "ACK", "ACKgerman", "Zustimmung / Bestätigung")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "AFAIC", "AFAICenglish", "As Far As I'm Concerned")
    IniWrite("data.chat", "AFAIC", "AFAICgerman", "Soweit es mich betrifft")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "AFAIK", "AFAIKenglish", "As Far As I Know")
    IniWrite("data.chat", "AFAIK", "AFAIKgerman", "Soviel ich weiß")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "AFAIR", "AFAIRenglish", "As Far As I Remember")
    IniWrite("data.chat", "AFAIR", "AFAIRgerman", "Soweit ich mich erinnern kann")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "AFK", "AFKenglish", "Away from Keyboard")
    IniWrite("data.chat", "AFK", "AFKgerman", "Nicht an der Tastatur")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "ASAP", "ASAPenglish", "As Soon As Possible")
    IniWrite("data.chat", "ASAP", "ASAPgerman", "So bald wie möglich")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "ASL", "ASLenglish", "Age Sex Location")
    IniWrite("data.chat", "ASL", "ASLgerman", "Alter, Geschlecht, Ort?")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "A/S/L", "A/S/Lenglish", "Age Sex Location")
    IniWrite("data.chat", "A/S/L", "A/S/Lgerman", "Alter, Geschlecht, Ort?")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "ATM", "ATMenglish", "At The Moment")
    IniWrite("data.chat", "ATM", "ATMgerman", "Jetzt gerade / Im Moment")
    ;b
    IniWrite("data.chat", "B2K", "B2Kenglish", "Back To Keyboard")
    IniWrite("data.chat", "B2K", "B2Kgerman", "Zurück an der Tastatu")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BTK", "BTKenglish", "Back To Keyboard")
    IniWrite("data.chat", "BTK", "BTKgerman", "Zurück an der Tastatu")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "B2T", "B2Tenglish", "Back To Topic")
    IniWrite("data.chat", "B2T", "B2Tgerman", "Zurück zum Thema")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BTT", "BTTenglish", "Back To Topic")
    IniWrite("data.chat", "BTT", "BTTgerman", "Zurück zum Thema")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BB", "BBenglish", "Bye Bye")
    IniWrite("data.chat", "BB", "BBgerman", "Auf Wiedersehen")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BBIAB", "BBIABenglish", "Be Back In A Bit")
    IniWrite("data.chat", "BBIAB", "BBIABgerman", "Bin gleich wieder da")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BBL", "BBLenglish", "Be Back Later")
    IniWrite("data.chat", "BBL", "BBLgerman", "Bin später wieder da")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BBS", "BBSenglish", "Be Back Soon")
    IniWrite("data.chat", "BBS", "BBSgerman", "Bin bald zurück")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BD", "BDenglish", "----")
    IniWrite("data.chat", "BD", "BDgerman", "Bis dann")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BF", "BFenglish", "----")
    IniWrite("data.chat", "BF", "BFgerman", "Beste Freunde")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BG", "BGenglish", "Biggrin / ----")
    IniWrite("data.chat", "BG", "BGgerman", "Breitgrins / Bis gleich")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BOFH", "BOFHenglish", "Bastard Operator From Hell")
    IniWrite("data.chat", "BOFH", "BOFHgerman", "Bastard-Systemadministrator aus der Hölle")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BRB", "BRBenglish", "Be Right Back")
    IniWrite("data.chat", "BRB", "BRBgerman", "Bin gleich wieder da")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite("data.chat", "BTW", "BTWenglish", "By The Way")
    IniWrite("data.chat", "BTW", "BTWgerman", "Übrigens")
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func createnew()
    $aGUI = GUICreate("Hinzufügen", 218, 199, 192, 124)
    GUISetOnEvent(-3, "closeadd")
    GUICtrlCreateLabel("Kürzel:", 8, 18, 36, 17)
    $ashort = GUICtrlCreateInput("", 64, 16, 121, 21)
    GUICtrlCreateLabel("Englisch:", 8, 58, 47, 17)
    $aenglish = GUICtrlCreateInput("", 64, 56, 121, 21)
    GUICtrlCreateLabel("Deutsch", 8, 98, 44, 17)
    $agerman = GUICtrlCreateInput("", 64, 96, 121, 21)
    $save = GUICtrlCreateButton("Speichern", 80, 134, 75, 25)
    GUICtrlSetOnEvent(-1, "save")
    GUISetState(@SW_SHOW)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func save()
    $ashort=GUICtrlRead($ashort)
    $aenglish=GUICtrlRead($aenglish)
    $agerman=GUICtrlRead($agerman)
    IniWrite("data.chat", $ashort, $ashort&"english", $aenglish)
    IniWrite("data.chat", $ashort, $ashort&"german", $agerman)
    GUIDelete($aGUI)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func closeadd()
    GUIDelete($aGUI)
    EndFunc

    [/autoit]

    Updater:

    Spoiler anzeigen
    [autoit]

    #RequireAdmin
    HttpSetUserAgent('blabla')
    $cfile=RegRead("HKEY_CLASSES_ROOT\chat", "path")
    $cfile=FileGetVersion($cfile)
    $cver=_INetGetSource("http://ineluki.bplaced.net/version.html")
    If $cfile<>$cver Then
    $q=MsgBox(68, "Neue Version verfügbar", "Es ist eine neue Version verfügbar."&@CRLF&"Möchten sie diese jetzt downloaden?")
    If $q = 7 Then Exit
    InetGet("http://ineluki.bplaced.net/Chat.exe", RegRead("HKEY_CLASSES_ROOT\chat", "path"), 1)
    MsgBox(64, "Download abgeschlossen", "Das Programm wurde erfolgreich geupdatet.")
    Else
    MsgBox(64, "Keine neue Version verfügbar", "Ihre Version ist die aktuellste.")
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Func _INetGetSource($s_URL, $bString = True)
    Local $sString = InetRead($s_URL, 1)
    Local $nError = @error, $nExtended = @extended
    If $bString Then $sString = BinaryToString($sString)
    Return SetError($nError, $nExtended, $sString)
    EndFunc ;==>_INetGetSource

    [/autoit]

    Achtung: Der Updater funktioniert erst, wenn vorher einmal auf dem Computer das Hauptscript gestartet wurde und das Hauptscript komplimiert ist.
    Kritik, Anregungen und was weiß ich sind gerne gesehen.

    3 Mal editiert, zuletzt von Ineluki (5. Juni 2014 um 14:14)

  • beim Codeüberfliegen sind mir ein paar Ungereimtheiten aufgefallen:

    [autoit]

    IniWrite("data.chat", "2L8", "2F4english", "Too Late")
    IniWrite("data.chat", "2L8", "2F4german", "Zu spät")

    [/autoit]


    muss angepasst werden.

    [autoit]

    IniWrite("data.chat", "BF", "BFenglish", "----")
    IniWrite("data.chat", "BF", "BFgerman", "Beste Freunde")

    [/autoit]


    Kann mit Best Friends übersetzt werden!
    Zusätzlich wäre eine Gleichmäßigkeit gut, indem alle englischen
    Begriffe groß geschrieben werden.

    Sry, habs verallgemeinert...
    War nur eine Unstimmigkeit :rolleyes:

    Zitat

    IniWrite("data.chat", "AFK", "AFKenglish", "Away from Keyboard")


    Trotz der kleinen Kritik muss ich sagen, dass ich die Idee ganz interessant finde ;) !

    Wer immer nur das tut, was er bereits kann - wird auch immer nur das bleiben, was er bereits ist!

    Einmal editiert, zuletzt von XovoxKingdom (14. Juni 2010 um 17:33)

  • Hey. Änder das mal:

    [autoit]

    Else
    MsgBox(64, "Keine neue Version verfügbar", "Ihre Version ist die aktuellste.
    EndIf

    [/autoit]


    zu

    [autoit]

    Else
    MsgBox(64, "Keine neue Version verfügbar", "Ihre Version ist die aktuellste.")
    EndIf

    [/autoit]


    oder (finde ich besser)

    [autoit]

    Else
    MsgBox(64, "Chatkürzelübersetzer", "Ihre Version ist die aktuellste.")
    EndIf

    [/autoit]

    Aber noch besser ist, wenn der User erst garnicht informiert wird, ob es eine neuere Version gibt, außer wenn er den Update manuell aufruft.

    Nur keine Hektik - das Leben ist stressig genug

  • Du solltest vlt die abkürzungen in arrays abspeichern und dann mit for einbinden