author | wenzelm |
Wed, 25 Jan 2017 23:08:29 +0100 | |
changeset 64948 | e655d965307c |
parent 64872 | 9c194386db8d |
child 65060 | 98931050065f |
permissions | -rw-r--r-- |
64605 | 1 |
# Isabelle/PIDE for Visual Studio Code editor # |
2 |
||
3 |
* Extension for the editor ([TypeScript](extension/src/extension.ts)) |
|
4 |
* Language Server protocol implementation ([Isabelle/Scala](src/server.scala)) |
|
5 |
||
6 |
||
64696 | 7 |
## Run ## |
64605 | 8 |
|
64757 | 9 |
* Extensions: search for "Isabelle", click "Install" |
64605 | 10 |
|
11 |
* Preferences / User settings / edit settings.json: e.g. |
|
12 |
`"isabelle.home": "/home/makarius/isabelle/repos"` |
|
13 |
||
14 |
* File / Open Folder: e.g. `src/HOL/Isar_Examples/` then open .thy files |
|
15 |
||
16 |
||
64696 | 17 |
## Debug ## |
64605 | 18 |
|
19 |
* shell> `code src/Tools/VSCode/extension` |
|
20 |
||
21 |
* View / Debug / Launch Extension |
|
22 |
||
23 |
* File / Open Folder: e.g. `src/HOL/Isar_Examples/` then open .thy files |
|
24 |
||
25 |
||
64696 | 26 |
## Build ## |
27 |
||
64740 | 28 |
* shell> `cd src/Tools/VSCode/extension` |
29 |
||
30 |
* shell> `isabelle vscode_grammar` |
|
31 |
||
64872
9c194386db8d
generated configuration for Prettify Symbols Mode;
wenzelm
parents:
64757
diff
changeset
|
32 |
* shell> `isabelle vscode_symbols` |
9c194386db8d
generated configuration for Prettify Symbols Mode;
wenzelm
parents:
64757
diff
changeset
|
33 |
|
64740 | 34 |
* shell> `vsce package` |
64696 | 35 |
|
36 |
||
64605 | 37 |
## Relevant links ## |
38 |
||
39 |
### VSCode editor ### |
|
40 |
||
41 |
* https://code.visualstudio.com |
|
42 |
* https://code.visualstudio.com/docs/extensionAPI/extension-points |
|
43 |
* https://code.visualstudio.com/docs/extensions/example-language-server |
|
44 |
* https://github.com/Microsoft/vscode-languageserver-node-example |
|
45 |
||
46 |
||
47 |
### Protocol ### |
|
48 |
||
49 |
* https://code.visualstudio.com/blogs/2016/06/27/common-language-protocol |
|
50 |
* https://github.com/Microsoft/vscode-languageserver-node |
|
51 |
* https://github.com/Microsoft/language-server-protocol |
|
52 |
* https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md |
|
53 |
* http://www.jsonrpc.org/specification |
|
54 |
* http://www.json.org |
|
55 |
||
56 |
||
57 |
### Similar projects ### |
|
58 |
||
59 |
* Coq: https://github.com/siegebell/vscoq |
|
60 |
* OCaml: https://github.com/freebroccolo/vscode-reasonml |
|
61 |
* Scala: https://github.com/dragos/dragos-vscode-scala |
|
62 |
* Rust: |
|
63 |
* https://github.com/jonathandturner/rls |
|
64 |
* https://github.com/jonathandturner/rls_vscode |
|
65 |
* https://github.com/RustDT/RustLSP |