Author Topic: SlickEdit 2015 v20 release candidate 4  (Read 938 times)

Jeffrey

  • Senior Community Member
  • Posts: 222
  • Hero Points: 18
SlickEdit 2015 v20 release candidate 4
« on: October 30, 2015, 04:11:20 am »
SlickEdit 2015 (v20) release candidate 4 is now available for download. Please post issues in this beta forum.
 
Release candidate 4 is available to all SlickEdit customers.
 
To download the release candidate 4, visit your Registered Products page. https://customer.slickedit.com/myproducts

Changes in Release Candidate 4
  • Fix for performance issue with fetching Context Tagging hover over symbol info.
  • Fix for Context Tagging issue which caused anonymous classes not to be handled properly.
  • Default encoding for Mac if LANG is not set is supposed to be UTF-8 for v20. This is more consistent with the encoding used when launching SlickEdit from a Terminal prompt.
  • Fix for using Shift+Cursors keys to creating a column selection (def_scursor_style=1 -- not the default). Now uses an a non-inclusive column/block selection which works much better.
  • Fix for adding over 100 thousand files to a project and getting a large array warning.
  • Java beautifier fix. Fix for handling of unary ~ operator.

Changes in Release Candidate 3
  • Diff dialog enhanced to remember width and height and allow a vertical bar sizer has been added for changing the window of the Sessions tree.
  • Options for choosing the Visual Studio version used for a Visual Studio solution has been added. By default, it looks for the tool set version used in one of the projects.
  • Added nest level limits to find_matching_paren to avoid long delays in a files with an extreme amount of nesting levels.
  • Fix for search cause scroll style to change from smooth to center scrolling.
  • Fix for crash we parsing extremely nested JSON file.
  • Fix for Slick-C stack which occurred when using Preview All for a search and replace.
  • Fix hang which could occurr when beautifying SystemVerilog.
  • Fix for beautifying Python files with <CR><LF> line endings.
  • Not all fixes listed.

Changes in Release Candidate 2
  • Some support for filenames longer than 255 on Windows. Only possible on local file system. Not all features supported. Includes support for openning files, creating files, deleting files, tagging, backup history, diff, and backup history. Added "make_path" and "remove_dir" commands for creating and removing long directories.
  • Fix for problems on Mac which occurred when drag/dropping tool windows and Document windows.
  • Fix Slick-C stack which occurrred when doing a search and replace within the current procedure.
  • Fix Slick-C stack which occurred when seting begin/end style for all languages.
  • Fix for fill selection for a character selection modifying the resulting selection incorrectly.
  • Fix for creating column/block selection in fixed font file using the shift+cursor keys feature.
  • Not all fixes listed.

Changes in Release Candidate 1
  • Enhanced saving of unnamed modified files to support closing a workspace with modified unnamed files.
  • Enhanced saving of unnamed modified files to generate backup history browser information so previous saves can be recovered.
  • Added Debug>Start with arguments... menu item which is very handy for debugging a process with specific command line arguments.
  • Added some error exlusions for Visual Studio C++ compiler for better next-error support.
  • Unix/Mac Fix so files already opened in a prior version get openned in the correct default text encoding of Utf-8 if no encoding override was specified.
  • Unix/Mac Fix for multi-file diff (_copy_file() function). When copying a file over a read-only file, destination file would be deleted instead of just an error occurring.
  • Added support for multi-line tripple backtick color coding for Markdown.
  • Fix for Slick-C stack when using insert-literal in hex mode (typing 'b' would cause stack).
  • Fix for hang which could occur when doing a regular expression search backwards in a Utf-8 file.
  • Fix for choosing default search string for incremental search.
  • Fix for scroll problem with move_lines_down command.
  • Fix for project-add-file not tagging file that was added.
  • Fix for find references not showing all referencs.
  • Not all fixes listed.
« Last Edit: October 30, 2015, 04:14:45 am by Jeffrey »

Jeffrey

  • Senior Community Member
  • Posts: 222
  • Hero Points: 18
Re: SlickEdit 2015 v20 release candidate 4
« Reply #1 on: October 30, 2015, 04:13:34 am »
Changes in Beta 3
  • Added support for C++ 11 range-based for loop parsing. for (auto && ele : a) { ... }
  • fullscreen mode toggle on Mac now toggles the Macs builtin fullscreen mode.
  • Macro code generations adds stops for non-zero status return by find, find_next, and find_prev commands.
  • Path automatically set for Visual Studio single file project.
  • Refresh in Open tool window on Windows enhanced to refresh drive list.
  • More short-cut key support for File tool window: Ctrl+Down, Ctrl+Up, Ctrl+Shift+Down, Ctrl+Shift+Up, Ctrl+Shift+Home, Ctrl+Shift+End, Alt+A (select-all), Ctrl+Shift+A (select-all).
  • Alt+O hot key added for "Match color" check box of find dialog.
  • "..." Match color button left enabled for better usability. "Match color" check box automatically turned of if color settings selected from dialog.
  • Improved References Tab text box to support prefix expressions like the Find symbol tool window. For example, you type a local variable name or "variable.member" to find references for member (variable must be visible at the current file cursor location).
  • Added activate_find_symbol_with_curexp and activate_references_with_curexp commands used in Eclipse emulation.
  • Verilog beautifer aligns assignments and variables.
  • Improved Eclipse emulation. Added activate_find_symbol_with_curexp (Ctrl+Shift+T) and activate_references_with_curexp (Ctrl+H) commands.
  • Fix for typing a character with a block selection which uses the block insert mode code. Broken in v20 beta due to new proportional font changes.
  • Fix for brief-paste causing slick-c stack when invoked in a text box or combo box
  • Fix for line number display bug where the first line number was 0. This occurred when using the scroll wheel to scroll up when already at the top of the file.
  • Fix for some issues with debugging perl. When stepping into a perl subroutine, we were adding it to autovars and thus calling eval on it. Also updated the perl5db version.
  • Linux fix for DBus support. Changed launch script to set DBUS_SESSION_BUS_ADDRESS it it's not set to avoid the init failure message about generating a machine-id file.
  • Fix for tagging Perl reference expressions (\my $H1), for example. Improved implicit local variable tagging for Perl.
  • Fix for single-file project compiles using Visual Studio (cl.exe)
  • Fix for select_mode() turning off modify property.
  • Fix for some bugs in the Find in Files types filtering.
  • Fix for AutoSave on and restoring from a normal exit cause an incorrect error message and restoring modified contents of a file with no color coding.
  • Fix for undo after AutoSave from an abnormal exit with modified files.
  • Fix for macro recording use of Shift+arrow cua selection commands.
  • Fix for configured error expressions not being used.
  • Fix for settting project compiler.
  • Mac fix for default extension for exported option files.
  • Not all fixes or enhancemented listed. A few more fixes and enhancements coming later.

Changes in Beta 2
  • Fix for bad performance problem with Project Properites Add Tree. Now faster than v19.
  • Breakpoints were being cleared for single file projects.
  • Single file project profiles were not supposed to be accessible from language options page.
  • Fix for single file project commands being executed when Build tool window is activate.
  • Added preprocessing for Google Test.
  • Fixes for Directory View support in the Project Tool Window.
  • Added Source Diff support to Backup History.
  • Fix for Ctrl+A in text box and combo box for emulations.
  • Fix for line hex mode enable/disable and working for Utf-8 files.
  • Fix for switching between hex and line hex mode.
  • Fix for default firefox settings.

New Features Enhancements in SlickEdit 2015
  • Selective Display
    • New options for "show-procs" command.
    • New options for "hide-all-comments" command to collapse all comments or only documentation comments
    • New show-statements and show-symbols commands for creating an outline of the current file
    • Language-specific selective-display options for creating an outline on file open and/or hiding comments.
    • Hovering the mouse over a
    • bitmap will display the hidden block in a tooltip.
    • New appearance options for displaying selective display bracketing.
       
  • Hex Editing
    • Support for switching into hex mode for any unicode encoding file.
    • Switching into hex mode for unicode files shows BOM if there is one.
    • Changed Backspace and Del keys to delete 1 byte at a time when editing hex bytes which are part of a 2 byte DOS line ending.
    • Improved proportional font support
       
  • Project Support
    • Build and debug single file projects without creating a workspace. Close your workspace and open a Python, Perl, Java,  C#, C++, Google Go, or Ruby and build and debug. Single file project supports adding custom build tools.
    • Support for Visual Studio 2015 for C++, C#, C# Device, VB Device, F#, J#
    • Project Add Tree now supports creating a folder for each directory when adding a recursive static file list.
    • Recursive wildcard folders in the Project tool window are now automatically updated when you close and reopen the folder.
       
  • Language Support
    • Support for Swift language including Context Tagging and smart editing features.
    • Improved Context Tagging for JavaScript
      • Most local functions listed in Defs tool window
      • Improved object oriented support
             
    • update_doc_comment enhanced to support XMLDoc comments.
    • XMLDoc comments now support remarks.
       
  • New Beautifiers
    • Beautifier for System Verilog.
    • Beautifier for Python.
       
  • DIFFzilla
    • The Diff dialog now displays a Current Context combo box above each source edit window. The current symbol (like the current function) is displayed and you can select a symbol from the combo box to go to that symbol.
       
  • General
    • Proportional font support for block/column selections.
    • Support for non-inclusive block/column selections.
    • Proportional font "Word Wrap While Typing" (margins) support. Comment wrap doesn't support proportional fonts yet. The right margin is calculated in pixels based on the average character width times the right margin. Left margin still specifies leading spaces.
    • 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.
    • Auto Save now supports unnamed files.
    • New help system. Supports better searching and is much better on Mac and Unix. Allows Mac version to go to help item in the middle of a help page.
    • Invoking SlickEdit with a directory can be configured to open/create a project (Pro Only), set the current directory, and activate the open toolbar if its displayed. See Tools>Option...>Application Options>General
    • Customizable Date/Time format for Unix and Mac. Windows version uses the system settings.
    • Pressing the Del key in certain combo boxes will delete history from the combo box.  Currently works in the Find and Replace tool window and the DIFFzilla setup dialog.
    • Saving a search expression now saves and restore many more search options.
    • Fixed. Sometimes combo boxes in dialogs would append spaces to the end causing bad input for the dialog.
    • Fix for multi-line search and replace which ends with a 13 byte in a DOCS file. Ex. c/\x0d\x0a\x0d//r now works correctly (in binary) leaving a 0x0a without a preceeding 0x0d.

Jeffrey

  • Senior Community Member
  • Posts: 222
  • Hero Points: 18
Re: SlickEdit 2015 v20 release candidate 4
« Reply #2 on: October 30, 2015, 04:13:59 am »
  • Perl Regular Expressions Enhancements
    • Now emulates Perl regex engine extremely closely so you can use almost any valid Perl regular expression. This is important because Perl regular expressions are considered the standard. 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.
    • 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 much better in reverse also.
    • (?[extended-charset-expression]) - Supports advanced set expressions defined by Perl. For example, (?[ [ab] & [ac] ]) matches [a]. See on-line help for more information.
    • \a -  Matches 0x07.
    • \A -  Match beginning of file (or beginning of string).
    • \e -  Match escape character 0x1b.
    • \h -  Match horizontal white space character "[\t\x{20}\x{a0}\x{1680}\x{180e}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{202f}\x{205f}\x{3000}\]".
    • \H -  Match non horizontal white space character "[^\t\x{20}\x{a0}\x{1680}\x{180e}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{202f}\x{205f}\x{3000}]".
    • \k<name>,\k'name',\k{name}  -  Specify tagged expression by name or index.
    • \g<name>,\g'name',\g{name}  -  Specify tagged expression by name or index.
    • \gddd - Match tagged expression specified by an number of decimal digits.
    • \k{-relcount} - Specify tagged expression by relative count before the current tagged expression.
    • \g{-relcount} - Match tagged expression by relative count before the current tagged expression.
    • \g-relcount - Match tagged expression by relative count before the current tagged expression.
    • \N{U+hhhh} -  Match unicode character by hexadecimal code.
    • \N{unicodeCharacterName}  - Match unicode character by name. A complete list of character names is available on-line from the Unicode Consortium, http://www.unicode.org/charts/charindex.html.
    • \o< - Match beginning of word.
    • \o> - Match end of word.
    • \o#{digits} - Match decimal character (same as \digits).
    • \o{octal} - Match octal character.
    • \oz  Place cursor (same as \c).
    • \o:char  Match built-in regex pattern. See on-line help.
    • \p{UnicodePropertName}, \P{UnicodePropertName} - Enhanced to support all the properties supported by a Perl script regex (1000's). See Perl documention page http://perldoc.perl.org/perluniprops.html lists all supported properties.
    • \R - Match new-line sequence (same as \n).
    • \s - Match space characters "\f\n\r\t\v\x85\p{Z}" (now compatible with Perl).
    • \S - Match non space characters "\f\n\r\t\v\x85\p{Z}" (now compatible with Perl).
    • \v - Match vertical whitespace character "[\x{0a}\x{0b}\x{0c}\x{0d}\x{85}\x{2028}\x{2029}]".
    • \V - Match non vertical whitespace character [^"\x{0a}\x{0b}\x{0c}\x{0d}\x{85}\x{2028}\x{2029}]".
    • \w - Match word character. Now supports user specified word characters.
    • \W - Match non word character. Now supports user specified word characters.
    • \z - Match end of file/string.
    • \Z - Match end of file/string and last newline sequence.
    • X*+ - Maximal match of zero or more occurrences. Prohibit backtracking (give nothing back). It can be used to prevent the subexpression X from backtracking when using maximal (greedy) matching.
    • X++ - Maximal match of one or more occurrences. Prohibit backtracking (give nothing back). It can be used to prevent the subexpression X from backtracking when using maximal (greedy) matching.
    • X{n1}+ - Match exactly n1 occurrences of X. Prohibit backtracking (give nothing back).
    • X{n1,}+ - Maximal match of at least n1 occurrences of X. Prohibit backtracking (give nothing back).
    • X{n1,n2}+ -    Maximal match of at least n1 occurrences but not more than n2 occurrences of X. Prohibit backtracking (give nothing back).
    • [[:posix-character-class:]] - See on-line help.
    • (?:X) - Match X but don't tag expression (Same as (X)).
    • (?#comment) - Comment. No text is matched in this expression; it is used for comment and documentation only.
    • (?<name>X),(?'name'X),(?{name}X),(?P<name>X) -  Matches subexpression X and specifies a tagged expression identified by name. name may be a non-numeric tagged expression name or a numeric index.
    • (?OptionLetters:X), (?OptionLetters-OptionLetters:X) - Matches subexpression X using the options specified by OptionLetters. Option letters after the minus ('-') are turned off (or flipped). For example, (?-i:X) sets case sensitive matching.  See on-line help for documentation on option letters. The form (?^OptionLetters:X) is only partially supported since the d option letter is not supported (see Perl documentation).
    • (?|X) - Matches subexpression X and restores tagged expression numbering for each or branch ('|'). For example, the tagged expressions inside the or branch expression (?|(if)|(while)) will both have the number 1.
    • (?<=X) - Assert, positive look behind. Matches subexpression X before the current position, but X is not returned as part of the match. For example, to match words starting with "ed" while excluding "ed" as part of the match, use (?<=\bed)[a-z]+\b. Variable length look behing is supported. 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]+\b.
    • (?(condition)yes-pattern|no-pattern),(?(condition)yes-pattern) - See on-line help.
       
  • SlickEdit Regular Expressions Enhancements
    • 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]#\b.
    • 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 much better in reverse also.
    • (#[extended-charset-expression]) - Supports advanced set expressions. For example, (#[ [ab] & [ac] ]) matches [a]. See on-line help for more information.
    • \a -  Matches 0x07.
    • \A -  Match beginning of file (or beginning of string).
    • \d -  Match digit "[\\p{Nd}]".
    • \D -  Match non digit character "[\\P{Nd}]".
    • \e -  Match escape character 0x1b.
    • \h -  Match horizontal white space character "[\t\x{20}\x{a0}\x{1680}\x{180e}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{202f}\x{205f}\x{3000}\]".
    • \H -  Match non horizontal white space character "[^\t\x{20}\x{a0}\x{1680}\x{180e}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{202f}\x{205f}\x{3000}]".
    • \k<name>,\k'name',\k{name}  -  Specify tagged expression by name or index.
    • \g<name>,\g'name',\g{name}  -  Specify tagged expression by name or index.
    • \gddd - Match tagged expression specified by an number of decimal digits.
    • \k{-relcount} - Specify tagged expression by relative count before the current tagged expression.
    • \g{-relcount} - Match tagged expression by relative count before the current tagged expression.
    • \g-relcount - Match tagged expression by relative count before the current tagged expression.
    • \N{U+hhhh} -  Match unicode character by hexadecimal code.
    • \N{unicodeCharacterName}  - Match unicode character by name. A complete list of character names is available on-line from the Unicode Consortium, http://www.unicode.org/charts/charindex.html.
    • \o< - Match beginning of word.
    • \o> - Match end of word.
    • \o#{digits} - Match decimal character (same as \digits).
    • \o{octal} - Match octal character.
    • \oz  Place cursor (same as \c).
    • \p{UnicodePropertName}, \P{UnicodePropertName} - Enhanced to support all the properties supported by a Perl script regex (1000's). See Perl documention page http://perldoc.perl.org/perluniprops.html lists all supported properties.
    • \R - Match new-line sequence (same as \n).
    • \s - Match space characters "\f\n\r\t\v\x85\p{Z}".
    • \S - Match non space characters "\f\n\r\t\v\x85\p{Z}".
    • \v - Match vertical whitespace character "[\x{0a}\x{0b}\x{0c}\x{0d}\x{85}\x{2028}\x{2029}]".
    • \V - Match non vertical whitespace character [^"\x{0a}\x{0b}\x{0c}\x{0d}\x{85}\x{2028}\x{2029}]".
    • \w - Match word character.
    • \W - Match non word character.
    • \z - Match end of file/string.
    • \Z - Match end of file/string and last newline sequence.
    • X@+ - Maximal match of zero or more occurrences. Prohibit backtracking (give nothing back). It can be used to prevent the subexpression X from backtracking when using maximal (greedy) matching.
    • X#+ - Maximal match of one or more occurrences. Prohibit backtracking (give nothing back). It can be used to prevent the subexpression X from backtracking when using maximal (greedy) matching.
    • X:+n1 - Match exactly n1 occurrences of X. Prohibit backtracking (give nothing back).
    • X:+n1, - Maximal match of at least n1 occurrences of X. Prohibit backtracking (give nothing back).
    • X:+n1,n2 -    Maximal match of at least n1 occurrences but not more than n2 occurrences of X. Prohibit backtracking (give nothing back).
    • [[:posix-character-class:]] - See on-line help.
    • (#<name>X),(#'name'X),(#{name}X),(#P<name>X) -  Matches subexpression X and specifies a tagged expression identified by name. name may be a non-numeric tagged expression name or a numeric index.
    • (#:X) - Match X but don't tag expression (Same as (X)).
    • (##comment) - Comment. No text is matched in this expression; it is used for comment and documentation only.
    • (#!X) - Search fails if expression X is matched. The expression "^(#!if)" matches the beginning of all lines that do not start with "if"
    • (#=X) - Assert, positive look ahead. Searches for subexpression X, but X is not returned as part of the match.
    • (#<=X) - Assert, positive look behind. Matches subexpression X before the current position, but X is not returned as part of the match. For example, to match words starting with "ed" while excluding "ed" as part of the match, use (#<=\bed)[a-z]+\b. Variable length look behing is supported. 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]+\b.
    • (#<!X) -  Assert, negative look behind. Matches "not" subexpression X before the current position, but X is not returned as part of the match. For example, to match occurrences of "bar" not preceeded by "foo", use (#<!foo)bar. Variable length look behing is supported. For example, to match occurrences of "bar" not preceeded by "a" or "foo", use (#<!(a|foo))bar.
    • (#>X) - Matches expression X. Prohibit backtracking (give nothing back). It can be used to prevent the subexpression X from backtracking when using maximal (greedy) matching.
    • (#|X) - Matches subexpression X and restores tagged expression numbering for each or branch ('|'). For example, the tagged expressions inside the or branch expression (#|(if)|(while)) will both have the number 0.
    • (#(condition)yes-pattern|no-pattern),(#(condition)yes-pattern) - See on-line help.
    • (#OptionLetters:X), (#OptionLetters-OptionLetters:X) - Matches subexpression X using the options specified by OptionLetters. Option letters after the minus ('-') are turned off (or flipped). For example, (#-i:X) sets case sensitive matching.  See on-line help for documentation on option letters. The form (#^OptionLetters:X) is only partially supported since the d option letter is not supported (see Perl documentation).
       
  • Not all fixes have been listed.