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

K (Wortauslassung)
(Sublime Text)
 
(55 dazwischenliegende Versionen von 28 Benutzern werden nicht angezeigt)
Zeile 4: Zeile 4:
  
 
= Übersicht der Editoren mit Opal-Unterstützung =
 
= Übersicht der Editoren mit Opal-Unterstützung =
{|
+
{| border="0" cellpadding="4" cellspacing="2"
 +
|- bgcolor="#E0E0E0"
 
  !Editor
 
  !Editor
 
  !Betriebssysteme
 
  !Betriebssysteme
 
  !Lizenz
 
  !Lizenz
 
  !Homepage
 
  !Homepage
  |-
+
|- bgcolor="#F0F0F0"
  |[[#ConTEXT|ConTEXT]]
+
|[[Opal Syntax-Highlighting#Coda|Coda]]
 +
|MacOS
 +
|Kommerziell
 +
  |[http://www.panic.com/coda]
 +
|- bgcolor="#F8F8F8"
 +
  |[[Opal Syntax-Highlighting#ConTEXT|ConTEXT]]
 
  |Windows
 
  |Windows
 
  |Freeware
 
  |Freeware
 
  |[http://www.context.cx]
 
  |[http://www.context.cx]
|-
+
|- bgcolor="#F0F0F0"
  |[[#Emacs|Emacs]]
+
  |[[Opal Syntax-Highlighting#Emacs|Emacs]]
 
  |Unix, Windows, MacOS
 
  |Unix, Windows, MacOS
  |Open Source
+
  |Open Source (GPL)
 
  |[http://www.gnu.org/software/emacs/emacs.html]
 
  |[http://www.gnu.org/software/emacs/emacs.html]
|-
+
|- bgcolor="#F8F8F8"
  |[[#EmEditor|EmEditor]]
+
  |[[Opal Syntax-Highlighting#EmEditor|EmEditor]]
  |Windows 98, ME, 2000, XP, 2003
+
  |Windows
  |Kommerziell (Freeware für Akademiker)
+
  |Kommerziell, Freeware
 
  |[http://www.emeditor.com/]
 
  |[http://www.emeditor.com/]
  |-
+
|- bgcolor="#F0F0F0"
  |[[#Kate|Kate]]
+
|[[Opal Syntax-Highlighting#Gedit|Gedit]]
 +
|Unix, MacOS
 +
|Open Source
 +
  |[http://www.gnome.org/projects/gedit/]
 +
|- bgcolor="#F8F8F8"
 +
  |[[Opal Syntax-Highlighting#Kate|Kate]]
 
  |Unix+KDE
 
  |Unix+KDE
  |Open Source
+
  |Open Source (GPL)
 
  |[http://kate.kde.org/]
 
  |[http://kate.kde.org/]
|-
+
|- bgcolor="#F0F0F0"
  |[[#nano|nano]]
+
  |[[Opal Syntax-Highlighting#nano|nano]]
 
  |Unix, Mac OSX
 
  |Unix, Mac OSX
  |Open Source (GNU)
+
  |Open Source (GPL)
 
  |[http://www.gnu.org/software/nano/]
 
  |[http://www.gnu.org/software/nano/]
|-
+
|- bgcolor="#F0F0F0"
  |[[#Proton/Phase5|Proton/Phase5]]
+
  |[[Opal Syntax-Highlighting#Proton/Phase5|Proton/Phase5]]
 
  |Windows
 
  |Windows
 
  |Freeware
 
  |Freeware
 
  |[http://www.qhaut.de/forums/index.php?dlcategory=2]
 
  |[http://www.qhaut.de/forums/index.php?dlcategory=2]
  |-
+
|- bgcolor="#F8F8F8"
  |[[#Vim|Vim]]
+
|[[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
 
  |Unix, Windows, MacOS
 
  |Open Source
 
  |Open Source
 
  |[http://www.vim.org/]
 
  |[http://www.vim.org/]
 +
|- bgcolor="#F8F8F8"
 +
|[[Opal Syntax-Highlighting#TextWrangler|TextWrangler]]
 +
|OS X
 +
|Freeware
 +
|[http://www.barebones.com/products/textwrangler/]
 
|}
 
|}
  
 
= Details =
 
= Details =
 +
 +
== 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)
 +
 +
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.
 +
 
== ConTEXT ==
 
== ConTEXT ==
Die aktuelle Syntaxfile für ConTEXT ist auf [http://www.hartwork.org/ http://www.hartwork.org/] zu finden.
+
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.
  
 
== Emacs ==
 
== Emacs ==
Zeile 55: Zeile 99:
 
<pre>
 
<pre>
 
(setq load-path
 
(setq load-path
       (cons "/home/uebb/uebb/infadm/emacs" load-path)
+
       (cons "/home/uebb/opal/ocs/lib/emacs" load-path)
 
       )
 
       )
 
(defvar opal-novice t)
 
(defvar opal-novice t)
Zeile 66: Zeile 110:
 
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.
 
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.
  
Für Akademiker ist EmEditor kostenlos (siehe [http://www.emeditor.com/help/faq/academic/index.htm Academic License]).
+
== 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 ==
 
== Kate ==
Für Kate/KWrite hat Sebastian Pipping eine Highlighting-Definition geschrieben. Die Datei <code>opal_kate.xml</code> kann unter [http://www.hartwork.org/ http://www.hartwork.org/] heruntergeladen werden.  
+
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.
  
Zur Installation einfach die Datei <code>opal_kate.xml</code> nach <code>~/.kde/share/apps/katepart/syntax</code> kopieren.
+
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 ==
 
== nano ==
Auch nano unterstützt Syntax-Highlighting, wenn man entsprechende <code>nanorc</code>-Datei installiert. Die Datei und Installationsanleitung von gibt es auf der [http://user.cs.tu-berlin.de/~svens/nanorc_files/nano_opal.html Homepage von Sven Schneider].  
+
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 ==
 
== Proton/Phase5 ==
Die aktuelle Syntaxfile für Proton ist auf [http://www.hartwork.org/ http://www.hartwork.org/] zu finden.
+
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 ==
 
== Vim ==
Zeile 86: 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>.  
  
 +
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]].
 
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.
 +
 +
== TextWrangler ==
 +
Syntaxdefinition https://gist.github.com/mtrotzinski/7230721 herunterladen und nach ~/Library/Application Support/TextWrangler/Language Modules/ verschieben.
  
 
[[Kategorie: Opal]]
 
[[Kategorie: Opal]]
 
__NOTOC__
 
__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.