[AutoIT][Scite]Calltips und Syntax Highlighting

08/13/2009 20:28 Xereon#1
Eigene Calltips und eigenes Syntax Highlighting in Scite
_____________________________________________



Übersicht
  1. Vorwort
  2. Ändern der Userfiles
    1. Erstellen eines Calltips
    2. Text Highlighting eines Calltips
  3. Erstellen eigener Configfiles
    1. Änderen der Properties


1. Vorwort

Ein neues Tutorial von mir! Diesmal geht es darum wie man Scite beibringen
kann, das man gerne seine eigene Funktion auch gerne als Calltip hätte.
Wie das geht seht ihr gleich und lasst mich sagen es ist wirklich einfach ;)

Ein kurzes FAQ für jene, die noch Fragen offen haben:
  1. Was ist ein Calltip?
    Ein Calltip ist eine Art Notizzettel für eine Funktion!
    Er zeigt euch auf einen Blick, noch während ihr die Funktion schreibt, welche Parameter die Funktion besitzt und was diese Überhaupt macht.
    .
  2. Was bedeutet Syntax Highlighting?
    Syntax Highlighting bedeutet, dass man bestimmte Wörte wie zum Beispiel IF besonders makiert. Das kann wie in den Satz zuvor geschehen indem man einfach das Wort fett schreibt, oder aber auch indem das Wort farbig makiert zB rot.
    In den meisten Fällen wird jedoch beides benutzt.
    .
  3. Was zur Hölle ist Scite?
    Scite ist eine Entwicklungsplattform für unteranderen die beliebte Scriptsprache AutoIT.
    Für weitere Informationen:
    Google is your friend ;)




2. Ändern der Userfiles


2.1 Erstellen eines Calltips

Scite ist was das Andern der Configs angeht zwar nicht sehr benutzerfreundlich zu uns, gibt uns jedoch eine "offiziele" Möglichkeit eigene Calltips zu erstellen.
Öffnet die folgende Datei mit Scite
Code:
[COLOR="Red"]Scite\Api\au3.user.calltips.api[/COLOR]
Sollte die Datei nicht existieren, erstellt sie.

In dem Ordner Api werden alle Datein gespeichert die was mit Calltips zu tuen haben.
In der Datei au3.user.calltips.api stehen alle
Calltips, die von Usern erstellt worden sind.

Schreibt in die Datei folgendes und speichert dann:
Code:
_test("string",nummer,$variable)Das ist eine Testfunktion
So nun probiert dochmal in einem AutoItScript _test zu schreiben. Huch ist euch Scite zuvorgekommen?

2.2 Text Highlighting eines Calltips

So mit einen Calltip geben wir uns natürlich nicht zu Frieden.
Wir wollen diesen Calltip natürlich noch einfärben.
Öffnet jetzt die Datei(mit Scite):
Code:
[COLOR="Red"]Scite\Properties\au3.userudfs.properties[/COLOR]
Sollte sie nicht existieren, erstellt sie.

Diese Datei nimmt die gleiche Rolle wie die au3.user.calltips.api ein, jedoch ist sie für Farben zuständig.
Schreibt nun in die Datei:
Code:
au3.keywords.user.udfs= _test
Jede Funktion nach den = bekommt nun die Farbe der UDF Funktionen.
Wollt ihr eine weitere Funktion schreiben hängt ihr diese einfach dran.
Für ein Absatzt benutzt ihr ein \.

Natürlich können wir auch auf andere Farben zugreifen:
Code:
[COLOR="Navy"]au3.keywords.functions= [/COLOR] [COLOR="SeaGreen"];normale Funktionen[/COLOR]
[COLOR="Blue"]au3.keywords.keywords= [/COLOR]  [COLOR="SeaGreen"];Wörter wie: If,While,Endif,for,Dim.....[/COLOR]
[COLOR="Magenta"]au3.keywords.macros= [/COLOR]    [COLOR="SeaGreen"];Makros wie zB: @autoitversion[/COLOR]
[COLOR="Orange"]au3.keywords.sendkeys= [/COLOR]  [COLOR="SeaGreen"];Speziele Keys wie: {enter}, {F1}....[/COLOR]

3. Erstellen eigener Configfiles


3.1 Änderen der Properties

In der 2. Section haben wir glerent welche Files wir ändern müssen, damit Scite unsere Funktionen erkennt. Aber wenn wir zum Beispiel eine UDF schreiben ist ein einziger File eher ungewünscht. Damit keine Calltips von anderen UDFs gelöscht werden, müsste der User die Calltips per Copy and Past eintragen. Dies ist jedoch oft zu kompliziert, daher gibt es auch eine Möglichkeit um eigene Files zu verwenden.

Bennent eure Files, die ihr oben erstellt oder verändert habt, um, zB:
Code:
au3.user.calltips.api ---> au3.meineUDF.calltips.api
au3.user.calltips.api ---> meineUDF.calltips.api
au3.user.calltips.api ---> meineUDF.api
------------------------------------------------------
au3.userudfs.properties ---> au3.meineUDF.properties
au3.userudfs.properties ---> meineUDF.properties
Wie ihr die Datei nacher nennt ist egal solange die Dateiendung stimmt. Jedoch sollte der Übersicht zu liebe das Format beibelassen werden.

Nachdem ihr dies getan habt, startet Scite neu und guckt nach ob die Funktion _test noch ein Calltip hat. Wenn doch, versichert euch das eure alten Dateien wirklich umbenannt oder gelöscht sind.

Ruft nun folgende Datei mit Scite auf:
Code:
[COLOR="Red"]Properties\au3.properties[/COLOR]
Fügt am Ende folgendes ein:
Code:
[COLOR="MediumTurquoise"]#Eure UDF Import:[/COLOR]
import properties\au3.eureUDF
Damit wird die Datei mit den Properties also zB mit den Farbeinstellungen importiert, sie hieß ursprünglich au3.eureUDF.properties. Das .properties wird jedoch im Code weggelassen.

Um unsere eigentlichen Calltips jedoch zu importieren müsst ihr in Zeile
286 folgendes anhängen:
Code:
;$(SciteDefaultHome)\api\au3.eureUDF.calltips.api
Das ganze scheint zwar etwas aufwändiger, aber es separiert eure Calltips und lässt sich leichter mit einen Programm überwältigen, welches diese Aktionen für euch tut.




Schlußwort

Ich hoffe euch hat das Tutorial gefallen und ihr konntet etwas lernen.
Falls noch Fragen offen sind: :rtfm:
Solltet ihr jedoch wirklich verzweifeln stellt sie einfach in den Thread.


MfG

Xereon
12/03/2009 10:13 maikel maikel#2
danke hat mir sehr geholfen^^ wenn du weiter solche treads eröfnest dann werde ich bald ein geni im coding^^
11/06/2010 21:14 kingdeking#3
jo, ich hab mal ne frage. Wenn ich Ada als programmierpsrache auswähle, macht er keine einrückungen wenn ich schlüsselwörter wie if, etc. benutze. In der config ada.properties ist aber das automatische einrücken konfiguriert. Kann mir jmd helfen, scite ist voll der nazi
11/12/2010 17:11 oOEvolutionXiOo#4
Danke habe ich gebraucht als anfänger
11/12/2010 23:12 Syst3m_W1z4rd#5
Nice! Goodwork, +K anyways.
Just skimmed it and it looked decent :)