# cp.config

Manage CommandPost's constants and settings.


# Submodules


# API Overview

Constants - Useful values which cannot be changed

  • appBuild
  • appName
  • appVersion
  • assetsPath
  • basePath
  • bundledPluginsPath
  • bundleID
  • cachePath
  • configPrefix
  • iconPath
  • languagePath
  • pluginPaths
  • privacyPolicyURL
  • processID
  • scriptPath
  • sourceExtensions
  • sourceWatcher
  • translationURL
  • userConfigRootPath
  • userPluginsPath

Variables - Configurable values

  • automaticScriptReloading
  • watcher

Functions - API calls offered directly by the extension

  • application
  • get
  • prop
  • reset
  • set
  • unwatch
  • watch

Fields - Variables which can only be accessed from an object returned by a constructor

  • developerMode
  • frontmost

# API Documentation

# Constants

# appBuild

Signature cp.config.appBuild -> string
Type Constant
Description Application Build
Notes None
Source src/extensions/cp/config/init.lua line 31

# appName

Signature cp.config.appName -> string
Type Constant
Description The name of the Application
Notes None
Source src/extensions/cp/config/init.lua line 21

# appVersion

Signature cp.config.appVersion -> string
Type Constant
Description Application Version
Notes None
Source src/extensions/cp/config/init.lua line 26

# assetsPath

Signature cp.config.assetsPath -> string
Type Constant
Description Path to where Application Assets are stored
Notes None
Source src/extensions/cp/config/init.lua line 84

# basePath

Signature cp.config.basePath -> string
Type Constant
Description Path to where the Extensions & Plugins folders are stored.
Notes None
Source src/extensions/cp/config/init.lua line 89

# bundledPluginsPath

Signature cp.config.bundledPluginsPath -> string
Type Constant
Description The path to bundled plugins
Notes None
Source src/extensions/cp/config/init.lua line 94

# bundleID

Signature cp.config.bundleID -> string
Type Constant
Description Application's Bundle ID
Notes None
Source src/extensions/cp/config/init.lua line 36

# cachePath

Signature cp.config.cachePath -> string
Type Constant
Description The path to the CommandPost Cache folder.
Notes None
Source src/extensions/cp/config/init.lua line 104

# configPrefix

Signature cp.config.configPrefix -> string
Type Constant
Description Prefix used for Configuration Settings
Notes None
Source src/extensions/cp/config/init.lua line 46

# iconPath

Signature cp.config.iconPath -> string
Type Constant
Description Path to the Application Icon
Notes None
Source src/extensions/cp/config/init.lua line 122

# languagePath

Signature cp.config.languagePath -> string
Type Constant
Description Path to the Languages Folder
Notes None
Source src/extensions/cp/config/init.lua line 127

# pluginPaths

Signature cp.config.pluginPaths -> table
Type Constant
Description Table of Plugins Paths. Earlier entries take precedence.
Notes None
Source src/extensions/cp/config/init.lua line 114

# privacyPolicyURL

Signature cp.config.privacyPolicyURL -> string
Type Constant
Description URL for Privacy Policy
Notes None
Source src/extensions/cp/config/init.lua line 51

# processID

Signature cp.config.processID -> number
Type Constant
Description Application's Process ID
Notes None
Source src/extensions/cp/config/init.lua line 41

# scriptPath

Signature cp.config.scriptPath -> string
Type Constant
Description Path to where Application Scripts are stored
Notes None
Source src/extensions/cp/config/init.lua line 61

# sourceExtensions

Signature cp.config.sourceExtensions -> table
Type Constant
Description Extensions for files which will trigger a reload when modified.
Notes None
Source src/extensions/cp/config/init.lua line 132

# sourceWatcher

Signature cp.config.sourceWatcher -> SourceWatcher
Type Constant
Description A cp.sourcewatcher that will watch for source files and reload CommandPost if any change.
Notes None
Source src/extensions/cp/config/init.lua line 137

# translationURL

Signature cp.config.translationURL -> string
Type Constant
Description URL for Translations
Notes None
Source src/extensions/cp/config/init.lua line 56

# userConfigRootPath

Signature cp.config.userConfigRootPath -> string
Type Constant
Description The path to user configuration folders
Notes None
Source src/extensions/cp/config/init.lua line 99

# userPluginsPath

Signature cp.config.userPluginsPath -> string
Type Constant
Description The path to user plugins
Notes None
Source src/extensions/cp/config/init.lua line 109

# Variables

# automaticScriptReloading

Signature cp.config.automaticScriptReloading <cp.prop: boolean>
Type Variable
Description Automatic Script Reloading.
Notes None
Source src/extensions/cp/config/init.lua line 310

# watcher

Signature cp.config.watcher() -> watcher
Type Variable
Description Config Watcher
Notes None
Source src/extensions/cp/config/init.lua line 270

# Functions

# application

Signature cp.config.application() -> hs.application object
Type Function
Description Returns the Application as a hs.application object
Parameters
  • None
Returns
  • hs.application object
Notes None
Examples None
Source src/extensions/cp/config/init.lua line 146

# get

Signature cp.config.get(key[, defaultValue]) -> string or boolean or number or nil or table or binary data
Type Function
Description Loads a setting
Parameters
  • key - A string containing the name of the setting
  • defaultValue - A default value if the setting doesn't already exist
Returns
  • The value of the setting
Notes None
Examples None
Source src/extensions/cp/config/init.lua line 172

# prop

Signature cp.config.prop(key[, defaultValue]) -> cp.prop
Type Function
Description Returns a cp.prop instance connected to the value of the specified key. When the value is modified, it will be notified.
Parameters
  • key - The configuration setting key.
  • defaultValue - The default value if the key has not been set.
Returns
  • A cp.prop instance for the key.
Notes None
Examples None
Source src/extensions/cp/config/init.lua line 223

# reset

Signature cp.config.reset()
Type Function
Description Resets all the settings for the Application
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/config/init.lua line 252

# set

Signature cp.config.set(key, value)
Type Function
Description Saves a setting with common datatypes
Parameters
  • key - A string containing the name of the setting
  • value - An optional value for the setting.
Returns
  • None
Notes
  • This function cannot set dates or raw data types
  • Valid datatypes are:
  • ** string
  • ** number
  • ** boolean
  • ** nil
  • ** table (which may contain any of the same valid datatypes)
  • if no value is provided, it is assumed to be nil
Examples None
Source src/extensions/cp/config/init.lua line 190

# unwatch

Signature cp.config.unwatch(id)
Type Function
Description Unregisters the watcher with the specified ID.
Parameters
  • id - The ID, originally returned from the watch function.
Returns
  • true if a watcher with the ID existed and was successfully removed.
Notes None
Examples None
Source src/extensions/cp/config/init.lua line 292

# watch

Signature cp.config.watch(events) -> id
Type Function
Description Watches for config events.
Parameters
  • events - a table containing functions for each event to watch for.
Returns
  • a unique ID that can be used to unwatch.
Notes
  • Supported events:
  • ** reset() - occurs after CommandPost's settings are reset.
Examples None
Source src/extensions/cp/config/init.lua line 275

# Fields

# developerMode

Signature cp.config.developerMode <cp.prop: boolean; read-only>
Type Field
Description When true, the app is in developer mode.
Notes None
Source src/extensions/cp/config/init.lua line 305

# frontmost

Signature cp.config.frontmost <cp.prop: boolean; read-only>
Type Field
Description Returns whether or not the Application is frontmost.
Notes None
Source src/extensions/cp/config/init.lua line 162