CudaText Changelog

What's new in CudaText 1.130.0

Apr 1, 2021
  • Add: HTML auto-completion: support HTML entities (like  )
  • Add: HTML auto-completion: update tags/attribs lists (thanks @d-mal)
  • Add: much faster multi-carets editing, with 100+ carets and heavy lexer (thanks @JairoMartinezA)
  • Add: work on Undo/Redo (thanks @xcme)
  • Add: Undo: Caret movements were considered as actions that could be cancelled/repeated. It led to unneeded caret jumps. Now it looks more like undo/redo manages the content, not caret.
  • Add: Undo: If last change was performed in area which isn't visible now, then undo/redo actions will highlight for a while the line and insert a short delay before the undo/redo action.
  • Add: Undo: New options "undo_for_caret_jump" and "undo_pause".
  • Add: Undo: Paste followed by other editing were considered as single action, so undo cancelled both the pasting and the editing at once. Now these actions are separated.
  • Add: Undo: If pause (1500 msec) is passed between typing actions, undo them by steps.
  • Change: Multi-caret edition - undo all chars at once, like ST3.
  • Add: tab's context menu has new item "Pinned"; pinned tabs captions show prefix "!" (thanks @kvichans)
  • Add: command "set tab color..."
  • Add: command "reset tab color"
  • Add: command "toggle tab pinned state"
  • Add: better work of the feature which shows UI-tab titles like "test.txt * folder1" / "test.txt * folder2" (thanks @kvichans)
  • Add: better statusbar "message" cell: instead of hiding the text it dims it; floating tooltip for that cell shows 30 last messages (thanks @Shovel)
  • Add: app updates 'enabled state' of toolbar buttons (visible on colorful toolbar theme)
  • Fix: calculating width of some Unicode chars (thanks @cser)

New in CudaText 1.129.5 (Mar 23, 2021)

  • Fix: problem with "CudaExt / Code-Tree Symbol list" and non-ASCII file text (thanks @kvichans)
  • Fix: command 'Redo' could not work sometimes (thanks @xcme)
  • Fix: crash after installing lexer, while lite-lexer SQL^ was active (thanks @JairoMartinezA)
  • Fix: regression since 1.124.0: Console's right-click menu is incomplete (thanks @kvichans)
  • Fix: regression since 1.127.0: broken work of lite lexers with minimap (thanks @tmsg)
  • Fix: regression since 1.128.0: app crashes on start, if lexers have 'grammar' (examples: C#, Pascal, SQL)
  • Fix: plugins hotkeys become broken in current app session, after any plugin installation (thanks @JairoMartinezA, @OlehL)

New in CudaText 1.129.3 (Mar 16, 2021)

  • Add: code-tree for CSS lexer shows colored squares near 'Colors' items (thanks @NQUARE)
  • Add: lexer CSS: show color formats 'rgb', 'hsl', '#aabbccdd' in code-tree (thanks @NQUARE)
  • Add/change: reworked the way how app saves/restores per-file-history for properties: word wrap, show unprinted chars, show line numbers, show folding column, show minimap, show micromap, show ruler; format of JSON history: changed 'bool' values to 'int'
  • Add: wiki topic https://wiki.freepascal.org/CudaText#Brackets_auto-pairing_logic
  • Fix: major bug since 1.128.0: sometimes app crashes on start, with C#/ Pascal/ SQL lexers

New in CudaText 1.129.0 (Mar 16, 2021)

  • Add: handle config JSON files with UTF-8 BOM (patch goes to FreePascal as well)
  • Add: better logic of brackets auto-closing (and selection surrounding) for case of multi-carets (thanks @xcme)
  • Add: command "Install from GitHub" / "Download as zip" supports all branch names (thanks @Shovel)
  • Change: paint end-of-line text marks ("LF", "CRLF", "CR", "EOF") by lines, not by font
  • Fix: crash in last change in "Help / Check for updates"

New in CudaText 1.128.5 (Mar 9, 2021)

  • Change: for CSS auto-completion, use another provider of CSS names/properties, now it's cudax_css.py module
  • Change: auto-completion for CSS and HTML was 70% rewritten, pls report any issues
  • Add: better logic of skipping brackets: skip ')' in case 'f(|)' but don't skip in case 'f(text|)` (thanks @xcme)
  • Add: option "auto_close_brackets" supports more chars: ~ * # <
  • Add: detect Debian/Ubuntu to download deb-file in "Help / Check for updates" (thanks @ildarkhasanshin)
  • Add: API to show "masked password" editor fields and "numbers only" editor fields (thanks @Shovel)
  • Fix: Find dialog had reset "O" option after restart (thanks @xcme)
  • Fix: minor issue with "Don't save" choice in "Save tabs?" dialog (thanks @GHNewbiee)
  • Fix: regression with option "ui_lexer_themes":false (thanks @MiroslavMatas)
  • Fix: few standard plugins were using deleted APIs (thanks @dinkumoil)

New in CudaText 1.128.4 (Mar 8, 2021)

  • Change: for CSS auto-completion, use another provider of CSS names/properties, now it's cudax_css.py module
  • Change: auto-completion for CSS and HTML was 70% rewritten, pls report any issues
  • Add: detect Debian/Ubuntu to download deb-file in "Help / Check for updates" (thanks @ildarkhasanshin)
  • Fix: regression with option "ui_lexer_themes":false (thanks @MiroslavMatas)
  • Fix: few standard plugins were using deleted APIs (thanks @dinkumoil)

New in CudaText 1.128.0 (Mar 8, 2021)

  • Add: load lexers using multi-threading, this improved loading speed by 15-20%
  • Add: update app icon (by @Shovel)
  • Add: option "key_up_down_allow_edge" (thanks @kvichans)
  • Add: UI-tabs: paint < > scroll arrows dimmed, when no scrolling is needed (thanks @d7_2_laz)
  • Add: clicking on editor's scrollbar puts focus to editor (thanks @GHNewbiee)
  • Add: tab title "UntitledN" counter is reset after tabs are closed, and only 1 tab is left (thanks @GHNewbiee)
  • Add: save/restore history scroll-position for 2nd part of splitted UI-tab (thanks @GHNewbiee)
  • Fix: sometimes, arrows up/down over tab-char could restore previous column wrong (thanks @tiun)
  • Fix: issue with painting of 'ghost caret' on typing/deleting text (thanks @quesada)
  • Fix: render UI-tab rounded corners for all tab positions: top/bottom/left/right

New in CudaText 1.127.0 (Mar 1, 2021)

  • Add: multi-threading is now used to paint the minimap, painting with minimap is now 2x faster
  • Add: when UI-tabs are not 'angled', they have rounded corners (no option yet)
  • Change: UI-tabs are now not 'angled' by default
  • Change: 'angled' UI-tabs were not painted ok on some OS/desktops, so disabled them yet: on Linux Qt5, on macOS
  • Change: partially revert changes for tab-group splitters from 1.126.0 (thanks @Shovel)
  • Change: remove lexer VBScript to add-ons
  • Fix: work with minimap after click on minimap-current-view-area (thanks @xcme)
  • Fix: some pixel artifacts on 'flat' UI-tabs (thanks @JairoMartinezA)
  • Fix: error when PHP auto-completion is called after e.g. "0~" (thanks @Shovel)
  • Fix: regression, option "renderer_offsets" was ignored
  • Fix: coloring of code-blocks in e.g. reST lexer

New in CudaText 1.126.4 (Feb 25, 2021)

  • Add: internal optimizations in renderer, pls report any bugs
  • Add: on opening user.json or default.json, program shows information panel about "Options Editor" (thanks @Shovel)
  • Add: option "autocomplete_autoshow_chars" now works with national letters (thanks @tmsg)
  • Add: Addon Manager: don't reinstall CudaLint/CudaFormatter when a linter/formatter is installing
  • Fix: with word-wrap, click on parts of huge line with CJK, gave wrong caret position

New in CudaText 1.126.0 (Feb 22, 2021)

  • Add: added built-in tree-helper for Markdown, and plugin cuda_tree_markdown is removed, it is in ignore-list now (thanks @GHNewbiee)
  • Add: added built-in tree-helper for MediaWiki, and plugin cuda_tree_mediawiki is in ignore-list now
  • Add: added built-in tree-helper for reStructuredText, and plugin cuda_tree_rest is in ignore-list now
  • Add: better handle splitters moving in tab-group modes '3 vert', '3 horz', '6 grid' (not yet in modes '4v', '4h', '6v', '6h')
  • Add: UI-tabs in "multi-line" style can now be scrolled too, vertically (thanks @GHNewbiee)
  • Add: added API useful for plugin "Terminal Plus" (thanks @Shovel)
  • Add: Addon Manager: auto-install CudaLint/CudaFormatter when a linter/formatter is installing
  • Add: lexer PHP: support attributes of PHP 8: #[Name]
  • Fix: keys Up/Down, with selection overlapping editor border, caused wrong horizontal scrolling
  • Fix: bug in detecting lexers 'PKGBUILD', 'Dockerfile' (thanks @Nori13)

New in CudaText 1.125.2 (Feb 22, 2021)

  • Add: UI-tabs in "multi-line" style can now be scrolled too, vertically
  • Add: added API useful for plugin "Terminal Plus" (thanks @Shovel)
  • Add: Addon Manager: better handle requirements of CudaLint, CudaFormatter
  • Fix: bug in detecting lexers 'PKGBUILD', 'Dockerfile' (thanks @Nori13)

New in CudaText 1.125.0 (Feb 16, 2021)

  • Add: auto-completion for file URI file:///, controlled by new option "autocomplete_file_uri"
  • Add: Wiki topic https://wiki.freepascal.org/CudaText#File_URI_auto-completion
  • Add: API to support new plugin "Terminal Plus" (thanks @Shovel)
  • Add: on window resizing, editor keeps "index of top line"
  • Add: option "ui_cmdpalette_filter_keep" (thanks @JairoMartinezA)
  • Add: feature "plugin_groups": char '&' is now stripped before RegEx check (thanks @JairoMartinezA)
  • Add: lexer CSS: better std properties lists
  • Change: Command Palette now hides very simple commands: arrows, Enter, Delete, BackSp, Tab, Home, End, PageUp, PageDown, Shift+arrows, Shift+Home etc.
  • Change: removed menu item "Options / Settings-hotkeys", added text-hint in the Command Palette instead (thanks @JairoMartinezA)
  • Fix: if "wrap_mode" is set, app could not correctly restore "index of top line" for session files
  • Fix: if plugins ConfigToolbar + ExternalTools were used, and toolbar button was created for ext-tool, it was stored to ConfigToolbar config wrong (thanks Markus F.). You _must_ update all ConfigToolbar buttons which refer to tools: ie press "Command" button and choose a tool again, then OK.
  • Fix: auto-completion must not work in 'comments', but it worked at the end of 'comment' line
  • Fix: auto-completion must scroll to caret after the text insertion
  • Fix: auto-completion issue with "dim_unfocused"

New in CudaText 1.124.0 (Feb 8, 2021)

  • Add: option "dim_unfocused", it allows to dim background color of editors in passive tab-groups
  • Add: option "scrollbar_themed", it allows to use OS native scrollbars
  • Add: option "scrollbar_arrows"
  • Add: option "ui_dialogs_in_taskbar"
  • Add: when ui-tabs are 'flat', show underline for passive groups with dimmed color (thanks @JairoMartinezA)
  • Add: if user.json does not exist yet, the file "settings_default/userinit.json" (if exists) is copied to user.json
  • Add: save to session also UI-tab splitted state (on/off, vert/horz, percents of window size) (thanks @GHNewbiee)
  • Add: command "split tab: split horizontally" (thanks @JairoMartinezA)
  • Add: command "split tab: split vertically"
  • Add: command "split tab: don't split"
  • Add: API allows much more access to Console panel fields (thanks @Shovel)
  • Add: allow multi-selections to touch, without joining them (thanks @JairoMartinezA, @cser)
  • Add: lexer Batch: highlight `tick_blocks`; highlight variables with chars ~.,()
  • Change: hide micromap when there is only one line (in multi-line editors)
  • Change: changed submenu "View / Split tab / ..." to new 3 items: "Don't split", "Vertically", "Horizontally" (thanks @OlehL)
  • Change: program will not save to session filenames from CudaText: "settings/history.json", "settings/history session.json"
  • Fix: Linux: minimizing modal plugin's dialogs could freeze the CudaText (thanks @GHNewbiee)
  • Fix: Markdown tree-helper must skip headers inside ..

New in CudaText 1.123.0 (Feb 8, 2021)

  • Add: support HTML color-codes highlighting in text background, option "underline_color_size" needs special value for this (thanks @pagewerk)
  • Add: Wiki topic https://wiki.freepascal.org/CudaText#HTML_color_codes_underlining
  • Add: Wiki topic https://wiki.freepascal.org/CudaText#Automatic_folding_of_comments
  • Add: Wiki topic https://wiki.freepascal.org/CudaText#Show_pictures_in_the_text
  • Add: commands 'type a char'/'backspace'/'delete'/'undo'/'redo'/'left'/'right', when with multi-carets, should not scroll to first(last) caret (thanks @JairoMartinezA)
  • Add: commands 'indent selection'/'unindent selection' now support multi-carets
  • Add: auto scale 'margin lines' width (thanks @Shovel)
  • Add: Project Manager: big speed up of "Go to file" with ~1000 files (thanks @dopm)
  • Add: dialogs "Themes", "Color theme" are now resizable; dialog "Themes" is now scalable (thanks @Lastique)
  • Fix: Qt5 version: plugin dialogs flickering (thanks @Lastique)
  • Fix: Windows XP: themed menu font size was incorrect (thanks @zanud)
  • Fix: regression with restoring "index of top line" from session, with word-wrap and w/o it (thanks @JairoMartinezA)
  • Fix: regression with commands "left"/"right" not scrolling to caret (thanks @JairoMartinezA)
  • Fix: regression with bad positioning of tab-groups 'splitters' on start (thanks @GHNewbiee)
  • Fix: option "saving_trim_spaces" didn't move caret to shorter line end (thanks @GHNewbiee)
  • Fix: 'preview tab' could not work if dragged to another tab-group

New in CudaText 1.122.5 (Jan 24, 2021)

  • Change: added option "undo_max_carets" (default is 5000). Many editing commands are now much faster for >5000 carets (before, such commands could last for several minutes, with 30K carets). WARNING: this clears the undo-information when you have >5000 carets.
  • Change: changed default of "auto_fold_comments" to 0; one crash was fixed regarding to this (thanks @OlehL)
  • Add: lexer CSS: more known properties; fix highlighting inside '@media{}' blocks
  • Fix: Find dialog option "Hi" did reset the selection (thanks @MiroslavMatas)
  • Fix: color of groups-splitters in few ui-themes (thanks @GHNewbiee)
  • Fix: command "duplicate lines" with forward/backward selection gave different selections (thanks @Jairo-Martinez)
  • Fix: Lexer Detecter didn't detect 'Dockerfile'

New in CudaText 1.122.1 (Jan 19, 2021)

  • Add: option "autocomplete_commit_single_item" (thanks @MiroslavMatas)
  • Add: Addon Manager supports translation too (patch by Markus)
  • Add: updated Python libraries in py/sys/
  • Fix: when selection is being added with Ctrl+drag, unpressing of Ctrl gave the weird effect (thanks @tiun)
  • Fix: editor snaps twice to line specified as command line param, e.g. 'cudatext my.cpp:20' (thanks @Shovel)
  • Fix: regression: not working Python, if "pylib__linux" has some special form (thanks @sikmir, @Shovel)

New in CudaText 1.122.0 (Jan 15, 2021)

  • Add/change: Addon Manager: removed command "Re-install...", now all addons are in the "Install..."; already installed items are marked with "◄local ?►", and items with updates are marked with "◄local ?, web ?►" (thanks @cser, @kvichans)
  • Add: hide caret for unfocused editor controls (very old issue; thanks @OlehL)
  • Add: option "auto_fold_comments", it automatically creates folding-ranges for many commented lines (thanks @Jairo-Martinez for tests)
  • Change: deleted settings "fold commented lines" from standard lexers (C, Lua, PHP, Python), to better support "auto_fold_comments"
  • Add: plugins API allows to catch clicks on statusbar cells (thanks @xcme)
  • Add: support Windows Python 3.4, if such a package is installed from addons (package made by @tiun)
  • Add: regex engine allows to escape the underscore char (thanks @SlMaker)
  • Fix: options "caret_blink_time", "caret_blink_en" were not applied to Console, Find/Replace, API editors (thanks @kvichans)
  • Fix: commands "find next", "find all and select" left the progressbar visible (thanks @kvichans)
  • Fix: Project Manager failed with Windows Python 3.4 (thanks @pohmelie)
  • Fix: Options Editor failed with Python 3.4

New in CudaText 1.121.0 (Jan 15, 2021)

  • Add: command "delete word" (ie delete entire words under carets) like in VSCode
  • Add: command "settings: clear find/replace dialog history"
  • Add: command "settings: clear console input history"
  • Add: Find dialog: add search options+actions to '...' menu (thanks @kvichans)
  • Add: Find dialog: allow to hide more buttons (regex, case, words, confirm replace) via "find_hidden_buttons" (thanks @kvichans)
  • Add: Find dialog: when undocked, show search messages also in Find dialog caption (thanks @kvichans)
  • Add: Find dialog: "Highlight all" action shows working time in msec (thanks @tmsg)
  • Add: lexer Python and others with indentation-based folding: implement proposal where blocks can be closed only when brackets ()[]{} are fully closed
  • Add: lexer Python: don't find special words before '=', e.g. in 'f(type=v)' (thanks @APEC)
  • Add: lexer Python: highlight decorators ('@ddd', '@Ddd.ddd') with special color (thanks @APEC)
  • Add: lexers C, C++: better highlight of several operators, like ||= &&= : # ##
  • Add: lexers C, C++: better highlight of preprocessor directives
  • Fix: Find dialog: regression caused by addition in 1.120.0 (thanks @hamasaki)
  • Fix: Find dialog: code-tree selection was not updated via buttons "find next/previous" (thanks @Jairo-Martinez)
  • Fix: command "duplicate line (advanced)" regression (thanks @kvichans)
  • Fix: plugin Emmet crash

New in CudaText 1.120.2 (Jan 8, 2021)

  • Add: command "settings: clear find/replace dialog history"
  • Add: command "settings: clear console input history"
  • Add: Find dialog: add all search actions to "..." menu (thanks @kvichans)
  • Add: Find dialog: when undocked, show search messages also in Find dialog caption (thanks @kvichans)
  • Add: Find dialog: "Highlight all" action shows working time in msec (thanks @tmsg)
  • Add: lexers C, C++: highlight of several operators, like ||= &&= : # ##
  • Add: lexers C, C++: highlight of preprocessor directives
  • Fix: regression in Find dialog, caused by addition in 1.120.0 (thanks @hamasaki)
  • Fix: Find dialog: code-tree selection was not updated via buttons "find next/previous" (thanks @Jairo-Martinez)

New in CudaText 1.120.0 (Jan 6, 2021)

  • Add: Find dialog has new toggle button "Hi", it means "Highlight all matches". Matches are highlighted with a rounded border, which color is taken from "SeparLine" syntax theme item. Editor also auto-scrolls to the first match, like in Sublime. (thanks @xcme)
  • Add: command "find next" in multi-selections now supports "in selection"+"wrapped search" (with the forward search)
  • Change: Find dialog has changed layout: removed input-field labels; shortened button captions to "|" (find next), "

New in CudaText 1.119.0 (Jan 6, 2021)

  • Add: command "delete to document begin" (thanks @acicovic)
  • Add: allow empty-string value of "pylib" option to disable Python engine (thanks @xcme)
  • Add: option "ui_menu_themed_font_size", Windows only (thanks @dinkumoil)
  • Add: wiki topic: https://wiki.freepascal.org/CudaText#Activating_internet_links
  • Fix: command "delete to file end" was very slow on huge files; renamed this command to "delete to document end"
  • Fix: options "auto_close_brackets" and all "autocomplete_*" were working bad with lexer-specific configs (thanks @Shovel)
  • Fix: caret shape was reset with Vim Mode plugin started (thanks @acicovic)
  • Fix: Windows: error in "Addons Manager / Install from GitHub" (thanks @acicovic)
  • Fix: lexer JS: tokenizing of some new JS operators

New in CudaText 1.118.0 (Nov 27, 2020)

  • Add: non-text file detection: ignore last 2 bytes at the file end (thanks @ThomasHeinrichSchmidt)
  • Add: Addon Manager: support all git branch names in "Install from GitHub" (thanks @dinkumoil)
  • Add: support translation for more std plugins: ProjManager, TabsList, MakePlugin (patch by Markus)
  • Add: support Python 3.9 on macOS (thanks @neurolabusc)
  • Fix: lexer Bash: (( #text ))
  • Fix: issue in API on_state (thanks @Shovel)
  • Fix: hex viewer cannot scroll big file to the end

New in CudaText 1.117.5 (Nov 10, 2020)

  • Add: on Unix, just ignore Windows-only plugins (they can be installed e.g. by syncing 2 PCs)
  • Add: if option "mouse_mid_click_paste":true, don't set caret pos on middle-button-click, just paste (thanks @Ordu)
  • Add: if new tab was opened without disk file, it was edited, its content was erased, then don't show confirmation to save that tab on closing (thanks @dinkumoil)
  • Add: mouse hover highlighting for statusbar cells
  • Add: can work if CudaText runs via symlink on Unix systems (thanks @Peter2121)
  • Add: option "auto_delete_bookmarks" (thanks @Jairo-Martinez)
  • Add: lexer C++: fixes for code-tree
  • Fix: fixes for standard plugins' translation (thanks Markus)
  • Fix: dragging of sel-rect in minimap stopped when mouse goes lefter/righter of minimap
  • Fix: on deleting block with n bookmarks, bookmarks shifted upper too much

New in CudaText 1.117.0 (Nov 2, 2020)

  • Add: detect encoding also by Python standard from https://docs.python.org/3/reference/lexical_analysis.html#encoding-declarations (thanks @tmsg)
  • Add: Wiki topic https://wiki.freepascal.org/CudaText#Encoding_detection
  • Add: options "find_indent_vert"/"find_indent_horz" are now respected in Undo/Redo commands (thanks @xcme)
  • Add: option "find_indent_vert": big values >= 100 (or

New in CudaText 1.116.0 (Oct 20, 2020)

  • Add: Find dialog: when "search in selection" is checked, and "find first"/"find next" is called, editor places marker instead of caret, so we don't break the selection, and can "find next" all matches (thanks @xcme)
  • Add: Wiki topic https://wiki.freepascal.org/CudaText#Text_searcher_features
  • Add: Wiki topic https://wiki.freepascal.org/CudaText#How_to_support_Spell_Checker_in_lexer
  • Add: plugin "Sort" has new command "Sort char-separated values in lines"
  • Add: option "marker_size"
  • Add: command "duplicate line(s)" supports multi-carets
  • Add: command-line options -nsl and -nss (option -ns is a shortcut to both of them) (thanks @tmsg)
  • Add: command-line option -z=uhex
  • Add: CSS auto-completion: more complete colors list for color-properties (thanks @d-mal)
  • Add: CSS auto-completion: add standard values to all properties: inherit, initial, unsert, var() (thanks @d-mal)
  • Add: CSS auto-completion: better auto-inserting of bracket for functions
  • Add: Unix: better support paths with ~/ (didn't work if app was run by external tools)
  • Add: dialog Find/Replace: second press of Ctrl+F / Ctrl+R returns focus to editor (thanks @xcme)
  • Add: dialog "Save tabs?" shows button "don't save/ keep in session" more often, now ignoring "t" in "ui_history_disabled" (thanks @tmsg)
  • Add: lexer CSS: highlight names of "system colors" (thanks @d-mal)
  • Add: lexer XML: better support Spell Checker (thanks @EcherArt)
  • Fix: crash and not sync'ed editors when in splitted view (thanks @xcme)
  • Fix: code-tree was reset on change grouping mode to "1+2" (thanks @Jairo-Martinez)
  • Fix: "distraction-free mode" was partially reset: by Option Editor plugin call, by lexer changing
  • Fix: some plugins crashed when app was run with -s= command-line param
  • Fix: flags in "View / Toggle unprinted chars" were reset on switching tabs (thanks @xcme)

New in CudaText 1.115.0 (Oct 12, 2020)

  • Add: HTML auto-completion works also inside 1) A HREF="...", 2) LINK HREF="...", 3) IMG/SCRIPT/INPUT/FRAME/IFRAME/AUDIO/VIDEO/SOURCE SRC="..."; it shows there folder names and file names with appropriate types (depends on tag)
  • Add: rewritten Wiki topic https://wiki.freepascal.org/CudaText#Auto-completion
  • Add: Windows shell extension: CudaText context menu entry now shows up in context menu of drives, folders, background of a folder's Explorer window and the Desktop. (by Andreas Heim @dinkumoil)
  • Add: Undo/Redo handles markers too; format of "persistent undo" files is extended, but it's backward compatible
  • Fix: if caret is at the end of long line, and we toggle word-wrap, editor should scroll to new caret pos (thanks @xcme)
  • Fix: scaling of sidebar buttons (thanks @th-schall)
  • Fix: cannot scroll to the left by mouse selection; now it works if cursor is on bookmark column or folding column (thanks @MrPiccad)

New in CudaText 1.114.0 (Oct 5, 2020)

  • Add: CSS auto-completion
  • a) added lot of missed CSS props/values (by @d-mal)
  • b) added completion for CSS @-rules and pseudo-elements beginning with ":" and "::" (thanks @d-mal)
  • c) don't suggest CSS props/values outside of {} brackets
  • Add: all auto-completions are disabled if caret is inside comments
  • Change: before, "Save" command was ignored if called on unmodified file. It confused users, when file was modified by external program, and was not like in ST3. To change it, added option "ui_allow_save_always" with changed default. (thanks @gh_origin, @tmsg)
  • Change: Find dialog: action buttons are aligned to the right
  • Change: several options "find_show_nnnn" replaced with single string option "find_hidden_buttons"; more buttons can be hidden now
  • Add: don't treat ASCII chars "end of file" and "form feed" as non-text
  • Add: updated FreePascal JSON library, now it don't allow incorrect strings/booleans/numbers
  • Add: Windows: UI theme has additional 5 colors "top menu ...", all "none" by default to use "tabs ..." colors
  • Add: Windows: option "ui_menu_themed" (thanks @tmsg)
  • Add: Unix: when Python engine is not detected, app adds menu item "Plugins / Find Python library". It calls new command "find python library" (available in Command Palette). This command finds the library, suggests several possible filenames, and writes chosen filename to user.json.
  • Add: if caret is at the end of long line, and we toggle word-wrap, editor should scroll to new caret pos
  • Add: lexer JavaScript: don't highlight "class" after dot, better detect RegEx literals
  • Fix: command-line option -ns must win over "ui_reopen_session_cmdline":true (thanks @tmsg)
  • Fix: Windows: error with command-line filename 'name.ext' (thanks @tmsg)
  • Fix: regression in regex engine with ^ and $ (thanks @hycmos)
  • Fix: save-as dialog forced .txt extension for names w/o extension (thanks @tmsg)

New in CudaText 1.113.2 (Sep 28, 2020)

  • Add: Windows: option "ui_menu_themed" (thanks @tmsg)
  • Add: Unix: when Python engine is not detected, app adds menu item "Plugins / Find Python library". It calls new command "find python library" (available in Command Palette). This command finds the library, suggests several possible filenames, and writes chosen filename to user.json.
  • Add: if caret is at the end of long line, and we toggle word-wrap, editor should scroll to new caret pos
  • Add: lexer JavaScript: don't highlight "class" after dot, better detect RegEx str

New in CudaText 1.113.0 (Sep 28, 2020)

  • Add: option "numbers_style" has additional value for "relative" line numbers, almost like in VSCode
  • Add: Windows: top menu bar is themed
  • Add: dialog "File is too big" also shows file size (in Mb)
  • Add: dialog "File is maybe not text" must not appear at all for too big files
  • Add: for files bigger than 50Mb, editor won't detect file encoding and force UTF8 (reason: much slower loading for non-UTF8 encoding)
  • Add: Wiki page https://wiki.freepascal.org/CudaText_plugins
  • Add: Wiki topic https://wiki.freepascal.org/CudaText#Tabs_features
  • Fix: few bugs in lexers C++, JavaScript

New in CudaText 1.112.1 (Sep 17, 2020)

  • Add: Project Manager: read folders much faster (avoid reading additional subfolder level)
  • Add: Project Manager: option "File masks to ignore" replaced with 3 options: "Ignore files", "Ignore folders" (both are ;-separated Unix wildcards) and "Ignore all hidden files/folders"
  • Fix: Project Manager: handle Windows permission errors, fix showing root dirs like C: (thanks Henrik)
  • Fix: regression on minimap painting

New in CudaText 1.112.0 (Sep 17, 2020)

  • Add: improved TRegExpr engine: supported negative lookbehind: (?

New in CudaText 1.111.5 (Sep 11, 2020)

  • Add: to improve rendering speed, minimap is now rendered via BGRABitmap library (much faster, but program size is bigger by ~1.5Mb)
  • Add: reworked cache of highlighted lines; now it works faster and has auto-adjusted size (it's changed to big value on toggling minimap on)
  • Add: mouse-wheel scrolling goes smoothly over inter-line gaps
  • Add: option "minimap_scale"
  • Removed option "renderer_cache_lines"

New in CudaText 1.111.0 (Sep 8, 2020)

  • Add: option "ui_reopen_session_cmdline" (thanks @notteumani)
  • Add: before: editor doesn't load last session when command-line file is opened; now: it also doesn't save current session in this case, so old session is not lost (thanks @notteumani)
  • Add: lexer C++: keywords of C++20
  • Fix: issue with "Add next occurrence of selected word" (thanks @Jairo-Martinez)
  • Fix: engine of lite lexers: broken highlighting after horizontal scrolling (thanks @skarasov)
  • Fix: lexer Python: code-tree for func "def name(param: type)" (thanks @skarasov)
  • Fix: lexer Python: code-tree for "class name(dotted.name)" (thanks @OlehL)
  • Fix: regression in Markdown tree-helper (thanks @kvichans)
  • Add: improved TRegExpr engine:
  • Regexp: supported recursion: (?R) with alias (?0)
  • Regexp: supported subroutine calls: (?1) ... (?89)
  • Regexp: supported possessive quantifier: a++ a*+ a?+ a{n,m}+
  • Regexp: supported atomic groups: (?>foo|bar|ok)
  • Regexp: supported negative lookahead: foo(?!bar)
  • Regexp: supported Perl syntax for named groups: (?'name'expr) and subroutine calls: (?&name)
  • Regexp: supported Unicode characters after U+FFFF (ie surrogate pairs) for '.', 'W', 'S', 'D' etc.
  • Regexp: added z; changed behavior of Z (match also before final line-break)
  • Regexp: added error message for unknown metachars (like X E)

New in CudaText 1.110.3.0 (Aug 31, 2020)

  • Add: improved TRegExpr engine
  • Regexp: supported Unicode characters after U+FFFF (ie surrogate pairs) for '.', 'W', 'S', 'D' etc.
  • Regexp: supported "atomic groups": (?>foo|bar|ok)
  • Regexp: supported "nagative lookahead": foo(?!bar)
  • Fix: lexer Python: regression in code-tree (thanks @OlehL)
  • Fix: regression in Markdown tree-helper (thanks @kvichans)

New in CudaText 1.110.0.0 (Aug 24, 2020)

  • add: improved TRegExpr engine: supported Unicode categories pL p{L} p{Lu}, and negative variant with P. List of available categories: https://www.compart.com/en/unicode/category/
  • Add: option "renderer_offsets", to fix rarely visible artifacts on Linux (thanks @VicDobrov)
  • Add: lexer reStructuredText: fix 2 kinds of code-blocks; add rule for table blocks; add rule for local links
  • Add: lexer Bash: highlight invalid hex/octal literals (thanks @VicDobrov)
  • Fix: incorrect horizontal caret pos, when line with full-width chars is scrolled horizontally (bug first found in 2017, thanks @David-Croose)
  • Fix: after command "find cur selection next", command "find next" must reuse text (thanks @kvichans)
  • Fix: search engine bug when search text is multi-line + Unicode (thanks @kvichans)

New in CudaText 1.109.2.0 (Aug 14, 2020)

  • Add: lexer JSON: fully reworked, now it underlines all invalid chars, invalid float numbers, identifiers
  • Add: lexer PHP: fixed HereDoc blocks; supported Unicode class names
  • Add: macOS: system dialog from menu item "Edit / Special characters" is now supported (thanks Lazarus developer Dmitry)
  • Fix: regression: cannot continue column-selection after carets are moved (thanks @kvichans)
  • Fix: lexer Python: regression with some blocks folding
  • Fix: lexer Bash: regression with style of "if(", "for("

New in CudaText 1.109.0.0 (Aug 11, 2020)

  • Change: changed location+format of saved window positions in history.json (main window, floating panels, resizable dialogs)
  • Add: options for statusbar font: "ui_font_statusbar_name"/"ui_font_statusbar_size", defaults are UI font name/size (thanks @VicDobrov)
  • Add: theme colors for statusbar font/background, defaults are "none"
  • Add: don't run tree-helper on huge files, re-use option "lexer_folding_max_lines"
  • Add: if file was deleted/renamed outside of CudaText, "Save" should re-create the file (thanks @Jairo-Martinez)
  • Fix: bug in rendering unprinted "trailing only" whitespace (thanks @Jairo-Martinez)
  • Fix: lexer Bash: (( )) blocks inside $() (thanks @VicDobrov)

New in CudaText 1.108.5.0 (Aug 11, 2020)

  • Add: improved RegExpr engine:
  • Support named groups: (?Pexpr) and named references: (?P=name)
  • Support named groups in "replace with": ${name}
  • Support positive lookahead: foo(?=bar)
  • Support positive lookbehind: (?

New in CudaText 1.108.2.0 (Aug 5, 2020)

  • Add: lexer Python: don't highlight words after dot (e.g. 'type' 'len'); fold "async for"
  • Fix: commands "brackets: pair highlight..." state was reset on tab switching (thanks @John)
  • Fix: fixed API ed.cmd() for plugin Differ (thanks @hycmos)
  • Fix: lexer YAML: folding
  • Fix: lexers C, C++: fixes for "struct" code-tree items, number literals
  • Fix: treehelper for Markdown: bug with `code` at line start
  • Fix: "floating point error" in Python on Win10 2004 (thanks @John)

New in CudaText 1.108.0.0 (Jul 30, 2020)

  • Add: lexer YAML is preinstalled
  • Add: lexer Markdown: support YAML front matter
  • Add: lexer Bash: highlight (( )) blocks, [[ ]] blocks; highlight meta-chars starting with ! and %; support escape; fold brackets {}
  • Add: lexer Bash: highlight HereDoc blocks (almost all kinds, even with quoted block id)
  • Add: lexer Bash: show in code-tree funcs w/o keyword "function"
  • Add: lexer PHP: support _ in numbers; reworked HereDoc support; fixes
  • Add: command "Check for updates" is supported on Linux/macOS/BSD
  • Add: on loading session with missing files, show 'NOTE: File from session not found' errors in console
  • Add: show number over Console sidebar button for 'NOTE:' lines too
  • Fix: lexer JS: bug with '==', bug with comment '/********/'
  • Fix: regression in Python lexer: style of func names
  • Fix: regression in Project Manager: options dialog could not save options
  • Fix: regression for last session loading when using command line (thanks @MiroslavMatas)

New in CudaText 1.107.5.0 (Jul 22, 2020)

  • Add: option "ui_tab_show"
  • Add: option "ui_sidepanel_on_start" (thanks @CoMPi)
  • Add: option "ui_bottom_on_start"
  • Add: option "ui_tab_padding" (thanks @wb027)
  • Add: option "ui_tab_font_scale" (thanks @wb027)
  • Add: ui-theme item "tabs, font, active tab" (thanks @wb027)
  • Add: command "toggle ui-tabs"
  • Change: if command-line files/folders passed, don't load session on start (thanks @wb027)
  • Fix: lexer Python: number-rule fix (thanks @kvichans)

New in CudaText 1.107.0.2 (Jul 17, 2020)

  • Add: Find dialog shows "Find" field syntax-highlighted in RegEx mode; program also does underlining of mismatched ()[] brackets there
  • Add: option "carets_primitive_column_sel", which activates new mode of column selection; see new wiki topic https://wiki.freepascal.org/CudaText#Behaviour_of_column_selection
  • Change: new option is "true" by default, mode of column selection is changed
  • Add: API finder_proc (thanks @kvichans)
  • Add: modern credits list in the About dialog
  • Add: lexer Bash: support comments inside `backticks`
  • Fix: issues with commands "move lines up/down", occuring on the final line w/o EOL

New in CudaText 1.106.5.0 (Jul 5, 2020)

  • Add: plugin Sort has new option [sort] max_lines=5000 in settings/plugins.ini, to avoid almost-hanging on huge documents
  • Add: Project Manager: double click switches file-tab from "preview" to "normal" style (thanks @kostyarin_)
  • Add: zip plugin installer: instead of 2nd confirmation about plugin hotkeys, show single confirmation with more buttons
  • Add: auto-detect XML for UTF-8 BOM too
  • Add: better value of "links_regex"
  • Add: API allows to register plugin events also in settings/plugins.ini
  • Change: Project Manager uses plugins.ini for events, so if you have used its options "Load on program start"/"On opening GIT/SVN repo...", check these options again in config dialog
  • Fix: lexer Python: regression for r- f- b-strings
  • Fix: regression in "Title case", "Sentence case" commands for multi-line selections
  • Fix: Emmet work was wrong after Unicode chars (thanks @d-mal)
  • Fix: export to HTML: entities like ' ' were lost on export
  • Fix: lexer "Search results": fixed indent-based folding
  • Fix: lexer HTML: bug for ''; bug for '< nottag' (thanks @Anonymoustus)

New in CudaText 1.106.0.0 (Jun 28, 2020)

  • Add: deepest fold-range, containing line of first caret, now has highlighted lines on gutter; added color in UI-theme for this
  • Add: better detection of word-boundary in search (not RegEx), to be like in VSCode and others
  • Add: better "links_regex" value (thanks @Jairo-Martinez)
  • Add: on clicking hyperlinks, app shows additional confirmation button; this is controlled by new option "ui_links_confirm"
  • Add: support combo-hotkeys with simple letter in 2nd/3rd part, e.g. Ctrl+Q H (thanks @tmsg)
  • Add: encodings koi8, iso...15 added to viewer as well
  • Fix: crash in "export to HTML" (thanks @MiroslavMatas)
  • Fix: regression in folding in HTML/XML lexers
  • Fix: mouse click on selected block did not place caret on clicked pos (thanks @hycmos)
  • Fix: plugin Session Manager was inited for filenames w/o extension
  • Fix: hotkeys with Num-keys did not work (thanks @tmsg)
  • Fix: regression with option "nonword_chars" (thanks @hamasaki)

New in CudaText 1.105.5.0 (Jun 28, 2020)

  • Add: option "lexer_folding_max_lines" - when document has too many lines, parser doesn't find fold-blocks
  • Add: reworked parser code which handles indentation-based folding (e.g. in Python); reworked lexer Python for this; all lexers in add-ons which use indentation-based folding will be reworked soon
  • Add: for Python lexer, fold-blocks endings now exclude commented lines
  • Add: on editing in Python, parser better updates fold-blocks started above caret (thanks @OlehL)
  • Add: on first command entering in Console, app auto-runs line "from cudatext import *", so you don't need to do it
  • Add: documentation: readme/tutorial/LexerIndentFolding.odt
  • Change: removed option "ui_max_ranges_codetree" (use "lexer_folding_max_lines" instead)
  • Fix: slow rendering of viewer control under GTK2 (Linux/BSD)
  • Fix: ui-tab dirty flag was not updated sometimes (thanks @dinkumoil @OlehL)
  • Fix: broken folding after running "move line up/down" many times fastly (thanks @OlehL)
  • Fix: replace with confirmation: did not respect options "find_indent_*"
  • Fix: regressions in hotkey system (thanks @tmsg)

New in CudaText 1.105.0.0 (Jun 28, 2020)

  • Add: rewritten system of keymapping, how keymappings are assigned to documents. Previous system was bad. It was slow (each tab switching was loading lexer-specific hotkeys from file). It had bugs (lexer-specific hotkeys did not load sometimes, see GitHub issues 2620 2648). (thanks @OlehL)
  • Add: internal caching of calculated hyperlinks; maybe (not visible on average PC) it gives smoother scrolling by Up/Down arrows
  • Add: zip package installer shows additional confirmation to install hotkeys, if plugin provides them (e.g. CudaExt provides ~50 hotkeys, not OK for some users)
  • Add: dialog "Configure hotkey" has additional "Set" button which makes "Clear"+"Extend"
  • Add: support encodings: koi8r, koi8u, koi8ru (thanks @eastorwest)
  • Add: option "newdoc_lexer" allows lite lexers too
  • Add: better value of "links_regex"
  • Fix: floating groups didn't show ui-tab icons
  • Fix: input of complex hotkeys (like "Alt+1 * Alt+2") had "shared history" for all documents
  • Fix: width of some Unicode chars (thanks @ritmation)
  • Fix: Linux/BSD: rendering of tab-chars (thanks @tmsg)
  • Fix: lexer Markdown: rule for ``` (thanks @Jairo-Martinez)

New in CudaText 1.104.0.0 (Jun 28, 2020)

  • Add: much faster rendering on Linux (gtk2) for texts with Unicode (but not full-width) chars
  • Add: several internal Unicode functions are optimized, which speeds up case-insensitive search, whole-word search, w in regex
  • Add: better value of "links_regex" (chars like '()[]#,:' appear in URL only after '?')
  • Add: detect read-only also on "File / Reopen" (thanks @Petrik_Pjatochkin)
  • Add: lexer Markdown: many improvements, including folding of fenced blocks
  • Change: removed option "hex_chars", maybe later will be replaced by another option
  • Fix: Project Manager messes with folder of Open/Save-as dialogs (thanks @kvichans)
  • Fix: lexers HTML, XML dynamic highlighting was shifted

New in CudaText 1.103.5.0 (Jun 28, 2020)

  • Add: command-line option -id=name to set single-instance id, on Unix (thanks @tmsg)
  • Add: improve work of command-line file masks with relative paths, on Unix, with single instance (thanks @tmsg)
  • Add: option "max_line_len_parsed" (thanks @tmsg)
  • Add: option "ui_history_disabled" has sub-item to disable only selection (thanks @hamasaki)
  • Add: lexer Lua now has dynamic-highlighting rules (thanks @tmsg)
  • Change: change default value of option "unindent_keeps_align" to be like ST3
  • Fix: program didn't save files on closing, if "ui_auto_save_session":true and "ui_history_disabled":"t" (thanks @tmsg)
  • Fix: regression for Undo after Save (thanks @hamasaki)
  • Fix: command "focus next group" didn't work sometimes (thanks @MiroslavMatas)
  • Fix: some commands and APIs didn't respect read-only mode (thanks @wibotwi)
  • Fix: crash on regex replace if replace-with is "$" (thanks @wibotwi)
  • Fix: crash if option "links_regex" has invalid regex
  • Fix: regression in handler of "ui_notif_confirm":1 (thanks @kvichans)
  • Fix: regression in commands "fold/unfold/toggle block at current line" if lexer don't show "staples" (thanks @MiroslavMatas)
  • Fix: commands "find current word/selection next/previous" did not respect options "find_indent_*" (thanks @kvichans)

New in CudaText 1.103.0.0 (Jun 28, 2020)

  • Add: better logic of "line states": now "added" lines don't change state to "modified" during editing (thanks @tmsg)
  • Add: allow to disable storing some elements to history/session, via new option "ui_history_disabled" (thanks @tmsg)
  • Add: allow to specify underscore "_" as non-word char, by placing at as _first_ in "nonword_chars" option (thanks @tmsg)
  • Add: option "spacing_y" now has OS suffix
  • Add: option "zebra_step"
  • Add: API to get/set editor font
  • Add: API to get/set editor hyperlinks behaviour
  • Change: improved logic of undo/redo a little, additional caret jump will appear on redo (thanks @akizuha)
  • Fix: regressions in search for multi-line text and "find selection next" (thanks @kvichans)
  • Fix: macros with repeated commands to move caret (e.g. "caret line down" 100 times) did only 1 move (thanks @tmsg)
  • Fix: 3 years old issue. If complex commands are invoked via fastly pressed hotkeys, some commands were lost. E.g. if hotkey for "toggle line comment" was pressed fastly 20 times, it could run ~17 times. (thanks @kvichans for seeing it)
  • Fix: Windows: "cannot create file" error if program runs from "Program Files" folder. You should not put CudaText to "Program Files".
  • Fix: commands "close tab", "close all tabs", "close other tabs" didn't work correctly when floating group is active
  • Fix: minor issues in HTML auto-completion

New in CudaText 1.102.0.0 (Jun 28, 2020)

  • Add: optimizations in lexer engine; tests on huge XML/HTML files ("ui_max_size_lexer":150) show that parsing is faster (than v1.100) 1.2 - 2 times
  • Add: Find dialog allows backward search even in RegEx mode (thanks @tmsg)
  • Add: to speedup rendering, program uses predefined char widths for the following: Cyrillic, Greek, German, Japanese, Chinese, Korean, Hebrew, Arabic, Indian
  • Add: on moving caret left/right, skip positions of combining (accent) chars, like other programs do
  • Add: better render combining (accent) chars on Linux/macOS
  • Add: command line parameter -nn
  • Add: option "renderer_cache_lines"
  • Change: removed option "unicode_wide_allowed"
  • Change: removed menu item "File / Export to HTML" (command still exists in Command Palette)
  • Change: in parser's RegEx engine, removed support of rarely needed l L g G
  • Fix: very old problem in parser's RegEx: s did not catch line-breaks (it affects e.g. HTML lexer, it has rule which finds JS blocks)
  • Fix: problem in API: "ed" got wrong editor for "floating groups" after plugin shows modal dialog
  • Fix: "Find next" with RegEx did continue the search from the last found location and not from the caret (thanks @tmsg)
  • Fix: Emmet plugin bad result if called after '

New in CudaText 1.101.5.0 (Jun 28, 2020)

  • Add: optimization in unfolding code, so unfolding of ranges, which have lot of folded subranges, is ~20x faster
  • Add: optimization in rendering of "colored ranges" (they are present in Bash lexer for $(...) and AutoIt lexer for multiline comments). Syntetic test files, with huge count of colored ranges, show much faster scrolling.
  • Add: option "ui_notif_confirm" to enable confirmation on file auto-reloading
  • Add: dialog "Save Tabs" has new button "Toggle"
  • Add: lexer Lua: better code-tree for functions in class; folding of {}
  • Add: commands "move tab to group 1", "move tab to group 2"
  • Add: commands "move tab to group floating-1/ floating-2/ floating-3"
  • Fix: lexer JS: highlighting of regex'es
  • Fix: folded ranges didn't restore from history (if scroll pos: on top)
  • Fix: opening files in "preview tab" (Project Manager) gave incorrect filename sometimes (with "ui_notif":true)

New in CudaText 1.101.0.0 (Jun 28, 2020)

  • Add: undo-data records also "line states", ie "undo" reverts "line states" to initial value (thanks @tmsg)
  • Add: command line: support key -s to specify custom settings folder (thanks @tmsg)
  • Add: command line: support file masks with '*', e.g. "cudatext readme/test*.htm*" (thanks @tmsg)
  • Add: when "unprinted symbols" are visible, render curved-arrow for wrapped parts of long lines (thanks @tmsg)
  • Add: paired file tabs (2 files in a single tab) now correctly save/restore to/from sessions
  • Add: for stability, when user removes lexer in Lexer Library dialog, app doesn't deallocate lexer object but only "marks" it (prevents access to deallocated memory objects)
  • Add: Wiki topic: https://wiki.freepascal.org/CudaText#Dialog_.22Save_tabs.22
  • Change: changed format and file extensions of persistent undo/redo (used with "undo_persistent":true)
  • Fix: bug in regex engine with regex like [.-] and [.-] (thanks @SlMaker)
  • Fix: lexer Batch issues
  • Fix: several editor settings (wrap mode, show minimap/micromap/ruler/line-numbers/folding/unprinted) could not load from lexer-specific configs (thanks @tmsg)
  • Fix: Project Manager crash on calling Project Properties (thanks @Jairo-Martinez)

New in CudaText 1.100.0.0 (Jun 28, 2020)

  • Add: options "statusbar_nnnn" support new macro {selchars} - total number of selected characters
  • Add: option "mouse_click_links"
  • Add: option "max_line_len_for_accurate_width"
  • Add: open URLs and e-mails (with and without "mailto:") by double-click
  • Add: open URLs starting with "www." and "ftp."
  • Add: optimizations for "dynamic highlightings" code
  • Add: switch ui tabs by Shift+wheel
  • Add: Wiki topic: https://wiki.freepascal.org/CudaText#Sessions
  • Add: Wiki topic: https://wiki.freepascal.org/CudaText#Markers
  • Add: API to show button on sidebar's bottom without loading the plugin
  • Change: replaced 3 rarely needed options "unprinted_xxxx_scale" with single option "unprinted_symbols_scale"
  • Change: ui tabs: mouse wheel scroll step is now 20% of width
  • Change: toolbar button "Sort" was removed. It gave the same commands as "Plugins / Sort" but it had only 5 of all 20 commands.
  • Fix: plugin "Open URL" didn't catch double-click sometimes (thanks @Jairo-Martinez)
  • Fix: folding icon on gutter did not work in some cases
  • Fix: Project Manager cannot open files in binary viewer sometimes
  • Fix: Project Managet cannot open recent projects
  • Fix: regex search bug with regex like "[.-]test" (thanks @SlMaker)
  • Fix: lexer PHP: several fixes for code-tree and folding
  • Fix: incorrect caret pos in long lines (len>500) with CJK chars (thanks @larrylau)
  • Fix: bug from 1.99, file can be loaded from session without lexer set

New in CudaText 1.99.0.0 (May 13, 2020)

  • Add: speedup loading big ascii files by 5-6%
  • Add: new big Wiki topic: https://wiki.freepascal.org/CudaText#CudaText_vs_Sublime_Text.2C_different_answers_to_questions
  • Add: new big Wiki topic: https://wiki.freepascal.org/CudaText#Program_perfomance
  • Add: plugin Lexer Detecter: speedup loading when no lexer found (110ms->2ms)
  • Add: Find/Replace dialog: on regex error, show error more detailed
  • Add: lexer Markdown: highlight checkboxes in lists: [ ] [x] [X]
  • Change: lexer HTML: don't fold tags (tags produce folding icon which don't work when there're many tags on a line)
  • Fix: API ini_read/ini_write deleted quotes from quoted values (thanks @dinkumoil)
  • Fix: crash when CudaText is opened from file manager, with specific history data (thanks @dinkumoil, @OlehL)
  • Fix: bug in regex search with regex'es like "a+", "a{2,4}" (thanks @Petrik_Pjatochkin, @ritmation)
  • Fix: Project Manager: fuzzy search in "Go To File" was not handy (thanks @4goodapp)
  • Fix: crash on start on Linux (some Lazarus bug)
  • Fix: Emmet bug with "!" abbrev (thanks Rickard)
  • Fix: Emmet bug with "span.classname" (thanks Rickard, @d-mal)
  • Fix: crash of External Tools/ FindInFiles on files with null bytes (thanks @kvichans)
  • Fix: on app closing, hex viewer painted something on Windows desktop (thanks @dinkumoil)
  • Fix: not smooth edge of triangled ui-tabs
  • Fix: italic "comments" at line ends were cropped with some fonts

New in CudaText 1.98.2.0 (May 1, 2020)

  • Fix: crash on start on Linux (some Lazarus bug)
  • Fix: Emmet bug with "!" abbrev
  • Fix: Emmet bug with "span.classname" (thanks @d-mal)
  • Fix: crash of External Tools/ FindInFiles on files with null bytes (thanks @kvichans)
  • Fix: on app closing, hex viewer painted something on Windows desktop (thanks @dinkumoil)
  • Fix: not smooth edge of triangled ui-tabs (bug from someone's patch to ATTabs)
  • Fix: italic "comments" at line ends were cropped with some fonts

New in CudaText 1.98.0.0 (Apr 27, 2020)

  • Add: number of errors in Console (number of lines "Traceback (most recent call last)") is shown over Console sidebar button
  • Fix: plugin "New File" bug with lexer XSLT (thanks @dinkumoil)
  • Fix: behaviour of Left/Right keys on multi-selection (thanks @Jairo-Martinez)
  • Fix: bug in API timer_proc (thanks @kvichans)
  • Fix: can't open files from project when "ui_tab_disabled":true (thanks @Cauterite)
  • Fix: lexer Python: folding (thanks @Jairo-Martinez)
  • Fix: lexer PHP: keywords
  • Fix: lexer HTML: JS in script tag

New in CudaText 1.97.5 (Apr 6, 2020)

  • Add: option "key_left_right_wrap_with_carets" (to be like EmEditor with multi-carets)
  • Add: option "log_sessions"
  • Change: file history (caret, bookmarks etc) is now saved to session file *.cuda-session. This makes session files independent from main history.
  • Change: Ctrl+MouseWheel and commands "current document font size..." change editor's font scale by 10% steps, instead of font-size by 1
  • Add: Emmet: expand abbreviation also by Tab-key (Tab-key works as usual if there is no abbreviation)
  • Add: Project Manager: sets its current folder as folder of Open/Save-as dialog
  • Add: command "current document font size: reset"
  • Add: lexer HTML: default extension is now 'html'
  • Add: lexer Bash: minor fix
  • Fix: bad work of HTML auto-completion with '' and '' (thanks @AleXY)
  • Fix: bad saving of External Tools plugin hotkeys to keys.json (thanks @AleXY)
  • Fix: broken highlight of multi-line strings on editing text after them (thanks @AleXY)
  • Fix: invisible file tab in group-2 on loading session (thanks @kvichans)

New in CudaText 1.97.0 (Mar 20, 2020)

  • Add: several commands, they work fast and don't keep Undo, they are intended for huge text files. All these commands don't consume additional memory (unlike in many other editors).
  • Add: commands "(without undo) sort asc. / desc. / asc. ignore case / desc. ignore case".
  • Add: command "(without undo) delete all blank lines"
  • Add: command "(without undo) delete adjacent blank lines"
  • Add: command "(without undo) delete all duplicate lines"
  • Add: command "(without undo) delete all duplicate lines, keep blanks"
  • Add: command "(without undo) delete adjacent duplicate lines"
  • Add: command "(without undo) reverse lines"
  • Add: command "(without undo) shuffle lines"
  • Add: lexers HTML/XML show folded tags better (and old option "fold_style" allows to show them even better)
  • Fix: fixed selection by mouse, when mouse cursor is after folded block rectangle
  • Add: added plugin "Lexer Detecter" which is used when file is opened and it has no lexer, plugin suggests to download+install lexer from addons (it has database of all existing lexers)
  • Add: second click on "Search" sidebar button shows Replace dialog instead of Find dialog
  • Add: minor optimizations in editor control
  • Add: export to HTML: removed empty first line; cleaned up HTML code
  • Add: lexer Python: add styles for std functions, exceptions; rework word lists; highlight complex numbers

New in CudaText 1.96.5 (Mar 16, 2020)

  • Add: added plugin "Lexer Detecter" which is used when file is opened and it has no lexer, plugin suggests to download+install lexer from addons (it has database of all existing lexers)
  • Add: second click on "Search" sidebar button shows Replace dialog instead of Find dialog
  • Add: minor optimizations in editor control
  • Add: export to HTML: removed empty first line; cleaned up HTML code
  • Add: lexer Python: add styles for std functions, exceptions; rework word lists; highlight complex numbers

New in CudaText 1.96.2 (Mar 4, 2020)

  • Add: highlight and open (by command "Open URL") e-mails, even without 'mailto:'
  • Add: proper underline HTML colors #rgba, #rrggbbaa too
  • Add: lexer C/C++: support multi-line strings (with before newline)
  • Add: lexer PHP: separate style for "function modifiers", highlight system variables, more keywords
  • Add: lexer PHP: show "traits" in code tree
  • Change: changed layout of lexer-parsing-progressbar in the right/bottom corner, it's always visible now
  • Fix: crash on start, when FTP plugin was active on exiting
  • Fix: crash on start, when document loads from session with wrapped state

New in CudaText 1.96.0 (Feb 28, 2020)

  • Add: reworked strings storage system
  • It takes less memory for ASCII text lines
  • For non-ASCII lines, it takes more memory, but it works much faster, so scrolling in smoother
  • Add: rendering speed much increased at the end of huge lines (length>1M)
  • Add: toggling word-wrap speed much increased on huge lines
  • Add: bracket finder ignores long lines (length>500)
  • Add: plugin Tabs List: command "Tabs List / Open" focuses plugin; plugin handles Enter/Space keys
  • Add: lexer VBScript improved
  • Add: lexer Ini improved
  • Fix: app didn't handle errors in plugins and crashed on them
  • Fix: app had saved redundant information to session files (now session files will be smaller)
  • Fix: for files loaded from session, app didn't save history (caret position, etc)
  • Fix: error after "Plugins / Sort / Remove blank lines"

New in CudaText 1.95.0 (Feb 28, 2020)

  • Add: RegExpr engine updated, with lot of patches, see https://github.com/andgineer/TRegExpr/blob/master/History.txt
  • Add: Python API speed optimized again (thanks @Artem3213212)
  • Add: can scroll tab captions (when they don't fit) by mouse wheel
  • Add: lexer Lua improved
  • Change: lexer PowerShell removed to add-ons
  • Change: removed option "ui_console_compact"
  • Change: reworked internal manager of side/bottom panels
  • Fix: lexers HTML/PHP/XML produced elements with newlines which gave some slowdown
  • Fix: command "find next" with regex and zero-length match
  • Fix: regex replace to "n" in single line file
  • Fix: regex replace to "t"
  • Fix: broken code-tree look if "ui_tab_position" is left/right
  • Fix: macro recording gave error when Find dialog button was pressed
  • Fix: editor restored bad scroll pos, on opening file from command line with wrap=on (years old bug)

New in CudaText 1.94.0 (Feb 10, 2020)

  • Add: Project Manager improvements (show pretty paths in recent file list; fixed crash on unfolding deleted folder; use case-insensitive sorting)
  • Add: program starts little faster (Linux/Windows: by 10..20%)
  • Add: command line supports all params (-r -e -nh -z) for single instance mode too (thanks @dinkumoil)
  • Add: command line parameter -i, to read the contents of stdin (Unix only)
  • Add: command line parameter -ns, to disable loading saved session
  • Add: if mouse selecting was started, and mouse is moving over gutter, selecting must continue
  • Add: lexer Python: support Unicode ids, fix rules for hex/octal/binary numbers
  • Add: lexer JavaScript: support in code-tree functions like "name: function(...){}"
  • Add: lexer Markdown: support Unicode text
  • Add: lexer HTML: proper highlight few more attribs
  • Add: Addon Manager shows new dialog for "Download all" command
  • Add: HTML auto-completion must insert "

New in CudaText 1.93.0 (Jan 13, 2020)

  • Add: Emmet plugin: added command "Dialog" to show interactive preview dialog for abbreviations
  • Add: Emmet engine now has several "emmet_" options (to replace "Emmet profiles" from SynWrite)
  • Add: file viewer ( https://wiki.freepascal.org/CudaText#File_viewer ) gives popup menu on statusbar "mode" cell, to change viewer mode (text, binary, hex, unicode)
  • Add: show ? marks when DBCS (Asian) codepages cannot convert chars
  • Add: lexer PHP: support new heredoc syntax (of PHP 7.3)
  • Fix: Find/Replace: find-next for reg.ex. "b" stopped at found position forever
  • Fix: Find/Replace: could not mass replace reg.ex. "b" to for example "__"
  • Change: submenu "File / Encoding / ..." replaced with simple menu item "File / Encoding..." which calls popup menu
  • Change: renamed commands "zoom in" / "zoom out" to "current document font size: bigger" / "... smaller"
  • Change: deleted option "ui_tree_time_focus"

New in CudaText 1.92.0 (Dec 27, 2019)

  • Add: support encoding UTF-32, LE and BE, with and without BOM
  • Add: support encoding ISO-8859-15
  • Add: plugin API for mass search, e.g. to speedup "Highlight Occurrences" plugin
  • Add: command "font size: reset"
  • Add: command "add next occurrence of selected word" must keep selection direction
  • Add: must allow to save untitled+unchanged documents (do "Save as" for them)
  • Change: changed default of "indent_size" to 0 (auto-detect from tab_size/tab_spaces)
  • Fix: backward search for multi-line blocks with empty lines
  • Fix: lost editor focus with old color theme

New in CudaText 1.91.0 (Dec 10, 2019)

  • Add: Windows: shell extension DLL (x32, x64), it was written by Andreas Heim (@dinkumoil). Run Cmd script from Explorer to install/uninstall the DLL.
  • Add: Find/Replace dialog has new button "Replace global", to replace all matches in all opened documents
  • Add: Ctrl+click on selection was ignored before, now it can start drag-drop with copying
  • Add: option "key_bksp_wrap": allows BackSpace to go to previous line
  • Add: dialog "Go to bookmark" reworked: it shows bookmarks in all opened documents; it shows tab titles; it has filter inputbox
  • Change: Command Palette commands "find first", "find next", "find all ..." now search for current text of Find dialog inputbox
  • Fix: lexer Bash: issue with line comment
  • Fix: must not clear code-tree on closing passive (lefter) tab
  • Fix: must not clear code-tree on clicking active tab

New in CudaText 1.90.0 (Dec 10, 2019)

  • Add: Command Palette shows items "opened files: ..."
  • Add: Command Palette shows items "recent files: ..."
  • Add: Command Palette: support filtering by category: #p (plugins), #l (lexers), #f (opened files), #r (recent files)
  • Add: Command Palette: Ctrl+J means "move down", Ctrl+K means "move up"
  • Add: option "ui_tree_sublexers"
  • Change: Command Palette and other menu-dialogs: keys Home/End are used for input box, Ctrl+Home/Ctrl+End for listbox
  • Fix: command "Close all" ignored modified state of 2nd file in pair-tab
  • Fix: some APIs worked only for active editor, it gave issues in "File Type Profile" plugin
  • Fix: command "go to screen top" was broken
  • Fix: trying to fix rare program freezing with "ui_notif" option
  • Fix: listbox in sidebar plugins (Tabs List, etc) should use color of Code Tree, not of Command Palette
  • Fix: typing bracket with _backward_ multiline selection
  • Fix: re-opening UTF8-BOM file could show the BOM
  • Fix: horizontal scrollbar could hide even with scroll offset present

New in CudaText 1.89.4 (Nov 13, 2019)

  • Add: bracket highlighting now also finds nearest surrounding brackets (like VS Code)
  • Add: lexer C: fix keywords, fix ligatures
  • Add: lexer C++: fix keywords, fix ligatures
  • Add: lexer Ruby: fix keywords, fix ligatures
  • Change: bracket highlighting now ignores brackets in comments/strings (to show surrounding brackets in real code)
  • Change: deleted menu item "Help / Changelog"
  • Change: deleted folder "readme" from Linux/macOS installers

New in CudaText 1.89.2 (Nov 7, 2019)

  • Add: horizontal scrollbar in Output/Validate panels (it auto shows for long lines)
  • Add: don't run Multi Installer on first start, just show info message
  • Add: lexer CSS: support more standard properties
  • Add: lexer CSS: underline incorrect units after numbers
  • Change: replace option "hide_horiz_scrollbar" with "scroll_style_horz" (enum)
  • Fix: theme filenames in mixed case could not be used
  • Fix: file session did not restore saved encoding
  • Fix: not working HTML auto-completion tag list
  • Fix: incorrect multi-caret positions after Del on complex selections
  • Fix: slow start of plugin Config Toolbar
  • Fix: reset of file encoding after Reopen command

New in CudaText 1.89.0 (Oct 29, 2019)

  • Add: built-in bracket highlighting, no more need in plugin Bracket Helper, and it works much faster than plugin. It supports most of plugin's features, including show brackets on gutter, including checks for syntax elements.
  • Add: option "bracket_highlight"
  • Add: option "bracket_symbols"
  • Add: option "bracket_distance"
  • Add: command "brackets: pair highlight: on"
  • Add: command "brackets: pair highlight: off"
  • Add: command "brackets: pair highlight: toggle"
  • Add: command "brackets: jump to pair"
  • Add: command "brackets: select to pair"
  • Add: command "brackets: select to pair, inside"
  • Add: plugin Spell Checker keeps font color of highlighted words
  • Add: lexer JSON: reworked code tree
  • Add: lexer Markdown: minor fixes, adapted for Spell Checker
  • Add: Project Manager: "Go to file" command reworked, much faster now on big projects
  • Add: Project Manager: feature from Kate editor: on opening a file from Git/SVN repo, project is created and file is focused in that project (if no named project was opened before); added option in the plugin dialog
  • Fix: macOS: crash on copying vertical block to clipboard
  • Fix: crash with non-ASCII text after showing Command Palette
  • Fix: plugin Tabs List: font options didn't work

New in CudaText 1.88.3 (Oct 14, 2019)

  • Add: command "markers: select to last marker"
  • Add: command "markers: delete to last marker"
  • Add: arrow keys skip position inside Unicode surrogate pairs
  • Change: menu item "View / Lexers" now shows dialog, like Command Palette
  • Fix: tree-helpers did not work (when no folding ranges)
  • Fix: Unicode surrogate pairs gave crash in Python plugins
  • Fix: rendering of Unicode surrogate pairs (when lexer sees surrogates as symbols)
  • Fix: plugin API sometimes changed file encoding to UTF16

New in CudaText 1.88.1 (Oct 8, 2019)

  • fix: API sometimes changed file encoding to UTF16
  • fix: Linux: dialog labels with CJK text were clipped

New in CudaText 1.88.0 (Oct 2, 2019)

  • Change: option "word_chars" replaced with "nonword_chars" (to be like Sublime & Atom)
  • Change: detection of file changes in external programs is rewritten. Now it uses thread, not timers (per each file-tab) as before. It should work more reliable and fast.
  • Change: confirmation "File was changed outside. Reload?" changed from messagebox to modalless panel inside file-tab
  • Change: clicking micromap doesn't move caret
  • Change: names of color themes now stores to user.json (reading of old setting from history.json is supported)
  • Add: option "caret_keep_visible_on_scroll"
  • Add: option "ui_notif" was returned back
  • Add: paired file-tab: auto-reloading works for second file; if both files were changed outside, 2 "Reload?" prompts appear at the same time
  • Add: don't reload file, which was deleted outside
  • Add: during drag-drop of text fragment, editor shows red marker for drop position
  • Add: zip file installer: for lexers and lite-lexers, support to install lexer-override settings in "lexer*.json"
  • Add: plugin Tabs List: reworked, using listbox with x and circle marks
  • Add: plugin Tabs List: added options in [columns] section to specify additional listbox columns (width values: >0 - in pixels,

New in CudaText 1.87.2 (Sep 22, 2019)

  • Add: option "mouse_scroll_speed_vert"
  • Change: command "Select all" now doesn't scroll to document end; it's like in Sublime & EmEditor & GEdit
  • Change: new dialog to choose UI+syntax themes "Options / Themes...", instead of two menu-dialogs
  • Change: removed option "ui_notif"; to disable file auto-reload, set "ui_notif_time" to 0
  • Fix: show unprinted symbols "only in selection" was wrong with wrapped text
  • Fix: file saving with write-error stops file auto-reloading
  • Fix: issue with command "find current word next"

New in CudaText 1.87.0 (Sep 15, 2019)

  • Add: can show unprinted characters only in selection (like Sublime). To do this, add char "x" to the option "unprinted_content"
  • Add: selecting words by double-click: allow clicking after line end too
  • Add: command "Toggle side panel / code tree" (same as "Show side panel / code tree" but it toggles)
  • Add: command "Add next occurrence of selected word": must find not whole words, if not whole word was initially selected (like Sublime)
  • Fix: command "Add next occurrence of selected word": bug when no selection (didn't repaint editor)
  • Fix: program should not crash if file-tab is closed during lexer parsing

New in CudaText 1.86.5 (Sep 12, 2019)

  • Add: dialog Go To allows negative line numbers and negative values in %, this goes relative to file end (like VS Code)
  • Add: lexer parser optimizations: now parsing of big files is ~30% faster
  • Add: minimap highlightes entire lines with selections, with theme color "current line BG" (similar to VS Code)
  • Fix: on big files (lot of folding ranges), program had big slowdown on text editing

New in CudaText 1.86.0 (Sep 4, 2019)

  • Change: Windows build upgraded to Python 3.6, option "pylib" (on Windows) is now ignored
  • Add: Windows build: added support for Python 3.4...3.8; the existing python3x.dll with latest number from app folder is used
  • Add: Windows build: Addon Manager has packages "Windows Python37 32-bit" and "... 64-bit"; after installing one of them, and app restart, app will use Python 3.7
  • Add: drag&drop from Windows Explorer to floating groups (f1, f2, f3)
  • Add: Char Map dialog has hotkeys Ctrl+Up, Ctrl+Down to change combobox choice
  • Add: plugins "Terminal", "Find in Files": input fields consider option "ui_active_border": true
  • Add: lexer JavaScript: code-tree supports function/class names with Unicode and $ char
  • Add: lexer "Batch files" improved (by @dinkumoil)
  • Fix: macOS: wrong display of menu-dialogs (if nagative font size in user.json)

New in CudaText 1.85.0 (Aug 5, 2019)

  • Add: on moving selection in Theme menu dialog, program previews selected theme (like Sublime)
  • Add: program saves to history the last selected item in Command Palette
  • Add: lexer VBScript improved (by @dinkumoil)
  • Change: deleted option "ui_listbox_centered", changed behaviour for its default
  • Change: function call-tip in plugin "Python IntelliSense" has different look and position

New in CudaText 1.84.4 (Aug 5, 2019)

  • Add: allow zip packages with "type=cudatext-package": installs all files+folders into root of CudaText, including any number of data/* and py/* subfolders
  • Add: allow zip packages with data with _empty_ "subdir" field
  • Add: Tabs List: added config file with few options: show_index_group, show_index_tab, show_index_aligned, font_name, font_size
  • Add: improved "single instance" code, so now it's possible to open N selected files from Windows Explorer (patch by Andreas Heim @dinkumoil)
  • Add: new framework appeared in add-ons: CudaFormatter. Addon Manager and Multi Installer support it.
  • Add: lexer VBScript improved (by @dinkumoil)

New in CudaText 1.84.0 (Aug 5, 2019)

  • Add: on detecting lexer by file extention, if several lexers are Ok, menu dialog appears to choose lexer
  • Add: menu Plugins is translatable: use files "data/langmenu/cuda_nnnnnn/ru_RU.ini" with section [menu] to translate
  • Add: menu dialogs Translations/Themes/Bookmarks place initial selection in listbox
  • Add: command "folding: fold selected lines" (makes persistent fold range, which stays after lexer parsing)
  • Add: Project Manager: command "Open all project files" (like SynWrite)
  • Add: lexer Bash: support base-N numbers
  • Fix: session loading did not restore group mode
  • Fix: various issues with lexer dynamic highlight (visible when dynamic highlight is on)
  • Fix: lexer border styles save/load to .cuda-lexops files
  • Fix: treehelper crash with Windows filename

New in CudaText 1.83.1 (Jun 24, 2019)

  • Add: Find dialog: option "find_hotkey_op_tokens", hotkey for 'syntax elements'
  • Add: Find dialog: 'syntax elements' has checkable style
  • Fix: plugin "Insert Time" bug

New in CudaText 1.83.0 (Jun 24, 2019)

  • Add: dialog Find/Replace has option button to choose "syntax elements" (like SynWrite): any, only comments, only strings, only comments+strings, except comments, except strings, except comments+strings
  • Add: embedded Emmet engine (written by Rickard Johansson); preinstalled plugin Emmet which uses this engine (old plugin "Emmet Lite" is now almost not needed, remove it).
  • Add: sidebar shows "badges" with number of items in Output and Validate panels
  • Add: ui-theme colors for sidebar "badges"
  • Add: plugin "Insert Time": if text selected, replace it on insertion
  • Change: menu items in "Options / Settings-more" moved one level up

New in CudaText 1.82.0 (Jun 7, 2019)

  • add: Ctrl+Tab shows new dialog, which cycles through tabs in recently used order; it's controlled by new option "ui_tab_switcher_dialog"
  • Add: Emojis are rendered better
  • Add: Windows: place IME window near caret, close IME window on click in text
  • Add: Windows: system log off is handled (current session is saved)
  • Add: command "switch tab, to next"
  • Add: command "switch tab, to previous"
  • Add: command "switch tab, simply to next"
  • Add: command "switch tab, simply to previous"
  • Add: command "switch tab, dialog"
  • Add: command "switch tab, to recent"
  • Fix: High-DPI on Linux
  • Fix: focused groups 2..6 were not detected for statusbar/title update
  • Fix: Ctrl+Tab didn't work in floating groups

New in CudaText 1.81.2 (May 30, 2019)

  • Add: command "open file, in text viewer"
  • Add: command "open file, in hex viewer"
  • Add: command "open file, in unicode viewer"
  • Change: replaced option "ui_max_lines_codetree" to "ui_max_ranges_codetree" (which is more accurate limit)
  • Fix: multi-selection by mouse was broken in last few releases
  • Fix: very slow unfold action in huge files
  • Fix: block staples can paint incorrectly in huge files
  • Fix: changed tab's title can sometimes show without "*" mark
  • Fix: Find dialog: popup position with Alt+Down

New in CudaText 1.81.0 (May 30, 2019)

  • Add: option "indent_auto_rule": RegEx which allows to make additional indent on pressing Enter
  • Add: program can use _default_ lexer-specific configs from folder settings_default
  • Add: few default lexer configs for "tab_size"/"tab_spaces": C, C++, CSS, JS, JSON, Pascal, Python...
  • Add: few default lexer configs for "indent_auto_rule": Lua, Pascal, Python, Ruby (not needed for C-like lexers)
  • Add: dialogs "Lexer library", "Lexer properties" made resizable, they save size
  • Add: program saves to session name of current side-panel and bottom-panel
  • Change: 3 submenus in the Options menu - Themes-UI, Themes-Syntax, Translations - were replaced with menu-dialogs; added 3 commands to call them
  • Fix: plugin "Numbered Bookmarks" had incorrect bookmark color on dark themes
  • Fix: detection of "modified" state for 2nd file in pair-tab (e.g. default.json+user.json)

New in CudaText 1.80.2 (May 30, 2019)

  • Add: double-click now selects a) group of spaces, b) group of symbol chars (like EmEditor)
  • Add: lexers C, C++: show "typedef ...{...}" in code-tree
  • Add: lexer JSDoc: highlight multiline typedefs {{...}}
  • Fix: crash during code-tree filling
  • Fix: macOS: bottom panel splitter moved bad

New in CudaText 1.80.1 (May 17, 2019)

  • Add: double-click now selects a) group of spaces, b) group of symbol chars (like EmEditor)
  • Add: lexers C, C++: show "typedef ...{...}" in code-tree
  • Fix: crash during code-tree filling

New in CudaText 1.80.0 (May 12, 2019)

  • Add: UI can now be scaled freely, independing of OS high-DPI mode. Added options "ui_scale", "ui_scale_font".
  • Add: more UI elements support scaling (minimap, micromap, splitters etc)
  • Add: Project Manager supports "toolbar icons" of any size (before: only 16x16). Icon set "Mui" (icon size: 20, 24, 32, 48) was added to add-ons.
  • Add: menu items in "Edit" menu are auto disabled (Undo, Redo, Copy, Cut, Paste, Delete)
  • Add: don't show warning "File is maybe not text" because of char(27)
  • Add: dialog "Save tabs?" saves its size
  • Add: dialog "Char map" saves its size
  • Change: deleted option "ui_statusbar_height"
  • Change: deleted option "numbers_font_size"
  • Change: deleted option "ruler_font_size"
  • Change: deleted option "ruler_size"
  • Change: deleted option "micromap_width"
  • Fix: bugs with vertical scrollbar, it wasn't auto moved

New in CudaText 1.79.2 (Apr 30, 2019)

  • Add: option "ruler_mark_caret"
  • Change: plugin file "install.inf": CPU names for "os=" line changed to longer names like in Free Pascal: i386, x86_64, arm, sparc
  • Fix: bug fixes

New in CudaText 1.79.0 (Apr 22, 2019)

  • Add: option "zebra"
  • Add: API
  • Add: lexers C/C++: improved rules for float/int/hex numbers
  • Fix: few bugs with vertical sync-scrolling in Differ plugin
  • Fix: scrollbars did scroll by 1 pixel on clicking arrows, must scroll faster by char size
  • Fix: bug with wrong caret pos after pasting multiline block on empty line

New in CudaText 1.78.5 (Apr 22, 2019)

  • Add: improve behaviour of option "auto_close_brackets":true, now it works with multi-selections too (brackets surround multi-selections)
  • Add: on mouse selection, editor draws dotted frame to show mouse rectangle
  • Add: option "show_mouse_sel_frame"
  • Add: toolbar button "Options Editor" (calls Options Editor plugin dialog)
  • Add: toolbar theme icon "opt.png"
  • Add: command "selection: remove first caret"
  • Add: command "selection: remove last caret"
  • Change: changed command name "expand selection to word" to more concrete "add next occurrence of selected word"
  • Fix: crash with plugin Config Menu and changed translation
  • Fix: bug in lexer engine for Unicode, which caused wrong tokenizing of Unicode names in Clojure lexer

New in CudaText 1.78.0 (Apr 22, 2019)

  • Add: API for EditorConfig plugin
  • Add: show tooltip over UI tabs with filenames (instead of showing filenames in statusbar)
  • Add: plugin Sort: added command "Remove duplicate lines, but keep blanks"
  • Add: option "newdoc_ends" allows value for CR endings
  • Add: on plugin installation app now skips all hotkeys (from install.inf) which are busy in config
  • Change: removed command "toggle menu bar"
  • Fix: CSS auto-completion bugs
  • Fix: option "saving_force_final_eol" behaviour
  • Fix: Windows: on rare PCs app hangs with hidden main menu
  • Fix: on switching tabs, word-wrap state was reset (with lexer-specific cfg)

New in CudaText 1.77.2 (Apr 22, 2019)

  • Fix: critical bug when BkSp/Del/letter pressing is reverted by editor
  • Fix: bugs with "ui_tab_disabled":true
  • Fix: memory leak with lexer usage

New in CudaText 1.77.0 (Apr 22, 2019)

  • Add: preinstalled TreeHelper for Markdown
  • Add: added tiny progress-bar for lexer parsing progress
  • Add: added rendering of selection background, when it's after line end (with "caret_after_end":true)
  • Add: option "autocomplete_close_chars"
  • Add: improved context menu for "Tab size" statusbar cell
  • Add: plugin Comments improved: stream comment for entirely selected single line is added inside that line; stream comment for entirely selected 2+ lines is added on 2 new lines
  • Add: dialog "Settings - theme - syntax" shows colored marks in listbox
  • Add: huge lines (length>4k) are now completely ignored by lexers (so file containing single huge line, e.g. minimized JSON, will take no time at all)
  • Fix: crash with Differ plugin (click on interline gap)

New in CudaText 1.76.2 (Apr 22, 2019)

  • Add: command "convert tabs (leading) to spaces"
  • Add: statusbar cell "Tab size" menu has additional items "Convert indentation to spaces", "Convert indentation to tabs"

New in CudaText 1.76.0 (Apr 22, 2019)

  • Add: memory optimizations (less memory usage on mass-replace)
  • Add: mouse wheel scrolling works also with pressed mouse button
  • Add: AddonManager dialog "Remove add-on" improved: it allows to remove plugins, lexers, themes, translations, snippets
  • Add: AddonManager allows to write in "registry" that plugins require another plugins; removed support for install.inf keys "req", "reqlexer" because AddonManager support must be enough
  • Fix: more fixing of corrupted encoding of "history files.json"
  • Add: lexer JavaScript highlights JSDoc comments (added hidden lexer JSDoc)
  • Add: lexer JavaScript improved: improved keywords, highlighted uppercase constants, better supported arrow functions, fixed many issues
  • Add: lexers CSS, HTML improved (fixed rule "color")

New in CudaText 1.75.4 (Apr 22, 2019)

  • Add: UI tabs: round X mark on mouse-over
  • Add: HTML color underlining supports "hsl", "hsla" functions
  • Fix: issue with highlighting in e.g. Bash lexer
  • Fix: cannot set none-lexer after lite lexer

New in CudaText 1.75.0 (Feb 21, 2019)

  • Add: much improved memory usage by lexer engine (1.5...1.8 less memory on 2M+ size files)
  • Add: much improved scrolling speed on big files with lexer (3M+ size)
  • Add: preinstalled plugin "Snippet Panel"
  • Add: TreeHelpers are handled by built-in code, and CudaTree plugin is obsolete - you must remove it (later plugin will be removed from Addon Manager)
  • Change: during text/folding change, editor is repainted more often, this helps to solve issue when command "Fold all" doesn't update screen
  • Add: lexer C improved: better code-tree

New in CudaText 1.74.0 (Feb 21, 2019)

  • Add: API to allow 2 files in a single tab. This is big help for Differ plugin. Big internal changes for this.
  • Add: API to allow "background passive bookmarks". This is help for Differ plugin.
  • Add: command "Settings - default/user" opens 2 files in a single tab
  • Add: Addon Manager: if plugin folder is Git repo, Update dialog shows its version as "Git" and runs "git pull" when updating this plugin
  • Add: Addon Manager: command "Install from Github" improved: now it suggests to clone Git repo or download it
  • Change: bookmarks render on minimap, while custom attribs (Editor.attr) do not render

New in CudaText 1.73.0 (Feb 21, 2019)

  • Add: preinstalled plugin "Sort"
  • Add: added toolbar sub-menu with "Change case" actions
  • Add: added toolbar sub-menu with "Comment/Uncomment" actions
  • Add: added toolbar sub-menu with "Sort" actions
  • Add: speedup rendering when lot of color-attributes (Editor.attr) added
  • Change: history file now stores percent sizes of groups, not pixel sizes (sizes history will reset one time)
  • Fix: autocompletion: disabled auto-show inside comments/strings; other issues
  • Fix: all installed plugins (400+ command items) gave misfunction
  • Fix: clicking tab on inactive group must focus it
  • Fix: rare crash on dragging scrollbar (Windows)
  • Add: lexer JavaScript improved: BigInt, underscore in numbers
  • Add: lexer Markdown improved: speedup
  • Add: lexer reStructuredText improved: many fixes
  • Add: lexer C++ improved: support ## in ident name

New in CudaText 1.72.0.0 (Jan 29, 2019)

  • Add: command "folding: fold block at current line" allows caret inside all block lines (not only block start)
  • Add: option "find_show_extract", allows to hide Extract button
  • Add: API (gaps improved)
  • Change: deleted 3 commands "folding: fold range....", because they were duplicated by commands "folding: fold block...."
  • Fix: caret pos after commands "scroll line up/down" was wrong sometimes
  • Fix: trying to fix Linux/Mac issue when caret stops blinking sometimes
  • Change: lexer removed to addons: C#
  • Change: lexer removed to addons: Perl
  • Change: lexer removed to addons: Tcl
  • Change: lexer removed to addons: Haskell
  • Change: lexer removed to addons: Apache config
  • Change: lexer removed to addons: Delphi resources
  • Add: lexer Python improved: fix numbers with "_"
  • Add: lexer Bash improved: highlight keywords in separate style; highlight func names, "-params"; highlight half of symbols in new style
  • Add: lexer Ruby improved: disabled regex rule (temporary?); fixed heredoc rule; highlight "par:" and ":par"; highlight octals/decimals; highlight more std funcs
  • Add: lexer C# improved: highlight modifiers in separate style; add 'await'/'async'
  • Add: lexers C, C++ fixed

New in CudaText 1.71.0.0 (Jan 29, 2019)

  • Add: dialog Find has new Extract button: it finds all matches in RegEx mode and puts them to a new document (plugin Extract Strings also does this)
  • Add: Addon Manager "Update" dialog can update also lexers/themes/translations
  • Add: if curly brackets {} typed and caret is inside them, Enter makes additional indented line between brackets (uses option "indent_size")
  • Add: in the list of recent files, paths are shorted with ~ char (for home folder)
  • Add: option "find_hotkey_extract"
  • Change: Addon Manager doesn't support versions in old files v.inf
  • Fix: reworked dragging of Minimap's highlighted; now it must feel like Sublime
  • Fix: bug in Option Editor (leads to saving to lexer-specific config)
  • Add: lexer C improved: highlight more keyword groups
  • Add: lexer C++ improved: more std words; support hex&floating numbers
  • Add: lexer CSS improved: more std words; better highlight @media; highlight units after number
  • Add: lexer XML improved: handle incorrect comment endings

New in CudaText 1.70.0.0 (Jan 10, 2019)

  • Add: smooth per-pixel scrolling in editor; it can be disabled by option "smooth_scroll"
  • Add: option "undo_persistent" (disabled by default), which allows to keep Undo/Redo data in files, in .cudatext folder near original file
  • Add: dialog Go To supports "+" at end of text to select to entered position (like SynWrite "Extend selection")
  • Add: on saving file in 1-byte encoding, app checks that Unicode text can be converted to this encoding, and if it cannot, app saves file in UTF-8
  • Add: tooltips for UI tabs buttons (x, +, , v)
  • Add: Console panel highlights special lines (>>> and Python errors)
  • Add: Console panel shows result of entered expressions (even without "=" prefix)
  • Add: Output and Validate panels have context menu
  • Add: option "ui_tab_show_x" has additional value (show "x" for mouse-over and active tabs)
  • Add: commands "focus group 1...6"
  • Add: menu items "Toggle statusbar"/"Toggle sidebar"/"Toggle toolbar" now save option to user.json
  • Change: changed default value of option "pylib__linux" to "libpython3.so"
  • Fix: Windows: flickering on start if window was maximized
  • Add: lexer Python improved: highlight func/class names
  • Add: lexer Assembly improved: highlight more word groups, fix folding
  • Fix: lexer Ruby
  • Fix: lexer Bash
  • Add: lexer JavaScript improved:
  • show anonymous functions (...)=>{...} in code tree
  • highlight true/false/null/this/undefined in new color
  • highlight func/class names in new color
  • highlight HTML tags (needed for CSS-in-JS syntax)

New in CudaText 1.68.0.0 (Dec 17, 2018)

  • Add: option "ui_tab_variable_width", can set variable width tabs
  • Add: option "ui_tab_size_x_max"
  • Add: option "ui_tab_show_x_size"
  • Add: too long UI tab captions are now truncated in the middle, by "…" char
  • Add: Linux: selection is auto-copied to OS Primary Selection (for max line count ~200). So plugin "Auto Copy to Clipboard" is almost not needed (it can copy to usual clipboard though).
  • Add: can continue column selection after multi-carets. After column selection made, then Shift+Right used (it converted column block to multi-carets), you can continue column selection by Shift+Alt+Down
  • Add: plugin Multi Installer skips more error messages (about incompatible OS, API)
  • Add: command "Close and delete file" also works in picture viewer and binary/hex viewer
  • Change: removed menu items "Help - Mouse usage", "Help - Lexers"
  • Fix: most of app hotkeys didn't work in picture viewer (e.g. F1, Ctrl+Tab)
  • Fix: Windows: dialog positions on 2 monitors configuration
  • Fix: macOS: Ctrl+click didn't call context menu in all places
  • Fix: macOS: minimap didn't paint

New in CudaText 1.67.0.0 (Dec 7, 2018)

  • Change: changed app subfolder in home folder: ~/Library/Application Support/CudaText
  • Add: much improved painting of minimap (spaces/tabs should paint correctly in multiline comments/strings, or in plain text)
  • Add: localization of statusbar first cell (default values for ui_statusbar_* options are changed)
  • Add: option "staples_props"
  • Add: option "ui_menu_show"
  • Add: option "ui_statusbar_show"
  • Add: option "ui_toolbar_show"
  • Add: command "ui: toggle sidebar"
  • Add: option "autocomplete_commit_chars" (like VS Code)
  • Add: option "ui_statusbar_panels" can specify auto-sized cells; default is changed for this
  • Add: menu item "View - Toggle sidebar"
  • Add: File Types config has default entry to detect XML by signature
  • Add: option "autocomplete_add_opening_bracket" now doesn't insert bracket if it's already in text
  • Add: UI theme color "block staples, for caret" (default is "none")
  • Add: lexer Ruby much improved
  • Change: deleted option "staples_indent"
  • Change: deleted option "ruler_text_indent"
  • Change: history file don't store visible state of toolbar/statusbar/menubar, these are options in user.json now
  • Fix: rendering artifacts in Bash lexer on fast editing (issue #1710)
  • Fix: freezing by NN sec in big file, if pressing (Ctrl+A, Del) during lexer parsing

New in CudaText 1.66.0.0 (Dec 7, 2018)

  • Add: statusbar have tooltips
  • Add: dialog "Go to": can enter absolute decimal offset (d1000) or hex offset (xFF00)
  • Add: dialog "Go to": title shows detailed hint
  • Add: deepest block staple, containing first caret, is highlighted (like VS Code)
  • Change: removed 5 unprinted_ options ("unprinted_spaces", "unprinted_spaces_trailing", "unprinted_ends", "unprinted_end_details", "unprinted_end_arrow")
  • Add: single option instead of deleted ones: "unprinted_content", and it has new sub-option to show unprinted spaces/tabs only at begin/end of lines
  • Add: option "wrap_mode" has new possible value "wrap at minimum of window edge / margin" (like VS Code)
  • Add: if many zip files opened via "File - Open file", they install silently, reported only count of zip files
  • Add: for horizontal scrollbar, app adds 4 spaces after longest line (before: was 1, VS Code has 5)
  • Add: assigned hotkeys Shift+Enter, Shift+BkSp (same as Enter, BkSp)
  • Add: checking/warning for outdated files/dirs of CudaText, which should be removed by user
  • Change: end-of-line marks changed to "LF", "CRLF", "CR"
  • Change: encoding names "cpNNNN" changed to lower case
  • Change: removed option "newdoc_eol", instead added option "newdoc_ends" with new possible value Auto
  • Change: removed encoding aliases "ANSI", "OEM", now app uses/shows direct names only
  • Change: removed 2 commands for "ANSI" encoding alias
  • Change: removed option "unprinted_end_dot_scale"
  • Change: removed option "ui_statusbar_tabsize"
  • Change: separate config file "plugin groups.json" not used, instead used section "plugin_groups" in user.json
  • Change: separate config file "filetypes.json" not used, instead used sections "detect"/"detect_line" in user.json
  • Change: plugin Multi Installer: removed options to make menu groups
  • Fix: plugin Show Unsaved Changes failed on Rus text in "ANSI" encoding (one of reasons to remove aliases)

New in CudaText 1.65.0.0 (Dec 7, 2018)

  • Add: option "saving_trim_final_empty" - delete redundant final empty lines
  • Add: command "show+focus bottom panel / console"; default hotkey Ctrl+` was assigned to this command
  • Add: command "show+focus bottom panel / output"
  • Add: command "show+focus bottom panel / validate"
  • Fix: mass replace command has 2 stages, but stage-2 didn't show progress and couldn't be stopped
  • Fix: lexer HTML: disabled CSS highlight in attribute style="" because it gave problems

New in CudaText 1.64.2.0 (Oct 24, 2018)

  • Add: new options for caret shape: "caret_view", "caret_view_ovr", "caret_view_ro"
  • Add: caret shape(s) can have height bigger than full cell, e.g. 140%
  • Change: deleted options "caret_shape", "caret_shape_ovr", "caret_shape_ro"
  • Add: improved lexer Markdown (highlighted math blocks, table chars; fixed definition lists)

New in CudaText 1.64.0.0 (Oct 24, 2018)

  • Add: file-types config allows to detect lexer by first line of text. See details in the wiki.
  • Add: option "ui_listbox_centered", allows to place menu dialogs (e.g. Command Palette) on screen center
  • Add: option "ui_console_compact", allows narrow layout of bottom panels
  • Add: improved auto-closing of brackets, it works if next char is one of ;:.,=>
  • Add: app detects missed elements in old color themes, and shows it in console, on loading theme
  • Add: dialog "Go to" ignores letter chars
  • Add: command "settings: font size: bigger"
  • Add: command "settings: font size: smaller"
  • Add: lexer Markdown improved ( content highlighted, fixed rule for strikeout text)
  • Change: deleted deprecated command "Restore lexer styles"; you can delete old "settings/lexer styles backup.ini"
  • Change: deleted option "log_debug"
  • Change: deleted option "ui_float_groups_in_taskbar"
  • Change: deleted option "comment_full_line_if_no_sel"
  • Fix: fixes for non-blinking caret

New in CudaText 1.63.0.0 (Oct 4, 2018)

  • Add: option "ui_auto_save_session", allows closing without questions, like in Sublime Text
  • Add: option "lexer_postpone_until_shown", it makes much faster app start with lot of files from session
  • Add: more system libs are placed to subfolder "py/sys"
  • Change: folder "py/requests" was moved to "py/sys", so delete this old copy: "py/requests"
  • Change: lexers Go, YAML removed to add-ons
  • Fix: painting gutter decoration on wrapped line
  • Fix: with complex multi-selections (from Invert Selection), Delete command could brake text (now text is Ok, only carets pos need fixing)

New in CudaText 1.62.0.0 (Oct 4, 2018)

  • Add: new files "settings/*.cuda-lexops" - lexer properties, which user can change in "Lexer Props" dialog; they auto-save on OK press in Lexer Props, and auto-restore on app start
  • Add: now it's not needed to use "Restore lexer styles" command (it was temp helper); command will be removed soon; and file "settings/lexer styles backup.ini" not updated now
  • Add: Multi Installer: options "Make menu group 'nnn'" (make groups in Plugins menu)
  • Change: dialog "Lexer Properties": some fields (lexer name, commenting) made read-only
  • Change: dialog "Lexer Properties": removed "Style type" option

New in CudaText 1.61.0.0 (Oct 4, 2018)

  • Add: API to show decorations on gutter (will be used in Brackets Hilite plugin)
  • Add: Addon Manager: new versioning system. Before: only plugins versions are saved, to v.inf files. Now: all add-ons versions are saved to a single file, settings/packages.ini. Old versions (v.inf) still show in the Update dialog.

New in CudaText 1.60.0.0 (Aug 28, 2018)

  • add: ability to group Plugins menu: see Wiki help topic "Plugin groups config"
  • add: preinstalled plugin Multi Installer (by Artem Gavrilov). It allows to quickly install bunch of add-ons for popular languages (HTML/CSS/JS/XML/Python etc). It is also auto-called on clean app installation (when "settings/history.json" not exists).
  • add: improved lexer JavaScript (Code Tree made correct for anonym functions)
  • add: improved lexer CSS (fix coloring of properties)
  • add: improved TutorialLexer4, added "Advice for C-like lexers"

New in CudaText 1.59.0.0 (Aug 19, 2018)

  • add: detection of UTF16 LE/BE without BOM
  • add: grouping modes "6 vert" and "6 horz"
  • add: Code Tree filter: each tab has its own filter text (initially empty)
  • add: Code Tree filter: input is combobox now; use Enter to add current text to dropdown
  • add: tab context menu items: "Copy filename only", "Copy filepath only", "Copy full filepath"
  • add: Project Manager option "Open files by double-click"
  • add: improved lexer HTML: highlight content with CSS lexer
  • add: improved lexer Markdown: highlight {++add++}, {--del--}, {~~edit~~}
  • add: command "code tree: clear filter"
  • add: command "code tree: focus filter"
  • add: command "code tree: focus treeview"
  • add: command "ui: hide bottom panel"
  • add: on folding a range, caret(s) pos is corrected if it was inside that range
  • fix: lexer Python: wrong highlighted strings like r''
  • fix: CSS auto-completion inside didn't work with multi-line string

New in CudaText 1.58.2.0 (Aug 11, 2018)

  • add: Code Tree has additional filter field
  • add: option "ui_tree_filter_layout"
  • add: more Unicode "white space" characters are shown in hex form
  • add: find/replace with regular expressions: "w" supports all Unicode word letters
  • add: API
  • add: command line parameter -nh (no history)
  • add: command line parameter -z (open in viewer)
  • add: command "code tree: go to block for current node"
  • add: command "code tree: go to block for current node, and select"
  • add: on file opening, syntax colored text appears faster
  • add: on deleting lexer, its files .acp and .cuda-lexmap are also deleted
  • add: Project Manager option "Use 'preview tab' on item clicking"
  • add: Addon Manager now deletes most of its temporary files (please delete old folders cudatext_NNNNN in temp dir)
  • add: option "centering_width" now has effect only with "One group" mode
  • change: option "ui_statusbar_tabsize" changed its default, now it supports app translation
  • change: action "Set tab color" saves its settings not to user.json (please cleanup your user.json from *palette* keys)
  • change: command line parameters: long keys variants are removed, only short ones left
  • change: option "newdoc_eol" now affects Windows only (it's "Unix EOL" on Unix)
  • change: deleted option "ui_statusbar_wrap"
  • change: deleted option "ui_tree_show_lines"
  • change: deleted option "ui_tree_cache"
  • fix: minor UI fixes
  • fix: Unix: support Python 3.7
  • fix: lexer JSON (string rule)
  • fix: group-mode commands *vert/*horz were swapped, if Config Menu plugin was used; you need to correct menu config for plugin

New in CudaText 1.57.0.0 (Jul 16, 2018)

  • add: preinstall plugin Options Editor (by @kvichans). And it can be updated in AddonManager as usual.
  • add: improve lexer JSON (different color for string before ":")
  • add: improve lexer Pascal (code tree for nested class of 1 level)
  • add: improve lexer Assembly (hilite labels, show labels in Code Tree, hilite dec/binary numbers with suffix)
  • fix: group-modes "1+2 horz/vert" gave errors
  • fix: better support Auto Save plugin
  • fix: lexer Pascal must support & char
  • add: improved plugin "Insert Time": added command "Insert in default format", and command "Config" in "Options / Settings-plugins"
  • add: API

New in CudaText 1.56.0.0 (Jun 5, 2018)

  • add: option "autocomplete_html_lexers"
  • add: option "autocomplete_css_lexers"
  • add: add-ons can require other add-on(s) via install.inf file
  • fix: HTML auto-completion must work in PHP files
  • fix: HTML and PHP snippets were not adjusted for new PHP/PHP_ lexers
  • fix: with "ui_one_instance":true, cannot open folder from 2nd instance (fixes by @vhanla, @fwhcat)
  • fix: after "trim spaces" actions, must fix caret pos, if after line ends

New in CudaText 1.55.0.0 (May 25, 2018)

  • add: floating tab groups 1/2/3. Now you can put tabs to 2nd monitor. To move tab to floating groups, in tab's context menu call "Move tab to group - Floating 1/2/3".
  • add: option "ui_float_groups_in_taskbar"
  • add: hotkey for "Command palette" set to famous Ctrl+Shift+P (second hotkey is F1)
  • change: renamed menu item "Help - Commands" to "Help - Command palette"
  • change: changed default of options "minimap_tooltip_show" and "fold_tooltip_show" to false
  • fix: minimap rendering for PHP
  • fix: lexers HTML, PHP (rule for &#nnnn;)
  • fix: lexer Markdown (rule for header)
  • add: side panel and bottom panel can be floating (undocked).
  • menu item "View - Toggle floating side panel"
  • menu item "View - Toggle floating bottom panel"
  • command "toggle floating side panel"
  • command "toggle floating bottom panel"

New in CudaText 1.54.0.0 (May 25, 2018)

  • add: API
  • change: lexer PHP code tree simplified (hidden $vars, HTML tags, JS items)
  • fix: highlighting error in "lite lexers"
  • fix: issue when pasting block w/o EOL, at empty line
  • announce:
  • new plugin CudaTree with sub-plugins, TreeHelpers.
  • Most useful TreeHelpers: for Markdown, for PHP.

New in CudaText 1.52.0 (May 7, 2018)

  • add: implemented editor tooltips over [...] folded marks
  • add: option "fold_tooltip_show"
  • add: option "ui_sidebar_on_right"
  • add: UI-theme "white"
  • add: lexer PowerShell improved
  • add: command "show side panel, project"
  • add: command "show side panel, tabs list"
  • fix: command "show side panel, code tree"
  • fix: TabsList plugin made "ghost panels" which overlap Code Tree

New in CudaText 1.51.2 (May 7, 2018)

  • add: lexer PHP changed - to support PHP linters, and PHP file type icons. It is cloned from HTML lexer, with micro changes. Old PHP lexer renamed to PHP_.
  • add: lexer VBScript: improved folding
  • add: API

New in CudaText 1.51.0.2 (Apr 30, 2018)

  • add: lite-lexers speed increased on very long lines
  • add: file tab captions show folder specifier, if they have same file name (e.g. 2 tabs with index.js will show as "index.js - dir1", "index.js - dir2")
  • add: AddonManager: menu item "Download: show links" (to paste to download manager)
  • add: command "Scroll to begin"
  • add: command "Scroll to end"
  • add: command "Scroll page up"
  • add: command "Scroll page down"
  • add: Find/Replace dialog:
  • input fields are auto-sized
  • separate dialog is resizable
  • buttons have minimal width (for small screens)
  • option "find_show_select_all"
  • option "find_show_mark_all"

New in CudaText 1.50.0 (Apr 23, 2018)

  • add: dialog "File is maybe not text" gives additional buttons: viewer text mode, viewer Unicode mode
  • add: option "ui_tab_disabled", to disable tabs (except first tab)
  • add: lexer Python: support for continuation char inside strings
  • add: detection of letter chars improved, now should work for all international alphabets
  • add: command "Options / Settings - default/user", to open 2 configs
  • add: config "default.json" opens as read-only
  • change: menu item "Groups" renamed to "=" and moved on top menu level
  • change: changed console output: now output is buffered, and result is flushed to UI control when app is idle
  • deleted option "font_width"
  • deleted option "unicode_wide_allowed"
  • deleted option "unicode_full_width"
  • add: option "font_width", it gives new method to detect width of Unicode characters
  • add: improved plugin "Make Plugin", added code to read/write options
  • fix: restoring of scroll pos on opening file
  • add: restored deleted unicode options:
  • "unicode_proportional" (was "font_width", int, now boolean),
  • "unicode_wide_allowed",
  • "unicode_full_width"

New in CudaText 1.47.0 (Mar 28, 2018)

  • add: API
  • fix: "lexer dynamic hiliting" was broken after text editing
  • fix: command File/Reopen must keep bookmarks
  • change: dialog "Go to" simplified, now it's simple modal form, like Commands dialog
  • fix: with session reopened, if single file opened from shell, it wasn't activated
  • fix: "restore lexer styles" didn't work
  • AddonManager/Install:
  • full list is sorted by caregory+name
  • allows to choose kind of addons, first item
  • disabled fuzzy search
  • filter only by addon name (not by description)

New in CudaText 1.45.0 (Mar 9, 2018)

  • add: avoid flicker of folded blocks (unfold-fold) when editing Markdown/Python/etc files
  • add: ProjectManager: option "Toolbar icons"; option uses icons in folder data/projtoolbaricons
  • add: sidebar button "hamburger", which shows copy of main menu as popup
  • add: command "show main menu as popup"
  • add: command "toggle main menu", menu showing is saved to history
  • add: lexer PowerShell: small fixes
  • change: TabsList: removed Config dialog
  • add: pictures: allow dragging, zooming by Ctrlmouse wheel (Commandon macOS)
  • add: pictures: show zoom % in statusbar
  • add: save to session/history also numbered bookmarks (was: only usual bookmarks)
  • add: option "hide_horiz_scrollbar"
  • add: plugins can force show sidebar button, even if they don't run on start. New section in install.inf: [sidebar1] .. [sidebar3]. Used in plugins: ProjectManager, TabsList, FTP.
  • add: option "ui_toolbar_theme", with default theme
  • add: add-on type "toolbar theme", which installs icon set(s) for new option
  • add: improved look of "Go to bookmark" dialog
  • fix: scroll pos didn't restore for inactive tabs (e.g. in session)

New in CudaText 1.42.0 (Feb 22, 2018)

  • add: reworked Code-Tree handling, fixed some crashes
  • add: reworked minimap, it paints faster/nicer
  • add: API for Code-Tree, now it's possible to make plugins which fill code-tree for some files
  • add: must not activate passive+unmodified tab by clicking its X
  • add: must disable tab closing during file loading/saving
  • add: optimizations for huge lines (len 1M+)
  • add: cursors for auto-scroll support high-DPI (thanks, FTurtle)
  • add: option "autocomplete_add_opening_bracket"
  • change: sidebar: changed color to darker, changed icon set to white
  • change: lexer Pascal: don't add fold-range "unit".."end."
  • fix: flickering on making tab "near current tab"
  • fix: flickering on opening many files (File/Open or session)
  • add: bookmarks support is rewritten. Now a bookmark is not deleted when its line is deleted. And memory usage of text storage is smaller now.
  • add: option "ui_tab_size_x_min", so can set tabs always wide
  • add: show "startup time" in console panel
  • add: support some more HTML5 tags
  • add: sidebar theme "octicons light 20x20"
  • fix: Tabs List plugin (used deleted API)
  • add: API
  • fix: horz scrollbar incorrect on long lines (>window size)
  • fix: "More carets" commands didn't consider tab-chars
  • fix: "Check for updates" in x32 version

New in CudaText 1.38.3 (Jan 27, 2018)

  • add: option "indent_size" allows value 0: use indent from options "tab_size", "tab_spaces"
  • add: API
  • minor fixes
  • add: API to show floating tooltips (new plugin "HTML Tooltips")
  • add: show "zero-width space" as other unprinted chars

New in CudaText 1.35.0 (Jan 18, 2018)

  • add: auto-completion listbox in HTML allows multi-carets (like Sublime does)
  • add: on macOS, some features use Command-key instead of Ctrl-key: Ctrl+click; Ctrl+(double click); Ctrl with drag-drop of text
  • add: API
  • change: option "lexer_dynamic_hilite" turned off by default (problems with option on macOS; slows down)
  • fix: Find dialog: Shift key runs search

New in CudaText 1.34.0 (Jan 14, 2018)

  • add: many optimizations in core for scrolling speed on huge lines (4M chars)
  • add: Ctrl+(double click) now selects additional word
  • add: command "Selection - Expand selection to word" (like in many editors)
  • add: option "allow_wide_chars"
  • add: commands "find current word/sel next/prev": they select current word before search
  • change: option "find_hotkey_find_next" is now hotkey, which is independant from focused input; its value "Enter" is ignored, other value works. "Enter" is now hardcoded hotkey.
  • fix: cannot find string with trailing EOL (multi-line input)
  • minor fixes
  • add: API

New in CudaText 1.32.2 (Jan 8, 2018)

  • minor fixes
  • add: API
  • add: deleting of huge block (w/o undo) is instant now (before it was n seconds)
  • add: code-tree has horiz scrollbar
  • add: statusbar menu for tab-size: added sizes 3, 5, 6, 7
  • add: Project Manager variables for ExtTools plugin: {ProjMainFileNameOnly}, {ProjMainFileNameNoExt}
  • add: API for statusbar
  • fixes

New in CudaText 1.31.2 (Dec 28, 2017)

  • add: statusbar menu for tab-size, added sizes 3, 5, 6, 7
  • add: Project Manager variables for ext-tools {ProjMainFileNameOnly}, {ProjMainFileNameNoExt}
  • add: option "ui_non_text" has additional values, to auto open binary files in binary/hex modes
  • add: binary viewer uses "middle dot" unicode char
  • add: binary files save to sessions
  • add: lexer Perl reworked (hilite multiline comments, fix funcs in code-tree)
  • fix: lexer C# (tree for funcs)
  • fix: if disk file is read-only, then normal, app must not reopen it r/o
  • add: binary viewer. It is called when non-text file is opened, with additional prompt. File size for binary viewer can be any.
  • add: dialog "Go to" works with binary viewer: can enter percents with "%" char, or hex offset
  • add: dialog "Go to" for editor: can enter percents with "%" char
  • add: prompts "file is not text", "file is too big" changed to one dialog (to allow binary view)
  • add: option "viewer_binary_width"
  • fix: lexer C# code-tree for generic func

New in CudaText 1.28.2 (Dec 15, 2017)

  • Fix: major bug fix, crash on paste command (in 1.28.0)
  • Fix: files weren't added to recents on app closing
  • Add: if deleting too big block (bigger than option "undo_limit"), do it fast w/o undo

New in CudaText 1.28.0 (Dec 8, 2017)

  • optimized memory usage on big files. E.g. Windows x32 version with 100M log: mem usage was 900M, now 720M.
  • add: support mouse wheel horizontal scrolling
  • add: macOS: can drag-drop folder from Finder onto CudaText icon
  • change: lexer SCSS removed to add-ons
  • change: lexer LESS removed to add-ons
  • change: lexer "SynWrite acp files" removed to add-ons
  • change: lexer "SynWrite snippets" removed to add-ons

New in CudaText 1.27.0 (Dec 4, 2017)

  • add: lite lexer SQL^
  • add: lexer API supports lite lexers
  • add: console lines "Init: cuda_nnnn" on loading plugins; option "py_init_log"
  • change: usual lexer SQL removed to add-ons
  • add: AddonManager: added option "Install: show confirmation and report"
  • change: AddonManager: removed confirmation "Install selected addon?"

New in CudaText 1.22.4 (Oct 18, 2017)

  • added: option "ui_tab_position": can place tabs on top/bottom/left/right
  • deleted option "ui_tab_bottom"
  • ask "file changed outside. reload?" also if file undo history is not empty
  • show "changed N lines" status after few commands (e.g. trim spaces)

New in CudaText 1.22.0 (Oct 9, 2017)

  • added: option "ui_tab_flat" (tabs look like in new Sublime)
  • added: caching of Code Tree content, so much faster switch betweeen tabs
  • added: UI theme color "tabs, flat, focus mark"
  • fixed: commands "go to screen top/bottom/center" must work ok on long wrapped lines

New in CudaText 1.21.0 (Oct 4, 2017)

  • added submenu "Options / Settings-plugins", so plugins can put config commands here, instead of "Plugins". Two standard plugins (Tabs List, Comments) use this menu. http://wiki.freepascal.org/CudaText#Plugins
  • API for "Vim Mode" plugin
  • added commands: "go to line absolute begin/end (+select)" (keys Home/End consider spaces)
  • added commands: "go to word end (+select)" - like in Vim
  • added commands: "go to word next/prev, simple (+select)" - do alternate word jumps like in Vim

New in CudaText 1.20.0 (Oct 4, 2017)

  • reworked UI tabs: added option "ui_tab_button_layout"
  • option "ui_reload_unsaved_confirm"
  • fix: painting on resize
  • fix: ProjectManager using of old api

New in CudaText 1.19.2 (Oct 4, 2017)

  • main toolbar is now wrappable
  • UI tabs: added scroll arrows (left side) for lot of tabs
  • UI tabs: don't paint angled tabs (slow) if tab count>10
  • added theme color "tabs, special marks"
  • change theme "sub": side panel made dark

New in CudaText 1.19.0.0 (Sep 16, 2017)

  • colored underlines for HTML's rgb(), for ex rgba(200, 200, 0, .4)
  • support no-break-space U+00A0: in show unprinted, in go-to-next-word
  • replace with reg.ex.: support change case (modifiers U L) for Unicode
  • option "ui_tree_show_tooltips" (turn off, if tooltips are irritating)
  • option "mouse_click_number_selects_eol"
  • improved lexer JS (reg-ex hiliting)
  • improved lexer LESS (numbers hiliting)
  • ProjectManager: commands "Go to main file", "Open main file"
  • ProjectManager: don't allow duplicate items
  • fix: fold-marks didn't render on folded lines
  • fix: must handle file creation error for command line
  • fix: command "go to last editing pos"

New in CudaText 1.18.0.0 (Sep 16, 2017)

  • pre-installed plugin "Show Unsaved Changes" (command like in ST3)
  • Project Manager: allow drag-drop folder on CudaText - add folder to project
  • dialog "Go to": can enter line:column
  • code tree: context menu item "Sorted"
  • API for dialog "Go to"
  • API to embed editor-control to dialogs

New in CudaText 1.17.0.0 (Sep 2, 2017)

  • API to shade text (used in plugin Focus Mode)
  • Project Manager: added commands "Add current file", "Add all opened files"
  • lexer Bash: hilite varname before "=", don't hilite keyword after "."
  • fixed: high-dpi in ProjManager and bottom panels
  • fixed: initial dir of save-dialogs for untitled tabs
  • fixed: wrong saved keys.json if "overwrite duplicate hotkey" was used with plugins
  • fixed: code-tree lost vert scrollbar

New in CudaText 1.16.1.0 (Aug 31, 2017)

  • save-as untitled tab: suggest first free filename: new.txt, new1.txt, new2.txt... (like SynWrite)
  • reworked confirmation for duplicate hotkeys in Hotkey dialog (ask to overwrite inside this dialog)
  • mouse column selection: used "cross" cursor (like TextMate)
  • in single line inputs, make right edge of text near the edge of control (like Windows)
  • option "copy_column_aligned_by_spaces"
  • Addon Manager: don't allow to remove standard plugins
  • Addon Manager: cache addon filelists for 10 minutes
  • dialog "Lexer library" reworked, used normal buttons on top, added button Hide/Show instead of checkmarks
  • fixed: Project Manager "Show panel" command
  • fixed: checkmarks in View/Groups menu
  • fixed: column selection by mouse: "caret_after_end":false must not break column
  • fixed: problem with ":line" in command line and single instance

New in CudaText 1.15.0.0 (Aug 18, 2017)

  • option "centering_width"
  • option "centering_for_distraction_free"
  • option "ruler_numeration"
  • command "go to screen center"
  • command "force final end-of-line"
  • Addon Manager: suggests to install several addons, one after another
  • Addon Manager: install-command splitted to: a) Install - items w/o installed ones, b) Re-install - already installed items
  • removed option "ruler_from_1"
  • fixed option "indent_makes_whole_line_sel"

New in CudaText 1.11.0.0 (Jun 24, 2017)

  • new main icon (by FTurtle)
  • Project Manager: file type icons (from VSCode program)
  • Project Manager: expand "." to full dir name
  • focused input (in find/replace/goto/console) has its border highlighted
  • option "ui_active_border"
  • options "find_hotkey_*" for hotkeys in find/replace dialog
  • find/replace: hotkey Enter on focused replace-box: runs "Replace next" and keeps focus
  • find/replace: set hotkey for "Find first" to Alt+Enter
  • find/replace: changed hotkey for "Replace next" to Alt+Z, "Replace without find next" to Ctrl+Alt+Z
  • find/replace: changed hotkeys Alt+5/Alt+6/Alt+7 to Alt+O/Alt+E/Alt+K
  • changed icons of toolbar
  • removed option "log_dialogs"

New in CudaText 1.10.0.2 (Jun 19, 2017)

  • preinstalled plugin Tabs List
  • Project Manager: read only toplevel dirs from disk, and read other dirs only on unfolding them in treeview (patch by @pohmelie)
  • Project Manager: added toolbar
  • api
  • finder: don't put backward selection on find-backward
  • lexer help file converted from CHM format to ODT

New in CudaText 1.9.3.0 (Jun 5, 2017)

  • preinstalled Project Manager plugin
  • can open folder names from command line, e.g. "cudatext ." like Atom/Sublime can do
  • menuitem "File - Open folder", it calls Project Manager
  • menuitem "Help - Check for updates", it calls Addon Manager
  • api

New in CudaText 1.9.1.0 (Jun 5, 2017)

  • finder: replace-all made much faster (note: when confirmation is on, you will see unchanged text, it will replace later)
  • finder: count-all must find w/o overlaps (non-regex mode)
  • api

New in CudaText 1.9.0.0 (Jun 5, 2017)

  • distraction-free mode, see http://wiki.freepascal.org/CudaText#Full-screen
  • added option "ui_fullscreen" with new values
  • removed option "ui_fullscreen_hide"
  • option "margin" changed default to 2000 (ie, hide)
  • fixed: Win10 old issue when 2nd app instance cannot popup to front
  • api

New in CudaText 1.8.6 (Jun 5, 2017)

  • fixes for Windows high-dpi (dialogs, toolbar btns, folding icons)
  • api

New in CudaText 1.8.5 (May 9, 2017)

  • fix slow scrolling with minimap shown
  • option ui_tree_theme
  • command "place bookmarks on carets"
  • replace-all: show elapsed time in sec.
  • api (reworked dlg_proc)
  • Addon Manager: plugin Updater (like SynWrite)
  • Addon Manager: used new channels url
  • option font_ligatures
  • dlg Find: must show on top of CudaText dialogs
  • toolbar: add buttons Indent, Unindent
  • api (dlg_proc) for powerful dialogs

New in CudaText 1.8.0 (Apr 8, 2017)

  • changed values for "newdoc_encoding" to short (like in API)
  • changed suffix for macOS config keys from "__osx" to "__mac"
  • changed: opt "def_encoding_utf8" has OS suffix
  • api
  • fix: Tab-key didnt jump in Find dlg

New in CudaText 1.7.9 (Apr 8, 2017)

  • autocomplete listbox: chars .,;= should input to editor and close listbox
  • command line: added key --enclist
  • api
  • fix: wrong minimap view color
  • fix: minimap click scrolled editor to right

New in CudaText 1.7.8 (Mar 29, 2017)

  • macOS: horiz scroll by trackpad should work now
  • option ui_sidebar_show
  • option mouse_wheel_speed_vert
  • option mouse_wheel_speed_horz
  • command line: improved help (--help)
  • command line: aliases for keys (-h -v -r -n -w)
  • command line: added key --enc=
  • command line: renamed key: --readonly
  • changed format of file date in session (was number, now readable)
  • fix: tabs "x" must act on mouse-up
  • menu item "File - New from template" (same as click on arrow near "new icon")
  • updated FCL-JSON lib from current FPC trunk
  • dont escape "/" in user.json
  • changed ui_sidebar_theme to "octicons_20x20"

New in CudaText 1.7.6 (Mar 23, 2017)

  • option "ui_sidebar_theme"
  • sidebar buttons for "Search", "Go to"; deleted toolbar icons for the same
  • toolbar hidden by default
  • you should delete old files data/sideicons/*.png, now folder here
  • cmd "hide dialog: find"
  • cmd "hide dialog: go to"
  • fix: moving window to 2nd monitor (Win10)
  • fix: auto-scroll-horz didnt start on moving mouse on scrollbar/minimap
  • fix: vertical block selection until file end
  • different UI of sidebar tabs (I find it more useful)
  • theme color "side-toolbar BG"
  • Ctrl+[drag-drop] does copying of block
  • Alt+[drag-drop] fixed if scrolls editor up/down

New in CudaText 1.7.2 (Mar 17, 2017)

  • command-line key --version
  • command-line key --window=x,y,width,height
  • writes to stdout on using command-line filename/dir
  • fix: macOS: caret not visible on dark theme
  • fix: any click should show caret
  • option "mouse_mid_click_paste"
  • option "log_dialogs"
  • checkmarks visible for ConfigMenu's menu too
  • default for "ui_statusbar..." changes {x} to {xx}
  • renamed opt "mouse_browser_scroll" to "mouse_mid_click_scroll"
  • deleted opt "backup" (warning shows if opt set), use plugin Backup File instead
  • fixes in api
  • fixes, adds in api
  • Alt+click now does goto-definition
  • opt "mouse_goto_definition"
  • opt "autocomplete_autoshow_lexers" can have none-lexer as "-"
  • AddonManager: use temp-file on downloading (safer)
  • AddonManager: message retry/ignore/abort on download err
  • addons install.inf has field for API ver
  • don't suggest multi-line sel to Find dlg
  • api for timer
  • change default for undo_after_save

New in CudaText 1.6.6 (Feb 5, 2017)

  • find/replace: opt "in selection"
  • cmd "goto last editing pos" uses find_indent_vert/horz
  • handled click on micromap
  • api additions

New in CudaText 1.6.0 (Dec 30, 2016)

  • big internal changes in core, to support inter-line gaps (it is like "phantoms" in Sublime)
  • opt "gutter_fold_icons"
  • paint unprinted arrow-left at end-of-file
  • cmd "Copy bookmarked lines"
  • cmd "Delete bookmarked lines"
  • fix: Linux: hotkeys broken, if Ru layout active at start (bug in Lazarus)
  • fix: issues with caret/scroll, after fold/unfold cmds

New in CudaText 1.5.1 (Oct 31, 2016)

  • AddonMan: suggests readme+history
  • api: events priority
  • api: for bottom-panel
  • added plugin: New File; used for dropdown arrow near "New file" tool button; not shown in Plugins
  • fix: "restore lexer styles" must save lex file
  • fix: gtk2: "copy to clipbd"
  • can install zipped addons with files in subfolder. previously: zip must have files only in root.
  • install.inf: can define variable $name in [info] and use it in lines "lexers=$name" (needed for long lexers list)
  • install.inf: can write lexers list by RegEx: [info] $name=regex:.*SQL.*
  • add theme styles: Label, TagPropBad
  • minor fixes

New in CudaText 1.4.9 (Sep 28, 2016)

  • now special comments (for range, for full lines), styles-of-comments, styles-of-strings: must be specified in Lexer Props dialog. They save now to .cuda-lexmap files. So can publish these with lexer zip files. You can delete: settings_default/default_lexers.json, user_lexers.json.
  • improved lexers: C#, Bash, reST, Haskell, Yaml, Search results
  • opt ui_buffered (if UI looks ok, don't touch)
  • opt ui_tree_icons
  • api

New in CudaText 1.4.8 (Sep 28, 2016)

  • improved lexers: CSS, JS, PHP, Batch, Ruby, C, C++, C#, Tcl, SQL, YAML, VB, Markdown, Haskell, Makefile (using Sublime syntax tests)
  • del lexers to addons: AutoIt, AutoHotkey

New in CudaText 1.4.7 (Sep 28, 2016)

  • del built-in commands to comment/uncomment; now plugin Comments (by kvichans) preinstalled for this, with more options and config dlg
  • save/restore last tab in side-panel
  • lexers JS, Python: keywords async/await

New in CudaText 1.4.6 (Sep 28, 2016)

  • command line allows line numbers: "cudatext filename:nnn"
  • key Esc in left panels: focus editor
  • key Enter in left panels: same as dbl-click
  • lexer JS: upd keywords, hilite `backtick-strings`
  • cmd "open file, ignore plugins" (to open project-files as raw text)
  • del sorting built-in cmds (plugin Sort exists)

New in CudaText 1.4.5 (Sep 6, 2016)

  • reworked themes. Instead of name.json file now 2 files: name.cuda-theme-ui, name.cuda-theme-syntax. any UI theme can be used with any Syntax theme. More flexible system. Less work on Syntax themes.
  • dlg Save Tabs: button to dont keep in session
  • AddonManager: menu item "Remove data files"
  • breaking change (as file history saves encoding by name): renamed encodings "utf-8", "utf-8 no bom", "utf-16 le", "utf-16 be" to Sublime names "utf-8 with bom", "utf-8", "utf-16 le with bom", "utf-16 be with bom"
  • added enc: utf-16 le/be (without bom)
  • opt ui_tab_show_x: now number 0..3, can show "x" for mouse-over tab only
  • fix: no-carets after undo column-block
  • fix: C# lexer string-rule
  • mouse-wheel should work in Commands dlg
  • cmd "go to last editing pos"
  • fix: undo for BackSp
  • command-line options: http://wiki.freepascal.org/CudaText#Command_line_parameters
  • Addon Manager can use proxy
  • python lib "requests" preinstalled
  • cmd "toggle tab-key uses spaces"
  • fix: replace-all must show "wait..."
  • fix: force Find dlg to desktop on show
  • encoding: files were opened in "UTF8 no bom" by default. Now it is opt "def_encoding_utf8": open as ANSI (default for Windows) or UTF8 no bom.
  • improve floating Find dlg
  • improve paint of tabs, if lot of em (30-40+)
  • find-dialog can be separate (opt find_separate_form)
  • toolbar full themed now
  • option "pylib" has suffix now (for universal config): see default.json
  • fix: restoring scroll pos on opening files
  • 3 major fixes (bugs after macOS work)
  • nicer gray built-in theme

New in CudaText 1.3.26 (Jul 17, 2016)

  • macOS: lot of code changed for Retina support
  • macOS: fix crash, on run with params
  • show shorter Python ver
  • fix: show pictures

New in CudaText 1.3.25 (Jul 15, 2016)

  • macOS, Linux: correct full-screen
  • macOS: don't assign F11/F12 by default
  • opt ui_fullscreen_hide
  • fix: focus after opening session
  • fix: hotkeys-dlg on mac

New in CudaText 1.3.21 (Jun 27, 2016)

  • AddonManager shows linters too
  • AddonManager has new channel for Kvichans' addons (about 10-15)
  • api (for "Favorites")
  • show msg in console, if Python can't init
  • cmd "toggle micro-map"

New in CudaText 1.3.20 (Jun 20, 2016)

  • dlg Find: buttons Select-all, Mark-all (place selections or markers, can clear markers by cmd "markers: remove all")
  • cmds "Find all, and select / place markers / place bookmarks"
  • opt show_cur_line_only_focused
  • opt ui_max_history_menu: max_value=50
  • fix: must copy to clipbd using active line-end

New in CudaText 1.3.19 (Jun 6, 2016)

  • opt unprinted_replace_to_code
  • cmd "Delete line" deletes sel lines
  • max items in install.inf =400
  • fix: dlg "Save tabs?" saving
  • fix: "change endings" for "none ending" line

New in CudaText 1.3.18 (Jun 6, 2016)

  • api (for plugin "Sort")
  • open-dialog remembers last dir (for untitled tabs, if ui_initial_dir empty)
  • fix lexer Markdown
  • fix lexer reST
  • fix cmd "Update tree"

New in CudaText 1.3.16 (May 20, 2016)

  • opt staples_show
  • hotkey Ctrl+Tab changeable
  • cmd "find, first"
  • cmd "find, mark all"
  • del lexer TextFiles

New in CudaText 1.3.15 (May 20, 2016)

  • info http://wiki.freepascal.org/CudaText#Change_case_on_replaces
  • fix: replace to "some\n" (win32)
  • dont put caret in folded [..]
  • op ui_listbox_size_y
  • lexer reST
  • fixes

New in CudaText 1.3.14 (May 11, 2016)

  • opt fold_style
  • api
  • fix: don't open folder via cmd-line

New in CudaText 1.3.12 (May 11, 2016)

  • rework indent of col-block: like Synwrite
  • theme "Sub" (@Alexey)
  • theme rename: "verbis" to "ebony" (@myCrack)
  • updated PHP completion-list (@Sanchez)
  • fix: Markdown tree

New in CudaText 1.3.11 (Apr 24, 2016)

  • indent/unindent col-blocks too
  • opt mouse_wheel_zoom
  • cmd "enable/disable folding functionality"
  • fix: lexer Python (folding, update speed)
  • api

New in CudaText 1.3.10 (Apr 24, 2016)

  • shift+mwheel does horiz scroll
  • checkmarks in top menu (not Linux gtk2)
  • cmd "folding: fold/unfold at cur line"
  • update: JS completions
  • fix: mwheel in one-line edits
  • fix: lexer PHP word-lists
  • fix: lexer Markdown
  • fix: lexer Python
  • fix: for 2nd monitor

New in CudaText 1.3.9 (Apr 14, 2016)

  • new themed scrollbars: editors, trees, listboxes
  • command "Place carets on bookmarks"
  • theme "darkwolf" preinstalled
  • upd lexer "acp files"
  • api

New in CudaText 1.3.8 (Apr 14, 2016)

  • memory optimizing (for 20M+ files w/o lexer)
  • autoclose bracket: don't do if inside text
  • opt unprinted_replace_spec defaults to "false"
  • spec-chars 0..31 shown shorter: xNN
  • theme color "statusbar alt, font"
  • api

New in CudaText 1.3.7 (Apr 14, 2016)

  • opt ui_max_size_open
  • opt ui_max_size_lexer
  • small memory optimizing

New in CudaText 1.3.6 (Apr 5, 2016)

  • auto-close of quotes (read about auto_close_brackets)
  • auto-close of brackets/quotes works with selection
  • drag-cursor appears more correct
  • menuitem View--Lexers
  • AddonManager uses filelist in txt-file at github (slower download-all, but don't use fixed mirrors of SF, safe)

New in CudaText 1.3.5 (Mar 31, 2016)

  • autocomplete for HTML: completion listbox inserts tag+ closing tag after caret
  • autocomplete for HTML: auto show when typed " < "+wordchar
  • autocomplete for HTML: better for a/img/link
  • autocomplete for CSS: auto show when wordchar typed on attribute pos
  • opt auto_close_brackets

New in CudaText 1.3.4 (Mar 29, 2016)

  • drag-drop text to other group: opt mouse_drag_drop_focus_target
  • drag-drop text to other group: Ctrl pressed means "copy"
  • drag-drop file from explorer: use group under cursor
  • lexer Python: keywords def/class/global/lambda have other style (like ST3)
  • rework restore caret on file-reload
  • fix MakePlugin

New in CudaText 1.3.1 (Mar 22, 2016)

  • opt ui_lexer_themes
  • color "editor, gutter font, lines with carets"
  • color "listbox, sel line font"
  • colors "statusbar, font/bg/border"
  • commands item "lexer: (none)"
  • many fixes (github)

New in CudaText 1.3.0.0 (Mar 20, 2016)

  • themes contain now 40 styles: to map to concrete lexer styles. Dialog "Lexer styles map" added. It shows on activating lexer w/o configured map. Maps are saved to "lexlib/*.cuda-lexmap".
  • not used anymore settings/plugins.json (delete it), used install.inf's only
  • renamed translations to nn_NN (e.g. ru_RU)
  • can show .gif pics
  • upd lexer XML
  • upd lexer LESS (style: color)
  • upd lexer SCSS (style: color)
  • upd lexer JS (style: doc comment)
  • upd lexer PHP (style: doc comment)
  • color "editor, combobox border"
  • statusbar macros {yb} {ye}
  • fixes

New in CudaText 1.2.29 (Mar 20, 2016)

  • lexer CSS handles @media{...}
  • char-map uses multi-carets on insert
  • more toolbar api

New in CudaText 1.2.28.2 (Mar 10, 2016)

  • translation possible: see menu item Options/Translations, see folder "data/lang"
  • translation Russian, in AddonManager
  • font opt named with suffix on Linux/OSX: font_name__linux, font_size__linux...
  • AddonManager has cmd "Visit plugin homepage"; plugins need field "homepage=" in install.inf
  • fix to handle line length 10k

New in CudaText 1.2.26 (Mar 1, 2016)

  • opt minimap_at_left
  • opt caret_after_paste_column
  • opt ui_statusbar_tabsize
  • opt ui_max_history_edits
  • opt spacing_y: default=1
  • cmds "open url at caret", "copy url at caret"
  • api

New in CudaText 1.2.24 (Feb 21, 2016)

  • opt font of bottom-panel listboxes
  • api (plugin Tabs List, bookmark hints in CudaLint)

New in CudaText 1.2.23 (Feb 17, 2016)

  • fix Addon Manager "Install" (SF.net blocked http)
  • change in api. Must update plugs: NumberedBookmarks, PythonIntel, CudaExt, Snippets
  • added 120+ snippets for HTML. These mimic hehaviour of Synwrite's feature "SmartTagTabbing". You need plugin Snippets.
  • autodelete markers in deleted selection
  • statusbar panel "msg" now autosized (can put "msg" to left)

New in CudaText 1.2.22 (Feb 17, 2016)

  • toolbar api
  • add ui_statusbar_panels panel "ins" (hidden by default)
  • add bottom pane "Search Res", for future
  • fix Qt build: Esc key in find/goto
  • fix: must set modified on conv-encoding

New in CudaText 1.2.21 (Feb 9, 2016)

  • opt micromap_show
  • opt micromap_width
  • opt autocomplete_autoshow_chars
  • opt autocomplete_autoshow_lexers
  • autocomplete now ignores case
  • improve picture mode

New in CudaText 1.2.20.1 (Feb 4, 2016)

  • can open pictures: bmp/png/jpg/ico
  • statusbar: remove macros {caret_line_nnn}, add {y2}
  • remove opt ui_tab_indent_x (center text)

New in CudaText 1.2.18 (Jan 28, 2016)

  • api: sidebar panels
  • grouping "1+2 horz" (some session files now not correct)
  • new lexer Makefile (for GNU makefile)
  • opt "ui_tree_show_lines"
  • cmd "ui: show side panel"
  • cmd "ui: show side panel, and syntax tree"
  • cmd "ui: hide side panel"

New in CudaText 1.2.16 (Jan 21, 2016)

  • add commands: column select to line begin/ line end/ page up/ page down
  • faster render on Linux gtk2
  • fix: grouped-undo was broken
  • fix: btn "cancel search" didnt work

New in CudaText 1.2.15.3 (Jan 18, 2016)

  • Fix: grouped-undo (didn't group and hanged on empty undo)

New in CudaText 1.2.15 (Jan 17, 2016)

  • opt "backup"
  • plugin autocomplete: reshow list if 1 char typed
  • improved "Make Plugin", can hide items in Plugins
  • with col-block of zero width, can use Del/BkSp too
  • replace dlg key Ctrl+Alt+Enter: replace and don't find next
  • changed hotkeys in Replace
  • output panel uses dbl-click
  • fixes

New in CudaText 1.2.14 (Jan 11, 2016)

  • selection keeps bold/italic of selected words
  • redone plugin "Make Plugin"
  • lexers HTML/HTML_/PHP/PHP_: rename, old pair removed to Addon Manager
  • opt autocomplete_html
  • opt autocomplete_css
  • opts deleted: under_color, under_color_size
  • opts added: underline_color_files, underline_color_size
  • fix: caret at bad coord
  • fix: must unfold found text
  • fix: sort must set "modified"
  • fix: Html autocomplete in Html part of Php

New in CudaText 1.2.12 (Jan 6, 2016)

  • api (log panels api, splitters api)
  • removed lexers NSIS, Inno: to Addon Manager

New in CudaText 1.2.11 (Dec 30, 2015)

  • addon-manager: config dlg (restart to see item); common install dlg; no more using of Synwrite wiki
  • "undo" undoes also "*" mark
  • api (better support for ExtTools)

New in CudaText 1.2.10 (Dec 27, 2015)

  • addon-manager: items "Install plugin","Download all" (restart app 1-2 times to see menuitems)
  • added cmds: "tree: select next/prev/parent/etc node"
  • opt ui_lexers_grouped
  • opt ui_reload_tail
  • use grouped-undo for mul-carets cmds
  • cmd "tree: update tree" (need if sidebar hidden)

New in CudaText 1.2.9 (Dec 19, 2015)

  • removed cmd "search - go to tab" (better doable in plugin)
  • change: color-attrib api (pls update plugins BracketsHilite, HiliteOccurrences)
  • change: limit key-combo len to 3
  • improve dialog api
  • improve cmd "reset Python plugins"
  • small fixes

New in CudaText 1.2.8 (Dec 14, 2015)

  • custom-dialog api
  • dlg "Goto tab" shows paths
  • output panel has hotkeys (wiki help topic)
  • console: char ";" at end of cmd: don't log
  • fix on pasting n lines at line-end
  • fix replace regex "$"

New in CudaText 1.2.5.0 (Dec 9, 2015)

  • support for Macros plugin
  • theme "green"
  • cmd "convert tabs to spaces"
  • cmd "convert spaces (leading) to tabs"
  • files in session must not update recents
  • fix: json tree (e.g. file menu.json)
  • fix: grouped undo

New in CudaText 1.2.0 (Nov 30, 2015)

  • commands for markers like Synwrite
  • support for Snippets plugin
  • opt ui_non_text (prompt/ open/ don't open)
  • opt ui_non_text_buffer
  • cmd "run last command plugin"
  • fix: ui_one_instance and non-text prompt

New in CudaText 1.1.0 (Nov 30, 2015)

  • changed format of keys.json (old fields read but not saved)
  • plugins have hotkeys like all cmds: Commands dlg allows to change plugin keys. Saved in keys.json.
  • history saves folded-state
  • cmd "fold range at current line"
  • cmd "unfold range at current line"
  • cmd "goto next bookmark": from last goto first
  • color for "fold mark border"

New in CudaText 1.0.2 (Nov 23, 2015)

  • opt ui_tab_numbers
  • cmd "Edit--Char map"
  • cmd "reset python plugins" (like Synwrite)
  • plugins.json can have "menu":false key to hide Plugins menu item

New in CudaText 1.0.0 (Nov 20, 2015)

  • opt ui_notif_* (notification for file change)
  • opt comment_equal_column
  • api

New in CudaText 0.9.7 (Nov 8, 2015)

  • cmd "toggle stream comment"
  • cmd "restore lexer styles": feature ported from SynWrite
  • unindent by Bksp: consider all prev lines
  • menu Encoding redone
  • opt ui_esc_close_console
  • opt comment_*
  • opt duplicate_*
  • some cmds done in Python (toggle stream cmt, toggle line cmt, duplicate line)
  • menu View don't have checkmarks: faster

New in CudaText 0.9.5 (Nov 8, 2015)

  • support for event plugins (auto-completion, goto-definition...)
  • undo improved (group complex edits even if undo_grouped=false)
  • del opt find_replace_with_find
  • fixes in find/repl

New in CudaText 0.9.3 (Nov 8, 2015)

  • opt ui_listbox_fuzzy
  • lexer JSON tree redone
  • session has more properties
  • tree: show hint for long lines
  • fix: restore r/o state

New in CudaText 0.9.1 (Oct 17, 2015)

  • rework col-blocks (handle tab chars)
  • statusbar macro {xx}
  • save/restore sizes of groups
  • opt find_sel_case has values 0..2
  • dlg Find: wrapped search, change in hotkeys
  • opt ui_one_instance
  • opt ui_stat_time
  • opt find_replace_with_find
  • read-only files open in r-o mode
  • fix: Bash lexer
  • dlg Find new look
  • opt find_indent_vert
  • opt find_indent_horz
  • opt ui_reopen_session, last files reopened
  • opt ui_title_path
  • opt ui_stat_center
  • opt color: tab active, inactive groups
  • opt find_sel_case
  • opt find_show_findfirst
  • commands: find selection next/prev
  • commands: focus group next/prev
  • commands: move tab to group next/prev
  • command: add comment at line start
  • lexer-prop dlg: remove Apply
  • api: app_proc
  • fix minimap dragging
  • api: get_prop
  • api: dlg_checklist
  • addons can install files to "data"
  • fix ctrl+shift+home/end
  • api: bottom panel (plugin Html Tidy at sf.net)
  • api: color dialog (plugin Color Picker at sf.net)
  • themed splitters

New in CudaText 0.8.0 (Sep 29, 2015)

  • Python API; if don't work (Py-console must show version) on Linux/OSX, play with option "pylib"
  • bottom-panel and Py-console in it: see wiki help topic
  • menu "Plugins"
  • plugin "Addons Manager"
  • plugin "Insert Time"
  • plugin "Make Plugin"
  • fixes

New in CudaText 0.7.0 (Sep 17, 2015)

  • syntax tree (F12)
  • gutter foldbar menu: "fold all", "unfold all", "fold level"
  • tab menu: new palette dialog
  • bookmks save in history
  • export to HTML
  • opt under_color
  • opt under_color_size
  • opt ui_tree_auto_sync
  • opt ui_tree_time_fill
  • opt ui_tree_time_focus
  • opt ui_initial_dir is renamed
  • opt export_html_*
  • cmd "fold level"
  • cmd "menu: lexers"
  • cmd "menu: encodings"
  • cmd "menu: line ends"
  • fix change encoding

New in CudaText 0.6.4 (Sep 7, 2015)

  • autocomplete: HTML support
  • autocomplete: php list looks nicer; works for lexer php_

New in CudaText 0.6.2 (Sep 7, 2015)

  • keys config: in "Help-Commands" dlg press F9
  • new format of str-lists in history.json

New in CudaText 0.6.1 (Sep 7, 2015)

  • auto-complete: CSS support
  • menuitem "Help-Wiki"

New in CudaText 0.6 (Sep 7, 2015)

  • support of Synwrite autocomplete .acp files. Synwrite files added.
  • cmd auto-complete Ctrl+Space
  • opt ui_listbox_complete_size_*
  • opt mouse_gutter_click_sel

New in CudaText 0.5.5 (Aug 31, 2015)

  • color editor: good names
  • key PopupMenu works

New in CudaText 0.5.4 (Aug 28, 2015)

  • color editor: "Settings - color theme", can save to file too
  • menu "Edit--Blank ops--Trim spaces"

New in CudaText 0.5.2 (Aug 28, 2015)

  • lexers in zip files can be installed. Open any zip via "File-Open": http://sourceforge.net/projects/synwrite-addons/files/Lexers/
  • lexer-lib now smaller 3x times (others at site SF.net)
  • tab menu: "Set tab color"
  • opt ui_tab_fullcolor
  • opt ui_tab_show_x
  • opt ui_tab_show_plus
  • opt ui_tab_2click_closes