SlickEdit 2022: What's New

Outlining

Outlining support includes:

  • The following outline styles are available:
    • Indent
    • Braces
    • Braces or brackets
    • Symbols(Pro Only-supports most languages), and Statements (Pro Only- supports many languages).
    • Statements(Pro Only- supports many languages).
  • The Indent style is typically a great alternative to the Statements outline style.
  • When using an outline style, selective-display is updated continuously.
  • Selective-display lines for each indentation level are now aligned vertically with the code block.
  • When mouse hovers over the start or end of a code-block, a popup will show the beginning and ending line, and a link to get there.

Outlining Preview and Expansion

    • Outlined symbols can be shown on the Document Overview Bar
    • Double clicking the - collapses the code block
    • Double clicking the + expands code block
    • Floating over a + shows the hiddden code block

Live Diff

Live Diff shows a comparison of the file you're editing with the version in source control while you keep editing.

  • Currently avaliable for Git.
  • You can configure which items to see:
    • Show colors in the margin of inserted or different lines.
    • Show icons in the margin of inserted or different lines in margin.
    • Color sections different lines.
    • Show deleted lines as lines that cannot be saved.

Git Enhancements

Features added to Git support:

  • Clone a repository.
  • Add a worktree.
  • Notifications when clone or worktrees are done.
  • Merge branches.
  • Add a tag.
  • Add a tag or worktree from the Repository Browser, History Diff, or History Dialog
  • Improvments and fixes to the Compare Directory/Project/Workspace with source control

Scala Debugger

  • Updated Scala debugger backend to improve performance and breakpoint handling.

FixUps

Fix-ups catch errors from your compiler and offer to fix them

Fix-ups support includes:

  • Misspelled identifier
  • Identifier not fold
  • Undeclared identifier
  • Missing semicolon
  • Missing comma
  • Correcting . to ->

Find Matching Braces Enhanced

SlickEdit's Find Matching Braces feature has been enhanced:

  • Ctrl+] command now supports tracing through compound if ... else if ... else ... and try ... catch ... finally ... statement sequences in brace-oriented languages like C and Java.
  • Ctrl+] command now supports tracing through switch ... { case ... default ... } statement sequences in brace-oriented languages like C and Java.

Horizontal Dynamic Surround

The dynamic surround you've learned to know and love now goes sideways!

  • Type an open paren, or start of an HTML/XML tag, and use the cursor keys to surround text on that line.

Enhanced Configuration Searching

Enhanced Configuration researching includes:

  • Searching for a config item now only shows it for the current language (by default)

Rust beautifier

  • Specify indent amounts.
  • Specify brace styles.
  • Optional beautify while typing.
  • Optional beautify while pasting.

Code Annotation Enhancements

Enhancements to SlickEdit's Code Annotations feature includes:

  • Multi-line annotations are colored in the margin and Document Overview bar as multiple lines.
  • Added new "Repeat Annotation" feature to create a new annotation of the same type as the previous annotation created.
  • Added new "Annotation Only" built-in annotation type with no fields, and thus no dialog to fill in when creating it.
  • Using these two new features together makes it possible to create a new annotation with a single click.
  • Added capability to create multi-line annotations if there is an active selection.
  • Added capability to specify a prefix color like sticky notes for code annotations.

More Features in SlickEdit 2022

Code editing

  • Added new "ifelse" syntax expansion trigger to expand an if ... else statement for most languages.
  • Added new syntax expansion option to prioritize common statements to avoid prompting for which keyword to expand when there are multiple matches.
  • Added options to control what cursor movement keys are taken over by Dynamic Surround.
  • Added code to trigger Horizontal Dynamic Surround when inline HTML or XML tags are auto-closed.
  • Added Auto-Close option to disable Horizontal Dynamic Surround.
  • Enhanced Auto-Close option for HTML and XML tags.

File support

  • Added File>Set File Attributes... menu item which allows you to set file attributes/permissions for the current file. For command line lovers, the chmod command has been enhanced to automatically assume the current buffer if no files are specified. For example, chmod u+x sets user execute permissions for the current file.
  • Added color coding for File Manager mode
  • Added separate colors settings for File Manager mode

    Emulations

    • The select-whole-word command is now bound to C-W in CUA, ISPF, and BBEdit emulations.

Tagging

  • Drag and drop Symbols from Tool Windows:
    • Supported in Defs, Symbols, Class, and Find Symbol tool window.
    • Allows dragging and dropping a symbol name from the list into an editor window.
    • You can also drag the second column to pull out the class name.
    • Also, you can drag from the left margin to copy the entire tree node caption.
  • When SlickEdit displays documentation comments (JavaDoc or XMLDoc), there are now additional links so that you can jump to the definition of the symbol's return type and cross-reference tags (like @see).
  • Added new option for function parameter help (when invoked manually using Alt+Comma) to attempt to find the best-matching function prototype for overloaded functions.
  • Added new command (function-argument-help-filter-overloads) which attempts to finds the best-matching function prototype for overloaded functions.
  • Added new key binding (Shift+Alt+Comma or Shift+Command+Comma) to invoke function-argument-help-filter-overloads in all emulations.
  • Added new key binding (Shift+Alt+Dot or Shift+Command+Dot) to invoke push-tag-filter-overloads in all emulations.
  • Added new command (push-tag-return_type) to jump to the definition of the return type of the symbol under the cursor.
  • Added new key binding (Ctrl+Shift+Alt+Dot) to invoke push-tag-return_type in all emulations.
  • In C++ code, if there cursor is on "auto", make Ctrl+Dot jump to the return type of the variable being declared
  • Added XML outline scheme for XHTML

  • Automatically detect Windows 10 Dark app mode and use our Dark theme.
  • Improved Dark application color theme scroll bar colors to make it more visible.

New Languages and Language Enhancements:

SlickEdit's best in class features are now available in the following languages:

Julia

Julia support includes:

  • Color Coding.
  • Smart editing features include smart indenting, SmartPaste®, and reindenting on Tab.
  • Build with a project, or a build with a single file without a project.
  • Defs tool window lists tags and supports displaying statements.
  • Partial support for Context Tagging™.
  • Interactive REPL support (Read-Eval-Print-Loop).
See more on Julia here.

Terraform

Terraform support includes:

  • Color Coding.
  • Smart editing features include smart indenting, SmartPaste®, and reindenting on Tab.
  • Defs tool window lists tags and supports displaying statements.
See more on Terraform here.

Dart

Dart support includes:

  • Color Coding.
  • Defs tool window lists tags and supports displaying statements.
  • Build with a project, or a build with a single file without a project.
  • Partial support for Context Tagging®.
  • Interactive REPL support (Read-Eval-Print-Loop).
  • Real time error support.
See more on Dart here.

TypeScript Beautifier

  • Change indent, brace style, spacing.
  • SlickEdit's TypeScript Beautifier offers fine grain control of every corner of your code.

C++ and Objective-C Enhancements

  • Context Tagging® supports new syntax introduced in C++20.
  • Support for tagging Objective-C function blocks.
See more on C++ here and Objective-C here.

Project Support Enhancements

  • Improved Visual Studio wildcard project support (i.e. csproj). Now automatically updates Project tool window, tag file, and file list in the background. No need to explicitly Refresh the Project tool window and/or rebuild the tag file.
  • When adding new files to the project, no explicit filenames are added to the project if they match existing wildcards.
  • Improved updating when new files matching wildcards are added while outside of SlickEdit.
  • Improvements to cache that affect startup time.
  • The wildcard cache is generally updated in the background.

Improved New Project Dialog

  • Project > New... will set the project working directory if the source tree added differs from the project directory.
  • Project > New... dialog adds ability to directly add a tree of source files, recursively or as a wildcard.
  • Project > New... dialog is now resizable.

Tagging Enhancements

  • New History category added to Auto-Complete which shows recent and frequently used completions you have used in the current scope.
  • Auto-Complete now supports suggesting completions for keywords and symbols you have made minor typos in.
  • Key parts of the Auto-Complete engine have been rewritten in native C++ for better performance
  • Added support for tagging source files in compressed tar archives.
  • Added symbol-info-help command to bring up symbol information like mouse-over does for symbol under cursor (Ctrl+Alt+Comma)
  • Added two commands to tune and debug performance issues.

Highlight Tool Window

  • Allows you to quickly add words, strings, or regular expressions to highlight
  • Allows you to define multiple Highlight profiles
  • Allows you to select several style options for how to do the highlighting
  • Word patterns can be case-sensitive, case-insensitive, or language dependent
  • Word patterns can be restricted to a particular language mode
  • Works seamlessly with very large files
  • Uses extended color palette which adapts to the current color profile
  • Has option to show scroll bar markup for highlighted items.

Fonts

  • Added per-language configuration for editor, minimap, and diff font and size
  • Improved Appearance > Fonts configuration dialog
  • The Window > Font... dialog is now resizable
  • Font ligature support added for Windows 32-bit
  • Font ligature support added for Linux 64-bit (Qt5 version only,Request Qt5 Linux installer)

Version Control Enhancements

  • Diff now built into Compare Workspace/Project/Directory with version control.
  • Shelving now supports adding a file to any existing shelf file, not just the ones listed in the menu.
  • Version Control > System Setup has been completely re-worked. It is now much easier to set version control systems for default, the current workspace, or the current project
  • Git now has a Checkout dialog that will let you choose from locally available branches, or listing remote branches. Also Git support for the following added
    • Stash and Stash Pop
    • Pull
    • Push
    • Blame

Colors

  • Add ability to have a color scheme inherit settings from a predefined color scheme.
  • Added new color schemes: Charcoal, Ash, Stone, and Onyx
  • Added ability to change color profile per-buffer (Window > Color...)
  • Added ability to change color profile for mini-map per-buffer (right-click in mini-map > Color...)
  • Added per-language configuration for editor and minimap color profiles
  • Enhanced Color dialog to preview all colors in the list of colors
  • Added setting to Color dialog for default mini-map color profile
  • Improved code for resizing the Color configuration dialog
  • Added ability to import color themes from Visual Studio, Xcode, VSCode, and Eclipse

Symbol coloring

  • Each color profile now has colors defined for symbol coloring rules. This mitigates the need for a relationship between color profiles and a compatible symbol coloring scheme, as all built-in symbol coloring schemes are now compatible with all built-in color profiles.
  • Each color profile also has a palette of symbol coloring colors, selected as color-safe foreground colors tuned to the background canvas color of each color profile. These can be used when adding new symbol coloring rules instead of defining colors directly in the symbol coloring scheme (which may or may not be compatible with all color profiles).
  • Improved code for resizing the Symbol Coloring configuration dialog.
  • Add option to "Override Library Symbols" so that identifiers normally color coded as "Library Symbol" or "User Defined Keyword" can be colored by Symbol Coloring if their definition is found by Context Tagging.

F1 Edit Window Help Enhancements

  • When you press F1 on a function name or member name, SlickEdit will attempt to determine the package/namespace/class that the current word belongs to. The class (possibly with namespace/package) is added to the search URL so you are much more likely to get help on the right member. This is very helpful for highly typed languages like C#, Java, and C++.
  • For Windows, SlickEdit has defined over 22,000 help actions for the Win32 API for C/C++. This covers most of the Win32 API.
  • Custom help URLs can be configured per Language. Multiple URLs can be configured based on what is found at the cursor.

More Features in SlickEdit 2021

C++ Enhancements

  • Numerous improvements to Objective-C context tagging.
  • Added Advanced C/C++ Advanced Option to treat nested structs like they are scoped in ANSI-C. This can help when working with mixed code.

Improved Quick-Start project wizard

    • Quick-Start configuration lets you directly open projects or workspaces from other tools.
    • Project > Open Workspace... adds a new smart dialog to help you discover that SlickEdit can open projects and workspaces from other tools.

    Find and Replace

    • Improved ability to cancel a foreground search/replace. If your search is taking too long, press any key and you will be prompted to cancel. This works great for very slow regular expressions.
    • Improved ability to cancel a foreground multi-file search/replace. If your search is taking too long, press any key and you will be prompted to cancel. This works great for very slow regular expressions.

    Color Coding Engine Improvements

    • Previously, you could only specify the color for the entire start and/or end text that was matched. Now you can specify multiple colors using match groups and/or offsets and lengths.

Python Enhancements

  • Updated run-time tag file to Python 3.9.1.

Swift Enhancements

  • Interactive REPL support (Read-Eval-Print-Loop)

Files

  • Open tool window now has an option to show indicators to show which files which are read-only on and writable disk.

Application Theme

  • Automatically detect Windows 10 Dark app mode and use our Dark theme.
  • Improved Dark application color theme scroll bar colors to make it more visible.

Printing

  • Added ability to select a color profile for printing.
  • This makes it easier to print color or grayscale even if you are using an editor color profile with a dark background.

General

  • Open tool window now has an option to show indicators to show which files which are read-only on and writable disk.
  • Much improved touch scrolling and touch support.
  • By default, when creating a new file without specifying a filename sets the filename to something like "Untitled YYYY-MM-DD". You can turn this new feature off. This makes it easier to identify Untitled files and use backup history. Also this allows you to save untitled files without specifying a name. If you close or rename (Save As) an Untitled file, the temp file will be deleted if necessary.
  • Added $<VarName> color coding for strings which supports them (PHP, PowerShell, Kotlin, Scala, Perl, Dart).
  • Improved multiple clipboard support. When you copy text to the clipboard, if the current clipboard is a text clipboard created by another application, that system clipboard is added to the multiple clipboards before your clipboard is added. This allows you to get back to older clipboards created outside of SlickEdit.
  • Windows: Added support for pasting FileNameW format clipboard as text. This allows you to use Ctrl+C on a filename in the Windows File Explorer and then paste it into SlickEdit.
  • Linux: Improved launcher support. Better support for Gnome launcher. Added menu item to create another instance of SlickEdit. Added commands for quickly editing the various .desktop launcher files (edit_desktop_shortcut, edit_app_shortcut, edit_diff_app_shortcut).
  • Find File (not to be confused with Find in Files) now supports matching files, directories, or both.
  • Improved multiple instance support. Added -sid <instance-id> invocation option which allows you to specify a specific instance. No instance id specifies the most recently activated instance.
  • Bookmarks will now attempt to restore the window the bookmark was set in when using One file per window mode. The Bookmark window id is saved and restored when you restart SlickEdit.
  • Added Softwrap line break cache. This helps scrolling performance in situations where there are long lines that are softwrapped.
  • Window > Font selection form is now resizable.
  • When using multiple cursors, the Tab key can now be used to align multiple lines of text at a common tab stop, making it very easy to align tabular data.
  • The copy-to-clipboard command (Ctrl+C) will now detect if there is no selection and the current line is the first line of a block statement, and prompt if you want to copy the entire block, just the current line, or the outer-most surrounding statement. This feature closely mirrors the behavior when using the cut-line or delete-line commands on the first line of a block statement, where you are prompted to just delete the current line, delete the entire block, or unsurround the block.
  • New copy-code-block command can be used with the cursor on the first line of a code block to copy the contents of a code block to the clipboard.
  • New copy-surround-block command can be used with the cursor on the first line of a statement block to copy the outer-most surrounding statement. This statement can then be pasted automatically triggering Dynamic Surround mode. It is also a very simple way to copy and paste an outer statement.
  • XMLDoc comment expansion will skip <returns> for classes, packages, constructors, destructors, and functions with void return types.
See the full list of new features.

SlickEdit 2020: What's New

Debugger

Debugger enhancements include:

  • Python debugger now uses PTVSD for backend
    • Now supports conditions and counts for breakpoints
    • Better handling for debugging with deep call stacks
  • Toggle breakpoint command now supports multiple cursors
  • Added options to display floating point numbers as scientific, floating point, or normal layout
  • Increased precision when displaying double precision (64-bit) floating point numbers in the debugger
  • Added options to display strings with UTF-8 characters natively, or using character escapes

Tagging

Tagging enhancements include:

  • Sub-word pattern matching for symbol completion. This allows symbol completion to find symbols which match on subwords, for example, the pattern "house" might match symbols such as "HouseKeeping", "DogHouse", "GetHomeUserName", or "HotOmeletsUsingSummerEggs"
  • New command line option "-autotag" to vsmktags for building compiler tag files for C/C++, Java, and .NET
  • The tagging database can now store documentation comments gathered from source code. This makes displaying comments in the Preview tool window, Function Argument help, and List Members faster
  • Improved performance building large tag files using background tagging, especially when writing to slower devices

Find Symbol Tool Window

Find Symbol Tool Window enhancements include:

  • Sub-word pattern matching for symbol completion. This allows symbol completion to find symbols which match on subwords, for example, the pattern "house" might match symbols such as "HouseKeeping", "DogHouse", "GetHomeUserName", or "HotOmeletsUsingSummerEggs"
  • Stop button allowing you to stop long-running searches
  • Find Symbol tool window now has separate columns for symbol name and the symbol's package/class scope
  • New Option to search symbols based on their full package/class name and symbol name rather than just the symbol name

Git

Git enhancements include:

  • Improved git repository browser
  • Integrated push and pull dialogs
  • Improved GUI Compare Workspace/Project/Directory with repository

DIFFzilla®

DIFFzilla enhancements include:

  • New simplified setup dialog. Is it a file name, or a folder name? Just type it in and DIFFzilla will figure it out. There's also completion and a menu to select files, folders, or buffers (even unnamed ones)
  • Icons added in margin to copy blocks of text back and forth

C# Quick Refactoring Enhancements

C# Quick Refactoring Enhancements include:

  • Added support for Modify Parameter List Quick Refactoring for C#

Sharing a configuration between multiple instances of SlickEdit

  • SlickEdit now supports running multiple instances which share one configuration directory
  • For example, if you start two instances of SlickEdit and change your edit window color profile, in one, when you switch to the other instance the color profile will be updated
  • Use Project>Organize All Workspaces... to launch a new instance of SlickEdit with the selected workspace. This makes it easy to launch two different instances of SlickEdit and open a different workspace in each
  • You can use an additional instance of SlickEdit for a quick edit or use SlickEdit as the Git comment editor. There's no need to maintain multiple configuration directories

New Interactive Tool Window

  • Runs one or more interactive shells
  • Interactive shells are preconfigured for many languages including Clojure, CoffeeScript, C#, Groovy, Haskell, Lua, PHP, Perl, PowerShell, Python, R, Ruby, and Scala
  • Configure your own custom interactive shell
  • Ctrl+Alt+Enter (Ctrl+Command+Enter on Mac) loads current line or selection into the associated interactive shell

New Terminal Tool Window

New Terminal Tool Window support includes:

  • Run one or more terminal tabs in a tool window
  • Supports running build tools, grep tools (SlickEdit comes with an sgrep tool if you do not have one), and traversing the error messages with SlickEdit's existing Next Error and Prev Error functionality. Press Alt+1 (in most emulations) to select the terminal or build window you want to process Next Error and Prev Error commands
  • Command completion is saved/restored across sessions
  • Commands are available to activate the Terminal tool window start a new terminal tool window with a key press

Project enhancments

Project enhancments include:

  • Support for dropping files into the Project tool window
  • Added option for manual ordering of project files in the workspace

File enhancements

File enhancements include:

  • New Rename File Support
    • Changes name and/or path to file
    • Rename added to Document tab context menu and Open tool window context menu
    • Renames references to file in project files, Backup History, and File menu history
    • Rename added to Project tool window file context menu. Supports third party workspaces such Visual Studio solution projects
    • Rename project added to Project tool window project context menu. Allows you to rename a project file
    • Rename workspace added to Project tool window workspace context menu. Allows you to rename the workspace
    • Rename command to change the current file can be bound to key
  • New Rename Directory Support
    • Changes name and/or path of directory
    • Renames references to original directory in Backup History and file menu history
    • Rename directory added to Open tool window context menu
  • Added support for opening files in xz format and compressed tar files (.txz and .tar.xz)
  • Added support for opening files in bz2 format and compressed tar files (.tbz2 and .tar.bz2)
  • Recognized Zip extensions are now configurable (Tools>Options>File Options>Open)
  • Added auto reload support for files opened from zip, tar, gzip, and plugin containers

Find and Replace

Find and Replace enhancements include:

  • Added "Find in Files threads" option for specifying number of threads used for multi-file searching
  • The Find in Files filename output order is now listed in the same order as the file system
  • The "Sort Find in Files search results by filename" option now supports threaded searching after files are listed and sorted
  • Added color output support to standalone sgrep

Appearance enhancements

Appearance enhancements include:

  • When you right click on a tool window tab group / title bar to bring up the tool window menu. If you select a tool window to open, it will dock with the tab group you clicked on
  • Better support for dark mode on macOS
  • The tool window menu now shows check marks for which tool windows are active, and there is a new option to toggle a tool window hidden when it is selected from the menu

Editing enhancements

Editing enhancements include:

  • Added new edit style option called "Show extra line after last newline" (off by default). When on and the last line of the file has a newline, an extra line is displayed. When on, newly created files will start with a single line that is not terminated with a newline.
  • Added option to disable Ctrl+Click creating multiple cursors

New Languages and Language Enhancements

SlickEdit's best in class features are now available in the following languages:

Jinja

Jinja support includes:

  • While Jinja is typically used in Yaml or HTML files, you can add Jinja embedded color coding support to almost any language SlickEdit supports
  • New toggle_jinja_color_coding command enables/disables Jinja embedded color coding for the language type of the currently edited file. This only supports color coded files
  • The Languages tab of the color coding dialog has a new Jinja Settings button which allows you to enable Jinja embedded color coding and modify some Jinja settings

Laravel Blade

Laravel Blade support includes:

  • While Blade templates are typically used in PHP files, you can add Blade embedded color coding support to almost any language SlickEdit supports
  • New toggle_blade_color_coding command enables/disables Blade embedded color coding for the language type of the currently edited file. This only supports color coded files
  • The Languages tab of the color coding dialog now has a new "Blade" check box which allows you to enable Blade embedded color coding

Forth

Forth support includes:

  • Color coding
  • Simple tagging

PowerShell enhancements

PowerShell enhancements include:

  • Support for Interactive shell using the Interactive tool window
  • Updated color coding to latest language specification
  • Improved smart indenting
  • Added support for SmartPaste®
  • Added support for Tab key reindenting

Markdown enhancements

Markdown enhancements include:

  • The Defs tool window now lists Markdown headings so you can quickley navigate to them
  • Added Markdown-GitHub color coding profile which more closely color codes like GitHub's Markdown support
  • The default Color Coding profile for Markdown has been set to Markdown-GitHub but you can change to Markdown if you prefer
  • Added support for strikeout color coding. Markdown-GitHub uses ~~strikeout~~ syntax

More Features in SlickEdit 2020

Java Context Tagging Enhancements

  • More support for record type tagging
  • Better support for Java's try-with-resources statment
  • Various bug fixes

General

  • Improved performance of build output, particularly on Unix and macOS
  • Added option to disable Ctrl+Click creating multiple cursors
  • File completion on Unixes now case insensitive by default. Those of you with mixed case filenames that also use the command line will really like this

Vim Emulation Improvments

  • Improved VIM regex emulation to more closely emulate handling of \r and \n in search or replace string
  • Added increment/decrement number to Ctrl+A and Ctrl+X for command and visual mode.
  • Added support for appending to block/column selection in visual mode.
  • Tweaked fill column/block selection to work more like Vim and not fill when too far past the end of a line by default.

Ada Enhancements

  • Support for gprbuild

Printing Enhancements

  • Printing color coding now supports font styles such as bold, italic, underline, and strikeout. This is very useful if you print a Markdown file

Unix/Qt open dialog improvements

  • Ctrl+C - If File name: text field has focus and no text selected, copies the Look in: text to the clipboard.
  • Ctrl+C - If Look in: combo has focus, copies the Look in: text to the clipboard.
  • Alt+P - Sets File name: text to the Look In: text


SlickEdit 2019: What's New

Language support

SlickEdit's best in class features are now available in the following languages:


Already strong support for the following languages has been enhanced:

Clojure

Clojure support includes:

  • Color Coding
  • Smart editing features include smart indenting, SmartPaste®, and reindenting on Tab.
  • Project build support
  • Single file project build support - This feature allows you to create a program in a single file and build and execute it without creating a workspace
See more on Clojure here.

TypeScript

TypeScript support includes:

  • Color Coding
  • Smart editing features include SmartPaste®, smart indenting, word completion, and Auto-Close

See more on TypeScript here.

Yaml

Yaml support includes:

  • Color Coding
  • Smart editing features include auto indenting, word completion, and Auto-Close

See more on YAML here.

Erlang

    Erlang support now includes:
    • Tagging
    • Statement tagging
    • Function argument help

See more on Erlang Support here.

Tagging

    SlickEdit has continued to enhance the best tagging available. Enhancements include:
    • Added capability to References tool window to filter references to variables to only show statements where the variable appeared to be assigned to. Note, this does not recognize cases where a class instance calls a non-const method, or cases where a variable is passed to a function by reference.
    • Added capability to References tool window to filter references to variables to only show statements the symbol is used in a 'const' or 'non-const' context.
    • Added "Expand To Statements" feature to Defs tool window. This feature works when "Show Statements" is enabled and, by default, will only expand the tree up to functions rather than expanding all statements for all functions.
    • Added "Auto Collapse" feature to Defs tool window to close automatically expanded tree nodes after you navigate away.
    • Added menu button and label to References tool window to indicate if symbol type filters are in effect. Redesigned filtering so that changing symbol types filters is nearly instant.
    • Added vertical orientation option to References tool window so that the references preview can be stacked beneath the list of references.
    • Add "Look in:" option to Symbols tool window to only show a subset of the available tag files.

Debuggers

    SlickEdit now boasts integrated debugging for over 11 languages. New for 2019 are:
  • Kotlin
  • Android

Other debugger improvements:
  • Update GDB to latest version 8.13
  • For 32-bit compatibility on Windows, SlickEdit now packages a 32-bit GDB (gdb32.exe) with 64-bit SlickEdit.
  • Fixed activation problems with Debug memory tool window.
  • Fix bug when attempting to modify memory in the memory tool window for 64-bit apps.
  • Update LLDB support library to 4.0.1

For more about SlickEdit's Debuggers click here.

See more on Kotlin here.

Android

    Android support includes:
  • Support for building newest SDK/NDK levels
  • Creating Android projects
  • Support for debugging

DIFFzilla®

Enhancements to DIFFzilla® include:

  • Multi-file diff is now multi-threaded by default. This is two to three times faster
  • More speed improvements
  • Various output optimizations
  • You can now create a shelf from multi-file diff
See more on DIFFzilla here.

More Features in SlickEdit 2019

C++ Enhancements

  • Improved preprocessor engine to correctly handle more sophisticated #define macro expansion cases

XML Enhancements

  • When completing start tags in XML, if there is DTD or Schema information available, the list of start tags will be narrowed down to just the tags in the content model for the parent element

Markdown Enhancements

  • Added support for nested emphasis (i.e. _start italic __Bold__ end italic_)

Project Support

  • Support for Visual Studio 2019 projects.
  • Support for drag/dropping a directory onto SlickEdit to create a new project and/or add tree of source to the active project.
  • Support for drag/dropping files or directories onto Project Properties Files tab to add files or a tree of source to the active project.
  • Support for building with an automatically generated makefile using parallel builds (make -jobs=N).
  • Support for building project dependencies in parallel when building automatically using vsbuild
  • Support for invoking compilation commands in parallel when building automatically using vsbuild
  • Automatically generated Makefiles now include header file dependencies for files in current project

Find and Replace

  • Search Results tool window context menu supports sending the results to the References tool window with the new "Send to References" menu item.

Appearance Enhancements

  • Added font ligature support on Windows (64-bit windows only). macOS version already has font ligature support.
  • Build window now supports color escape sequences. For example, "g++ -fdiagnostics-color=always myfile.cpp" or "clang++ -fdiagnostics-color=always myfile.cpp" will display colored error messages in the Build window. Cursor movement and non-color escape sequences are not supported. For Unix and macOS, using SoftWrap in the Build Window disables support for bold, italics, and underline.

Version Control

  • Add History Diff links to Subversion Repository Browser
  • Make comment panel on Subversion Repository Browser more readable
  • Make branches more readable in Git Repository Browser

File Handling

  • Added right-click context menu item to Document Tabs to get a listing for the directory containing the current file.
  • File > Open URL... now supports HTTP redirection
See all the videos for SlickEdit 2019.

SlickEdit 2018: What's New

Minimap

A minimap overview of the document, with options for zoom, hover over preview, zoom level, and more.

Language Support

Best in class features are now available in the following languages:

  • Kotlin
  • R
  • Google Protocol Buffer Language

Strong support for the following languages has been enhanced:

  • C++
  • C#
  • Java
  • Scala
  • Groovy
  • System Verilog
  • Python
  • Ada
  • Markdown

Kotlin

Kotlin support includes:

  • Color Coding
  • Context Tagging®
  • Smart editing features include smart indenting, SmartPaste®, and reindenting on Tab.
  • Project support

See more on Kotlin here.

R

World class support for R includes:

  • Color Coding
  • Context Tagging®
  • Smart editing features include smart indenting, SmartPaste®, and reindenting on Tab.
  • Project support

See more on R here.

Google Protocol Buffer Language

Support for Google Protocol Buffer Language includes:

  • Color Coding
  • Context Tagging®
  • Smart editing features include smart indenting, SmartPaste®, and reindenting on Tab.

See more on Google Protocol Buffer Language Support here.

C++

Enhanced C++ support includes:

  • C++11 lambda expressions are now parsed correctly.
  • Improved Context Tagging and Symbol coloring for constructor initializer lists, especially C++11 delegating constructors.
  • Changed option to automatically process #defines within the current file to be off by default.
  • Added option (off by default) to pull #defines from current project configuration and use them as if they were defined in the C/C++ Preprocessing options.
  • Added auto-complete suggestions for C/C++ string escape sequences (backslash).
  • Added auto-complete suggestions for C/C++ printf format specifiers (percent).
  • Improved handling of C++ namespace aliases.
  • C++17 support for the following:

    • u8 character literal
    • Hexadecimal floating point literals
    • fold expressions
    • template <auto>
    • constexpr if
    • selection statements with initializers
    • constexpr lambdas
    • lambda capture of *this
    • inline variables
    • structured bindings
    • byte type

  • Fixed parsing of C++ parent class specifications when parent class is qualified with a leading ::
  • Improved parsing and context tagging for C++11 user-defined string literals.
  • Fixed parsing for C++11 universal initializers using braces in constructor initializer lists.
  • Fixed parsing of C++11 template arguments when template argument name is omitted.

Visual Studio 2017

  • Support for Visual Studio 2017 .NET Core projects.
  • View project file in Project tool window and project templates for building with dotnet command line tool instead of msbuild.

Mono

  • Support for Mono single and multi-file projects for C#, F#, and Visual Basic.
  • Integrated Mono debugging

Debuggers

SlickEdit now boasts integrated debugging for over 11 languages. New for SlickEdit are:

  • Scala Debugger
  • Mono Debugger

DIFFzilla®

Enhancements to DIFFzilla® include:

  • The diff engine has been rewritten to be faster. This provides faster backup history and diffs. Some cases are many times faster. Diff much larger files and get better performance.
  • Undo information is retained after a diff.

Stackable References Tool Window

References in SlickEdit are now stackable. So if you get references on A, and then as you cycle through those references get references on B, when you pop the B references off the stack, you are still where you left off in your A references and you can continue. You can show each reference level with a different color.

You can also see the stack on the tool window.

More Features in SlickEdit 2018

Java

  • Gradle build support. New project template has been added for creating a Java project which builds using gradle.
  • Improve performance of namespace import handling.
  • Add context tagging support for Java 10 local variable type inference.

Scala

  • New Debugging Support
  • Now supports Gradle projects with multiple subprojects.
  • Improved smart indenting
  • Added support for insert braces immediately and dynamic surround.
  • Added quick brace/unbrace support.

Groovy

  • Now supports Gradle projects with multiple subprojects.
  • Improved smart indenting
  • Added quick brace/unbrace support.

Vim Emulation

  • New option for using Vim syntax regular expressions
  • Added support for Auto deselect on cursor movement option for CUA selections. For example, creating a non-Vim-like selection with Shift+Arrow keys and then moving the cursor will deselect if the option for it is set (it's on by default).
  • Added support for "Leaved selected" search option. Supports '/' command and some others.
  • Added support for di", da", di', da', di`, and da` as well as other quoted string operations.

Binary Files

  • Unknown files which appear to contain binary data use the "Binary" language mode.

Tagging

  • The References tool window is now stackable, making it possible to navigate through multiple sets of referencing search results easily.
  • The Defs tool window and Class tool window now support options to jump to symbol on a single click.
  • And many more

System Verilog

  • Improved support for interface modport parameter tagging
  • Improved error recovery for incomplete declarations when tagging

Python

  • Debugger performance improved especially for deep call stacks (like recursive functions).

Ada

  • Improved Enter and Space smart indenting for begin/end handling.

C#

  • Updated parsing to C# 6.0 Specification and fixed many Context Tagging bugs.
  • Enabled statement-level tagging for C#.
  • Statement-level tagging now parses Linq query expressions.
  • Anonymous functions and delegates are now parsed correctly.
  • Anonymous structs/tuples are now parsed correctly.
  • And many more

Auto Restore

  • Option for storing tool window/toolbar/window layouts per monitor configuration. For example, if you have two machines with different numbers of monitors and/or different resolutions, the auto restore data is stored for each monitor configuration.

Files

  • Added File > Save Copy As... menu item for saving a copy of the current file without changing its name.
  • Added support for opening files in Unix cpio files (.cpio), compressed cpio files (.cpgz), and Linux RPM files (.rpm).

Find and Replace

Comments

  • JavaDoc comment alias generation now correctly supports template parameters using <typeparam>
  • XMLDoc comment alias generation now correctly supports template parameters using @param <argName>
  • JavaDoc and XMLDoc comment editors now support template parameters.
  • Update Doc Comment context menu now correctly supports template parameters.

Visual

  • Added font ligature support on macOS.
  • Improved logic for auto-detecting Retina displays on macOS.

General

  • Line endings and encoding are now displayed in status line.
  • New checking for inconsistent line endings feature. Supports making the line endings consistent. You can turn it off and use the check_line_endings command Edit>Other>Check Line Endings when you want to check the current file.
  • Hex view now supports specifying the number of columns and the number of bytes per column on a per language basis. hex command now supports optional number of columns and bytes per column specifications (i.e. hex [NofCols [BytesPerCol]]). Auto-restore will restore these new settings.
  • Better smart enter support for nested unbraced control flow blocks for C++, C#, Java, Object-C, Rust, and D.

See all the videos for SlickEdit 2018.

SlickEdit 2017: What's New

New Language Support

SlickEdit has brought its best in class features to three new languages for SlickEdit 2017:

  • Scala
  • Rust
  • Less

Scala Support

SlickEdit's world class features have come to Scala. This includes:

  • Color Coding
  • Context Tagging®
  • Beautifier
  • Smart editing features including beautify while typing
  • Project support. SBT build support.
SlickEdit now has a beautifier for Scala. In fact, SlickEdit has more beautifiers than any other commercial product.

Like most of the languages SlickEdit supports, there is smart editing. For Scala, there is beautify while typing.

Like most languages SlickEdit supports, there is Context Tagging®.. There is also project support with SBT build support.

See more on Scala here.

Rust Support

SlickEdit also now has complete support for Rust. Rust features include:

  • Context Tagging®
  • Color Coding
  • Smart editing features including smart indenting, syntax expansion, dynamic surround, and SmartPaste®
  • Multi file and single file Project support
  • Directly open existing Cargo.toml files and a SlickEdit workspace/project will automatically be created.
  • Debugging
    • SlickEdit's integrated GDB debugger is used on Linux.
    • On Windows, SlickEdit supports launching Visual Studio .
    • On macOS SlickEdit's LLDB debugger is used.
See more on Rust here.

Less Support

SlickEdit now has support for Less. The features include:

  • Color Coding
  • Context Tagging®
  • Smart editing features including smart indenting and SmartPaste®

See more on Less here.

For more on SlickEdit's tagging features click here.

Improved JavaScript Support

As languages evolve, and SlickEdit must evolve to support them. SlickEdit 2017 has many enhancements to its JavaScript support.

  • Support for new ES6 features
    • Color Coding
    • Symbol Coloring
    • Context Tagging
    • Beautifier/Smart editing, including beautify while typing
  • Improved JSON beautifier support.

Improved CSS support

  • Improved Color Coding.
  • Improved Context Tagging®.
    • Comma delimited selectors are tagged separately.

Visual Basic Beautifier

We have been saying it for years now: beautiful code is a right, not a privilege. This is why SlickEdit has more beautifiers than any other commercial product.

Now SlickEdit's best in class beautifiers have come to Visual Basic. This includes the fine grained control of your source code that all of our beautifiers offer.

This is in addition to the existing beautifiers for C++, Objective-C, Java, C#, Python, JavaScript, VBScript, PHP, HTML, XML, SystemVerilog, Scala, Verilog, Ada, and Slick-C.

Appearance Enhancements

  • New Dark Theme
    • Overrides operating system theming
  • New large icon size options for hi-res small screens (i.e 4k <=17" notebooks)
  • Four new edit window dark background color profiles
  • Edit window color profiles are categorized into light and dark for easier selection
  • Improved many of the edit window color samples
  • When editing a color coding profile, click on a color coding element in any edit window to select that element
  • Replaced color chooser dialog with Qt color chooser dialog and enabled ability to save custom colors.
  • New Toolbar and Tool Window Icons
    • New Extra-Large size option for toolbar icons.
    • New size options for tool window tab icons and tool window tree/list bitmaps
    • Default icon set uses low-color simplified bitmaps to make toolbars less visually distracting
    • Six toolbar icon styles to choose from, including two-tone and monochrome icon themes
    • Icons automatically adapt to application theme dark background color.
    • Improved alpha-channel blending for smoother rendering of toolbar and tool window icons.
    • Improved tool window options and toolbar customization dialogs.

New More Powerful Color Coding Engine

  • Support for regular expressions. Begin/end constructs may be defined with tagged expression replacements in the end.
  • Support for adding custom embedded language constructs
  • Support for multiple levels of embedded language
  • Support for specifying nested color coding elements. For example, define keywords which are only recognized inside a specific comment.
  • Add XML literal color coding support with a simple check box (like Scala and Visual Basic)
  • String constructs much more configurable. No longer limited to a small set of predefined constructs.
  • Improved numeric color coding support including configurable suffixes, hexadecimal floating point, digit separator, and more. Can also add custom regular expressions.
  • Added more color coding elements to improve color coding for CSS and Markdown.

Tagging

  • Symbol completion (using Ctrl+Space) now supports several styles of symbol correction for common typographical errors.
    • Transposed characters. For example, Ctrl+Space after "Exceptoin" will replace the symbol with "Exception".
    • Missing characters. For example, Ctrl+Space after "termnater" will replace the symbol with "terminator".
    • Duplicated characters. For example, Ctrl+Space after "strcppy" will replace the symbol with "strcpy".
  • Separate Symbol Properties tool window and Symbol Arguments tool window.
  • Added option to restrict symbol matches to current workspace or current project for Go to Definition.

Backup History

  • Backup History file format changed to improve performance and reduce disk space.
  • Support for backing up larger files (Default is now 20MB).
  • Large files being backed up will save faster.
  • Backup History dialog starts faster.
  • Most recent backup file is stored separate from the backup archive which allows you to view and diff it more easily.
  • By default, Backup History data is now stored in the unversioned config directory (parent of versioned config directory). This means if you delete your versioned config directory, you won't be deleting your backup history. Also, future versions of SlickEdit will be able to share the same backup history files.

More Features in SlickEdit 2017

Project Support

  • Support for opening Visual Studio 2017 solutions
  • Added ability to configure different beautifier profiles for different source trees. For example, if you want c:\source to use different beautifier profile settings than your default, create a .seeditorconfig.xml file using Tools>Beautify>Beautifier Profile Overrides...

New File System Support

  • Support for reading .gz files without decompressing them first
  • Added "Decompress .gz files on open" option. On by default for new configs but will be off for upgraded configs.
  • Support for listing and reading files in .tar files. Only supports newer tar format.
  • When multi-file searching, the "Look in zip/word/excel files" check box also supports .tar and .gz files.

Options Dialog

  • Speed of searching in options dialog greatly improved.
  • Added "Restore Default Options..." button to Export/Import Options in Options dialog.
  • Added ability to collapse navigation panel of Options dialog to save space.

Keyboard

  • Added support for key bindings using Windows shift key combinations for Ubuntu.

Mini Find and Replace dialog

  • Ctrl+Tab can be used to switch between find and replace dialogs
  • Added Keep Matching Lines feature (like keep-search command). Deletes all lines that do not contain the search string.
  • Added Delete Matching Lines feature (like delete-search command). Deletes all lines that contain the search string.

Slick-C

  • Added ability to create static constants (static const) which are local to the current module.
  • Added _metadata keyword to indicate that enumerated type should be stored in the state file and allow introspection.
  • Renamed "boolean" keyword to "bool" for more consistency with C++. Deprecated "boolean".
  • Pedantic error checking is now more strict with bool types and enumerated types.
  • Added new properties "p_x_extent" and "p_y_extent" to reflect the right-hand and bottom position of controls.
  • Added support for named arguments in function calls.

Regular Expression Enhancements

  • Performance improved (12x-16x) for maximal and minimal matching of character sets
  • Added support for subroutines that can be called multiple times. For example, "(?(DEFINE) (?<foo>[a-z]+))(?&foo)(?&foo)"

DIFFzilla®

  • Improved speed of multi-file diff by using raw file I/O for first pass fast compare.
  • Added symbol mapping to Source Diff to make it possible to configure Diff to treat minor changes, such as a renamed symbol, as a whitespace change.
  • See more on DIFFzilla here.

Find and Replace

  • Multi-file search with color coding options specified now supports threading and is up to 15x faster.

Version Control

  • Automatic version control detection for Git and Subversion files.
  • Set version control system globally, per workspace, or per project. You can also set it for a workspace and then supercede it for a project or set of projects.
  • See more on version control here.

General

  • Added "Beautify line when reindent" feature. When on, beautifies the line when the Tab key reindents the line. This option is only supported by languages that support the beautify while typing feature. This feature is great for beautifying the current line when the beautify while typing feature doesn't get automatically triggered (i.e. you haven't typed a semicolon or other beautifier trigger key).
  • Ctrl+WheelUp/WheelDown set to decrease/increase font size by default.
  • Pad-Enter can now be bound to a different command than the standard Enter key.
  • Automatic mapping for Pad-keys to their equivalents when necessary. That way, there is no need for mode specific key bindings for keys like Pad-Star and Pad-Slash which are problematic.
  • Define color coding elements which get spell checked when you turn on "Spell checking while typing".
  • Added shift left and shift right (<< >>) buttons to calculator.
  • Calculator form is now resizable
  • Added alias escape sequence (%\|) for creating multiple cursors when expanding an alias

See the full list of new features.

SlickEdit 2016: What's New

Groovy Language Support

Now SlickEdit's best in class language features have come to Groovy. This includes all of the features you have come to expect from SlickEdit:

  • Color Coding
  • Symbol Coloring
  • Smart editing features
  • Context Tagging
  • Project wizard for creating Gradle project
  • Single file project support
  • Debugging
  • Beautifier

New Beautifiers

We have been saying it for years now: beautiful code is a right, not a privilege. This is why SlickEdit has more beautifiers than any other commercial product.

Now SlickEdit's best in class beautifiers have come to Groovy. This includes the fine grained control of your source code that all of our beautifiers offer.

This is in addition to the existing beautifiers for C++, Objective-C, Java, C#, Python, JavaScript, VBScript, PHP, HTML, XML, SystemVerilog, Verilog, Ada, and Slick-C.

Language Enhancements

Programming languages are fluid, constantly upgraded and changing. SlickEdit must be fluid and constantly adapting too.

SlickEdit has support for new C++ features including:

  • Color coding for C++ raw strings
  • Support for C++11 && reference syntax
  • Support for C++11 & and && function overload syntax
  • Add option to dynamically transform '.' to '->' for pointer types in C++.
  • Improve handling of local variables with parenthesized initializers that look like function prototypes in C++.

There are also upgrades to Verilog and SystemVerilog:

  • Preprocessing configuration for `define macros
  • Inline parsing of quoted `include files

There are also enhancements to Swift:

  • Project support
  • Debugging

Tagging Enhancements

Just as SlickEdit's language support changes every version to better support languages as they change, SlickEdit's tagging features change every version as well.

  • Added support for CTags tag files for SlickEdit Standard edition (CTags must be installed and in PATH).
  • Added new command 'edit-associated-symbol' (Alt+Backtick) to quickly jump between the current function and its prototype and other overloaded versions.
  • Improve design and performance for local variable tagging.
For more on SlickEdit's tagging features click here.

Spell Check While Typing

SlickEdit's Spell Check While Typing will automatically underline misspelled words. In code files, it will only check comments and strings.

Project Enhancements

  • New option to track active project history along with workspace history to make it easier to switch between the most frequently used projects within the workspace.
  • New option to display file, project, and window history more compactly.
  • New option to display file paths relative to the current project in the Project and Open tool windows.
For more on SlickEdit's project and build features click here.

Mini Find and Replace

  • By default, the find and replace commands display a new mini Find and Replace dialog which does incremental searching and match highlighting.
  • This new dialog provides many of the features of the Find and Replace tool window including matching color coding.
  • If you prefer the large Find and Replace tool window, you can configure the find/replace commands to display the Find and Replace tool window instead.
  • Press the binding for gui-find or gui-replace a second time to display the Find and Replace tool window. For example, pressing Ctrl+F displays the mini Find/Replace dialog. Pressing Ctrl+F again displays the Find and Replace tool window.
  • Find in Current Procedure is not a new feature, but it works especially well with the mini Find and Replace tool window.

Find and Replace Enhancements

  • Multi-file Find and Replace is up to 15x faster. Best speed is seen on SSDs with CPU's good at multi-threading.
  • The new "Auto escape regular expression" option will add escapes if the find dialog is initialized with a selection or the current word when regular expressions is on.

DIFFzilla® Enhancements

  • Choose resync points and re-diff files. Use "Align with..." menu item in context menu and choose line to resync with in the other file.
  • Re-diff files after making edits. Use "Re-diff" button.
  • Added option for Unicode Diff font. Previously only one Diff font could be configured for both Unicode and SBCS/DBCS files.
For more about already existing DIFFzilla features click here.

Debuggers

SlickEdit 2016 adds debuggers for Groovy and LLDB.

This is in addition to debuggers for GNU C/C++, LLVM C/C++, Microsoft Visual Studio C++ programs using WinDbg, Java, Python, PHP, Ruby, Perl, Google Go, Swift, and XCode projects.

Other debugger enhancements include:

  • Support for Debug executable for Java.
  • Cleaned up Debug > Attach submenu for easier navigation.
  • Debug executable command, and Debug with arguments now supports Java.

For more about SlickEdit's Debuggers click here.

Version Control

  • Git Repository Browser: Shows each commit in the Git repository, including showing branches.
  • Find Symbol Changes in file now searches the current working file. Only SlickEdit can offer this feature because it uses SlickEdit's powerful Context Tagging Engine.
  • Diff Current Symbol With Most Current Version. Only SlickEdit can offer this feature because it uses SlickEdit's powerful Context Tagging Engine.
  • History Diff for Git had been prone to occasional parsing errors. This is resolved now.

For more on SlickEdit's Version Control features click here.

New Configuration System

  • Almost all configuration settings are now stored in "user.cfg.xml" (key bindings, fonts, colors, color coding, symbol coloring, language settings, user spelling dictionaries, printing profiles, and more). Recorded macros, macros, GUI resource (menus/toolbars/dialog), project templates, template manager code templates, preprocessing, compiler config (compilers.xml), and annotations, are not stored in "user.cfg.xml".
  • Simply copy your user.cfg.xml from one machine to another to get almost all your configuration changes.
  • Only your changes are stored in "user.cfg.xml". For example, if you change one color in the "Default" color scheme, only one XML line for the new settings for that color field is stored and not all color fields for the entire scheme. This means you can very easily know what settings you've changed. Also, when you update to a newer version of SlickEdit, you automatically get settings that you haven't modified.
  • If you modify your user.cfg.xml by hand (it is occasionally convenient for expert users to do this), when you save the file you will be prompted to reload your options.

Support for .editorconfig files

  • Supports indent_style, indent_size, tab_width, end_of_line, and trim_trailing_whitespace. Color coding added for .editorconfig files.
  • Allows you to configure project specific settings. For more information click http://editorconfig.org.

Open Tool Window Enhancements

  • By default, *.ext (i.e. *.cpp;*.h ) does current directory exact matching of files. Added match style option (current directory contains, current directory exact, recursive contains, recursive exact). This differs from previous versions.
  • By default, other wildcard (i.e. file*.cpp ) does recursive exact matching of files. Added match style option (current directory prefix, current directory contains, current directory exact, recursive prefix, recursive contains, recursive exact). This differs from previous versions.
  • By default, a non-wildcard filespec does a recursive contains matching of files. Added match style option (current directory prefix, current directory contains, current directory exact, recursive prefix, recursive contains, recursive exact).
  • By default, the <Tab> key in the File name text box moves focus to next control. There is a new option so you can configure this to complete the filename like previous versions.
  • Added "Show all folders in directory panel" option. By default, this is off and the directory panel closes folders when the current directory changes.
For more about SlickEdit's Smart Open feature click here.

File Tool Window Enhancements

  • By default, *.ext (i.e. *.cpp;*.h ) does recursive exact matching of files. Added match style option (recursive contains, recursive exact). This differs from previous versions.
  • By default, other wildcard (i.e. file*.cpp ) does recursive exact matching of files. Added match style option (recursive prefix, recursive contains, recursive exact) This differs from previous versions.
  • By default, a non-wildcard filespec does recursive contains matching of files. Added match style option (recursive prefix, recursive contains, recursive exact).
  • These match the changes made to the Open Tool Window.

Float-over Conversions

  • Move mouse over hex or decimal integer to view conversions (hex, dec, octal, binary, Unicode) and optionally copy conversion to clipboard by clicking button.

Advanced File Mappings

  • Extensionless file manager renamed to Advanced File Mappings because it now allows you to map files with extensions too.
  • For example, you can configure *.s files in a particular directory to be mapped to a specific assembly language type.

Calculator

  • Calculator dialog improved to display results in two bases as you type.

More Features in SlickEdit 2016

Enhancements for Undo and Redo

  • If the last modification operation was an undo or redo, cursor movement is not recorded. This means you can scroll around the file without messing up your next undo or redo step.

Options Dialog

  • Speed of searching in options dialog greatly improved.
  • Added "Restore Default Options..." button to Export/Import Options in Options dialog.
  • Added ability to collapse navigation panel of Options dialog to save space.

Keyboard

Added support for key bindings using Windows shift key combinations for Ubuntu.

Enhancements for Find and Replace

  • Added delete_search command. Non-GUI command for removing lines which contain a search string.
  • Added keep_search command. Non-GUI command for removing lines which do not contain a search string.
  • New regular expression replace syntax for choosing replace text based on tagged expressions found (switch statement-like syntax).
    • (Perl syntax) For example, replace "(a)|(b)|(c)" with "$(<1>x|<2>y|z)" -- a->x b->y c->z.
    • For example, replace "(?:(a)|(b))(?:(c)|(d))" with "$(<1&3>x|2&4>y|z)" -- ac->x bd->y ad->z bc->z.
    • See help on Regular Expressions for more information.

See the full list of new features.

SlickEdit 2015: What's New

SystemVerilog Beautifier and Python Beautifier

As we've said before, beautiful code is a right, not a privilege.

Now SlickEdit's best in class beautifiers have come to SystemVerilog and Python. This includes the fine grained control all of our beautifiers offer, as well as Beautify While Typing.

Single File Projects

Sometimes you need to quickly write and debug a short script or program and don't want to create a project for it.

This is why SlickEdit 2016 has support for Single File Projects. You can open a file and quickly start building, executing, and debugging.

Single File Projects are available for Python, Perl, Java, C#, C++, Google Go, and Ruby.

Swift Language Support

SlickEdit now supports Swift, including Context Tagging® and smart editing features.

Regular Expression Enhancements

SlickEdit now emulates the Perl regular expression engine extremely closely, so you can use almost any valid Perl regular expression. This is important because Perl regular expressions are considered the industry standard.

  • No limit on the number of tagged expressions and named tagged expressions are supported. Previous limit was 10.
  • Look behind operators support variable length look behind. As far as we know, there is no other regular expression engine which supports this (not even Perl). For example, to match words that start with "a" or "ed" while excluding "a" or "ed" as part of the match, use (?<=\b(a|ed))[a-z]+.
  • Due to variable length look behind support, searching in reverse is more accurate. Consider the regular expression (abc)+. Now this will match the longest string of abc's in reverse. Searching in reverse for a floating point number [0-9]+([Ee][0-9]+|) now works the way you would expect in reverse also. See on-line help for more information.
  • See the online help for much more information on Perl regular expressions.

There are some extensions to Perl syntax which will not work in a Perl script. See on-line help for notes on extensions that will not work in a Perl script.

SlickEdit syntax regular expressions support all the features that Perl regular expressions support.

Non-Inclusive Column Selections

Traditionally, column selections (or block selections) in SlickEdit have been inclusive. This means at least one column is always selected.

We recognize that not everybody wants to work this way, so SlickEdit 2016 has added Non-Inclusive Column Selections.

Current Context Windows in DIFFzilla®

Before you know where you are going, you have to know where you are. Even though displays have gotten bigger and bigger, sometimes you cannot tell what function you are currently working in.

For years now, SlickEdit has had a current context window docked at the top of the editor to help with this. Now this same convenience has come to DIFFzilla.

Only SlickEdit can offer this feature because it uses SlickEdit's powerful Context Tagging engine.

Find Symbol Changes in File

"When did this function change?" It's not a question that you find yourself asking all the time. But when you do need to know, you really need to know.

SlickEdit now has a tool that will find those changes for you. It supports Git, Subversion, Perforce, Mercurial, and CVS.

Only SlickEdit can offer this feature because it uses SlickEdit's powerful Context Tagging engine.

More Features in SlickEdit 2015

JavaScript

Improved Context Tagging for JavaScript

  • Most local functions are listed in the Defs tool window.
  • Improved object oriented support.

Python

Optionally supports cycling through indents with the Tab key.

Hex Editing

  • Support for switching into hex mode for any Unicode file encoding.
  • Switching into hex mode for Unicode files shows BOM if there is one.

Visual Studio Support

Support for Visual Studio 2016 for C++, C#, C# Device, VB Device, F#, J#.

Saving Unnamed Files

When exiting SlickEdit or closing a workspace, the "Save All" button on the List Modified dialog will save unnamed files to the <config>/autosave folder by default. You are no longer forced to give a name to an unnamed buffer when exiting SlickEdit or closing a workspace. Saving unnamed files generates backup history. Use the Backup History Browser to restore a deleted unnamed file that was previously saved.

Long Filenames

Support for filenames longer than 255 on Windows

See the full list of new features

SlickEdit 2014: What's New

Floating Window Group Layouts

Editors and tool windows go together like peanut butter and jelly.

You can now dock tool windows to floating window groups.

But it gets better! You can also create named layouts for floating window groups. This allows you to easily switch between tool window layouts. When you drag/drop a Document Tab to create a floating window group, SlickEdit will automatically apply your default layout.

New Beautifiers

Beautiful code is a right, not a privilege.

In addition to improved formatting of HTML, XML, JavaScript, and VBScript, we have added support for embedded PHP script.

SlickEdit will automatically apply your indenting, brace style, and other settings to code as you type, or you can format an entire file.

Multiple Cursors and Selections

If you like performing repetitive tasks, then you won't be interested in this feature. However we think most of you will love Multiple Cursors and Selections which allows you to perform multiple edits at the same time on different lines/selections.

Add cursors and selections individually with the mouse or keyboard. Many operations you normally use to operate on a single selection/cursor now work on multiple selections/cursors:

  • Cursor movement - left, right, up, down, next/prev word
  • Selection operations - upcase, lowcase, fill
  • Simple typing operations - Syntax expansion, word completion
  • Copy/paste - cursors are saved to clipboard and pasted to destination cursors
  • Automatically surround multiple selections with " ' ` ( ) [ ] { } - great, for example, to quote a list of selected words

Shelving

SlickEdit 2014's Shelving feature allows you to quickly save away modifications to a set of files that can be reverted, and restore the modifications at a later date. It is designed for when an interruption like a bug fix requires you to put aside a feature you are working on. Shelves are zip files that store the base version of the specified files as well as the modified versions. Currently Shelving supports Perforce, SVN, Git, Mercurial, and CVS.

New Backup History Browser

  • Allows you to restore files you have previously saved that have been deleted.
  • Gives you an easy way to view the files you have modified and saved recently. This is very useful if you want to back out some changes you have made and need to know what files you have been modifying.

Word Wrap Enhancements

  • Typing, Backspace, and Del keys all do full word wrap.
  • New Automatic Left Margin feature. Left margin determined based on first non blank character in the line.
  • Define a right margin, or fixed width right margin (another new feature).

More Features in SlickEdit 2014

Google Go

Google Go project support has been added, along with integrated debugging.

Python

We have improved Python Context Tagging support for run-times. Smart indenting for function parameter lists is also improved to support PEP 8 style guidelines.

C++

We have improved tagging and completion for C++11 and STL classes.

Visual Studio 2013

We have added support for opening native projects and solutions for C++, C#, C# Device, VB Device, F#, and J#

Visual Studio 2012 and 2013 Express

We have added support for opening native projects and solutions for C++, C#, VB, and F#

See the full list of new features