# Opusmodus 2.2.26911 Update

## Recommended Posts

New function:

• DICTUM

Please note that the functions APPLY-TO-DICTUM and OMN-DICTUM are merged to a new function DICTUM.

If you used any of the two function before in your score please rename the function and make the changes to the dictum form and type.

Here are the new types:

```:range    a list (<low> <high>). Length, pitch or velocity values.
:and      a list of event elements (l p v a).
:any      an event element or list of event elements.
:apply    an event element, list of event elements or function.
:remove   an event element, list of elements, :velocity, :event or :attribute.
:first    an event element or list of event elements (first event in a sequence).
:last     an event element or list of event elements (last event in a sequence).
:butlast  an event element or list of event elements (butlast events in a sequence).
:rest     an event element or list of event elements (rest events in a sequence).
:sub      a sequence of events (a bar substitution).
:bar      an integer or list of integers (bar number).
:event    an integer or list of integers (event number).```

Dictum Examples:

Replaces an element with a new-element in all bars:

```(:any f :apply p)
(:any q :apply e)
(:any stacc :apply leg)
(:any q :apply stacc)
(:any e :apply (s stacc))```

Replaces an element with a new-element in a given bar:

```(:any f :apply p :bar 1)
(:any q :apply e :bar 1)
(:any stacc :apply leg :bar 1)
(:any q :apply stacc :bar 1)
(:any e :apply (s stacc) :bar 1)
(:any e :apply (s stacc) :bar (1 3 5))
(:any e (s stacc) :bar 2..6)```

Replaces an element with a new-element in a given bar and a given event number:

```(:any f :apply p :bar 1 :event 1)
(:any q :apply e :bar 1 :event 1)
(:any q :apply stacc :bar 1 :event 1)
(:any e :apply (s stacc) :bar 1 :event 1)
(:any e :apply (s stacc) :bar (1 3 5) :event 1)
(:any e :apply (s stacc) :bar 2..6 :event 1)```

Replaces all elements in a sequence of its type with a new-element:

`(:apply stacc)`

Replaces all elements of its type with a new-element in a given bar:

```(:apply stacc :bar 2)
(:apply stacc :bar (2 4 6 8))```

Rewrites accidentals with sharp map:

`(:apply :sharp)`

Rewrites accidentals with flat map:

`(:apply :flat)`

Replaces a list of elements with a new-element in all bars:

`(:any (f mf) :apply mp)`

Replaces a list of elements with a new-element in a given bar:

`(:any (f mf) :apply mp :bar 1)`

Removes an element from the sequence:

`(:remove leg)`

Removes all velocity elements from the sequence:

`(:remove :velocity)`

Removes all attribute (articulation) elements from the sequence:

`(:remove :attribute)`

Converts an event number in a given bar into a pause:

`(:remove :event :bar 1 :event 2)`

Replaces a first event in all bars in a sequence:

`(:first ord)`

Replaces the first event in a given bar:

`(:first ord :bar 6)`

Replaces the last event in a given bar:

`(:last fermata :bar 6)`

Replaces all elements in a sequence excluding the last event:

`(:butlast leg)`

Replaces all elements in a sequence excluding the first event:

`(:rest leg)`

Replaces all elements in a given range with a new-element:

```(:range (t s) :apply marc)
(:range (mp f) :apply p)
(:range (c4 c5) :apply tasto)```

Replaces all elements in a given range and in a given bar:

```(:range (t s) :apply marc :bar 2)
(:range (mp f) :apply p :bar 2)
(:range (c4 c5) :apply tasto :bar 2)```

Replaces all elements in a sequence when equal the and series:

```(:and (q c4 f) :apply ff)
(:and (q c4 f stacc) :apply (q c4cs5 f marc))```

Substitutes a given bar number with a new sequence of events:

`(:sub (3q c4 eb4 gs4) :bar 8 )`

×

• Lessons