From a18f080df2899d28e8dff6fd3aaf5bb43799d94e Mon Sep 17 00:00:00 2001 From: falkTX Date: Fri, 3 Jul 2015 11:21:06 +0200 Subject: [PATCH] Put the correct properties of extui; Add doc script and gitignore --- .gitignore | 2 + generate-lv2-html-docs.sh | 25 ++++++ kx-external-ui.lv2/external-ui.ttl | 127 +++++++++++------------------ kx-meta/manifest.ttl | 8 ++ kx-meta/meta.ttl | 18 ++++ 5 files changed, 101 insertions(+), 79 deletions(-) create mode 100644 .gitignore create mode 100755 generate-lv2-html-docs.sh create mode 100644 kx-meta/manifest.ttl create mode 100644 kx-meta/meta.ttl diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1d7000e --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +documentation/ + diff --git a/generate-lv2-html-docs.sh b/generate-lv2-html-docs.sh new file mode 100755 index 0000000..57c5365 --- /dev/null +++ b/generate-lv2-html-docs.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +set -e + +if [ ! -d kx-external-ui.lv2 ]; then + echo "kx-external-ui.lv2 bundle missing" + exit +fi + +if (! which lv2specgen.py >/dev/null); then + echo "lv2specgen.py tool missing" + exit +fi + +if [ ! -d documentation ]; then + mkdir documentation +fi + +if [ ! -f documentation/style.css ]; then + git clone git://github.com/KXStudio/LV2-Extensions --depth 1 -b gh-pages documentation +fi + +cp kx-external-ui.lv2/* documentation/extui/ + +lv2specgen.py $(pwd)/kx-external-ui.lv2/manifest.ttl /usr/share/lv2specgen/ ../style.css $(pwd)/documentation/extui/index.html $(pwd)/documentation/extui "" -i -p extui diff --git a/kx-external-ui.lv2/external-ui.ttl b/kx-external-ui.lv2/external-ui.ttl index 6a0139f..ecaf93f 100644 --- a/kx-external-ui.lv2/external-ui.ttl +++ b/kx-external-ui.lv2/external-ui.ttl @@ -3,6 +3,7 @@ @prefix owl: . @prefix rdf: . @prefix rdfs: . +@prefix ui: . @prefix xsd: . @@ -12,101 +13,69 @@ <../kx-meta/meta.ttl> ; lv2:documentation """

- LV2 External UI extension is an LV2 UI extension, - subclass of http://lv2plug.in/ns/extensions/ui/#UI - just like http://lv2plug.in/ns/extensions/ui/#GtkUI is.
- It defines LV2UI_Widget pointer/handle as a pointer to LV2_External_UI_Widget, defined in the lv2_external_ui.h header (see below).
+ LV2 External UI extension is an LV2 UI extension, subclass of ui:UI just like ui:GtkUI is.
+ The ui:Widget type used in this extension is extui:Widget, see the C header file for more details.

- This extension used to be available under the http://lv2plug.in/ns/extensions/ui#external URI, - and later http://nedko.arnaudov.name/lv2/external_ui/.
- These old URIs are deprecated and the extension is available under the new http://kxstudio.sf.net/ns/lv2ext/external-ui URI.
- Or if you prefer, the old extensions are deprecated and a new one with exactly same semantics but different URI is available.
-
- NOTE: The old http://nedko.arnaudov.name/lv2/external_ui/ URI has been removed from the header file, - since there were no plugins using it. + This extension used to be (wronly) defined in a lv2plug.in domain.
+ The old URI is deprecated and the extension is available under the new URI.
+ Or if you prefer, the old extension is deprecated and a new one with exactly same semantics but different URI is available.

-

List of plugins that use this extension: -

+

List of hosts that use this extension: -

+ """ . -extui:brand - a rdf:Property , - owl:DatatypeProperty ; - rdfs:label "brand" ; - rdfs:range xsd:string ; - rdfs:comment "TODO, maximum 10 characters" . - -extui:label - a rdf:Property , - owl:DatatypeProperty ; - rdfs:label "label" ; - rdfs:range xsd:string ; - rdfs:comment "TODO, maximum 16 characters" . - -extui:default - a rdf:Property , - owl:DatatypeProperty , - owl:FunctionalProperty ; - rdfs:label "default" ; - rdfs:seeAlso lv2:default ; - rdfs:comment "A custom default value specific to MOD devices, used in place of lv2:default." . - -extui:minimum - a rdf:Property , - owl:DatatypeProperty , - owl:FunctionalProperty ; - rdfs:label "minimum" ; - rdfs:seeAlso lv2:minimum ; - rdfs:comment "A custom minimum value specific to MOD devices, used in place of lv2:minimum." . - -extui:maximum - a rdf:Property , - owl:DatatypeProperty , - owl:FunctionalProperty ; - rdfs:label "maximum" ; - rdfs:seeAlso lv2:maximum ; - rdfs:comment "A custom maximum value specific to MOD devices, used in place of lv2:maximum." . +extui:Host + a lv2:Feature ; + lv2:documentation """ +

+TODO +

+""" . -extui:rangeSteps - a rdf:Property ; - rdfs:domain lv2:Port ; - rdfs:range xsd:nonNegativeInteger ; - rdfs:label "number of value steps" ; - rdfs:seeAlso pprops:rangeSteps ; - rdfs:comment "A custom rangeSteps value specific to MOD devices, used in place of pprops:rangeSteps." . +extui:Widget + a rdfs:Class , + owl:Class ; + rdfs:subClassOf ui:UI ; + rdfs:label "External UI" ; + lv2:documentation """ +

+TODO +

+""" . -extui:notStompboxCapable - a lv2:Feature ; - rdfs:label "not stompbox capable" ; + + a lv2:Feature , + rdfs:Class , + owl:Class ; + owl:deprecated true ; + rdfs:seeAlso extui:Host, extui:Widget ; + rdfs:label "Old External UI" ; lv2:documentation """

-Indicates that the plugin is not suitable for use in the MOD Stompbox mode.
-Plugins are assumed to be suitable for Stompbox mode by default, and MUST provide this as an optional feature in case that's not true. +TODO

""" . diff --git a/kx-meta/manifest.ttl b/kx-meta/manifest.ttl new file mode 100644 index 0000000..26a7166 --- /dev/null +++ b/kx-meta/manifest.ttl @@ -0,0 +1,8 @@ +@prefix lv2: . +@prefix rdfs: . + + + a lv2:Specification ; + lv2:minorVersion 1 ; + lv2:microVersion 0 ; + rdfs:seeAlso . diff --git a/kx-meta/meta.ttl b/kx-meta/meta.ttl new file mode 100644 index 0000000..e414bfd --- /dev/null +++ b/kx-meta/meta.ttl @@ -0,0 +1,18 @@ +@prefix doap: . +@prefix foaf: . +@prefix owl: . +@prefix rdfs: . + + + a owl:Ontology ; + doap:license "Public Domain" ; + doap:name "KXStudio Meta" ; + doap:shortdesc "KXStudio project metadata" ; + doap:created "2015-07-03" ; + doap:maintainer ; + rdfs:comment "This document describes metadata relevant to the KXStudio project." . + + + a foaf:Person ; + foaf:name "Filipe Coelho" ; + foaf:mbox .