Skip to content
Search

Pragtical

lastmod 2024-08-21created 2024-08-212 edits

A practical code editor

Features

  • "Practical + Pragmatic"
  • Lightweight editor that runs on just 30MB of RAM and 5MB of disk space
  • Built with SDL + C + Lua, cross-platform with Win/Mac/Linux support. Also easy to port to other platforms
  • Supports features such as syntax highlighting, multiple cursors, and a command palette. Features like LSP are supported via plugins
  • Freely extensible with Lua and the C API
  • Open source under the MIT license
  • A code editor forked from Lite XL

Goals of Pragtical

  • Pragtical aims to provide a better experience by expanding features while maintaining performance and extensibility
  • Simplifying the release process by reducing the number of builds and releasing often
  • JIT
    • Pragtical takes a LuaJIT-first approach
    • LuaJIT offers performance benefits and easy interfacing with native C libraries via FFI
    • LuaJIT is a mature Lua implementation that can provide a stable development ecosystem
  • Threading
    • Used in the core where the performance gain is clear, such as file search and replace
  • Widgets
    • Integrated more tightly as part of the core, ensuring easy GUI development and reusability
    • Makes it easier for plugin developers to build user interfaces when needed
  • Settings UI
    • If you're not using a terminal editor, you're probably looking for a point-and-click approach, so a graphical interface for adjusting preferences is included by default
    • However, configuring the editor through Lua will keep working
  • Encoding
    • UTF-8 has become the preferred encoding for text documents for convenience, but sometimes you may encounter documents in other encodings
    • Will support loading and saving documents in other encodings when needed
  • IPC
    • Shared memory functionality is part of the core, and an IPC plugin ships by default to allow opening files and dragging tabs between currently open instances

See also

Favorite site

author Zer0 sitemap