Readme Notes

SlickEdit® 2018 (v23.0.0) - Readme

Welcome to SlickEdit® 2018 (v23.0.0)

CONTENTS

Release Notes for v23.0.0

Copyright 1988-2018 SlickEdit Inc.

SlickEdit, Visual SlickEdit, Clipboard Inheritance, DIFFzilla, SmartPaste, Context Tagging, Slick-C, and Code Quick | Think Slick are registered trademarks of SlickEdit Inc. All other products or company names are used for identification purposes only and may be trademarks of their respective owners. Protected by U.S. Patent 5,710,926.


SlickEdit 2018

Fixes, Features, and Enhancements in SlickEdit 2018 (23.0.0)

  • Language Support
    • New R Language support
      • Color Coding
      • Smart editing features include smart indenting, SmartPaste(TM), and reindenting on Tab
      • Multi-file and single file project support
      • Context Tagging(TM)
    • New Kotlin Language support
      • Color Coding
      • Smart editing features include smart indenting, SmartPaste(TM), and reindenting on Tab.
      • Gradle build support
      • Context Tagging(TM)
    • Java Enhancements
      • Gradle build support. New project template has been added for creating a Java project which builds using gradle.
      • Improve performance of namespace import handling.
      • Fix context tagging for Java template parameters with one or more extends clauses
      • Fix parsing of statements that are purely expressions, for example: new SomeThread().run();
      • Add context tagging support for Java 10 local variable type inference.
    • New Google Protocol Buffer Language support
      • Color Coding
      • Smart editing features include smart indenting and SmartPaste(TM).
      • Context Tagging(TM)
    • Scala Enhancements
      • New Debugging Support
      • Now supports Gradle projects with multiple project
      • Improved smart indenting.
      • Added support for insert braces immediately and dynamic surround.
      • Added quick brace/unbrace support.
    • Groovy Enhancements
      • Now supports Gradle projects with multiple project
      • Improved smart indenting.
      • Added quick brace/unbrace support.
    • C/C++ Enhancments
      • 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 initalizers using braces in constructor initializer lists
      • Fixed parsing of C++11 template arguments when template argument name is omitted
      • 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).
      • Improve handling of C++ namespace aliases
      • C++17 support for the following:
        • u8 character literal
        • Hexadecimal floating point literals
        • fold expressions (nothing special to do)
        • template <auto>
        • class template argument deduction -- not supported at this time
        • constexpr if
        • selection statements with initializer
        • constexpr lambdas
        • lambda capture of *this
        • inline variables
        • structured bindings
        • byte type
    • C# Enhancements
      • 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
      • Fix handling of C# namespace aliases and C# extern aliases
      • Fix parsing of C# template where clauses
      • Fix parsing for C# partial methods and inner partial classes
      • Fix parsing for C# methods using =default() for argument initalization
      • Fix parsing of statements that are purely expressions, for example: new SomeThread().Start();
      • Fix parsing of statements that start with a literal, for example: 123.WriteMe();
    • System Verilog Enhancements
      • Improved support for interface modport parameter tagging.
      • Improved error recovery for incomplete declarations when tagging.
    • Python Enhancements
      • Debugger performance improved especially for deep call stacks (like recursive functions).
    • Ada Enhancements
      • Improved Enter and Space smart indenting for begin/end handling.
    • Markdown
      • Improved color coding. Added embedded color coding support for ```{R options} and ```Language
  • Project Support
    • Support for Mono single file projects for C#, F#, and Visual Basic with integrated Mono debugging.
    • Support for Visual Studio 2017 .NET Core projects. View project file in Project tool window. Project templates for building with dotnet command line tool instead of msbuild
  • Appearance Enhancements
    • Minimap
      • Zoom In/Out support
      • Configurable width. Select fixed width or fraction of total width and maximum width.
      • Configure click to scroll or move cursor to line.
      • Optionally show tooltip with lines in a larger font. Move focus into tooltip editor control by holding down Ctrl key. Can copy/paste lines from tooltip editor control.
      • Optionally show modified lines.
      • Optionally show vertical lines.
    • Added font ligature support on macOS.
    • Improved logic for auto-detecting Retina displays on macOS.
  • 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 synmbol on a single click.
    • Added option to disable preview of the symbol under the cursor in the Preview tool window.
    • Added option to disable displaying comments for the symbol under the cursor in the Preview tool window.
    • Added option to display evaluated return type of symbol in Preview tool window. This is helpful for type-inferred variables.
    • Added option to display evaluated return type of symbols on mouse-over. This is helpful for type-inferred variables.
    • Added option to activate the Preview Tool window when a symbol is selected in the Select Symbol dialog. Before, it would do this by default.
    • The Preview tool window and the References Preview now support wfont-zoom-in/out (Ctrl +/-) and wfont-unzoom (Ctrl+0) keyboard shortcuts.
    • Fixed bug in Symbol References engine where the symbols in a file could be completely skipped under certain conditions.
    • Added new command (push_tag_filter_overloads), which behaves like push-tag, but temporarily enables the option to filter out non-matching function overloads.
    • The References tool window and the Find Symbol tool window support a new option to restrict the search to projects which contain the current file.
    • The References tool window supports a new option to restrict the references search to all open files.
  • DIFFzilla
    • 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 good performance.
    • Buffer text is copied so undo works after using diff on an edit buffer.
  • New Mono Support
    • Support for single and multi-file projects for C#, F#, and Visual Basic.
    • Debugger
  • 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)
  • Auto Restore Enhancements
    • 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.
  • Vim Emulation Enhancements
    • 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 File Enhancements
    • Unknown files which appear to contain binary data use the "Binary" language mode.
  • Find and Replace
    • New Default Excludes option and ability to excluding files which appear to have binary contents when multi-file searching. The Excludes combo box list now allows you to choose <Default Excludes> or <Binary Files>. When <Binary Files> is chosen (or <Default Excludes> which contains <Binary Files> by default), files that appear to have binary data are excluded from the search. This is useful when searching files with a * or *.* wildcard. For example, search Unix shell scripts with no file extensions while excluding executables.
    • The "Look in zip/word/excel files" check box now supports .tar, .gz, .Z files, .cpio, .cpgz, and .rpm files.
    • "List current context" check box now supports more tag types: Class, Interface, Struct, Union, Enum, Package/Namespace, Programs.
    • Improved performance using "List current context" option.
    • Multi-file find or replace now supports "Advanced Filtering" options. Optionally specify a maximum file size and/or file modified time range.
    • "Look in:" now supports specifying file lists.
    • "Look in:" now supports specifying the files in the Search Results tool window. This can also be initiated from the new "Find in Files using Search Results" context menu item in the Search Results tool window.
    • The "Filter search results" dialog now supports filtering by files in the results by using ant-like syntax to include/exclude, similar to File types/Exclude syntax from Find in Files.
    • Search Results tool window context menu supports generating a file list with the new "Generated File List" menu item.
    • / or l or find command now supports multiple cursors if arguments are given.
  • 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 edtiors not support template parameters.
    • Update Doc Commnet... now correctly supports template parameters.
  • General
    • Line endings and encoding 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.
    • New Directory Aliases
      • h and home will expand to your Home directory.
      • dl and downloads will expand to your Downloads directory.
      • do and documents will expand to your Documents directory.
    • Better smart enter support for nested unbraced control flow blocks for C++, C#, Java, Object-C, Rust, and D.
    • Fix for regex subroutine support bug.
    • Added experimental +sopenro invocation option which tries to force all opened files to be read-only.
    • Fix for regex minimal matching performance optimization bug.
    • Added Contents > Send to Search Results to References and Find Symbol Tool window to send contents to Search Results.
  • Not all fixes/changes have been listed.