Salieri Grundkenntnisse

Willkommen in WINSAL!

WINSAL ist die Windows-Version für Salieri.

 Aufbau der Salieri Dokumentation

 Erste Schritte

 Benutzungsoberfläche von WINSAL

An english version of this helpfile will soon be available.

Please have a look at http://www.informatik.th-darmstadt.de/AFS/CM


Hilfe aufrufen

Salieri Dokumentation

In Salieri stehen Ihnen viele Hilfsmittel zur Verfügung.

Es gibt:

Salieri-Hilfe

elektronische Hilfe	schriftliche Dokumentation
Salieri-Einführung	Tutorial
Salieri-online-Hilfe	Referenzhandbuch mit Funktionenliste
	Dokumentation der Standardbibliotheken

Salieri-Einführung:

Sie befinden sich gerade in der Salieri-Einfuhrung. Sie soll den Benutzer mit Salieri vertraut machen. Dazu gehört eine Beschreibung der wichtigsten Elemente von Winsal und kurze Beispiele für das leichtere Verständnis.

Salieri-online-Hilfe:

Die Salieri-online-Hilfe liefert eine Beschreibung aller Funktionen in Salieri. Sie kann mit F1 aufgerufen werden, oder im Menü unter ? ausgewählt werden.

Tutorial:

Das Tutorial ist ein Einführungskurs in Salieri, der Sie mit den wichtigsten Funktionen in Salieri vertraut macht. Anhand verschiedener Beispiele können Sie den Umgang mit den Funktionen üben.

Referenzhandbuch:

Das Referenzhandbuch ist ein schriftliches Nachschlagewerk, in der eher die technischen Informationen zum Salieri-System enthalten sind.

Funktionenliste:

Die Funktionenliste ist eine ausführliche Beschreibungen aller Funktionen in Salieri mit vielen Beispielen.

Dokumentation der Standardbibliotheken:

In den Standardbibliotheken sind Implementierungen häufig gebrauchter Funktionen.


Erste Schritte

 Aufruf von Salieri

 Einfaches Beispiel

 Beispiel für Fortgeschrittene

 Ausgabe musikalischer Objekte

   Beenden von Salieri


Aufruf von Salieri

Beim Aufruf von Salieri erscheint der System Dialog. In der esten Sitzung wird Ihnen ein Beispiel-Workspace zu Verfügung gestellt, in dem Objektbeispiele stehen. In den nachfolgenden Sitzungen werden die Objekte, die bei der letzten Anwendung von Salieri erzeugt wurden, geladen und stehen im Workspace wieder zur Verfügung. Im System Dialog erscheint die Nachricht, daß der Workspace geladen wurde und eine Eingabeaufforderung.

Loading workspace from salieri.wsp ... Done

>

An dieser Eingabeaufforderung können Salieri-Befehlen eingegeben werden.

Um Salieri zu beenden, siehe Beenden von Salieri.


Einführungsbeispiel

Einfaches Beispiel

Im System Dialog können Sie Befehle eingeben und Objekte deklarieren.

In Salieri gibt es verschiedene Objekttypen. Wahrheitswerte, Integer, Reals, Reihen, Zeichenketten und Listen. In diesem Beispiel werden Objekte erzeugt und anschließend manipuliert. Lesen Sie die Beispiele durch und probieren Sie selbst die Zeilen in der Eingabeaufforderung des System Dialog einzugeben.

Wollen Sie den Wert eines Objekts erfahren, geben Sie einfach den Objektnamen ein, und der Wert wird Ihnen zurückgeliefert.

Deklaration eines Integerwerts:

> h:=3

> h

Result= 3

Manipulation des Integerwerts:

> h:=h+3

> h

Result= 6

> h:=h*3

> h

Result= 18

Deklaration einer Zeichenkette:

> z1:="Das ist eine Salieri"

> z2:="- Einführungshilfe"

> z:=z1+z2

> z

Result= "Das ist eine Salieri- Einführungshilfe"

Deklaration einer Sequenz:

> s1:=[c d e f g a h c]

> s1

Result= [ I=80 M=100 T=0 c1/4 d1/4 e1/4 f1/4 g1/4 a1/4 h1/4

c1/4 ]

Die erste Zahl hinter dem Notennamen bezeichnet die Oktave. Dahinter wird die Notenlänge angegeben. Dabei steht /4 für eine ¼ Note. Die Notation musikalischer Objekte wird in der Salieri-online-Hilfe und im Referenzhandbuch näher beschrieben.

> s2:=[a h c d e f g a]

> s2

Result= [ I=80 M=100 T=0 a1/4 h1/4 c1/4 d1/4 e1/4 f1/4 g1/4 a1/4 ]

> s:=poly(s1,s2)

> s

Result= SEGM([ I=80 M=100 T=0 c1/4 d1/4 e1/4 f1/4 g1/4 a1/4 h1/4

c1/4 ],[ I=80 M=100 T=0 a1/4 h1/4 c1/4 d1/4 e1/4 f1/4 g1/4 a1/4 ]

Mit der Funktion poly kann man mehrere Sequenzen zu einem Segment zusammenfassen. Das Segment s ist zweistimmig, wobei s1 die erste Stimme und s2 die zweite Stimme ist. In der Segmentdarstellung werden die einzelnen Stimmen in eckigen Klammern durch Kommata getrennt in geschweifte Klammern geschrieben oder im SEGM-Konstrukt eingetragen. Die Notation aller Objekte wird im Tutorial ausführlich erläutert. Die Sequenzen und das Segment kann man mit dem NoteViewer in konventioneller Notennotation betrachten

Welche Funktionen Salieri sonst noch bereitstellt, können Sie in der Funktionenliste oder in der Salieri-online-Hilfe nachlesen. In beiden gibt es zu jeder Funktion eine ausführliche Erklärung und mehrere Anwendungsbeispiele.


Beispiel für Fortgeschrittene

In diesem Fortgeschrittenen Beispiel wird der Umgang mit dem Workspace Browser und dem NoteViewer beschrieben. Dazu wird ein Objekt erzeugt und auf verschiedene Arten betrachtet.

Erzeugen Sie im System Dialog zwei musikalische Objekte melody1 und melody2.

> melody1:={[g/16 d c g g d c g], [e/16 h a e e h a e],[c/16 g f c c g f c]}

> melody2:=transp(melody1,2)

Mit diesen Objekten können Sie die Funktionen des Workspace Browsers und Noteviewers kennenlernen.

Anwendungsbeispiel: Workspace Browser

Anwendungsbeispiel: Noteviewer


Anwendungsbeispiel Workspace Browser

Anwendungsbeispiel: Workspace Browser

Sie haben jetzt die Objekte melody1 und melody2 erzeugt. Öffnen Sie den Workspace Browser indem Sie ihn im Menü # aufrufen.

Im Workspace Browser sehen Sie die Kurzform von melody1 und melody2.

Sie haben beide die Länge drei, weil sie aus drei Stimmen bestehen. Im unteren Fenster sehen Sie die Darstellung des Objekts.

Legen Sie eine Kopie des Objekts melody2 an. Dazu drücken Sie den Knopf copy und nennen das neue Objekt melody4. Im System Dialog wird der passende Salieri-Befehl eingetragen und ausgeführt.

> melody4 := melody2

Benennen Sie das Objekt melody4 neu. Drücken Sie auf den Knopf move und geben Sie dem Objekt den neuen Namen melody3. Diese Eingabe erzeugt folgenden Eintrag im System Dialog.

> melody3 := melody4; delete(melody4)

Deleted object melody4.

Im System Dialog wird dazu also eine Kopie des Objekts angefertigt, und das alte Objekt wird dann gelöscht.

Um ein Objekt zu löschen, markieren Sie das Objekt mit dem Mauszeiger und drücken Sie auf den Knopf delete. Sichern Sie dem Delete-Befehl zu. Im System Dialog werden folgende Zeilen erzeugt:

> delete(melody3)

Deleted object melody3.

Sie können sich Sequenzen und Segmente anhören. Drücken Sie auf den Knopf play. Salieri erzeugt eine temporäre MIDI-Datei.

> play(melody1)

Creating MIDI-file _tmp0.mid ... Done

Sehen Sie sich das Objekt melody1 im NoteViewer an. Dazu drücken Sie auf den Knopf view. Salieri erzeugt eine temporäre Datei und der NoteViewer wird geöffnet mit dem Namen melody2.

> view(melody2,"melody2")

Creating SVW-file _tmp0.svw ... Done

Um eine Übersicht über die Aufrufe des Noteviewers zu bekommen, sehen sie nach unter Ausgabe musikalischer Objekte.

Im Kapitel Workspace Browser können Sie noch mehr über die Anwendung des Workspace Browsers erfahren.


Anwendungsbeispiel Noteviewer

Anwendungsbeispiel: NoteViewer

Sie haben jetzt die Objekte melody1 und melody2 erzeugt.

Wenn Sie das Anwendungsbeispiel Workspace Browser einmal durchgeführt haben, können Sie den nächsten Schritt überspringen. Wenn nicht, müssen Sie zuerst eine temporäre Datei, in der die konventionelle Notendarstellung enthalten ist, erzeugen.

SVW-Dateien anlegen:

Wählen sie den Befehl view aus dem Menü Objects. Geben Sie als ersten Parameter melody1 und als zweiten einen Namen für melody1 ein. Wiederholen Sie die Schritte entsprechend für das zweite Segment.

> view(melody1,"Melodie1")

Creating SVW-file _tmp0.svw ... Done

> view(melody2,"Melodie2")

Creating SVW-file _tmp1.svw ... Done

Wenn Sie die SVW-Datei vom Workspace Browser erzeugen lassen, wird der Name des Objekts automatisch als Name für die SVW-Datei eingetragen. Mit dem Befehl view können Sie den Namen selber wählen. Durch diese Eingaben im System Dialog werden zwei Noteviewfenster aufgerufen. Die Segmente werden in einem 4/4 Takt dargestellt, die Notenschlüssel werden, je nach Notenwerten, passend gewählt.

Im NoteViewer finden Sie unter dem Menü Settings Einstellungen, die Sie verändern können.

Verändern des Taktwerts in ¾ Takt:

Wählen Sie aus dem Menü Settings Meter. Geben Sie den Zählerwert 3 und den Nennerwert 4 ein. Bestätigen Sie und kehren Sie zum NoteViewer zurück.

Änderung der metrischen Subdivision:

Sie können einstellen, ob zusammenhängende Noten mit einem Balken geschrieben werden sollen oder nicht. Ist die Einstellung Zähler=1 und Nenner=4 dann werden immer soviele Noten unter einem Balken zusammengefaßt, die eine ¼ Note ergeben. Geben Sie im Zähler den Wert 1 und im Nenner den Wert 8 ein. Dann werden je 2 1/16 Noten unter einem Balken zusammengefaßt.

Verändern der Notenschlüssel:

Wählen Sie aus dem Menü Settings keys. Geben Sie unter voice die Nummer der Stimme ein, deren Notenschlüssel Sie verändern möchten. Wählen Sie dann den Notenschlüssel aus. Drücken Sie o.k. und kehren Sie zum NoteViewer zurück.

Wenn Sie sich das musikalische Objekt später noch einmal anschauen möchten, dann öffnen Sie den NoteViewer indem Sie ihn im Menü # aufrufen.

Wählen Sie die gewünschte SVW-Datei aus und bestätigen Sie.


Ausgabe musikalischer Objekte

Musikalische Objekte sehen:

Wenn Sie sich ein musikalisches Objekt in Notenform ansehen möchten, haben Sie in Salieri verschiedene Möglichkeiten.

Sie geben den Befehl view(name) im System Dialog ein.

	Name ist der Name des Objekts. Das Notenblatt wird mit dem Namen no Name geöffnet.
Sie wählen aus dem Menü Objects den Befehl view.

	Im System Dialog erscheint folgender Eintrag: > view(,"") In den Klammern müssen die Parameter noch eingetragen werden. Der erste Parameter ist der Objektname, der zweite der Titel für das zu erstellende Notenblatt des Objekts. Der NoteViewer wird mit dem angegebenen Titelnamen geöffnet, oder
Sie öffnen eine SVW-Datei mit dem NoteViewer.

	Wenn Sie bereits eine SVW-Datei erzeugt haben, können Sie einfach den NoteViewer öffnen und die entsprechende SVW-Datei auswählen.

Sie markieren im Workspace Browser das Objekt und drücken  den Befehl view.

Musikalische Objekte hören:

Musikalische Objekte kann man sich in Salieri anhören. Auch hier gibt es verschiedenen Möglichkeiten.

Sie geben den Befehl play(name) im System Dialog ein.

	Name ist der Name des Objekts. Salieri erzeugt eine temporäre MIDI-Datei, über die das Objekt abgespielt wird.
Sie wählen aus dem Menü Objects den Befehl play.

	Im System Dialog erscheint folgender Eintrag: > play() In den Klammern muß der Objektname noch eingetragen werden. Das Objekt wird dann abgespielt.
Sie markieren im Workspace Browser das Objekt und drücken den Befehl play.


Salieri beenden

Um Salieri zu beenden, haben Sie verschiedene Möglichkeiten.

•	Wählen Sie Exit aus dem Menü #, oder
•	Drücken sie die Tastenkombination Alt + F4, oder
•	Geben Sie den Befehl exit() im System Dialog ein, oder
•	Schließen Sie den System Dialog

Achtung! Salieri sichert beim Verlassen nur den Workspace. Salieri fragt, ob geänderte Dateien gesichert werden sollen. Wird diese Anfrage nicht bestätigt werden die Änderungen nicht gespeichert.

Winsal fragt, ob Sie das System wirklich verlassen wollen. Bejahen Sie die Frage, dann speichert Salieri den aktuellen Workspace mit seinen Einstellungen unter salieri.wsp. Ihre Objekte werden in dieser Datei gespeichert. Beim nächsten Start von Salieri wird der System Dialog geöffnet und der alte Workspace-Inhalt wird wieder geladen.


Fensterobjekte in Winsal

Benutzungsoberfläche in Winsal

In Salieri gibt es verschiedene Fensterobjekte. Das Winsal-Fenster ist das Hauptfenster.In diesem Fenster befindet sich die Salieri-Anwendung. Die anderen Fensterobjekte befinden sich innerhalb des Winsal-Fensters. Das wichtigste Fenster innerhalb des Winsal-Fensters ist der System Dialog. Diese beiden Fenster sind während der Salieri-Sitzung immer geöffnet. Schließt man den System Dialog, verläßt man auch Winsal.

Salieri bietet noch mehr Hilfsmittel, die den Umgang mit Salieri erleichtern. Der Program Editor ermöglicht es dem Benutzer, Salieri-Dateien direkt in Winsal zu schreiben und auszuführen. Der Workspace Browser gibt eine schnelle Übersicht über vorhandene Objekte im Workspace. Mit Hilfe des NoteViewers kann man sich musikalische Objekte in Notenform ansehen, wie auf einem Notenblatt.

 System Dialog

 Program Editor

 Workspace Browser

 NoteViewer

Menü im Winsal - Fenster

#

Unter diesem Menüpunkt befinden sich die anderen Fensterobjekte. System Dialog, Program Editor, Workspace Browser und NoteViewer. Außerdem der Befehl zum Beenden von Salieri.

Windows

Haben Sie mehrere Fenster gleichzeitig geöffnet, können Sie unter Windows das Fensterobjekt anwählen, in dem Sie als nächstes arbeiten möchten.

?

Unter ? finden Sie die Hilfe zu Funktionen und Sprache in Salieri.

Die anderen Menüpunkte beziehen sich auf die jeweils aktiven Fenster.

 Abkürzungen


System Dialog

Der System Dialog erscheint beim Aufruf von Winsal automatisch. Im System Dialog kann man Befehle in der Eingabeaufforderung direkt eingeben. Durch den System Dialog kommuniziert man mit dem Salieri-System. Befehle und Programme, die im System Dialog eingegeben werden, werden von Salieri-System intern übersetzt und ausgeführt.

Menü

Unter System befinden sich Systembefehle.

Edit beinhaltet Befehle zum Editieren, wie sie aus anderen Editoren bekannt sind.

Workspace und Objects beinhalten Befehle, die den Workspace, oder die darin befindlichen Objekte, verändern.

Unter Basic, Control und Musicals befinden sich interne Salieri-Funktionen, die auf Salieri-Objekte angewandt werden können. Der Funktionsrumpf wird in den System Dialog geschrieben. Die Parameter müssen dann an der entsprechenden Stelle eingefügt werden.

Die internen Funktionen werden in der Funktionenliste und in der Salieri-online-Hilfe ausführlich beschrieben und anhand von Beispielen erklärt. In beiden gibt es zu jeder Funktion eine ausführliche Erklärung und mehrere Anwendungsbeispiele.


Program Editor

Im Program Editor kann man Dateien editieren. Es ist empfehlenswert Funktionen oder Programme in eine Salieri-Datei zu schreiben, und diese Datei dann über den System Dialog auszuführen. Im Editor kann man leichter Änderungen und Verbesserungen an Objekten und Funktionen anbringen. Salieri-Dateien müssen unter name.sal gespeichert werden. Die durch Semikolon getrennten Anweisungen in den Dateien werden wie aufeinanderfolgende Eingaben im Systemdialog abgehandelt. Sie können eine Datei direkt vom Program Editor aus mit Strg + E im System Dialog ausführen lassen.

 Programme schreiben mit Salieri

Menü

Im Menü des Program Editors gibt es, das bei einem Editor übliche Menü, Edit.

Das Menü gleicht dem des System Dialog. Der Menüpunkt System ist hier aber durch File ersetzt.


Workspace Browser

Mit dem Workspace Browser kann man sich die im Workspace befindlichen Objekte anschauen. In der Kurzinformation werden die Objekte alphabetisch aufgelistet und kurz beschrieben. Darin steht für alle Objekte der Name und der Typ. Als zusätzliche Ausgabe wird bei Funktionen der Funktionsrumpf, bei Reihen die Länge der Reihe und bei Integer, Real und Boolean der Wert angegeben. Die Objekte sind im unteren Fenster in ungekürzter Form zu sehen.

Zum Hören eines Segments bzw einer Sequenz, oder zur Ansicht in konventioneller Notennotation stehen Ihnen im Workspace Browser die Knöpfe view und play zur Verfügung. View ersetzt die Eingabe view im System Dialog und erzeugt ein NoteView Fenster. Play ersetzt die Eingabe play(name) und spielt das Objekt über eine Midi-Datei ab.

Mit dem Workspace Browser kann man den Workspace auch verändern. Man kann Objekte kopieren, umbenennen und löschen. Sehen Sie sich das Beispiel für Fortgeschrittene an. Darin finden Sie ein Anwendungsbeispiel für den Workspace Browser.

Menü

Im Menü des Workspace Browsers haben die Menüpunkte Objects und Workspace andere Inhalte als im System Dialog. Unter Select und Filter befinden sich Funktion zur Veränderung des Workspace und zur Anzeige ausgewählter Objekte im Workspace Browser. Mit Filter können Sie sich Objekte, die bestimmten Kriterien entsprechen anzeigen lassen und können sich so die Suche nach Objekten vereinfachen.


NoteViewer

Mit dem NoteViewer kann man sich Sequenzen und Segmente in konventioneller Notennotation anschauen. Im NoteViewer wird das Segment oder die Sequenz in einem 4/4 Takt angezeigt. Der Notenschlüssel wird von Salieri passend gewählt. Beide Einstellungen lassen sich aber unter dem Menüpunkt Settings ändern. Mit der Option Meter kann man die Taktart und mit keys den Notenschlüssel ändern. Schauen Sie sich dazu das Beispiel für Fortgeschrittene an. Darin finden Sie ein Anwendungsbeispiel für den NoteViewer.

Menü

Im NoteViewer gibt es nur Settings. Zu den Einstellungen in Settings gibt es Beispiele in Beispiel für Fortgeschrittene.


Programme schreiben mit Salieri

Programme bestehen aus einem oder mehreren selbstgeschriebenen Funktionen in Salieri-Syntax. Programme, die aus einer Zeile bestehen , kann man leicht im System Dialog schreiben. Längere Programme schreibt man jedoch am besten im Program Editor. Es empfiehlt sich auch die Deklaration längerer Sequenzen und Segmente in eine Datei zu schreiben. So kann man einfacher Fehler verbessern und Änderungen einbringen. Funktionen, die zu einem Programm gehören, können so in einer Datei gesammelt werden.

Beispiel:

(*Das ist ein Beispielprogramm *)

reverse:=FUNC( 1,`
(*Die Funktion reverse kehrt in einem mehrstimmigen Segment die Stimmenreihenfolge um.*)

(*Der Parameter ist ein Segment.*)

	thema:=$1;
	(*Parameterumbenennung (*optional*)*)
	erg:=SEGM();
	(*Ein Ergebnissegment wird initialisiert.*)
	loop(`i:=1 ´,`i<=parts(thema)´,`i:=i+1 ´,
		`erg:=poly(part(thema,i),erg) ´);
		(*Innerhalb der Schleife werden die Sequenzen in umgekehrter Reihenfolge im Ergebnissegment eingetragen.*)
	return(erg)´);
	(*Die Ergebnissequenz wird zurückgeliefert.*)

Salieri ist mit vielen internen Funktionen und Befehlen ausgerüstet, mit deren Hilfe sich größere Programme verwirklichen lassen.Sie werden in der Funktionenliste und in der Salieri-online-Hilfe ausführlich beschrieben und anhand von Beispielen erklärt. In beiden gibt es zu jeder Funktion eine ausführliche Erklärung und mehrere Anwendungsbeispiele.

Insbesondere musikalische Programme lassen sich in Salieri leicht verwirklichen.


Abkürzungen

Die am häufigsten gebrauchten Abkürzungen in Winsal sind:

Alt + F4	Salieri beenden

F1	Hilfe aufrufen