• Sign In



  • Categories

    Extension Details



    Readme

    Nova Deno extension

    A Nova editor extension that integrates the Deno
    JavaScript/TypeScript runtime
    and tools.

    Usage

    The Deno language server enhances editing for the
    following syntaxes in various ways (all support format on save, but a subset
    support linting, type checking, and IntelliSense), depending on the
    configuration:

    Import IntelliSense

    The Deno language server can provide
    JavaScript/TypeScript import IntelliSense if the imported module host serves
    /.well-known/deno-import-intellisense.json and implements the necessary API
    endpoints.

    Import IntelliSense is enabled or disabled per host in the global configuration
    option deno.suggest.imports.hosts, typically saved in
    ~/Library/Application Support/Nova/UserConfiguration.json. As of Nova
    v7.2, there’s no suitable extension GUI for editing this map data structure.

    If the project configuration option deno.suggest.imports.autoDiscover is
    enabled, while typing an import module specifier the
    Deno language server automatically discovers if the host
    supports import IntelliSense, triggering a notification to enable or disable it.

    Commands

    Reset Deno import IntelliSense hosts

    Resets the global configuration option deno.suggest.imports.hosts to allow
    fresh auto-discovery of hosts that support JavaScript/TypeScript import
    IntelliSense (see the Import IntelliSense section above). The host
    https://deno.land is enabled by default. This happens automatically if the
    global configuration option deno.suggest.imports.hosts is missing when the
    extension activates.

    Available via:

    • Nova command palette, entering
      Reset Deno import IntelliSense hosts.
    • Nova menu bar option Extensions → Deno → Reset Deno import
      IntelliSense hosts
      .

    Restart Deno language client

    Restarts the Deno language client. This happens automatically when the
    configuration or files referenced in the configuration (e.g. the
    deno.importMap import map file or the deno.config TypeScript config file)
    change.

    Available via:

    • Nova command palette, entering
      Restart Deno language client.
    • Nova menu bar option Extensions → Deno → Restart Deno language
      client
      .

    Deno cache

    Instructs Deno to attempt to cache any dependencies of the module in the focused
    editor.

    Available when the focused editor has a JavaScript, JSX, TypeScript, or TSX
    syntax, via:

    Deno format document

    Deno formats the focused editor.

    Available when the focused editor has a Deno formattable syntax, via:

    • Nova command palette, entering
      Deno format document.
    • Nova menu bar option Editor → Deno format document.
    • Keyboard shortcut Shift+Option+f.

    Requirements

    • macOS v10.15.4+, for modern JavaScript syntax support in JavaScriptCore.
    • Nova v5+.
    • Deno CLI v1.13.2+.

    Configuration

    Global config

    1. In the Nova menu bar open Extensions → Extension Library….
    2. In the sidebar under Installed Extensions, open the tab Deno.
    3. Open the tab Preferences.

    Project config

    1. In the Nova menu bar open Project → Project Settings....
    2. In the sidebar under Extensions, open the tab Deno.

    Release Notes

    Nova Deno extension changelog

    1.2.3

    Patch

    • Added VS Code config to the project.
    • Stopped using Deno unstable mode for the project.
    • Added a project import map, used for tests.
    • Updated the Deno std version used in tests.
    • Added @ts-check comments to modules, referenced
      @types/nova-editor-node, and fixed
      various issues revealed by TypeScript.
    • Changed the test module file extensions from .js to .mjs.
    • Use a new class Defer to streamline deferred promises in both the
      implementation and tests.
    • The extension now creates a missing global config file during initialization
      or running certain commands, instead of hanging or erroring.

    1.2.2

    Patch

    • Removed the readme warning that document changes can be lost if Nova crashes
      (particularly when formatting on save) as Nova
      v7.3 is more stable, closing
      #3.

    1.2.1

    Patch

    • Documented the minimum required Deno version (v1.13.2).

    1.2.0

    Minor

    • Added support for JSX and TSX syntax, fixing
      #1.

    Patch

    • Updated dev dependencies.

    1.1.0

    Minor

    • Implemented the deno.cache “Deno cache” command, progressing
      #5.

    Patch

    • Updated issue information in the extension readme and source comments.

    1.0.2

    Patch

    • Removed Deno language server code lens related workspace configuration as Nova
      doesn’t appear to support code lens.

    1.0.1

    Patch

    • Uppercased the extension readme and changelog file names to conform to Nova
      extension conventions so the contents will display in the Nova extension
      library.

    1.0.0

    Initial release.