Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Opal Syntax-Highlighting: Unterschied zwischen den Versionen

(Linux/UNIX: Kate/Kwrite hinzugefügt)
(Sublime Text)
 
(72 dazwischenliegende Versionen von 34 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Wenn man seine Zeit mit der Programmierung von [[OPAL]] Programmen verbringt, möchte man natürlich auch von seinem Editor unterstützt werden. Die OPAL-Distribution liefert die dafür nötigen Informationen für den Editor [http://www.gnu.org/software/emacs/emacs.html Emacs] mit, allerdings schätzt nicht jeder Emacs...
+
Wenn man seine Zeit mit der Programmierung von [[OPAL]]-Programmen verbringt, möchte man natürlich auch von seinem Editor unterstützt werden.
  
Deshalb sammeln wir hier Links zu Syntaxfiles, mit denen man anderen Editoren beibringen kann, OPAL-Sourcecode schön einzufärben. Wenn ihr weitere Syntaxfiles findet/erstellt fügt sie bitte in diese Liste ein.
+
Deshalb sammeln wir hier Links zu Syntaxfiles, mit denen man Editoren beibringen kann, OPAL-Sourcecode schön einzufärben. Wenn ihr weitere Syntaxfiles findet/erstellt, fügt sie bitte dieser Liste hinzu.
  
== Linux/UNIX ==
+
= Übersicht der Editoren mit Opal-Unterstützung =
 +
{| border="0" cellpadding="4" cellspacing="2"
 +
|- bgcolor="#E0E0E0"
 +
!Editor
 +
!Betriebssysteme
 +
!Lizenz
 +
!Homepage
 +
|- bgcolor="#F0F0F0"
 +
|[[Opal Syntax-Highlighting#Coda|Coda]]
 +
|MacOS
 +
|Kommerziell
 +
|[http://www.panic.com/coda]
 +
|- bgcolor="#F8F8F8"
 +
|[[Opal Syntax-Highlighting#ConTEXT|ConTEXT]]
 +
|Windows
 +
|Freeware
 +
|[http://www.context.cx]
 +
|- bgcolor="#F0F0F0"
 +
|[[Opal Syntax-Highlighting#Emacs|Emacs]]
 +
|Unix, Windows, MacOS
 +
|Open Source (GPL)
 +
|[http://www.gnu.org/software/emacs/emacs.html]
 +
|- bgcolor="#F8F8F8"
 +
|[[Opal Syntax-Highlighting#EmEditor|EmEditor]]
 +
|Windows
 +
|Kommerziell, Freeware
 +
|[http://www.emeditor.com/]
 +
|- bgcolor="#F0F0F0"
 +
|[[Opal Syntax-Highlighting#Gedit|Gedit]]
 +
|Unix, MacOS
 +
|Open Source
 +
|[http://www.gnome.org/projects/gedit/]
 +
|- bgcolor="#F8F8F8"
 +
|[[Opal Syntax-Highlighting#Kate|Kate]]
 +
|Unix+KDE
 +
|Open Source (GPL)
 +
|[http://kate.kde.org/]
 +
|- bgcolor="#F0F0F0"
 +
|[[Opal Syntax-Highlighting#nano|nano]]
 +
|Unix, Mac OSX
 +
|Open Source (GPL)
 +
|[http://www.gnu.org/software/nano/]
 +
|- bgcolor="#F0F0F0"
 +
|[[Opal Syntax-Highlighting#Proton/Phase5|Proton/Phase5]]
 +
|Windows
 +
|Freeware
 +
|[http://www.qhaut.de/forums/index.php?dlcategory=2]
 +
|- bgcolor="#F8F8F8"
 +
|[[Opal Syntax-Highlighting#Programmer's Notepad 2|Programmer's Notepad 2]]
 +
|Windows
 +
|Open Source (BSD)
 +
|[http://sourceforge.net/projects/pnotepad/]
 +
|- bgcolor="#F0F0F0"
 +
|[[Opal Syntax-Highlighting#SciTE|SciTE]]
 +
|Unix (GTK), Windows
 +
|Open Source
 +
|[http://www.scintilla.org/]
 +
|- bgcolor="#F8F8F8"
 +
|[[Opal Syntax-Highlighting#Sublime_Text|Sublime Text]]
 +
|Unix, Windows, OS X
 +
|Shareware
 +
|[http://www.sublimetext.com/]
 +
|- bgcolor="#F8F8F8"
 +
|[[Opal Syntax-Highlighting#TextPad|TextPad]]
 +
|Windows
 +
|Shareware
 +
|[http://www.textpad.com/]
 +
|- bgcolor="#F0F0F0"
 +
|[[Opal Syntax-Highlighting#Vim|Vim]]
 +
|Unix, Windows, MacOS
 +
|Open Source
 +
|[http://www.vim.org/]
 +
|- bgcolor="#F8F8F8"
 +
|[[Opal Syntax-Highlighting#TextWrangler|TextWrangler]]
 +
|OS X
 +
|Freeware
 +
|[http://www.barebones.com/products/textwrangler/]
 +
|}
  
=== Kate - KDE advanced text editor / KWrite ===
+
= Details =
''Kate and KWrite are both standard text editors shipped with the [[wikipedia:KDE|K Desktop Environment]].''
 
; Homepage
 
: [http://kate.kde.org http://kate.kde.org]
 
; Lizenz
 
: [[wikipedia:Freie Software|Freie Software]] ([[wikipedia:GPL|GPL]])
 
  
Für Kate/KWrite hat Sebastian Pippin eine Highlighting-Definietion geschrieben. Die Datei <code>opal_kate.xml</code> kann unter [http://www.hartwork.org/ http://www.hartwork.org/] heruntergeladen werden.  
+
== Coda ==
 +
Bitte die Datei [http://ablage.pgrau.de/uploads/Opal.mode.zip Opal.mode] in das Verzeichnis <code>~/Library/Application Support/Coda/Modes/</code> kopieren.<br />
 +
Auch kompatibel mit Subethaedit.<br />
 +
Bitte beachten, dass ich das Ganze mehr oder weniger schnell zusammengeklickt habe, wem Fehler auffallen, immer her damit. --[[Benutzer:PaulG|PaulG]] 14:38, 10. Jan. 2012 (CET)
  
Zur Installation einfach die Datei <code>opal_kate.xml</code> nach <code>~/.kde/share/apps/katepart/syntax</code> kopieren.
+
Bonus: [http://ablage.pgrau.de/uploads/Opal.scpt Dieses AppleScript] in den Ordner <code>~/Library/Scripts/Applications/Coda/</code> schieben, um einen netten "oasys aufrufen und Dateien laden"-Shortcut in der Menüleiste unter Scripts zu haben.
  
===Vi IMproved===
+
== ConTEXT ==
''Vim is a highly configurable text editor built to enable efficient text editing. It is an improved version of the vi editor distributed with most UNIX systems.'' [VIM Homepage]
+
Einfach die Datei <code>[http://www.hartwork.org/cgi-bin/download.cgi?file=public/opal_context.chl opal_context.chl]</code> in Verzeichnis <code>Highlighters</code> kopieren.
; Homepage
+
 
: [http://www.vim.org/ http://www.vim.org/]  
+
== Emacs ==
; Lizenz
+
Für Emacs gibt es im OCS-Paket Dateien, die auch im Fakultätsnetz zu finden sind.
: [[wikipedia:Freie Software|Freie Software]] ([[wikipedia:GPL|GPL]] kompatibel)
+
Um den Opal-Modus von Emacs verfügbar zu machen, füge man folgende Zeilen in die Datei ~/.emacs ein:
 +
<pre>
 +
(setq load-path
 +
      (cons "/home/uebb/opal/ocs/lib/emacs" load-path)
 +
      )
 +
(defvar opal-novice t)
 +
(require 'opal-mode) 
 +
</pre>
 +
Den Opal-Modus startet man in Emacs mittels "M-x opal-mode [enter]".
 +
M-x bedeutet: Meta-Taste und x gleichzeitig drücken, wobei Esc gefolgt von x die selbe Wirkung hat.
 +
 
 +
== EmEditor ==
 +
Ein Syntaxfile für EmEditor ist auf [http://www.hartwork.org/ http://www.hartwork.org/] zu finden. Auf der offiziellen Seite des Editors gibt es auch eine Kopie.
 +
 
 +
== Gedit ==
 +
Da gedit auf gtksourceview aufbaut, sollten auch andere Editoren die gtksourceview ab der Version 2.0 nutzen funktionieren.
 +
Zur Installation die Datei [http://www.freitagsrunde.org/~aeichner/opal.lang opal.lang] nach <code>/usr/share/gtksourceview-2.0/language-specs</code> oder <code>$HOME/.local/share/gtksourceview-2.0/language-specs</code> kopieren.
 +
Die Datei funktioniert nur mit gtksourceview 2.0 und neuer, da das Format geändert wurde. Gedit nutzt ab Version 2.20 diese Version.
 +
 
 +
Unter Mac OSX kann die opal.lang hier eingefügt werden: <code>/Applications/gedit.app/Contents/Resources/share/gtksourceview-2.0/language-specs</code>
 +
 
 +
Danach einfach in gedit unter "Ansicht -> Hervorhebungsmodus -> Quelltexte -> Opal" einstellen.
 +
 
 +
== Kate ==
 +
Zur Installation einfach die Datei <code>[http://www.hartwork.org/cgi-bin/download.cgi?file=public/opal_kate.xml opal_kate.xml]</code> nach <code>~/.kde/share/apps/katepart/syntax</code> kopieren. Eventuell muss das Verzeichnis zuerst angelegt werden, da es nicht automatisch vom Editor erzeugt wird.<BR>
 +
Da KWrite und KDevelop genau wie Kate auf Katepart basieren, funktioniert die Datei dort auch.
 +
 
 +
Sollte es nicht funktionieren, kann man schauen, welches Einstellungs-Verzeichnis KDE sonst nutzt (etwa .kde3.5) oder die Datei (als root) nach <code>/usr/share/apps/katepart/syntax</code> installieren. In diesem Fall wird sie aber systemweit eingestellt und gilt für alle Nutzer.
 +
 
 +
== nano ==
 +
Auch nano unterstützt Syntax-Highlighting, wenn man entsprechende <code>nanorc</code>-Datei installiert. Die Datei und Installationsanleitung von gab es auf der Seite von Sven Schneider, aber ist leider nicht mehr verfuegbar.
 +
 
 +
== Proton/Phase5 ==
 +
Einfach die Datei <code>[http://www.hartwork.org/cgi-bin/download.cgi?file=public/opal_proton_20051119.sch opal_proton_20051119.sch]</code> in Verzeichnis <code>syntax</code> kopieren.
 +
 
 +
== Programmer's Notepad 2 ==
 +
Programmer's Notepad 2 basiert auf Scintilla. Daher wird eine ''SciLexer.dll'' von Scintilla 1.68 oder später benötigt.
 +
Eine solche DLL findest du in der jeweiligen [http://sourceforge.net/project/showfiles.php?group_id=2439&package_id=5662 wscite???.zip].
 +
Außerdem benötigt wird [http://www.hartwork.org/cgi-bin/download.cgi?file=public/opal_pn2.scheme opal_pn2.scheme].
 +
Die gehört dann ins ''schemes'' Verzeichnis.
 +
 
 +
Dann in Programmer's Notepad einfach über View -> Change Scheme -> Opal
 +
 
 +
== SciTE ==
 +
Die aktuelle Version 1.68 unterstützt bereits OPAL Highlighting.<BR>
 +
<BR>
 +
Um alternativ die jeweils aktuellste Version aus der CVS Repository
 +
nutzen zu können, muss man an der Unix Shell etwa folgendes tun:
 +
 
 +
<pre>
 +
# Scintilla/SciTE aus dem CVS laden (bei Fehler wiederholen!)
 +
mkdir -m744 scite_cvs
 +
cd scite_cvs
 +
cvs -z9 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/scintilla co -P scintilla
 +
cvs -z9 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/scintilla co -P scite
 +
 
 +
# Kompilieren
 +
cd scintilla/gtk
 +
make
 +
cd ../../scite/gtk
 +
make
 +
cd ../../..
 +
</pre>
 +
 
 +
Danach müssen in ''scite/src/SciTEGlobal.properties'' noch zwei Zeilen de-kommentiert werden.<BR>
 +
Am besten nach "opal" suchen - das geht am schnellsten:
 +
 
 +
<pre>
 +
#Opal|impl||\
 +
#import opal
 +
</pre>
 +
 
 +
Global installieren wäre danach gegebenfalls mit
 +
 
 +
<pre>
 +
sudo make install
 +
</pre>
 +
 
 +
(aus Verzeichnis ''scite/gtk'' heraus) möglich.
 +
 
 +
== Sublime Text ==
 +
Eine prächtige, ständig weiterentwickelte Syntaxdefinition und Installationsanleitung gibt es hier: https://github.com/artifactz/sublime-opal<br />
 +
 
 +
== TextPad ==
 +
Eine (bisher noch unvollständige) Syntaxdefinition gibt es hier: http://codepad.org/SthPfryj<br />
 +
Diese muss als "opal.syn" in das TextPad\System-Verzeichnis und kann dann wie jede andere Syntax-Definition verwendet werden.
 +
 
 +
== Vim ==
 
Für Vim gibt es zwei Highlighting-Definitionen. Eine Highlighting-Definition ist im OCS-Paket im Verzeichnis <code>ocs/lib/vim</code> enthalten (im cs-Netz also <code>/usr/ocs/lib/vim</code>). In der <code>README</code>-Datei der [http://uebb.cs.tu-berlin.de/~opal/ OPAL-Distribution] gibt es weitere Informationen. Userseitige Vim-Konfiguration besteht aus dem Kopieren von <code>opal.vim</code> nach <code>~/.vim/syntax/</code> und dem Einfügen von
 
Für Vim gibt es zwei Highlighting-Definitionen. Eine Highlighting-Definition ist im OCS-Paket im Verzeichnis <code>ocs/lib/vim</code> enthalten (im cs-Netz also <code>/usr/ocs/lib/vim</code>). In der <code>README</code>-Datei der [http://uebb.cs.tu-berlin.de/~opal/ OPAL-Distribution] gibt es weitere Informationen. Userseitige Vim-Konfiguration besteht aus dem Kopieren von <code>opal.vim</code> nach <code>~/.vim/syntax/</code> und dem Einfügen von
 
  augroup filetypedetect
 
  augroup filetypedetect
Zeile 28: Zeile 190:
 
(ggf. nur der mittleren Zeile in einen bereits vorhandenen <code>augroup</code>-Block) in <code>~/.vim/filetype.vim</code>.  
 
(ggf. nur der mittleren Zeile in einen bereits vorhandenen <code>augroup</code>-Block) in <code>~/.vim/filetype.vim</code>.  
  
Es gibt auch eine alternative Highlighting-Definition: [[Opal.vim]].
+
Hier die Datei aus der Opal Distribution: [https://github.com/mklappstuhl/.vim/blob/master/syntax/opal.vim opal.vim] 
 +
Es gibt auch eine alternative Highlighting-Definition: [[Opal.vim|opal.vim]].
  
 
Vim ist im cs-Netz unter <code>/home/pub/bin/vim</code> verfügbar.
 
Vim ist im cs-Netz unter <code>/home/pub/bin/vim</code> verfügbar.
  
== OS X ==
+
== TextWrangler ==
Uns wurde leider noch von keiner Opalunterstützung für Macintosh-Editoren berichtet.
+
Syntaxdefinition https://gist.github.com/mtrotzinski/7230721 herunterladen und nach ~/Library/Application Support/TextWrangler/Language Modules/ verschieben.
 
 
== Windows ==
 
 
 
===EmEditor===
 
''EmEditor is a text editor offering full Unicode support, plug-ins, syntax highlighting, and many other features.'' [Produktbeschreibung Homepage]
 
;Homepage
 
:[http://emeditor.com/ http://emeditor.com/]
 
;Lizenz
 
:Für Akademiker ist EmEditor kostenlos. (siehe [http://www.emeditor.com/help/faq/academic/index.htm Academic License])
 
  
Ein Syntaxfile für EmEditor ist auf [http://www.hartwork.org/ http://www.hartwork.org/] zu finden. Auf der offiziellen Seite des Editors ist auch eine Kopie zu finden.
+
[[Kategorie: Opal]]
 +
__NOTOC__

Aktuelle Version vom 22. Januar 2014, 22:27 Uhr

Wenn man seine Zeit mit der Programmierung von OPAL-Programmen verbringt, möchte man natürlich auch von seinem Editor unterstützt werden.

Deshalb sammeln wir hier Links zu Syntaxfiles, mit denen man Editoren beibringen kann, OPAL-Sourcecode schön einzufärben. Wenn ihr weitere Syntaxfiles findet/erstellt, fügt sie bitte dieser Liste hinzu.

Übersicht der Editoren mit Opal-Unterstützung

Editor Betriebssysteme Lizenz Homepage
Coda MacOS Kommerziell [1]
ConTEXT Windows Freeware [2]
Emacs Unix, Windows, MacOS Open Source (GPL) [3]
EmEditor Windows Kommerziell, Freeware [4]
Gedit Unix, MacOS Open Source [5]
Kate Unix+KDE Open Source (GPL) [6]
nano Unix, Mac OSX Open Source (GPL) [7]
Proton/Phase5 Windows Freeware [8]
Programmer's Notepad 2 Windows Open Source (BSD) [9]
SciTE Unix (GTK), Windows Open Source [10]
Sublime Text Unix, Windows, OS X Shareware [11]
TextPad Windows Shareware [12]
Vim Unix, Windows, MacOS Open Source [13]
TextWrangler OS X Freeware [14]

Details

Coda

Bitte die Datei Opal.mode in das Verzeichnis ~/Library/Application Support/Coda/Modes/ kopieren.
Auch kompatibel mit Subethaedit.
Bitte beachten, dass ich das Ganze mehr oder weniger schnell zusammengeklickt habe, wem Fehler auffallen, immer her damit. --PaulG 14:38, 10. Jan. 2012 (CET)

Bonus: Dieses AppleScript in den Ordner ~/Library/Scripts/Applications/Coda/ schieben, um einen netten "oasys aufrufen und Dateien laden"-Shortcut in der Menüleiste unter Scripts zu haben.

ConTEXT

Einfach die Datei opal_context.chl in Verzeichnis Highlighters kopieren.

Emacs

Für Emacs gibt es im OCS-Paket Dateien, die auch im Fakultätsnetz zu finden sind. Um den Opal-Modus von Emacs verfügbar zu machen, füge man folgende Zeilen in die Datei ~/.emacs ein:

(setq load-path
      (cons "/home/uebb/opal/ocs/lib/emacs" load-path)
      )
(defvar opal-novice t)
(require 'opal-mode)  

Den Opal-Modus startet man in Emacs mittels "M-x opal-mode [enter]". M-x bedeutet: Meta-Taste und x gleichzeitig drücken, wobei Esc gefolgt von x die selbe Wirkung hat.

EmEditor

Ein Syntaxfile für EmEditor ist auf http://www.hartwork.org/ zu finden. Auf der offiziellen Seite des Editors gibt es auch eine Kopie.

Gedit

Da gedit auf gtksourceview aufbaut, sollten auch andere Editoren die gtksourceview ab der Version 2.0 nutzen funktionieren. Zur Installation die Datei opal.lang nach /usr/share/gtksourceview-2.0/language-specs oder $HOME/.local/share/gtksourceview-2.0/language-specs kopieren. Die Datei funktioniert nur mit gtksourceview 2.0 und neuer, da das Format geändert wurde. Gedit nutzt ab Version 2.20 diese Version.

Unter Mac OSX kann die opal.lang hier eingefügt werden: /Applications/gedit.app/Contents/Resources/share/gtksourceview-2.0/language-specs

Danach einfach in gedit unter "Ansicht -> Hervorhebungsmodus -> Quelltexte -> Opal" einstellen.

Kate

Zur Installation einfach die Datei opal_kate.xml nach ~/.kde/share/apps/katepart/syntax kopieren. Eventuell muss das Verzeichnis zuerst angelegt werden, da es nicht automatisch vom Editor erzeugt wird.
Da KWrite und KDevelop genau wie Kate auf Katepart basieren, funktioniert die Datei dort auch.

Sollte es nicht funktionieren, kann man schauen, welches Einstellungs-Verzeichnis KDE sonst nutzt (etwa .kde3.5) oder die Datei (als root) nach /usr/share/apps/katepart/syntax installieren. In diesem Fall wird sie aber systemweit eingestellt und gilt für alle Nutzer.

nano

Auch nano unterstützt Syntax-Highlighting, wenn man entsprechende nanorc-Datei installiert. Die Datei und Installationsanleitung von gab es auf der Seite von Sven Schneider, aber ist leider nicht mehr verfuegbar.

Proton/Phase5

Einfach die Datei opal_proton_20051119.sch in Verzeichnis syntax kopieren.

Programmer's Notepad 2

Programmer's Notepad 2 basiert auf Scintilla. Daher wird eine SciLexer.dll von Scintilla 1.68 oder später benötigt. Eine solche DLL findest du in der jeweiligen wscite???.zip. Außerdem benötigt wird opal_pn2.scheme. Die gehört dann ins schemes Verzeichnis.

Dann in Programmer's Notepad einfach über View -> Change Scheme -> Opal

SciTE

Die aktuelle Version 1.68 unterstützt bereits OPAL Highlighting.

Um alternativ die jeweils aktuellste Version aus der CVS Repository nutzen zu können, muss man an der Unix Shell etwa folgendes tun:

# Scintilla/SciTE aus dem CVS laden (bei Fehler wiederholen!)
mkdir -m744 scite_cvs
cd scite_cvs
cvs -z9 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/scintilla co -P scintilla
cvs -z9 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/scintilla co -P scite

# Kompilieren
cd scintilla/gtk
make
cd ../../scite/gtk
make
cd ../../..

Danach müssen in scite/src/SciTEGlobal.properties noch zwei Zeilen de-kommentiert werden.
Am besten nach "opal" suchen - das geht am schnellsten:

#Opal|impl||\
#import opal

Global installieren wäre danach gegebenfalls mit

sudo make install

(aus Verzeichnis scite/gtk heraus) möglich.

Sublime Text

Eine prächtige, ständig weiterentwickelte Syntaxdefinition und Installationsanleitung gibt es hier: https://github.com/artifactz/sublime-opal

TextPad

Eine (bisher noch unvollständige) Syntaxdefinition gibt es hier: http://codepad.org/SthPfryj
Diese muss als "opal.syn" in das TextPad\System-Verzeichnis und kann dann wie jede andere Syntax-Definition verwendet werden.

Vim

Für Vim gibt es zwei Highlighting-Definitionen. Eine Highlighting-Definition ist im OCS-Paket im Verzeichnis ocs/lib/vim enthalten (im cs-Netz also /usr/ocs/lib/vim). In der README-Datei der OPAL-Distribution gibt es weitere Informationen. Userseitige Vim-Konfiguration besteht aus dem Kopieren von opal.vim nach ~/.vim/syntax/ und dem Einfügen von

augroup filetypedetect
au BufNewFile,BufRead *.sign,*.impl    set ft=opal
augroup END

(ggf. nur der mittleren Zeile in einen bereits vorhandenen augroup-Block) in ~/.vim/filetype.vim.

Hier die Datei aus der Opal Distribution: opal.vim Es gibt auch eine alternative Highlighting-Definition: opal.vim.

Vim ist im cs-Netz unter /home/pub/bin/vim verfügbar.

TextWrangler

Syntaxdefinition https://gist.github.com/mtrotzinski/7230721 herunterladen und nach ~/Library/Application Support/TextWrangler/Language Modules/ verschieben.