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

(Gedit)
(Sublime Text)
 
(24 dazwischenliegende Versionen von 13 Benutzern werden nicht angezeigt)
Zeile 10: Zeile 10:
 
  !Lizenz
 
  !Lizenz
 
  !Homepage
 
  !Homepage
 +
|- bgcolor="#F0F0F0"
 +
|[[Opal Syntax-Highlighting#Coda|Coda]]
 +
|MacOS
 +
|Kommerziell
 +
|[http://www.panic.com/coda]
 
|- bgcolor="#F8F8F8"
 
|- bgcolor="#F8F8F8"
 
  |[[Opal Syntax-Highlighting#ConTEXT|ConTEXT]]
 
  |[[Opal Syntax-Highlighting#ConTEXT|ConTEXT]]
Zeile 27: Zeile 32:
 
|- bgcolor="#F0F0F0"
 
|- bgcolor="#F0F0F0"
 
  |[[Opal Syntax-Highlighting#Gedit|Gedit]]
 
  |[[Opal Syntax-Highlighting#Gedit|Gedit]]
  |Unix
+
  |Unix, MacOS
 
  |Open Source
 
  |Open Source
 
  |[http://www.gnome.org/projects/gedit/]
 
  |[http://www.gnome.org/projects/gedit/]
Zeile 40: Zeile 45:
 
  |Open Source (GPL)
 
  |Open Source (GPL)
 
  |[http://www.gnu.org/software/nano/]
 
  |[http://www.gnu.org/software/nano/]
|- bgcolor="#F8F8F8"
 
|[[Opal Syntax-Highlighting#Opalipse|Opalipse]]
 
|Unix (Eclipse), Windows(Eclipse)
 
|Open Source (GPL)
 
|[http://cs.tu-berlin.de/~choeger]
 
 
|- bgcolor="#F0F0F0"
 
|- bgcolor="#F0F0F0"
 
  |[[Opal Syntax-Highlighting#Proton/Phase5|Proton/Phase5]]
 
  |[[Opal Syntax-Highlighting#Proton/Phase5|Proton/Phase5]]
Zeile 61: Zeile 61:
 
  |[http://www.scintilla.org/]
 
  |[http://www.scintilla.org/]
 
|- bgcolor="#F8F8F8"
 
|- 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]]
 
  |[[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 ==
 
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.
 
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.
Zeile 76: 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 89: Zeile 112:
 
== Gedit ==
 
== Gedit ==
 
Da gedit auf gtksourceview aufbaut, sollten auch andere Editoren die gtksourceview ab der Version 2.0 nutzen funktionieren.
 
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> kopieren.
+
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.
 
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.
 
Danach einfach in gedit unter "Ansicht -> Hervorhebungsmodus -> Quelltexte -> Opal" einstellen.
Zeile 101: Zeile 126:
  
 
== 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.
 
 
== Opalipse ==
 
Opalipse ist ein Opal Plugin für Eclipse. Mehr unter [[Opalipse]].
 
  
 
== Proton/Phase5 ==
 
== Proton/Phase5 ==
Zeile 114: Zeile 136:
 
Außerdem benötigt wird [http://www.hartwork.org/cgi-bin/download.cgi?file=public/opal_pn2.scheme opal_pn2.scheme].
 
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.
 
Die gehört dann ins ''schemes'' Verzeichnis.
 +
 +
Dann in Programmer's Notepad einfach über View -> Change Scheme -> Opal
  
 
== SciTE ==
 
== SciTE ==
Zeile 151: Zeile 175:
  
 
(aus Verzeichnis ''scite/gtk'' heraus) möglich.
 
(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 159: 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.