Files
modeling-app/docs/kcl/settings.md
Jess Frazelle 98822869f7 fix settings docs names (#5751)
* fix settings docs names

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* A snapshot a day keeps the bugs away! 📷🐛 (OS: namespace-profile-ubuntu-8-cores)

* add consts to dir

Signed-off-by: Jess Frazelle <github@jessfraz.com>

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-03-11 10:20:18 -07:00

1.6 KiB

title, excerpt, layout
title excerpt layout
KCL Settings Documentation of settings for the KCL language and Zoo Modeling App. manual

KCL Settings

There are three levels of settings available in the KittyCAD modeling application:

  1. User Settings: Global settings that apply to all projects, stored in user.toml
  2. Project Settings: Settings specific to a project, stored in project.toml
  3. Per-file Settings: Settings that apply to a single KCL file, specified using the @settings attribute

Configuration Files

The KittyCAD modeling app uses TOML files for configuration:

Per-file settings

Settings which affect a single file are configured using the settings attribute. This must be at the top of the KCL file (comments before the attribute are permitted). For example:

// The settings attribute.
@settings(defaultLengthUnit = in)

// The rest of your KCL code goes below...

x = 42 // Represents 42 inches.

The settings attribute may contain multiple properties separated by commas. Valid properties are:

  • defaultLengthUnit: the default length unit to use for numbers declared in this file.
    • Accepted values: mm, cm, m, in (inches), ft (feet), yd (yards).
  • defaultAngleUnit: the default angle unit to use for numbers declared in this file.
    • Accepted values: deg (degrees), rad (radians).

These settings override any project-wide settings (configured in project.toml or via the UI).