PLUG'N SCRIPT
rapid plugin development
Tutorial
DSP
KUIML
How-to
Scripts
  • Overview
  • Tutorial
    • Hello world
    • Main skin and subskins
    • Displaying text
    • Changing text on the fly
    • Printing from the DSP
    • Displaying and controlling parameters
    • Params 101
  • Reference
  • Built-in variables
  • Runtime model
  • Parameters mapping
  • Script converter
  • LetiMix
KUIMLTutorialHello world
July 19, 2025

Hello, world!

Every KUIML document is an XML file, so it traditionally begins with:

  1. <?xml version="1.0" encoding="utf-8" ?>

It must have a single root element, for example:

  1. <SKIN ...></SKIN> or <DUMMY></DUMMY>

The SKIN element serves as the root for the entire skin (and also for any sub-skins loaded dynamically with the KUIML_WIDGET element). DUMMY serves as a root element for included files when your skin is split into multiple parts, and these parts can be included using INCLUDE or INCLUDE_ONCE.

A simple "Hello, world" example

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <SKIN>
  3. <TEXT value="Hello, world!" />
  4. </SKIN>

You can save this as "my_script.kuiml" and place it alongside your DSP file "my_script.cxx".

Note that "my_script.cxx" should contain, at minimum, the script name:

  1. // minimal contents of .cxx file
  2. string name="My plugin";

Also, ensure that "Custom enabled" is checked in the default skin/Edition pane.

Now, when you load or reload this script in Plug'n Script, you should see something similar to the following:

Next, let's add some attributes to our SKIN.

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <SKIN width="450" height="250" text_color="#FFFFFF" background_color="#333333" font_size="30" font_face="Tahoma" font_weight="bold">
  3. <TEXT value="Hello, world!" />
  4. </SKIN>

The SKIN element supports the same attributes as the CELL element, along with some attributes unique to SKIN.

If you choose "Background: None" in the GUI Options and disable all decorations in the default skin, your .kuiml subskin can occupy nearly the entire available space (except for the fixed top menu).

To further customize the top menu, you can either develop your own main skin from scratch (a challenging but rewarding process) or use an existing skin, such as the highly customizable LM Skin.

Main skin and subskins


Comments

Please, authorize to view and post comments.

2020 - 2026 © Site by LetiMix · Donate  |  Plug'n Script and KUIML by Blue Cat Audio