Skip to content

Commit

Permalink
Update changelog, READMEs
Browse files Browse the repository at this point in the history
  • Loading branch information
sgwilym committed Jan 27, 2022
1 parent d0e4192 commit 515e028
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 22 deletions.
20 changes: 9 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

A Deno extension for Nova.

- LSP integration with all that brings: typechecking, intellisense, hover cards,
etc.
- LSP integration with all that brings: typechecking, intellisense.
- File linting
- Document formatting
- Symbol renaming
- Remote module support + caching
- Remote module caching
- Registry import suggestions

This represents a best effort. It has a few known bugs that need assistance from
Panic or Deno — see this repo's issues.
Expand All @@ -21,18 +21,16 @@ The contents of these exports can be found in `src/nova_deno.ts`. This is where
the LanguageClient is set up, commands are registered, listeners are set up,
etc.

Much (maybe most?) of the code in this repo has been based on, if not entirely
copied from, [nova-typescript](https://github.com/apexskier/nova-typescript),
which has many useful utilities that could apply to any LSP extension for Nova.
This repo uses many useful utilities that could apply to any LSP extension for
Nova which I originally based on / copied from
[nova-typescript](https://github.com/apexskier/nova-typescript). I have started
pulling these out into a module called
[nova_utils](https://github.com/sgwilym/nova_utils).

## Developing

1. Open this project in Nova.
2. Select **Extensions -> Activate Project as Extension** in the menu bar (you
will need to enable Extension development in the general section of Nova's
preferences to do this).
3. Run the 'Bundle' command, which watches for changes and builds* to
`deno.novaextension`.

- This project uses esbuild rather than Deno to build the project, as Nova
expects the project's modules to be in CommonJS format.
3. Run the 'Bundle' command, which outputs a bundle* to `deno.novaextension`.
9 changes: 9 additions & 0 deletions deno.novaextension/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
## v0.4.0

- Added support for import suggestions!
- Removed configuration file option (Deno will detect it automatically as of
v1.18)
- Added "Restart Deno LSP server" command.
- Added JSON and JSONC as syntaxes this extension can use.
- Fixed a bug where formatting a document would hang indefinitely.

## v0.3.4

- Makes sure some fixes are actually included in the built extension.
Expand Down
25 changes: 15 additions & 10 deletions deno.novaextension/README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,32 @@
Very fast JavaScript and Typescript integration, powered by
[Deno](https://deno.land).

- Inline Typechecking and Intellisense for Javascript and Typescript!
- Inline typechecking and Intellisense for Javascript and Typescript!
- Code linting!
- Automatic formatting on save!
- Remote module (e.g. `import { x } from "https://cdn.com/mod.ts"`) support!
- Remote module (e.g. `import { x } from "https://cdn.com/mod.ts"`) caching!
- Registry import suggestions
- Task templates for `deno run` and `deno` bundle!

**This is pre-v1.0**. While the most important functions of Deno are integrated
here, there are missing features and a few known bugs. This is a best-effort
extension, but it might be good enough to start with!
here, there are a few limitations due to Nova's LSP integration. This is a
best-effort extension, and I will keep making it better as Nova allows!

## Requirements 🎒

To use this extension, you must have the Deno CLI installed (v.1.10.3 or above).
To use this extension, you must have Deno installed (v.1.10.3 or above).
[Here's how you can do that](https://deno.land/#installation).

If you use Deno 1.18+, any deno.json configuration files will be automatically
detected and used by this extension

## Commands ⌨️

- **Cache** - Cache all external dependencies
- **Format Document** - Format with Deno's formatter
- **Rename symbol** - Rename variables, functions, etc.
- **Restart Deno LSP server** - You shouldn't have to do this, but it's nice to
have when you start getting angry.

## Configuration options ⚙️

Expand All @@ -32,10 +38,8 @@ All of the below can be configured at a global and per-project basis (via
- Linting
- Unstable Deno APIs

The following can be configured on a per-project lever:

- Import map
- tsconfig.json
All of those can be defined at a per-project level, including an import map to
use.

## Known bugs 🪳

Expand All @@ -47,10 +51,11 @@ with both Panic and the Deno team to resolve them.
(`., \, ', /, @, <, #`).
- The **Jump to definition** command does not work for values defined within
external dependencies.
- JSDocs are not displayed in hovercards

## Mega Shoutouts 📣

Much of the code in this extension is based on — if not entirely lifted from —
Much of the code in this extension was based on — if not entirely lifted from —
Cameron Little's
[excellent Nova Typescript extension](https://github.com/apexskier/nova-typescript).

Expand Down
2 changes: 1 addition & 1 deletion deno.novaextension/extension.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"name": "Deno",
"organization": "Sam Gwilym",
"description": "Deno runtime support for Nova.",
"version": "0.3.4",
"version": "0.4.0",
"categories": ["languages", "formatters", "issues", "completions", "tasks"],
"repository": "https://github.com/sgwilym/nova-deno",
"bugs": "https://github.com/sgwilym/nova-deno/issues",
Expand Down

0 comments on commit 515e028

Please sign in to comment.