JEdit als BlitzMax IDE

Übersicht BlitzMax, BlitzMax NG FAQs und Tutorials

Neue Antwort erstellen

d-bug

Betreff: JEdit als BlitzMax IDE

BeitragDi, Dez 25, 2007 13:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Gemeinde,

nachdem ich mich nun mehrere Wochen mit der original IDE auf dem Mac rum geärgert habe, hab ich mich mal nach einer Alternative umgesehen und stieß dabei auf JEdit.
JEdit ist wahrhaftig nicht die perfekte Alternative, aber bietet doch einige Features, die man in der original IDE nicht
findet.

Dieses Tutorial bezieht sich auf die Einrichtung von JEdit unter OS X, aber da die IDE Plattform unabhängig ist, sollte es recht leicht sein das Tutorial auch auf Linux und Windows umzusetzen.



1. Vorbereitung
Nach dem ihr JEdit installiert habt begebt euch erst einmal ins Terminal. Ihr müsst erst die geschützten, ausgeblendeten Dateien und Ordner einblenden, damit ihr auch an JEdits Einstellungen kommt.
Code: [AUSKLAPPEN]
Versteckte Dateien und Ordner einblenden:
defaults write com.apple.finder AppleShowAllFiles true
killall Finder

Code: [AUSKLAPPEN]
Versteckte Dateien und Ordner ausblenden:
defaults write com.apple.finder AppleShowAllFiles false
killall Finder




2. Benötigte PlugIns
Begebt euch in den PlugIn-Manager. Man findet ihn im Menü unter PlugIns > PlugIn Manager.... Unter Install wählt ihr nun folgende PlugIns aus:

Console
Configurable Fold Handler
Buffer Tabs


Klickt auf Install (unten links) und beendet nach erfolgreicher Installation erst einmal JEdit.



3. Vorbereitung^2
Nun gehen wir ans Eingemachte.
Öffnet das Verzeichnis home(bzw user)/.jedit/console/commando/.
Legt dort folgende Dateien aus diesem Download rein:

BlitzMaxBuildAndRun.xml
BlitzMaxSVN.xml
BlitzMaxSVNUpdate.xml


Öffnet jetzt das Verzeichnis home(bzw user)/.jedit/modes/
Legt dort die Datei BlitzMax.xml rein.

Öffnet die Datei catalog und fügt folgenden Eintrag VOR </MODES> ein:
Code: [AUSKLAPPEN]
<MODE NAME="BlitzMax" FILE="BlitzMax.xml" FILE_NAME_GLOB="*.bmx" />


Ihr habt soeben den Highlighter installiert, kleine Scripts zum kompilieren bzw. SVN Support für BlitzMax 1.28.



4. Preferences
Öffnet den JEdit Preferences Dialog...


Unter Docking stellt den Eintrag Console auf Bottom.
Damit stellt ihr ein, dass die Output Konsole am untern Rand von Jedit angezeigt wird.


Unter Editing stellt den Eintrag Default Edit Mode auf BlitzMax.
Nun ist der Standard Highlighter bzw. Mode BlitzMax.
Stellt außerdem noch den Folding Mode auf Custom um, sonst könnt ihr nicht falten. Very Happy


Unter Gutter macht einen Haken bei Line Numbering und stellt euch die Farben nach Wunsch ein.
Jetzt habt ihr auch Zeilennummerierung. Geil wa?


Unter Syntax Highlightning könnt ihr euch die Farben nach Wunsch einstellen.


Unter Text Area könnt ihr euch die Farben nach Wunsch einstellen. Außerdem könnt ihr hier den Font ändern.


Unter Tool Bar könnt ihr euch neue Buttons festlegen...
Um das Compiler-Script als Button festzulegen geht auf das +, wählt im folgenden Dialog im Dropdown Plugin: Console - Commando Commands und sucht in der Liste BlitzMaxBuildAndRun, wählt ein Icon aus und drückt OK. Ich empfehle hier das Play Icon Wink Das ganze könnt ihr auch noch mit den anderen Scripts machen.


Unter View macht ihr den Haken bei Show Buffer Switcher weg...


Geht nun auf ShortCuts, sucht den Eintrag BlitzMaxBuildAndRun, klickt in das Listenfeld daneben und drückt im folgenden Dialog F5 und dann OK.



5. PlugIn Einstellungen
Geht im Menü auf PlugIns > PlugIn Options...

Unter BufferTabs macht den Haken bei Enable BufferTabs by default. Im Dropdown Location of BufferTabs solltet ihr noch Top einstellen.
Jetzt habt ihr eine Tableiste statt dem hässlichen Dropdown um eure geöffneten Dateien anzuzeigen


Unter Configurable Folding macht den Haken bei Use regular expressions an und tragt folgendes ein:
Code: [AUSKLAPPEN]
Fold start String:
(?<!End )Function|(?<!End )Method|(?<!End )Type

Fold end String:
End Function|End Method|End Type

Jetzt werden Function, Method und Type mit Folding versehen. Das lässt sich aber beliebig erweitern...


OK und ihr seid hier fertig.



6. Anpassen der Scripts
Solltet ihr eure Usernamen und Passwörter direkt angezeigt haben möchten, dann öffnet mit einem Texteditor oder JEdit die Dateien BlitzMaxSVN.xml oder BlitzMaxSVNUpdate.xml aus dem Pfad home(bzw user)/.Jedit/console/commando/und ändert folgende Zeilen:

Code: [AUSKLAPPEN]
<ENTRY LABEL="Username" VARNAME="UserName" DEFAULT=""/>
<ENTRY LABEL="Password" VARNAME="Password" DEFAULT=""/>

nach
Code: [AUSKLAPPEN]
<ENTRY LABEL="Username" VARNAME="UserName" DEFAULT="EUER USERNAME"/>
<ENTRY LABEL="Password" VARNAME="Password" DEFAULT="EUER PASSWORT"/>


Ändert auch die Pfadangabe auf eure Pfade um.
Code: [AUSKLAPPEN]
<FILE_ENTRY LABEL="BlitzMax Path" VARNAME="Path" DEFAULT="/Development/BlitzMax"/>

nach
Code: [AUSKLAPPEN]
<FILE_ENTRY LABEL="BlitzMax Path" VARNAME="Path" DEFAULT="EUER PFAD ZU BLITZMAX"/>

Das gilt dann ebenfalls für BlitzMaxBuildAndRun.xml



7. Anpassen des Highlighters
Öffnet die Datei home(bzw user)/.Jedit/modes/BlitzMax.xml und tragt euch eure Wunschhighlights dort ein.



8. Downloads
JEdit findet ihr hier... (Noch öfter kann man einen Link nicht mehr in einen Post setzen...)
Die Scripts und den Highlighter findet ihr hier



9. Release euer Applikationen und Spiele
Seltsamer weise wird zumindest unter OS X Leopard 10.5.1 euer Programm als Classic App erkannt, wenn ihr mit mit dem Script kompiliert. Classic-Apps werden von Leopard nicht unterstützt. Gründe dafür sind mir äußerst schleierhaft... Wenn ihr euren Code dann aber noch mal mit der MaxIDE kompiliert läuft es dann aber trotzdem als normale App. Sollte ich irgendwann den Grund für diesen Umstand finden werde ich sicherlich ein Update dieses Tutorials vornehmen.


Ihr habt nun ein Alternative zur original IDE, die zwar mal wieder keinen Debugger hat aber doch einige Fehler weniger verursacht, als die MaxIDE. Natürlich ist das auch kein Allheilmittel.


cheers

d-bug


~edit~
31.12.2007

Habe die Pfade in den Scripts korrigiert. Außerdem liegt eine neuere BlitzMax.xml bei, die nun auch Rem-Blöcke
korrekt highlightet, solange man "Rem" und "End Rem" schreibt. "EndRem" wird nicht erkannt!
Außerdem werden ab jetzt auch Hex ($FF00FF) und Bin (%1001001) Zahlen als Digit gehighlightet.
  • Zuletzt bearbeitet von d-bug am Mo, Dez 31, 2007 15:16, insgesamt 5-mal bearbeitet

Wild-Storm

Betreff: JEdit unter Ubuntu Gutsy Gibbon

BeitragSo, Dez 30, 2007 14:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Als erstes installieren wir JEdit. Ich persönlich bevorzuge immer die neueste Version, da damit auch die Plugins meist die neuesten Features haben.

Als erstes holen wir uns von hier ( http://www.jedit.org/index.php?page=download ) das letzte Debian Paket ( im Moment: http://prdownloads.sourceforge...12_all.deb ) und installieren es.
Sollte es nun beim Start von JEdit zu solch einem Fehler kommen:
Zitat:
12:57:17 [error] main: java.awt.AWTError: Cannot load AWT toolkit: gnu.java.awt.peer.gtk.GtkToolkit

so müssen wir ein bisschen konfigurieren.
Zuerst gehen wir sicher, dass Java installiert ist (und installieren es ansonsten):
Code: [AUSKLAPPEN]
sudo apt-get install sun-java6-jre sun-java6-plugin

nun konfigurieren wir ein wenig:
Code: [AUSKLAPPEN]
sudo update-alternatives --config java

Dort setzen wir den Pfad auf Sun (bei mir z.B. Nummer 1):
Code: [AUSKLAPPEN]
  Auswahl      Alternative
-----------------------------------------------
*         1    /usr/lib/jvm/java-6-sun/jre/bin/java
          2    /usr/bin/gij-4.2
          3    /usr/bin/gij-4.1
 +        4    /usr/lib/jvm/java-gcj/jre/bin/java


Nun lässt sich JEdit immerhin schon starten.

Ab nun folgt ihr dem Tutorial von d-bug ab Punkt 2.
Sollte dennoch noch nichts kompiliert werden, so kann es daran liegen, dass die IDE nach /BlitzMax/Bin/bmk sucht, obwohl der Ort eigentlich /BlitzMax/bin/bmk heißt. Hierfür öffnet ihr die Datei ( ~/.jedit/console/commando/BlitzMaxBuildAndRun.xml ) und ändert folgenden Eintrag:
Code: [AUSKLAPPEN]
         buf.append("/Bin/bmk");

Code: [AUSKLAPPEN]
         buf.append("/bin/bmk");


Nun dürfte eigentlich alles laufen, bei Problemen könnt ihr mir gerne eine PM schicken oder sie hier nennen.

Mit freundlichen Grüßen,

Wild-Storm
Visit http://www.next-dimension.org
-------------------------------------------------
Freeware Modelle, Texturen & Sounds:
http://www.blitzforum.de/forum...hp?t=12875

d-bug

BeitragMo, Dez 31, 2007 13:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Block Commenting
Zum Thema Features, die manche brauchen und andere nicht gehört wohl eindeutig das Block-Commenting. Dieses ist
zwar bereits unter Edit > Source > Line Comment vorhanden, aber man kann damit nur kommentieren und muss
es dann manuell wieder entkommentieren. Das nervt und ist irgendwie sinnlos!

Eine Lösung für dieses Problem bietet das PlugIn TextTools. Dieses muss erst installiert werden. Siehe dazu im
ersten Post den Abschnitt 2. Benötigte PlugIns. Dieses PlugIn bietet einige neue Befehle an, die ich im einzelnen
noch nicht probierte, aber Toggle Line Comment ist der Befehl, den wir für ein gescheites Block-Commenting
brauchen.

Ich habe mir diesen Befehl in das Kontextmenü implementiert. Dazu geht man in die Preferences und erstellt dort
unter Context Menu mit dem + einen neuen Eintrag. Im jetzt folgenden Dialog wählt man im Dropdown
Plugin: TextTools aus und dann in der Liste Toggle Line Comment drückt Ok und ist dann fertig.

Man kann sich jetzt noch einen ShortCut dazu erstellen, wenn man möchte. Dies wird im ersten Post unter 4. Preferences
beschrieben.




Build All Modules
Die original MaxIDE bietet die Möglichkeit Module zu kompilieren, JEdit aber noch nicht. Diesen Umstand werden wir nun ändern.

Erstellt als erstes unter File > New ein neues Dokument und tragt dort folgendes ein:
Code: [AUSKLAPPEN]
jEdit.saveAllBuffers(view);
runCommandInConsole(view,"System","PFAD_ZU_BLITZ_MAX/bin/bmk makemods");

Vergesst auf keinen Fall die ";" am Ende jeder Zeile!

Jetzt speichert diese Datei unter home(bzw user)/.jedit/macros/ unter einem Namen eurer Wahl, aber mit der
Dateiendung .bsh.

Ihr habt jetzt ein Macro erstellt, dass eure Module kompiliert. Dieses Macro ist im Menü Macros > EUER_MACRO_NAME
zu finden. Man kann auch für jedes Macro einen Toolbar-Eintrag oder ShortCut erstellen.




Lock Build File
Etwas was mir bei JEdit fehlt ist die Lock Build File Option aus der original MaxIDE. Dies konnte ich mir zwar
irgendwie hin pfuschen, aber die ultimative Lösung ist das leider auch nicht. Ich werde jetzt trotzdem mal den hässlichen
Weg erklären.

Erstellt als erstes unter File > New ein neues Dokument und tragt dort folgendes ein:
Code: [AUSKLAPPEN]
jEdit.saveAllBuffers(view);
runCommandInConsole(view,"System","PFAD_ZU_BLITZ_MAX/bin/bmk makeapp -x -a -d -o PFAD_ZUR_KOMPILIERTEN_DATEI_INKL_NAME PFAD_ZUR_BMX_DATEI_INKL_NAME");

Vergesst auf keinen Fall die ";" am Ende jeder Zeile!

Jetzt speichert diese Datei unter home(bzw user)/.jedit/macros/ unter einem Namen eurer Wahl, aber mit der
Dateiendung .bsh.

Ihr habt jetzt ein Macro erstellt, dass euer Wunsch-BMX-File im Debug-Modus kompiliert. Dieses Macro ist im Menü
Macros > EUER_MACRO_NAME zu finden. Man kann auch für jedes Macro einen Toolbar-Eintrag oder ShortCut erstellen.




Lästiger Dialog beim Ausführen der Macros
Jawohl, diese Macros zwingen JEdit zu einem ekligen, nervigen und auch sinnlosen "Wirklich-Alle-Dateien-Speichern"-Dialog!
Dies liegt daran, dass der Befehl jEdit.saveAllBuffers(view); erst alle geöffneten Dateien speichern möchte. JEdit
ansich bringt dann eine Abfrage, die sich aber abschalten lässt.

Geht dazu in die Preferences und macht den Haken unter Saving & Backup > "Save All Buffers" asks for
confirmation
weg. Et voila, nerviger Dialog verschwunden!


cheers

d-bug

BeitragDo, Jan 03, 2008 12:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

ich habe dem Preferences Archiv noch eine BlitzMaxSynchMods.xml beigelegt. Bitte bearbeitet sie genau so wie in 6. Anpassen der Scripts beschrieben. Die Scopes BRL und PUB müssen nicht angegeben werden, die werden automatisch abgerufen. Scopes die man zusätzlich abrufen möchte müssen mit einem Leerzeichen getrennt sein.

Viel Spaß damit!

d-bug

BeitragMi, März 19, 2008 23:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
9. Release euer Applikationen und Spiele
Seltsamer weise wird zumindest unter OS X Leopard 10.5.1 euer Programm als Classic App erkannt, wenn ihr mit mit dem Script kompiliert. Classic-Apps werden von Leopard nicht unterstützt. Gründe dafür sind mir äußerst schleierhaft... Wenn ihr euren Code dann aber noch mal mit der MaxIDE kompiliert läuft es dann aber trotzdem als normale App. Sollte ich irgendwann den Grund für diesen Umstand finden werde ich sicherlich ein Update dieses Tutorials vornehmen.


Okay, ich habe nun den Grund gefunden. Hat lange gedauert, aber ich hab mich auch nicht wirklich darum gekümmert, muss ich zugeben. In den der BlitzMaxBuildAndRun.xml hat sich der Fehlerteufel eingeschlichen.

Bitte ändert folgende Zeilen:

Code: [AUSKLAPPEN]
if (output.equals("debug")){ buf.append("-x -a -d");}
if (output.equals("release")){ buf.append("-x -a -r");}

nach
Code: [AUSKLAPPEN]
if (output.equals("debug")){ buf.append("-x -a -d -t gui");}
if (output.equals("release")){ buf.append("-x -a -r -t gui");}

ab!

Dann sollte es auch mit dem kompilieren im Fenster-Modus und der Tastatur-Abfrage funktionieren.

Das selbe gilt auch für eure selbst erstellten Scripts. Da muss ebenfalls noch -t gui eingefügt werden:
Code: [AUSKLAPPEN]
jEdit.saveAllBuffers(view);
runCommandInConsole(view,"System","PFAD_ZU_BLITZ_MAX/bin/bmk makeapp -x -a -d -t gui -o PFAD_ZUR_KOMPILIERTEN_DATEI_INKL_NAME PFAD_ZUR_BMX_DATEI_INKL_NAME");

So als Beispiel.

Cheers

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG FAQs und Tutorials

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group