Menu

Tree [d3533e] master /
 History

HTTPS access


File Date Author Commit
 api 2020-08-06 b-and-p b-and-p [a8405a] update corona API to 2020.3606
 bin 2020-02-02 Paul Kulchenko Paul Kulchenko [6d0b49] Upgraded luasec to 0.9 and openssl to 1.1.1d (c...
 build 2020-12-02 Paul Kulchenko Paul Kulchenko [dd0659] Updated CMake config file to install all depend...
 cfg 2020-06-05 Deyan Dobromirov Deyan Dobromirov [e33d43] Updated: `Open containing folder` in bulgarian ...
 interpreters 2019-11-02 Paul Kulchenko Paul Kulchenko [1d3231] Updated love2d interpreter to cache love2d exec...
 lualibs 2021-09-06 Paul Kulchenko Paul Kulchenko [52569c] Replaced assertion with explicit check in luain...
 packages 2018-11-25 Paul Kulchenko Paul Kulchenko [1051e5] Added `onFiletreeFileMarkSelected` event (#166).
 spec 2019-11-03 Paul Kulchenko Paul Kulchenko [1c34b0] Improved support for running the IDE using Lua ...
 src 2022-02-15 Paul Kulchenko Paul Kulchenko [d3533e] Added Moonscript highlighting for Yuescript (#1...
 t 2021-06-21 Paul Kulchenko Paul Kulchenko [f796ac] Updated config handling to improve robustness a...
 zbstudio 2021-01-04 Paul Kulchenko Paul Kulchenko [43e003] Updated list of window classes to hide (used in...
 CHANGELOG.md 2020-02-09 Paul Kulchenko Paul Kulchenko [5b127c] Updated documentation for 1.90.
 CONTRIBUTING.md 2017-02-11 Paul Kulchenko Paul Kulchenko [cf1744] Updated documentation to refer questions about ...
 LICENSE 2017-11-08 Paul Kulchenko Paul Kulchenko [a066ac] Updated dates in the serpent license.
 README.md 2020-02-11 Paul Kulchenko Paul Kulchenko [0582ac] Fixed relative link to releases page (closes #1...
 zbstudio.exe 2019-07-15 Paul Kulchenko Paul Kulchenko [6d25d3] Updated launcher on Windows to use more reliabl...
 zbstudio.sh 2019-07-20 Paul Kulchenko Paul Kulchenko [78229a] Updated linux launcher script to suppress spuri...

Read Me

Project Description

ZeroBrane Studio is a lightweight cross-platform Lua IDE with code completion,
syntax highlighting, remote debugger, code analyzer, live coding,
and debugging support for various Lua engines
(Lua 5.1,
Lua 5.2,
Lua 5.3,
Lua 5.4,
LuaJIT,
LÖVE,
Moai,
Gideros,
Corona,
Marmalade Quick,
Cocos2d-x,
OpenResty/Nginx,
Torch7,
Redis,
GSL-shell,
Adobe Lightroom,
Lapis,
Moonscript,
and others).

ZeroBrane Studio debugger screenshot

Features

  • Small, portable, and cross-platform (Windows, macOS, and Linux).
  • Written in Lua and is extensible with Lua packages.
  • Syntax highlighting and folding for 125+ languages and file formats.
  • Project view with auto-refresh and ability to hide files and directories from the list.
  • Bundled with several of the most popular Lua modules
    (luasocket,
    luafilesystem,
    lpeg,
    and luasec)
    compiled for all supported Lua versions.
  • Auto-complete for functions, keywords, and custom APIs with scope-aware completion for variables.
  • Scope-aware variable indicators for Lua code.
  • Integrated debugger with local and remote debugging
    for Lua 5.1,
    Lua 5.2,
    Lua 5.3,
    Lua 5.4,
    LuaJIT,
    and other Lua engines.
  • Interactive console to directly test code snippets with local and remote execution.
  • Live coding
    with Lua,
    LÖVE,
    Gideros,
    Moai,
    Corona SDK,
    GSL-shell, and other engines.
  • Static analysis to catch errors and typos during development.
  • Function outline.
  • Go to definition navigation.
  • Multi-cursor editing with scope-aware variable selection and renaming.
  • Fuzzy search with Go To File, project-wide Go To Symbol navigation, and Insert Library Function.
  • Find and replace in multiple files with preview and undo.
  • Several ways to extend the current functionality:
  • packages (packages/): plugins that provide additional functionality;
  • translations (cfg/i18n/): translations of the menus and messages to other languages;
  • user configuration (cfg/): settings for various components, styles, color themes, and other preferences.

Documentation

Installation

The IDE can be installed into and run from any directory. There are three options to install it:

No compilation is needed for any of the installation options, although the scripts to compile required libraries for all supported platforms are available in the build/ directory.

See the installation section in the documentation for further details and uninstallation instructions.

Usage

The IDE can be launched by using the zbstudio command with slight variations depending on whether a packaged installation or a repository copy is used:

  • Windows: Run zbstudio from the directory that the IDE is installed to or create a shortcut pointing to zbstudio.exe.
  • Linux: Run zbstudio when installed from the package installation or run ./zbstudio.sh when using a snapshot/clone of the repository.
  • macOS: Launch the ZeroBrane Studio application if installed or run ./zbstudio.sh when using a snapshot/clone of the repository.

The general command for launching is the following: zbstudio [option] [<project directory>] [<filename>...].

  • Open files: zbstudio <filename> [<filename>...].
  • Set project directory (and optionally open files): zbstudio <project directory> [<filename>...].
  • Overwrite default configuration: zbstudio -cfg "string with configuration settings", for example: zbstudio -cfg "editor.fontsize=12; editor.usetabs=true".
  • Load custom configuration file: zbstudio -cfg <filename>, for example: zbstudio -cfg cfg/xcode-keys.lua.

All configuration changes applied from the command line are only effective for the current session.

If you are loading a file, you can also set the cursor on a specific line or at a specific position by using filename:<line> and filename:p<pos> syntax (0.71+).

In all cases only one instance of the IDE will be allowed to launch by default:
if one instance is already running, the other one won't launch, but the directory and file parameters
passed to the second instance will trigger opening of that directory and file(s) in the already started instance.

Contributing

See CONTRIBUTING.

Author

ZeroBrane Studio and MobDebug

ZeroBrane LLC: Paul Kulchenko (paul@zerobrane.com)

Estrela Editor

Luxinia Dev: Christoph Kubisch (crazybutcher@luxinia.de)

Where is Estrela?

The Estrela project that this IDE is based on has been merged into ZeroBrane Studio.
If you have used Estrela for graphics shader authoring, you can use this GraphicsCodePack
to get access to all API files, specifications and tools.

License

See LICENSE.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.