1 title:: Using Extensions
2 summary:: Using Extensions
4 related:: Guides/WritingUGens, Guides/UsingQuarks, Guides/WritingClasses
6 SC supports extensions to its class library, documentation, and server UGen plugins. Extensions should be packaged as a
7 single folder containing all three (for convenient addition or removal), or any combination, which can then be placed in
8 platform-specific extension directories in order to be included.
12 section:: Platform Specific Directories
14 You can install extensions simply by copying the extensions to the following location. There are different directories
15 for per-user and system-wide extensions that apply to all users.. The locations can be obtained by running
16 code::Platform.userExtensionDir:: and code::Platform.systemExtensionDir::.
18 Typical user-specific extensions directories:
20 ## OSX || ~/Library/Application Support/SuperCollider/Extensions/
21 ## Linux || ~/.local/share/SuperCollider/Extensions/
24 Typical system-wide extension directories:
26 ## OSX || /Library/Application Support/SuperCollider/Extensions/
27 ## Linux || /usr/share/SuperCollider/Extensions/
30 section:: How Extensions Folders Should be Organised
32 Class files and UGen plugins are recognised by their file extensions. Anything placed within a folder named
33 teletype::ignore/:: (case insensitive) will be ignored when compiling the class library or loading plugins.
35 Here is an example folder layout:
37 teletype::MyExtension::
39 ## teletype::classes::
41 ## teletype::myClass.sc::
42 ## teletype::myUGens.sc::
44 ## teletype::plugins::
46 ## teletype::myUGenPlugins.scx::
48 ## teletype::HelpSource::
50 ## teletype::Classes::
52 ## teletype::MyClass.schelp::
53 ## teletype::MyUGen1.schelp::
54 ## teletype::MyUGen2.schelp::
58 ## teletype::MyExtensionGuide.schelp::