übersetzen ... ( z.b. a=Λ )

  • hallo alle ...

    ich wolte meine texte etwas hübscher machen und ein script schreiben das mir eine datei öffnet und jeden Buchstaben umschreibt in eine neue
    Datei wo aber statt einem a ein Λ steht ... (jetzt nur als beispiel)

    hab das auch soweit hingekriegt ...
    blos ...
    die texte überlappen sich ...
    teils kommt statt einem F ein G usw. ...
    jemand eine idee ? ?(

    da der code ...

    Spoiler anzeigen
    [autoit]

    Global $a, $b, $c, $d, $e, $f, $g, $h, $i, $j, $k, $l, $m, $n, $o, $p, $q, $r, $s, $t, $u, $v, $w, $x, $y, $z
    Global $load, $pfad, $load_file

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

    Dim $a = IniRead(@ScriptDir & "\config.ini","words","a","a")
    Dim $b = IniRead(@ScriptDir & "\config.ini","words","b","b")
    Dim $c = IniRead(@ScriptDir & "\config.ini","words","c","c")
    Dim $d = IniRead(@ScriptDir & "\config.ini","words","d","d")
    Dim $e = IniRead(@ScriptDir & "\config.ini","words","e","e")
    Dim $f = IniRead(@ScriptDir & "\config.ini","words","f","f")
    Dim $g = IniRead(@ScriptDir & "\config.ini","words","g","g")
    Dim $h = IniRead(@ScriptDir & "\config.ini","words","h","h")
    Dim $i = IniRead(@ScriptDir & "\config.ini","words","i","i")
    Dim $j = IniRead(@ScriptDir & "\config.ini","words","j","j")
    Dim $k = IniRead(@ScriptDir & "\config.ini","words","k","k")
    Dim $l = IniRead(@ScriptDir & "\config.ini","words","l","l")
    Dim $m = IniRead(@ScriptDir & "\config.ini","words","m","m")
    Dim $n = IniRead(@ScriptDir & "\config.ini","words","n","n")
    Dim $o = IniRead(@ScriptDir & "\config.ini","words","o","o")
    Dim $p = IniRead(@ScriptDir & "\config.ini","words","p","p")
    Dim $q = IniRead(@ScriptDir & "\config.ini","words","q","q")
    Dim $r = IniRead(@ScriptDir & "\config.ini","words","r","r")
    Dim $s = IniRead(@ScriptDir & "\config.ini","words","s","s")
    Dim $t = IniRead(@ScriptDir & "\config.ini","words","t","t")
    Dim $u = IniRead(@ScriptDir & "\config.ini","words","u","u")
    Dim $v = IniRead(@ScriptDir & "\config.ini","words","v","v")
    Dim $w = IniRead(@ScriptDir & "\config.ini","words","w","w")
    Dim $x = IniRead(@ScriptDir & "\config.ini","words","x","x")
    Dim $y = IniRead(@ScriptDir & "\config.ini","words","y","y")
    Dim $z = IniRead(@ScriptDir & "\config.ini","words","z","z")

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

    Dim $load = IniRead(@ScriptDir & "\config.ini","translate","pfad","nill")
    If $load = "nill" Then
    MsgBox(0,"ERROR","Keine Datei wurde ausgewählt." & @CRLF & _
    @CRLF & _
    "In der Datei config.ini muss die zu ladene Datei bestimmt werden{!}")
    Exit
    Else
    Dim $load_file = (@ScriptDir & "\" & $load & ".txt")
    EndIf

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

    Sleep(4000)
    HotKeySet("{ESC}","Exit_")
    $file = FileOpen($load_file,0)

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

    While 1
    Sleep(50)
    $var = FileRead($file, 1)
    If @error = -1 Then ExitLoop

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

    If $var = "a" Then
    Send($a)
    ElseIf $var = "b" Then
    Send($b)
    ElseIf $var = "c" Then
    Send($c)
    ElseIf $var = "c" Then
    Send($c)
    ElseIf $var = "d" Then
    Send($d)
    ElseIf $var = "e" Then
    Send($e)
    ElseIf $var = "f" Then
    Send($g)
    ElseIf $var = "g" Then
    Send($g)
    ElseIf $var = "h" Then
    Send($h)
    ElseIf $var = "i" Then
    Send($i)
    ElseIf $var = "j" Then
    Send($j)
    ElseIf $var = "k" Then
    Send($k)
    ElseIf $var = "l" Then
    Send($l)
    ElseIf $var = "m" Then
    Send($m)
    ElseIf $var = "n" Then
    Send($n)
    ElseIf $var = "o" Then
    Send($o)
    ElseIf $var = "p" Then
    Send($p)
    ElseIf $var = "q" Then
    Send($q)
    ElseIf $var = "r" Then
    Send($r)
    ElseIf $var = "s" Then
    Send($s)
    ElseIf $var = "t" Then
    Send($t)
    ElseIf $var = "u" Then
    Send($u)
    ElseIf $var = "v" Then
    Send($v)
    ElseIf $var = "w" Then
    Send($w)
    ElseIf $var = "x" Then
    Send($x)
    ElseIf $var = "y" Then
    Send($y)
    ElseIf $var = "z" Then
    Send($z)
    ElseIf $var = " " Then
    Send(" ")
    EndIf
    Sleep(50)
    Wend

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

    Exit_()
    Func exit_()
    FileClose($file)
    Exit
    EndFunc

    [/autoit]

    und die config.ini ...
    (muss unicode Format haben!)

    Spoiler anzeigen

    wäre nett wenn einer mit hilft ^^

    mfg tim

  • Soo jetzt aber:

    Spoiler anzeigen
    [autoit]

    $hGUI = GUICreate("", 120, 60)
    $hInput = GUICtrlCreateInput("", 10, 10, 100, 20)
    $hButton = GUICtrlCreateButton("OK", 10, 35, 100, 20)
    GUISetState()

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

    $aSnR = IniReadSection(@ScriptDir & "\config.ini", "words")
    If @error Then Exit MsgBox(0,"","Fehler beim lesen der ini")

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    Exit
    Case $hButton
    GUICtrlSetData($hInput, _Crypt(GUICtrlRead($hInput)))
    EndSwitch
    WEnd

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

    Func _Crypt($sString)
    For $i = 1 To $aSnR[0][0]
    $sString = _StringReplace($sString, $aSnR[$i][0], $aSnR[$i][1])
    Next
    Return StringRegExpReplace($sString, "\[([^\]]+)\]", "\1")
    EndFunc ;==>_Crypt

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

    Func _StringReplace($sString, $sSearch, $sReplace)
    Return StringRegExpReplace($sString, "(?<!\[)" & $sSearch & "(?!\])", "[" & $sReplace & "]")
    EndFunc ;==>_StringReplace

    [/autoit]
  • ah cool :thumbup:
    danke für die schnelle hilfe :D

    jetzt sind auch die klammern weg ;)

    dankeeeee ! :D