{"id":9243925,"url":"https://github.com/nwolverson/vscode-ide-purescript","last_synced_at":"2026-02-06T07:02:38.912Z","repository":{"id":2618153,"uuid":"47000061","full_name":"nwolverson/vscode-ide-purescript","owner":"nwolverson","description":"PureScript IDE support for VS Code","archived":false,"fork":false,"pushed_at":"2025-06-11T20:49:08.000Z","size":1422,"stargazers_count":188,"open_issues_count":32,"forks_count":36,"subscribers_count":7,"default_branch":"main","last_synced_at":"2026-01-05T10:35:43.556Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items/nwolverson.ide-purescript","language":"PureScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nwolverson.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-11-27T21:31:55.000Z","updated_at":"2025-10-20T06:31:17.000Z","dependencies_parsed_at":"2022-09-02T07:40:53.654Z","dependency_job_id":"8c6a0c6e-bbde-4f7a-9ef2-30fba955c7b8","html_url":"https://github.com/nwolverson/vscode-ide-purescript","commit_stats":{"total_commits":410,"total_committers":22,"mean_commits":"18.636363636363637","dds":0.09024390243902436,"last_synced_commit":"524a8285b528a86d4014d761f858984fee3c05f9"},"previous_names":[],"tags_count":116,"template":false,"template_full_name":null,"purl":"pkg:github/nwolverson/vscode-ide-purescript","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwolverson%2Fvscode-ide-purescript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwolverson%2Fvscode-ide-purescript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwolverson%2Fvscode-ide-purescript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwolverson%2Fvscode-ide-purescript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nwolverson","download_url":"https://codeload.github.com/nwolverson/vscode-ide-purescript/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwolverson%2Fvscode-ide-purescript/sbom","scorecard":{"id":699518,"data":{"date":"2025-08-11","repo":{"name":"github.com/nwolverson/vscode-ide-purescript","commit":"7b60713409ef7bae318b395802dd360bdc687dd2"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"checks":[{"name":"Code-Review","score":0,"reason":"Found 2/27 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/release.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/nwolverson/vscode-ide-purescript/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/nwolverson/vscode-ide-purescript/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/nwolverson/vscode-ide-purescript/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/nwolverson/vscode-ide-purescript/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/nwolverson/vscode-ide-purescript/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/nwolverson/vscode-ide-purescript/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/nwolverson/vscode-ide-purescript/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/nwolverson/vscode-ide-purescript/release.yml/main?enable=pin","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   6 third-party GitHubAction dependencies pinned","Info:   2 out of   2 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Info: FSF or OSI recognized license: MIT License: LICENSE.md:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v0.26.8 not signed: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/224720028","Warn: release artifact v0.26.6 not signed: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/191921057","Warn: release artifact v0.26.5 not signed: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/179216410","Warn: release artifact v0.26.3 not signed: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/127608206","Warn: release artifact v0.26.2 not signed: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/120324821","Warn: release artifact v0.26.8 does not have provenance: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/224720028","Warn: release artifact v0.26.6 does not have provenance: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/191921057","Warn: release artifact v0.26.5 does not have provenance: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/179216410","Warn: release artifact v0.26.3 does not have provenance: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/127608206","Warn: release artifact v0.26.2 does not have provenance: https://api.github.com/repos/nwolverson/vscode-ide-purescript/releases/120324821"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 5 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"13 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-67mh-4wv8-2f99","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3","Warn: Project is vulnerable to: GHSA-j8xg-fqg3-53r7","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T04:51:50.116Z","repository_id":2618153,"created_at":"2025-08-22T04:51:50.116Z","updated_at":"2025-08-22T04:51:50.116Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29153889,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T02:39:25.012Z","status":"ssl_error","status_checked_at":"2026-02-06T02:37:22.784Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-05-08T00:11:59.634Z","updated_at":"2026-02-06T07:02:38.856Z","avatar_url":"https://github.com/nwolverson.png","language":"PureScript","funding_links":[],"categories":["IDEs"],"sub_categories":["Deku"],"readme":"# ide-purescript package for VS Code\n\nThis package provides editor support for PureScript projects in Visual Studio Code, based on the\n [PureScript language server](https://github.com/nwolverson/purescript-language-server).\n\nFeatures:\n\n- [x] [Build and error reporting](#build-and-error-reporting)\n- [x] Quick-fix support for certain warnings\n- [x] [Autocompletion](#autocomplete)\n- [x] [Type info tooltips](#tooltips)\n- [x] [Go to symbol](#go-to-symbol)\n- [x] [Go to definition](#go-to-definition)\n- [x] [Case split](#case-split)\n- [x] [Add clause](#add-clause)\n- [x] [Pursuit lookup](#pursuit-lookup)\n- [x] [PSCI](#psci)\n- [x] Formatting (via `purty`)\n\nThe extension [language-purescript](https://marketplace.visualstudio.com/items/nwolverson.language-purescript) provides basic syntax highlighting support - it is required but should be installed automatically as a dependency. This package will start on opening a `.purs` file, and automatically trigger a rebuild on saving a `.purs` file.\n\nSee [troubleshooting](#troubleshooting) in case of issues.\n\n## Installation and General Use\n\nThis package makes use of the [`purs ide server`](https://github.com/purescript/purescript/tree/master/psc-ide) (previously `psc-ide`) for most functionality, with `purs compile` (by default via `spago`) for the explicit\nbuild command. All this is via a Language Server Protocol implementation, [purescript-language-server](https://github.com/nwolverson/purescript-language-server). Multi-root workspaces should be supported via a multiple language server approach.\n\nThis package will launch a `purescript-language-server` process, which will automatically (but this is configurable) start `purs ide server` in your project directory and kill it when closing. Start/stop and restart commands are provided for the IDE server in case required (eg after changing config or updating compiler version).\n\nFunctionality provided by the IDE server won't work until you build your project. This can either be via the built-in\nbuild command, or via an external tool - but if you do build externally, you should be sure to `Restart/Reconnect purs IDE server` (accessed through `CTRL+SHIFT+P`/`CMD+SHIFT+P`) afterwards, or the IDE server will not be able to pick up any changes.\n\nYou can configure building with `pulp` (optionally with `psc-package`) or `spago` by following the configuration steps below, after which you should also `Restart/Reconnect purs IDE server`.\n\n#### Version support policy\n\nPureScript compiler version support is as follows:\n\n* The current minor version of the compiler is supported at all patch versions (e.g. 0.14.xx)\n* The previous minor version of the compiler is supported at the latest patch version (e.g. 0.13.8) for new functionality, and where possible all patch versions for existing functionality\n* Any older compiler versions are not officially supported - they may continue to work and will not be intentionally broken, but no particular effort will be made for continued support in the face of API changes\n\n### With Spago (default)\n\n`PureScript: Build` command will build your project using the command line `spago build --purs-args --json-errors`.\n\nNote that prior to spago version `0.10.0.0`, `--` was used to separate purs args at the end of the command line.\n\nFor `spago` with `psc-package`, add the following configuration to your `settings.json`:\n```\n{\n  \"purescript.addSpagoSources\": true,\n  \"purescript.addNpmPath\": true,\n  \"purescript.buildCommand\": \"spago build --purs-args --json-errors\"\n}\n```\n\n### With Pulp\n\n`PureScript: Build` command will build your project using the command line `pulp build -- --json-errors`.\nVersion 0.8.0+ of the PureScript compiler is required, as well as version 10.0.0 of `pulp` (with earlier versions remove `--`).\n\nFor `pulp` with `psc-package`, add the following configuration to your `settings.json`:\n```\n{\n  \"purescript.addNpmPath\": true,\n  \"purescript.buildCommand\": \"pulp --psc-package build -- --json-errors\"\n}\n```\n\n\n### Suggested extensions\n\nSee [input-assist](https://github.com/darinmorrison/vscode-input-assist) for Unicode input assistance\non autocomplete which is known to work with this extension, alternatively [unicode-latex](https://github.com/ojsheikh/unicode-latex)\nwhich offers similar LaTeX based input vi a lookup command.\n\n### Suggested configuration\n\nWatching directories like `.spago`, `output` can be slow and on occasion cause issues. Consider also `files.exclude` and `search.exclude`.\n\n```\n    \"files.watcherExclude\": {\n       \"**/.spago/**\": true\n    }\n```\n\n### Key bindings\n\nThe only key binding supplied out of the box is Shift+Ctrl+B (or Shift+Cmd+B) for the full \"Build\" command. Although this is only enabled inside PureScript-language text editors, it does conflict with the built-in Build command. This can be edited, and other keybinds added, in the VS Code Keyboard Shortcuts preferences.\n\nThe following default vscode bindings are helpful for processing build errors:\n* `F8` cycles through errors.\n* `CTRL + .` or `CMD + .` shows suggested fixes. The compiler sometimes provides these suggestions.\n\nWe will suggest you to add keyboard bindings for commands that you use frequently, which you can do through the menu item `File \u003e Properties \u003e Keyboard Shortcuts`.\n\n### Access to commands\n\nTo see all the commands provided by this package,\nlocate the `View \u003e Command palette` in menu and type 'purescript'.\nThe contents vary but you'll get something like this.\n\n![command-menu](https://user-images.githubusercontent.com/1215420/89945576-3ab68a00-dc2a-11ea-9486-93db4ef2741a.png)\n\n## Build and error reporting\n\nAfter you've added `settings.json` for your build system,\nShift+Ctrl+B builds it.\nif you are not sure which `settings.json` it is, pick the Spago -one.\n\n## Autocomplete\n\nProvided from [`purs ide server`](https://github.com/purescript/purescript/tree/master/psc-ide). Make sure your project is built first.\n\nCompletions will be sourced from modules imported in the current file.\n\n## Tooltips\n\nHovering over an identifier will show a tooltip with its type. Over a qualifier of a qualified identifier it will show the associated module name.\n\nThis feature disregards a context where the word appears,\nwhich means you will get some false positives\n(eg doesn't see local definitions, just the globals that should be visible in a given module).\n\n ![demonstration](https://user-images.githubusercontent.com/1215420/99907514-cf2e8f00-2ce5-11eb-87e0-764b4d333c06.gif)\n\n## Go to symbol\n\n'Go to symbol' locates definition of a symbol by its name.\n\n ![demonstration](https://user-images.githubusercontent.com/1215420/99907511-cb027180-2ce5-11eb-9fa1-4ee5db77ff44.gif)\n\n## Go to definition\n\nHyperclick goto-definition functionality is supported. This is available with `purs` version\n0.9.2 and above, and like tooltips/autocomplete works on identifiers bound at the top level.\n\nIn case source positions are not up to date, they may not be updated on rebuild, try rebuilding or restarting psc-ide server.\n\n ![demonstration](https://user-images.githubusercontent.com/1215420/99907507-c76eea80-2ce5-11eb-8528-44c965e4abb6.gif)\n\n## Case split\n\nThe case split expands the case under the cursor.\nIt allows you to auto-complete large case clauses.\n\n ![demonstration](https://user-images.githubusercontent.com/1215420/99907505-c211a000-2ce5-11eb-98f3-f7955b36f889.gif)\n\n## Add clause\n\nThe add clause reads the type declaration under the cursor\nand inserts an empty template.\n\n ![demonstration](https://user-images.githubusercontent.com/1215420/99907495-b58d4780-2ce5-11eb-8fa4-4d3f6f402560.gif)\n\n## Pursuit lookup\n\nCommands \"Search Pursuit\" and \"Search Pursuit Modules\" are available to search for identifiers or modules/packages on Pursuit.\n\n## PSCI\n\nNo particular support. Suggest you open a PSCI in the integrated terminal.\n\n## Troubleshooting\n\nGenerally the Output pane (\"IDE PureScript\" option in the dropdown) may give useful information if something is going wrong. Useful concepts:\n\n### Rebuilding\n\nTo ensure the latest information is available to the Language Server, rebuilding may be required. This can either be the \"Build Command\" in VS Code, or an external build followed by \"Restart/Reconnect purs IDE server\".\n\n### Common errors\n\n#### Module not found\n\nThis normally means either the code is not built, or there is a version mismatch. To rebuild, see above. \n\nIn some cases your build process and VS Code may be hitting different purs versions. The VS Code extension/language server will find purs in your PATH, but that includes the npm local path if the corresponding option is set, which may differ from an external build process. You may need to launch `code` from a terminal containing the correct `PATH`.\n\nCheck the \"Output\" pane, at the very top after the Language Server starts it will list out the purs binary being used, you can check it's the one you expect. \n\n## API for downstream extensions\n\nVSCode makes it possible for extensions to expose methods to other extensions for cross-extension interaction. The following methods are exposed by `ide-purescript`.\n\n```typescript\n{\n    // set middleware for the language client. for an example of\n    // how to use VSCode language client middleware, see\n    // https://code.visualstudio.com/api/language-extensions/embedded-languages\n    // the full middleware API is documented at\n    // https://github.com/microsoft/vscode-languageserver-node/blob/main/client/src/common/client.ts\n    registerMiddleware: (m: Middleware) =\u003e void;\n    // remove a given middleware, using the same string used to register it\n    unregisterMiddleware: (m: Middleware) =\u003e void;\n    // a callback of type () =\u003e void that is called when diagnostics begin\n    // diagnostics are triggered whenever compilation of one or several files begins,\n    // ie via a save event or by calling the `purescript.build` command\n    setDiagnosticsBegin: (f: EffectUnit) =\u003e void;\n    // a callback of type () =\u003e void that is called when diagnostics end\n    setDiagnosticsEnd: (f: EffectUnit) =\u003e void;\n    // a callback of type () =\u003e void that is called when cleaning a project begins\n    // cleaning is triggered by calling the `purescript.clean` command\n    setCleanBegin: (f: EffectUnit) =\u003e void;\n    // a callback of type () =\u003e void that is called when cleaning a project ends\n    setCleanEnd: (f: EffectUnit) =\u003e void;\n}\n```\n\nTo call these methods from your own extension, do something like:\n\n```typescript\nexport function activate(context: vscode.ExtensionContext) {\n\tconst ext = vscode.extensions.getExtension('nwolverson.ide-purescript');\n\tconst importedApi = ext.exports;\n\timportedApi.setDiagnosticsBegin(() =\u003e { console.log('Did I just hear diagnostics begin?'); });\n  // some other stuff\n}\n```\n\n## Development\n\nTo develop (rather than use) this extension, see [the instructions](https://github.com/nwolverson/purescript-language-server/blob/master/README.md#development) in `purescript-language-server`.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnwolverson%2Fvscode-ide-purescript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnwolverson%2Fvscode-ide-purescript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnwolverson%2Fvscode-ide-purescript/lists"}