csound的包管理器

risset的Python项目详细描述


risset

risset:csound的包管理器

这是risset的存储库,它是csound external的包管理器 插件和用户定义的操作码。插件二进制文件和文档保存在单独的 存储库位于risset-data

安装

risset仅取决于正在安装的git和{}(>;=3.7)。对于linux,这是 事实上,macos和windows都需要安装。在

pip3 install risset

或通过git:

^{pr2}$

这些命令将把脚本“risset”安装到您的路径中。在

快速入门

# list all defined packages
$ risset list

* else  @ 0.2.0        | Miscellaneous plugins
* poly  @ 0.2.0        | Run multiple copies of an opcode in parallel/series
* klib  @ 0.2.0        | hashtable / pool / string cache plugins [installed 0.2.0]
* jsfx  @ 0.2.0        | Jesusonics effects in csound
* mverb @ 1.3.7        | Artificial reverb based on a 2D waveguide mesh

# Install some packages

$ risset install else jsfx


# Show information about a specific package

$ risset show poly

Plugin     : poly
Installed  : not installed
Abstract   : Run multiple copies of an opcode in parallel/series
Minimal csound version : 6.14
Author     : Eduardo Moguillansky
Platforms  :
    * linux: Ubuntu 16.04
    * macos: 10.14.0
    * windows: Windows 10
Opcodes    :
             poly, polyseq, poly0

# Remove a plugin

$ risset remove poly


# See manual page for an opcode (installed or not)

$ risset man poly

Risset命令

列表

列出平台上所有可用的插件

$ risset list

显示

关于显示插件的信息

$ risset show <plugin>

安装

安装一个或多个插件

$ risset install <plugin> [<plugin2>, ...]

为当前平台安装给定的插件。插件安装到 安装所有其他内置插件的系统文件夹(在某些平台上这需要管理员权限)。 如果给定--user标志,则插件将安装到用户路径中:

  • linux:$HOME/.local/share/csound6/plugins64
  • 苹果操作系统:$HOME/Library/Application Support/csound6/plugins64
  • 窗口:C:\Users\<username>\AppData\Local\csound6\plugins64

为了使--user选项可用,用户应该修改其OPCODE6DIR64 包含系统插件路径和此路径的环境变量。如果您试图安装 带有--user标志且系统设置不正确的插件,risset将失败并通知您 您将如何修改OPCODE6DIR64变量以正确设置它。在

移除

删除已安装的插件

$ risset remove <plugin>

文档

在默认浏览器中打开手册页

$ risset man <opcode>

获取.html手册页的路径

$ risset man --path <opcode>

相同,但是要找到markdown手册页的路径

$ risset man --path --markdown <opcode>

插件文档

所有插件的文档都可以在这里找到:https://github.com/csound-plugins/risset-data/tree/master/docs


升级risset

如果通过pip安装,请执行以下操作:

pip3 install risset -U

如果通过git安装,请转到存储库并执行以下操作:

git pull
python3 setup.py install

贡献

要添加/修改插件,请克隆risset-data

在存储库的根目录下有一个索引文件plugins.json,列出了所有可用的 插件。索引中的每个条目都有

{"plugins":{"myplugin@1.0.0":"plugins/<collection>/<version>/manifests/myplugin.json","...":"..."}}

清单的路径相对于插件.jsongit存储库中的文件。在

舱单

每个插件都有一个.json格式的附带清单。此文件的名称 应与插件的名称相对应:“我的插件.json““

插件清单示例
{"name":"name_of_the_plugin","libname":"name_of_the_shared_library","version":"major.minor.patch","short_description":"a short description","long_description":"a long description","csound_version":"minimal_csound_version","binaries":{"linux":{"url":"path_or_url_of_binary","build_platform":"major.minor.patch","extra_binaries":["url1","url2","..."]},"macos":{"url":"...","build_platform":"..."},"windows":"..."},"doc":"rel/path/to/docfolder","opcodes":["foo","bar","baz"],"author":"Plugin Author","email":"author@email.org","repository":"https://url/to/were/the/source/is/developed"}

每个术语的解释

通常,包含url的每个字段可以是相对于 舱单本身。在

  • name:插件的名称。例如,“潮人”。此名称必须唯一
  • libname:共享库的名称,不带扩展名(例如:libchaoticoscils)。 这用于检查插件是否已安装。在
  • version:表示这些二进制文件版本的版本字符串。版本 应该有表格”市长。帕奇“或”大调。小调,其中每个术语是 整数
  • short_description:“一系列混沌振荡器/噪声发生器”
  • long_description(可选):“对这些操作码做什么的更详细的描述”
  • csound_version:csound的最低版本需要运行这些操作码。 示例“6.14.0”(字符串)
  • binaries:以平台为键的字典。可能的平台:“linux”、“macos”、“windows”。 每个条目的值本身应为以下形式的字典:
    • url:共享二进制文件本身的路径(相对于清单),或者 指向共享库的可下载url。目前只支持路径
    • extra_binaries:一个可选的字段,其中包含所需的其他二进制文件的数组
    • build_platform:标识用于构建二进制文件的平台的字符串
  • doc:(可选)保存操作码手册页的文件夹的相对路径。 默认为清单文件之外名为“doc”的文件夹
  • opcodes:此插件中包含的所有操作码的列表(用于文档目的)
  • author:作者/维护者的名称
  • email:作者/维护者的电子邮件
  • repository:URL是这个插件的源代码

平台支持

所有操作码都支持三种主要的桌面,这是可取的,但不是要求 windows和windows平台。对给定平台的支持由 中给定平台的二进制文件manifest.json文件文件。在

托多

  • 子命令doc:显示关于插件内操作码的文档

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JNLP无法在浏览器中正确启动(与dtjava.js一起部署)   在执行下一个方法之前,java将等待线程执行结束   java如何将另一个LayoutManager应用于JComboBox?(多栏JComboBox尝试)   使用jPBC在java中实现双线性配对   java在使用@RequestMapping注释时获取请求的值(URL)   java如何控制流量   java如何获取IFC对象的绝对坐标?   java目标服务器无法使用htmlunit和tor响应异常   java需要帮助创建一个循环结构来运行我的程序   java有可能拥有一个Android APK并在应用程序中更改构建变体吗?   在Sphinx4中运行Ant的java   Java:从ArrayList获取子列表的有效方法   java如何使在循环内部创建的数组在循环外部工作?   apache poi通过java中的XSSF表从单元格读取日期值   安卓 java自己的SeqLock实现,避免spinlock会更好吗?   java的并发底层方法。util。同时发生的预定未来   java比较方法违反了它的一般约定,如何使它具有可传递性?   使用JAVA定向指定类的DB导出子类   一个方法中的java更改特定imageView