CudaText is a cross-platform text editor, written in Lazarus. It is fully open source, see Wiki info.

Features include:
  • Syntax highlight for many languages: C, C++, JavaScript, HTML, CSS, PHP, Python, XML etc. 200+ syntax lexers exist.
  • Code tree (tree structure of functions/classes/etc in source).
  • Code folding.
  • Multi-carets and multi-selections.
  • Find/Replace with reg. ex.
  • Plugins in Python language. Plugins can do lot of things.
  • Configs in JSON. Supports lexer-specific configs.
  • Tabbed UI.
  • Split each tab.
  • Split view for 2/3/4/6 files.
  • Simple auto-completion (fixed list) for some lexers.
  • Command palette (ST3 style).
  • Minimap.
  • Micromap.
  • Show unprinted whitespace.
  • Support for many encodings.
  • Customizable hotkeys.
  • Binary/Hex viewer for files of unlimited size.
Features for HTML/CSS coding:
  • Smart auto-completion for HTML, CSS.
  • HTML tags completion with Tab-key (Snippets plugin).
  • HTML color codes (#rgb, #rrggbb) underline.
  • Show pictures inside editor area (jpeg/png/gif/bmp/ico).
  • Show tooltip when mouse moves over picture tag, entity, color value.

Gallery


Multi-selections, Replace dialog at bottom


2 groups shown


Dark theme, Minimap, Custom icons


2 groups visible, picture file opened


Code Tree for Pascal lexer


Lexer Properties dialog


Lexer Library dialog


Auto-completion for CSS


CudaLint plugin found errors in HTML file


Can edit/save binary files w/o data loss


(gif) Multi-carets, multi-selections in action


(gif) Font ligatures with Fira Coda font


(gif) How to install add-ons, e.g. Filter Lines


(gif) FindInFiles plugin in action


(gif) Python Intel plugin, based on Jedi library


(gif) Project Manager plugin


(gif) HTML Tooltips plugin


Internal hex viewer (for any files)


macOS version, FTP plugin opened


Sublime-like command palette, with 100's of commands


Powerful features implemented as plugins

  • Addons manager
  • Find in files
  • Snippets
  • External tools
  • Project manager
  • Session manager
  • Macro manager
  • Spell checker
  • FTP panel
  • Linters support (CudaLint)
  • Brackets highlight, go to pair bracket
  • Highlight all occurences
  • Color picker
  • Insert date/time
  • Formatters for HTML/ CSS/ JS/ XML/ SQL
  • Tabs list in sidebar
  • Create backup files
  • Menu configurator
  • and more...

Configs

  • Call menu item "Settings-default" and you'll see Default config. Copy any lines to config called by "Settings-user" and edit lines in this User config.
  • Lexer override config: settings for single lexer only. E.g., if you open Pascal file, lexer-override for Pascal is read after user config.
  • File types config: you can specify mapping between file types and lexer names. Such mapping exists in lexer-library, this config overrides it.
  • Hotkeys config: hotkeys dialog allows to customize hotkeys for all program actions.
  • Color themes: color editor dialog allows to customize colors and save them to a theme file.

More info