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 warning::The following section describes the old OSX-based extension directory layout. This is subject to change.::
34 Class files and UGen plugins are recognised by their file extensions. Anything placed within a folder named help/ or
35 ignore/ (case insensitive) will be ignored when compiling the class library or loading plugins, but anything in the
36 former will be added to the search path for help files.
38 Here is an example folder layout:
41 ## teletype::MyExtension::
43 ## teletype::classes::
45 ## teletype::myClass.sc myUGens.sc::
47 ## teletype::plugins::
49 ## teletype::myUGenPlugins.scx::
53 ## teletype::myClass.html myUGen1.html myUGen2.html::