https://github.com/besya/nova-pkl
Pkl support for Nova
https://github.com/besya/nova-pkl
nova nova-editor nova-extension pkl pkl-lang
Last synced: 2 months ago
JSON representation
Pkl support for Nova
- Host: GitHub
- URL: https://github.com/besya/nova-pkl
- Owner: besya
- License: mit
- Created: 2025-02-24T17:28:23.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-03-07T17:48:57.000Z (2 months ago)
- Last Synced: 2025-03-07T18:34:19.775Z (2 months ago)
- Topics: nova, nova-editor, nova-extension, pkl, pkl-lang
- Language: Scheme
- Homepage: https://extensions.panic.com/extensions/besya/besya.pkl/
- Size: 1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Pkl
**Pkl** extension provides rich support for the [Pkl configuration language](https://pkl-lang.org) in Nova.

## Prequesites
### Install Pkl and Pkl LSP
```
brew install pkl pkl-lsp
```## Language Support
- Diagnostics
- Hover
- Go to definition
- Auto complete
- Project syncing
- Package downloading## Development
1. Clone repo
`git clone https://github.com/besya/nova-pkl.git`
1. Add tree-sitter-pkl git submodule
`git submodule add --force https://github.com/apple/tree-sitter-pkl.git`1. Navigate to project folder
`cd nova-pkl`
1. Install dependencies
`npm install`
1. Run watch
`npm run watch`
1. Enable extension
**Extensions > Activate Project as Extension**
### NPM commands
Clean (cleans `pkl.novaextension/Scripts` directory)
`npm run clean`
Build (builds `src` to `pkl.novaextension/Scripts`)
`npm run build`
Watch (rebuilds `src` to `pkl.novaextension/Scripts` on `src` change)
`npm run watch`
Compile (compiles tree-sitter-pkl.dylib)
`npm run compile`
Sign (codesign tree-sitter-pkl.dylib)
`npm run sign`