Skip to main content

Configuration

Levitate IDE offers extensive customization options to tailor the editor to your preferences and workflow.

Settings

Accessing Settings

Open the Settings panel using one of these methods:

  • Press Ctrl+, (or Cmd+, on macOS)
  • Click the gear icon in the lower left corner
  • Use the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) and type "Settings"

Settings Interface

The Settings interface is organized into categories:

Settings Interface

  • Search Bar: Quickly find specific settings
  • Categories: Browse settings by functional area
  • Editor: Real-time preview of changes
  • JSON View: Toggle between UI and JSON editing

Common Settings

Editor Appearance

SettingDescriptionDefault
editor.fontSizeFont size in pixels14
editor.fontFamilyFont for editor'Menlo, Monaco, Consolas, monospace'
editor.lineHeightLine height as a multiplier1.5
editor.minimap.enabledShow/hide code minimapfalse
editor.renderWhitespaceRender whitespace characters'selection'

Editor Behavior

SettingDescriptionDefault
editor.tabSizeNumber of spaces per tab2
editor.insertSpacesUse spaces instead of tabstrue
editor.wordWrapWord wrap long lines'off'
editor.autoSaveAuto-save files'afterDelay'
editor.formatOnSaveFormat code when savingtrue

AI Features

SettingDescriptionDefault
ai.completions.enabledEnable AI code completionstrue
ai.completions.delayDelay before showing suggestions (ms)300
ai.model.providerAI model provider'local'
ai.model.temperatureCreativity of completions (0-1)0.3

Themes

Color Themes

Levitate comes with several built-in themes:

  1. Levitate Dark (default)
  2. Levitate Light
  3. Midnight Blue
  4. Forest Green
  5. High Contrast

To change the theme:

  1. Open Settings
  2. Select the "Color Theme" category
  3. Choose your preferred theme

Installing Custom Themes

  1. Open Extensions panel (Ctrl+Shift+X / Cmd+Shift+X)
  2. Search for "themes"
  3. Browse and install theme extensions
  4. Apply the new theme from Settings

Creating Custom Themes

You can create your own theme by:

  1. Opening Command Palette and selecting "Developer: Generate Color Theme"
  2. Customizing the generated JSON file
  3. Saving it as a .json file in the .levitate/themes directory

Keyboard Shortcuts

Viewing Keyboard Shortcuts

Access the keyboard shortcuts editor:

  • Press Ctrl+K Ctrl+S (or Cmd+K Cmd+S on macOS)
  • Use Command Palette and type "Keyboard Shortcuts"

Customizing Shortcuts

  1. Find the command you want to customize
  2. Click the pencil icon next to the shortcut
  3. Press the desired key combination
  4. Press Enter to save

Common Customizations

Popular shortcut customizations include:

CommandDefaultCommon Alternative
Save FileCtrl+SCmd+S (macOS)
Format DocumentShift+Alt+FCmd+Shift+L
Toggle TerminalCtrl+`Cmd+` (macOS)
Open Command PaletteCtrl+Shift+PF1

Language-Specific Settings

Levitate allows configuration specific to each programming language.

Accessing Language Settings

  1. Open Settings
  2. Search for the language name (e.g., "python", "typescript")
  3. Adjust language-specific settings

Example: Python Configuration

{
"[python]": {
"editor.tabSize": 4,
"editor.insertSpaces": true,
"editor.formatOnSave": true,
"editor.defaultFormatter": "ms-python.python"
},
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"python.formatting.provider": "black",
"python.analysis.typeCheckingMode": "basic"
}

Example: TypeScript Configuration

{
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-typescript",
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true
}
},
"typescript.updateImportsOnFileMove.enabled": "always",
"typescript.preferences.quoteStyle": "single"
}

User Snippets

Create reusable code snippets to speed up your workflow:

  1. Open Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
  2. Type "Snippets: Configure User Snippets"
  3. Select a language or create a global snippet file
  4. Add your custom snippets

Snippet Format

{
"Print to console": {
"prefix": "log",
"body": ["console.log($1);", "$2"],
"description": "Log output to console"
}
}

Project-Specific Settings

Workspace Settings

Create project-specific settings that override user defaults:

  1. Create a .levitate folder in your project root
  2. Add a settings.json file within that folder
  3. Add project-specific settings to this file

These settings will only apply to this project.

Example Workspace Configuration

{
"editor.tabSize": 4,
"editor.insertSpaces": true,
"ai.model.provider": "openai",
"git.autofetch": true,
"terminal.integrated.defaultProfile.osx": "bash"
}

Extensions

Levitate's functionality can be extended through plugins:

Managing Extensions

  1. Open Extensions panel (Ctrl+Shift+X / Cmd+Shift+X)
  2. Browse, install, enable, or disable extensions
  3. Configure extension settings through the Settings panel
CategoryRecommended Extensions
PythonPython Extension Pack, Pylint, Black Formatter
TypeScriptESLint, Prettier, Import Cost
GitGitLens, Git History
ThemesNight Owl, Dracula, GitHub Theme

Advanced Configuration

Configuration File Locations

PlatformUser SettingsExtensions
Windows%APPDATA%\Levitate\User\settings.json%APPDATA%\Levitate\extensions
macOS~/Library/Application Support/Levitate/User/settings.json~/Library/Application Support/Levitate/extensions
Linux~/.config/Levitate/User/settings.json~/.config/Levitate/extensions

Command Line Configuration

Levitate can be configured via command line arguments:

levitate --user-data-dir=/custom/path --disable-extensions --verbose

Common flags include:

  • --user-data-dir: Specify custom user data location
  • --disable-extensions: Start without extensions
  • --verbose: Enable verbose logging
  • --enable-proposed-api: Enable experimental features

Configuration Sync

Sync your settings across devices:

  1. Open Command Palette
  2. Type "Settings Sync: Turn On"
  3. Sign in with your Levitate account
  4. Choose what to sync (settings, keybindings, extensions, etc.)

Your configuration will be automatically synced to all your devices.