For Nova 7 we decided to focus on something truly important to our editor: syntax and grammars. As a result, this release has a large number of PHP and TypeScript syntax improvements we think you'll appreciate. We also sped up Open Quickly, and fixed a lot of issues. Read on!
PHP syntax improvements
PHP 8 union types; highlighting of complex variables and SQL keywords in strings
TypeScript syntax improvements
Better parsing of type expressions and generics
Improved Open Quickly performance
Up to 7x faster for large projects
New
Added support for sub-word navigation (using Control) in the editor
Improved
Improved performance of editor text rendering for particularly wide documents and viewports
The CSS color picker now supports CSS 4- and 8-character hex colors with alpha
Modified some colors in Panic Neon theme for better differentiation of elements
Improved readability of arithmetic operators in Panic Neon theme
Fixed
Resolved a potential parser crash when deleting matches near the start of a parent
Fixed a possible parser crash when adjusting anchored matches
Addressed a crash when performing a regular expression “Replace All” in the Find sidebar with multiple results per file
Resolved a potential crash when animating matching brackets and showing the Code Actions indicator
Clip key bindings should now properly support additional shift-modified chords, such as Command-+
Fixed a potential crash when restoring open files in remote projects
Cutting an entire line no longer leaves the newline behind
Resolved a potential crash when laying out very long lines with Word Wrap disabled
Fixed an issue with changes to the Ignored Files global setting not being immediately reflected in file browsers
Corrected a regression in indexing speed caused by an overly aggressive regular expression in the JavaScript grammar
Fixed a potential crash when reparsing HTML and PHP documents that contain complex script tags
Resolved an issue where syntax highlighting appeared to shift several characters while typing rapidly in larger documents
Ruby: Resolved an issue with symbolification of empty method bodies
Ruby: Fixed an issue with function calls used within dictionary values
PHP: Corrected a problem with comments used within property values
PHP: Fixed an issue with using backticks within strings
JSX: Addressed a problem with tag comments interfering with other highlighting
Terminal: Fixed a problem with “Save in Keychain” not working as expected when connecting to servers stored in Nova
File Browser: The “Open” contextual menu item now works as expected
Version7.1
July 1, 2021
Improved
Added the ability to create new folders from “Open” panels (e.g. when choosing a publishing destination)
Fixed
CSS: Completions are no longer displayed immediately after a ‘{’ bracket
Terminal: Remote panes no longer fail to connect when an initial path is specified
Fixed a potential problem with annotation issue tooltips disappearing unexpectedly in some circumstances
Ctrl-A keybinding now works as expected when a text selection is present
Git Sidebar: Multiple selected files can now be opened simultaneously
PHP: Added support for parsing functions that return by reference
JSX: Tag expressions within arrow function bodies should now parse properly
CSS: Completion of custom property names within var() functions now work as expected
YAML: Fixed an issue parsing items contained within lists
LESS: !Important autocomplete no longer adds an extra ! character
Ruby: Improved highlighting of certain function argument arrangements
JavaScript: Parsing of regular expression literals as object fields now works as expected
JavaScript: Symbolication of quoted object properties containing spaces should work properly
JavaScript: Improved highlighting of arrow function expressions being used as arguments to a named function call
TypeScript: Improved parsing of some complex object types and interface declarations
Resolved an issue that caused delay of search results when using the command palette
Remote Files Sidebar: Corrected an issue with opening or saving files in an external editor
Addressed an issue with workspaces not restoring remote files that were opened using drag and drop
Resolved an issue when moving selection by paragraph using Option+Shift+Up/DnArrow
Launcher: Fixed the color swatch in quick edit panel from being clipped on macOS 10.15 and earlier
Version7
June 23, 2021
New
Added a preference for adjusting letter spacing in the editor
PHP: Highlighting of cURL environment variables in double-quoted strings
PHP: Highlighting of SQL keywords in double-quoted strings
PHP: Support for complex template string expressions
PHP: Autocomplete support for PHP 8
PHP: Support for Union Types
JavaScript/TypeScript: Path autocompletion for ‘import’ statements
New for Extensions
Grammars: Keywords may now be defined using multiple subcategories for better theming:
keyword.construct: Language construct keywords, such as function, class, interface
keyword.condition: Conditional keywords, such as if, for, and case
keyword.modifier: Modifier keywords, such as public, private, and async
keyword.statement: Statement keywords, such as return, throw, and eval
keyword.operator: Operator keywords, such as and, or, and not
keyword.self: Internal object reference keywords, such as self, this, and super