From 14af7754cfc5de913d5774a43ebf3f1653209814 Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Wed, 1 May 2024 16:00:28 +0300 Subject: format tables in LDoc via HTML instead of Markdown * this is unreliable but should be tested on the build server as well * drops the lua-discount dependency * updated TODO --- README.md | 3 ++- TODO | 13 +++++++++++-- config.ld | 2 +- examples/evdev.lua | 2 +- midi.lua | 7 ++++--- 5 files changed, 19 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 05113ee..abd8bde 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,8 @@ To compile the project, type: make Up-to-date documentation is available at the [website](http://rhaberkorn.github.io/applause2). -In case you want to build it manually, install the `lua-ldoc` and `lua-discount` packages and type: +In case you want to build it manually, install [LDoc](https://stevedonovan.github.io/ldoc/) +(for instance `luarocks install ldoc`) and type: make doc diff --git a/TODO b/TODO index 0fbacf9..0e4e2f9 100644 --- a/TODO +++ b/TODO @@ -12,6 +12,13 @@ # Features +* Feedback loops are very hard to do. Perhaps there should be a + Stream:feedAdd() that returns the source stream but adds the value into a given + DelayStream. Alternatively, there should be a VarStream() which would be similar to Stream() + but always returning the self.value. Stream:feed() takes a VarStream. +* dbtorms(), rmstodb(). + See shepard.lua. + https://forum.pdpatchrepo.info/topic/11236/dbtorms * RTNeural support. Should probably be a separate library or an optional dependency. Since it is a C++ library making extensive use of templates, there will have to be a small C wrapper. @@ -114,6 +121,8 @@ Tk canvases. * Automatically detect whether terminal supports the Kitty graphics protocol: https://sw.kovidgoyal.net/kitty/graphics-protocol/#querying-support-and-available-transmission-mediums -* Two C non-inlineable function calls per sample due to applause_push_sample() could be avoided by including our - own lockless ring-buffer implementation. * Document ZipStream semantics - see chapter Stream Algebra in my thesis. +* Add list of features as in Conclusion of my thesis. +* Markdown table in midi.lua. + This appears to be broken even with format='discount' and format='lunamark' (0.6.0). + diff --git a/config.ld b/config.ld index cbee1b4..bf90ac1 100644 --- a/config.ld +++ b/config.ld @@ -3,7 +3,7 @@ project = "Applause" description = "LuaJIT-based real-time synthesizer, based on a stream algebra" -format = "discount" +format = "markdown" readme = "README.md" examples = "examples/" diff --git a/examples/evdev.lua b/examples/evdev.lua index 44ee3a3..da34207 100644 --- a/examples/evdev.lua +++ b/examples/evdev.lua @@ -8,5 +8,5 @@ NoiseStream:BPF(trackball:evrel('REL_X'):scale(100,5000), trackball:evrel('REL_Y touchpad = EvdevStream("TouchPad") touchpad:evabs('ABS_X', 1232, 5712):scale(440,880):SinOsc():gain(touchpad:evabs('ABS_Y', 1074, 4780):scale(1)):play() -# FIXME: Make a small polyphonic keyboard +-- FIXME: Make a small polyphonic keyboard EvdevStream(10):evkey(16):instrument(Stream.SinOsc(440)):play() diff --git a/midi.lua b/midi.lua index 4b02d01..f56368f 100644 --- a/midi.lua +++ b/midi.lua @@ -14,9 +14,10 @@ cdef_include "midi.h" -- MIDI events are 24-bit words with the -- [following structure](https://www.codecademy.com/resources/docs/markdown/tables): -- --- | Bit 23-16 | 15-8 | 7-4 | 3-0 | --- | --------- | ---- | --- | --- | --- | Controller value / velocity | Controller number / key | Command code | Channel number | +-- +--
Bit 23-1615-87-43-0 +--
Controller value / velocityController number / keyCommand codeChannel number +--
-- -- MIDI streams can and are usually ticked at the sample rate but will generate 0 words -- in absence of events. -- cgit v1.2.3