SlickEdit 2015 (20.0.0.12) Release

Slickedit 2015. 11. 24. 09:30 posted by CecilDeSK
반응형

Release Notes for SlickEdit 2015 (20.0.0)

  • 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++ (GNU debugging only), 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.
    • New Debug command (Start with arguments...) to launch the current project with one-time command line arguments and working directory.
  • Language Support
    • Support for Swift language including Context Tagging and smart editing features.
    • Support for QML language
    • Improved Context Tagging for JavaScript
      • Most local functions listed in Defs tool window
      • Improved object oriented support
    • Hot spots have been added to syntax expansion for SystemVerilog.
    • update_doc_comment enhanced to support XMLDoc comments.
    • XMLDoc comments now support remarks.
    • Python optionally supports cycling through indents with the Tab key.
    • Color coding for the CMake file CMakeLists.txt.
  • New Beautifiers
    • Beautifier for System Verilog.
    • Beautifier for 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.
  • Tagging
    • Added master control switches to disable background tagging and threaded tagging.
    • Tag databases can support files sizes up to 64 gigabytes.
    • Improved scalability and stability of tag databases.
  • Help System
    • New help system based on Qt assistant.
    • 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.
  • 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. Use the Backup History Browser to restore a deleted unnamed file that was previously saved.
    • Auto Save now supports unnamed files.
    • 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
    • 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.
    • 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.
  • 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).


반응형