You are not logged in.

Dear visitor, welcome to Runes of Magic EU. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

1

Monday, July 30th 2012, 4:13am

RoM Lua API AutoCompletion for Notepad++

Notepad++ Function AutoCompletion Generator for Runes of Magic Functions
by Noguai
----------------------------------------------------------------------------------


Ein ellenlanger Name für ein kleines Tool welches ich heute in einer ersten benutzbaren Version erstellt habe. Notepad++ ist eigentlich ein sehr schöner, gut bedienbarer Editor mit dem viele hier ihre Addons schreiben. Leider bietet der Editor für Lua keine Funktionsvervollständigung an. Die Runes of Magic Funktionen findet man sowieso nirgends. Abgesehen davon das jeder Funktionsname vollständig und fehlerfrei von Hand getippt werden will ist das ständige Wechseln zwischen Browser und Editor ein weiterer bremsender Faktor bei der Addonerstellung. Das soll dieses Tool lösen.

Um eine Autovervollständigung in Notepad++ zu integrieren muss ein wohlsortiertes XML file erstellt werden, das alle möglichen Funktionen auflistet, welche bei Bedarf auch noch dort eine Beschreibung für den QuickTip verpasst bekommen. Diese Daten im benötigten Format zu erstellen und aktuell zu halten ist allerdings eine ungeheuerliche Arbeit. NPP_RoM_AutoCompl_Gen, bedient sich einer Quelle die meisten von euch hier kennen: www.theromwiki.com. Mit seiner Liste aller Funktionen haben dort einige Leute eine ziemlich ausführliche Dokumentation erstellt, die in vielen Fällen auch sehr hilfreich ist, vor allem als Neuling. Diese Liste wird heruntergeladen, der HTML Quellcode nach Funktionsnamen und ihren Beschreibungslinks durchsucht und im RAM zwischengespeichert. Anschließend wird jeder Link überprüft ob dahinter eine verfügbare Beschreibung steckt. Ist dies der Fall wird diese ebenfalls heruntergeladen und in's passende Format gebacht. Zum schluss werden Funktionsnamen und Beschreibung in der XML Datei sortiert eingetragen, zusammengefasst und abgespeichert.
----------------------------------------------------------------------------------


Installation:

Das heruntergeladene Archiv an einem gewünschten Zielort entpacken und die .exe Datei ausführen.
Darauf achten das das Programm durch die Firewall Zugriff auf das Internet bekommt. (Kann beim ersten Start einen kleinen Fehler verursachen)

Die XML Datei mit den Daten zur Autovervollständigung wird am Speicherort der .exe abgelegt. Sie muss nach "Programme (x86)\Notepad++\plugins\APIs" verschoben werden. Darauf achten das in Notepad++ Lua als Sprache ausgewählt ist.
----------------------------------------------------------------------------------


Screenshots:

index.php?page=Attachment&attachmentID=114838index.php?page=Attachment&attachmentID=114841index.php?page=Attachment&attachmentID=114844index.php?page=Attachment&attachmentID=114847index.php?page=Attachment&attachmentID=114853index.php?page=Attachment&attachmentID=114856index.php?page=Attachment&attachmentID=114850
----------------------------------------------------------------------------------


Download:
Im Anhang

Die Daten für die Standard Lua Funktionen stammen von http://retroaffect.com/blog/190/A_Lua_La…_for_Notepad__/
Noguai has attached the following files:
  • Scr_01.JPG (33.7 kB - 222 times downloaded - latest: Jul 31st 2017, 11:27pm)
  • Scr_02.JPG (86.26 kB - 223 times downloaded - latest: Jul 31st 2017, 11:26pm)
  • Scr_03.JPG (58.13 kB - 219 times downloaded - latest: Jul 31st 2017, 11:26pm)
  • Scr_04.JPG (82.84 kB - 202 times downloaded - latest: Jul 31st 2017, 11:26pm)
  • Scr_05.JPG (422.49 kB - 153 times downloaded - latest: Jul 31st 2017, 11:27pm)
  • Scr_06.JPG (422.58 kB - 215 times downloaded - latest: Jul 31st 2017, 11:26pm)
  • Scr_07.JPG (416.02 kB - 163 times downloaded - latest: Feb 3rd 2017, 4:48am)
  • Notepad++ RoM AutoCompletion.zip (53.63 kB - 55 times downloaded - latest: Jan 8th 2017, 6:28am)
  • Notepad++ RoM AutoCompletion v1.1.zip (67.39 kB - 156 times downloaded - latest: Mar 19th 2018, 4:05pm)

2

Monday, July 30th 2012, 4:34am

Ohje, du hast definitiv zu viel Zeit. ;) Und schwarzer Hintergrund?? Ernsthaft?? So oft, wie ich aktuell da drauf schaue, würde ich vermutlich schon blind sein. :P

3

Monday, July 30th 2012, 9:02am

Hallo Noguai,

das ist mal eine echt coole Idee! Mich hat es immer schon genervt, dass es im Notepad++ für lua keine AutoCompletion gibt. Besonders, wenn lua für einen noch neu ist und man jede Funktion noch suchen muss, hilft das sicher sehr. Also großes Lob und Danke! :-)

Wie hast du vor mit Aktualisierungen der API umzugehen? Das xml neu erstellen und hier posten? (dann frag ich jetzt nicht nach den Sourcen *g*)

ad Xzandro: Ist so eine Sache mit dem schwarzen Hintergrund. Heutzutage werden aus Entwicklertools ja gerne mal Designertools. Und dann wird das Farbschema - warum auch immer - in den Standardeinstellungen meistens sehr dunkel oder schwarz. Vielleicht liegt es ja daran, dass die meisten Monitore im Auslieferungszustand so hell eingestellt sind, dass sie dir fast die Sehnerven wegbrennen. Dann ist schwarz auf einmal "ergonomisch" :--)

4

Monday, July 30th 2012, 12:18pm

Quoted from "Xzandro;4273417"

Ohje, du hast definitiv zu viel Zeit. ;) Und schwarzer Hintergrund?? Ernsthaft?? So oft, wie ich aktuell da drauf schaue, würde ich vermutlich schon blind sein. :P
Naja, wer ist denn da noch so spät online? ;) Und ja schwarzer Hintergrund, denn ich habe offensichtlich nicht die Probleme weiße Schrift auf schwarzem Hintergrund zu lesen. Augen schmerzen nicht, jucken nicht und scharf seh ich auch. :D

Quoted from "Supporter77;4273474"

Hallo Noguai,

das ist mal eine echt coole Idee! Mich hat es immer schon genervt, dass es im Notepad++ für lua keine AutoCompletion gibt. Besonders, wenn lua für einen noch neu ist und man jede Funktion noch suchen muss, hilft das sicher sehr. Also großes Lob und Danke! :-)

Wie hast du vor mit Aktualisierungen der API umzugehen? Das xml neu erstellen und hier posten? (dann frag ich jetzt nicht nach den Sourcen *g*)

ad Xzandro: Ist so eine Sache mit dem schwarzen Hintergrund. Heutzutage werden aus Entwicklertools ja gerne mal Designertools. Und dann wird das Farbschema - warum auch immer - in den Standardeinstellungen meistens sehr dunkel oder schwarz. Vielleicht liegt es ja daran, dass die meisten Monitore im Auslieferungszustand so hell eingestellt sind, dass sie dir fast die Sehnerven wegbrennen. Dann ist schwarz auf einmal "ergonomisch" :--)
Ich gehe mit Aktualisierungen im Wiki gar nicht um. Für jeden dem es wichtig ist aktuelle Daten in der AutoCompletion zu haben kann sich mit dem Kommandozeilentool eine neue XML erstellen
Der Source ist momentan noch eher ein "proof of concept" (Ja das im Hintergrund ist Office 2013):
index.php?page=Attachment&attachmentID=114793
Noguai has attached the following file:
  • Source.jpg (371.47 kB - 981 times downloaded - latest: Jul 31st 2017, 11:29pm)

Posts: 13,966

Occupation: Fachinformatiker Anwendungsentwicklung

  • Send private message

5

Monday, July 30th 2012, 1:18pm

Ja, MSVS aufn screen :D

Naja, muss mir ma N++ draufhauen heute abend.

Ob sowas auch für MSVS nöglich ist brauhc ich ja wohl nicht fragen, wird seinen Grund haben dass dus für N++ machst ;)

Bist du berúflich eig auch Programmierer, das dus so drauf hast (C# ftw xD)^^
Facebook RoM Gruppe!

M[0]/H[0]/P[0]/C[0]/K[0]/S[0]


Danke UA für die Sig :)

SO-Potting!

6

Monday, July 30th 2012, 1:34pm

Ob das für MS VisualStudio möglich ist? Keine Ahung, wollte mal ein paar Lua Plugins für MS VS installieren und das ging nicht da ich noch nur die Express Variante habe. Mal schauen ob ich demnächst vllt mit MS DreamSpark an die Professional Varaiante drankomme. Außerdem hab ich keine Ahnung von VisualStudio Erweiterungen.

Nein ich bin beruflich kein Programmierer. Im Moment arbeite ich garnicht. (ändert sich in einem Monat) Ich habe das noch nicht mal von jemandem wirklich gelernt bekommen sondern Stunden das Internet studiert und dann mit erst mit Lua (Notepad++), dann Java (NetBeans) und schließlich C# (VisualStudio) rumprobiert.
Ich soll viel auf dem Kasten haben? Naja, mein Code ist zwar doch besser geworden, aber wenn du sagen willst das es jemand drauf hat solltest du das besser an McGaerty richten, denn der hat's wirklich drauf. :D

P.S.: Wollte diesen Post gerade abschicken und bekomme als Fehler weil ich automatisch abgemeldet wurde:

Quoted

The following errors occurred with your submission

  1. You have been banned for the following reason:
    No reason was specified.

    Date the ban will be lifted: Never

Ist ja fast genauso gut wie meine kurzzeitigen Adminrechte im US Forum.

Posts: 13,966

Occupation: Fachinformatiker Anwendungsentwicklung

  • Send private message

7

Monday, July 30th 2012, 1:43pm

Hmm, weißt do noch wo du die Lua Plugins gefunden hast? habe nicht die Express Version (MSDNAA ;)) und könnte es ja mal versuchen.
Hmm ich mache Ausbildung (fast 2tes Jahr beginn) und verzweifle an lua fast, autsch^^
Bei mir fings erst mit c/c++ im Berufskolleg (BKI an), dann seit der Ausbildung C#.

Wie geht ihr da vor beim durchforsten? Ich könnte es mir so vorstellen: beispiele suchen, selsbt nachprogrammieren (ohne C&P) und dann ka. Mir fehlts halt eher an den Ideen WAS man "entwickeln" könnte zum üben :(

Ein gebannt der schreibt und Adminrechte hatte xD

Man, wie schnell sich wegen sowas OT entwickelt, sry :(
Facebook RoM Gruppe!

M[0]/H[0]/P[0]/C[0]/K[0]/S[0]


Danke UA für die Sig :)

SO-Potting!

8

Monday, July 30th 2012, 3:10pm

Ja, steht noch im Verlauf:
Eines: http://visualstudiogallery.msdn.microsof…b-00672bb051ad/
Soll besser sein: http://visualstudiogallery.msdn.microsof…6-d876cdbb3417/
Sollten auch im Erweiterungs-Manager in Visual Studio zu finden sein, beides ging bei mir nicht. Der Erweiterungs-Manager findet gar nichts und die Datei kann ich nicht installieren: "Diese Erweiterung kann auf keinen derzeit installierten Produkten installiert werden"

In der Anfangsphase habe ich eigentlich nur Addons so modifiziert, dass sie besser meinen Bedürfnissen entsprachen. Diese Modifikationen wurden dann immer komplizierter und umfangreicher. Schließlich entstand dann für das Slayblaze Addonpack mein erstes Addon ZZReadMe. (Gott wenn ich nur dran denke, grauenhaft)
Das war nichts anderes als ein statischer Frame mit ScrollFrame und einem Haufen Texturen für die Ganzen Bilder mit dem Inhalt, da ich damals nicht wusste wie ich die maximale Zeichenzahl eines FontStrings erhöhen konnte. Das Addon habe ich dann Stück für Stück ausgebaut: Veränderliche Größe; Aufteilung der einzelnen Hilfetexte, etc.
Bei Fragen gebe ich mein Problem einfach auf Google ein und lande dann gerne bei lua-users.org oder stackoverflow.com. (z.B. für die AutoCompleition jetzt in C# da das xml File für NPP unbedingt sortiert sein muss: http://stackoverflow.com/questions/87494…-using-c-sharp; Leichter war es dann für micht einfach den Typ der Variable mit der ich das XML Generiere einfach auf SortedList zu ändern)
Viel neues kannst du was RoM Addons angeht gar nicht machen. Die meisten Dinge gibt es doppelt und dreifach, oder der Platzhirsch bietet alles was man braucht. Meistens beläuft sich die Arbeit also auf Weiterentwicklung und Verbesserung von teils auch einfach nur liegengelassenen Addons.
Neulinge auf Curse haben es sowieso schwer: Es werden nicht mehr so viele Addons wie früher geladen und das Interesse bei den Spielern neue, vllt. bessere Addons, auszuprobieren ist eher gering was natürlich auch manchmal die Motivation etwas einschränkt. Wenn ich da die ZZInfoBar nehmen darf: Viele Umsteiger sind bis auf Kleinigkeiten relativ begeistert, trotzdem bleibt es bei vllt. 200 Nutzern gegenüber einigen mehr bei z.B. unserem Addonpack XBarIII

Bezüglich OT: Nicht schlimm... ;) Du glaubst gar nicht wie schnell Frogster da reagiert hat und die wieder weg waren nach dem ich das mitten in der Nacht(!) gemeldet habe.

9

Monday, July 30th 2012, 6:58pm

Habe mal den First Post aktualisiert und die erste Version des Tools hochgeladen.
Vielleicht möchte ein Mod/Mentor ja diesen Thread wie das Loka-Extractor-Tool anpinnen auf das er auch in Zukunft nicht untergeht

10

Monday, July 30th 2012, 7:14pm

Quoted from "Noguai;4273885"

...Stunden das Internet studiert und dann mit erst mit Lua (Notepad++), dann Java (NetBeans) und schließlich C# (VisualStudio) rumprobiert...


Eclipse ftw, gab (ka obs noch immer gibt) da au paar Lua-Plugins ;)
Author of Ikarus & QuickTrade

11

Monday, July 30th 2012, 8:40pm

Hab schon mal von Eclipse gehört, die Java Tuts haben mich dann aber zu NetBeans gebracht. Wird glaube ich mal Zeit mir das anzusehen.

12

Monday, July 30th 2012, 11:32pm

Mit NetBeans hab ich auch vor gefühlten 10 Jahren damals angefangen (is auch definitiv die bessere Einsteiger-IDE, grad auch wegen integriertem GUI-Builder für Java).
Nicht abschrecken lassen von den etwas gewöhnungsbedürftigen Menü-Strukturen beim Umstieg auf Eclipse ;)

/edit: sind doch nich nur gefühlte 10 Jahre, ich werd alt -.-
Author of Ikarus & QuickTrade

13

Tuesday, July 31st 2012, 9:26am

zum schnellen Editieren und Fixen von LUA dateien preferiere ich auch eher N++
eclipse dauert mir da zulang zum starten und frisst erstmal speicher.
Aber als Java Entwickler hab ich eh beides drauf, für grössere Projekte und mit vorhandenem SubversionServer ist eclipse meine erste wahl :)

Aber Danke für das N++ Plugin, sehr schöne arbeit :)

14

Tuesday, July 31st 2012, 11:30pm

Gleich gibts ein kleines Update des Tools, welches dann auch noch die Standard Lua Funktionen und allerlei Zeug wie "and", "for" und "function" für die Autovervollständigung beinhaltet.

Quoted from "mcgaerty;4274803"

Mit NetBeans hab ich auch vor gefühlten 10 Jahren damals angefangen (is auch definitiv die bessere Einsteiger-IDE, grad auch wegen integriertem GUI-Builder für Java).
Nicht abschrecken lassen von den etwas gewöhnungsbedürftigen Menü-Strukturen beim Umstieg auf Eclipse ;)

/edit: sind doch nich nur gefühlte 10 Jahre, ich werd alt -.-
Alles klar, solange ich die Hilfe nicht unter Bearbeiten finde ist alles okay. Das Lua-Plugin wollte übrigens nicht installieren: "dependencies are not satifiable", aber halb so wild.
Tja, die Zeit geht eben doch schnell vorbei.

Quoted from "RinglordCay;4275043"

zum schnellen Editieren und Fixen von LUA dateien preferiere ich auch eher N++
eclipse dauert mir da zulang zum starten und frisst erstmal speicher.
Aber als Java Entwickler hab ich eh beides drauf, für grössere Projekte und mit vorhandenem SubversionServer ist eclipse meine erste wahl :)

Aber Danke für das N++ Plugin, sehr schöne arbeit :)
Bitteschön, freut mich. :) So ganz dumm nebenbei gefragt: Was sind eigentlich so in aller Kürze die großen Unterschiede zwischen SVN, GIT und HG? Habe mich bei ZZ_InfoBar einfach mal für GIT entschieden...

15

Wednesday, August 1st 2012, 2:33pm

Kleine Gegenüberstellung von GIT und SVN (is nen bissl GIT-biased) click me

Ich persönlich nutz für nahezu alles mittlerweile SVN (Eclipse-Plugin oder TortoiseSVN) und als Hoster Assembla und bin damit recht zufrieden.
Author of Ikarus & QuickTrade

16

Wednesday, August 1st 2012, 8:30pm

Vielen dank für die Links, habe mir die Präsentation mal durchgelesen. Ja, ist ein wenig GIT-lastig aber jetzt weiß ich etwas mehr. TortoiseSVN hab ich schon installiert rein aus dem Interesse an einem Vergleich mit TortoiseGIT.

17

Wednesday, August 1st 2012, 9:45pm

Ich war ja auch Jahre lang SVN versessen.. mittlerweile ist GIT für mich aber erste Wahl.
Anstelle von "TortoiseGIT" würde ich "GIT Extensions" empfehlen.

Leider ist GIT auf Linux ausgerichtet und ist daher für Windows-User hier-und-da "gewöhnungsbedürftig".

Im Endeffekt bleibt es Geschmacksache.
-> Mercurial (HG) ist halt eine Windows abgekupferte GIT Version (jaja..nur meine Meinung)
-> SVN hat mit "TortoiseSVN" eine cool Windows integration
-> GIT....-da kann ich leider nicht objektiv sein-


ein aktuelles Beispiel aus dem Projekt 'QuestHelper'
Auf dem Server: die alpha Version. Lokal arbeite ich im Branch 'tracker rewrite'
- ich erhalte die mail: 'bekomme ne Fehlermeldung blabla'
- "speichern" , "stash" (weil ich ich noch nicht alles 'commit'ed hab), und "branch" wechseln
- jetzt hab ich die 'alpha' version und kann nach dem Fehler suchen
- ändern, speichern , "commit", "push"
- mail zurück-> "fixed"
- branch wechseln ( und "pop stash")
und bin wieder genau da wo ich aufgehört habe

/edit: achja: und GIT braucht keinen Server...der ist nur zum abgleichen (push/pull) da
Addons: DailyNotes, AutoLogin, WoWMap, RecipeBook,...

"Every time you make a typo, the errorists win."

18

Friday, August 3rd 2012, 1:03pm

Auch dir vielen Dank für die Infos, habe nun mal alle GIT Tools entfernt und GIT Extensions installiert. Hat in der Tat das schönere GUI, das einzige was mir da noch fehlen würde wären die Kontextmenueinträge um das Programm aus dem Explorer heraus mit der aktuellen Repo zu starten sowie die Dateiicons für uncommitede (schönes Denglisch) Änderungen.

19

Friday, August 3rd 2012, 3:39pm

GitExt. sollte eigentlich im Context-Menü erscheinen. (Settings->Checklist->Shell extentions ?)
Was Änderungen angeht ist in GitExt. der 'Commit' Dialog das Hauptwerkzeug -> hinzufügen, verwerfen, einzelne Dateien/Zeilen 'stagen', zum letzten commit hinzufügen...

Das mit den Explore-Icons macht nur Tortoise...weshalb es auch ständig im Hintergrund läuft und sämtlich Dateioperation überwacht.
Addons: DailyNotes, AutoLogin, WoWMap, RecipeBook,...

"Every time you make a typo, the errorists win."

20

Friday, August 3rd 2012, 4:48pm

Ach, man sollte vllt. auch mal eine Datei/Ordner anklicken. Dann stehts auch drinn.
Die Dateiicons sind ja nicht soo wichtig, gibt ja ein GUI.