src/Tools/VSCode/README.md
author wenzelm
Sun, 01 Jan 2017 21:26:26 +0100
changeset 64736 07bf45283b92
parent 64733 20174e871623
child 64740 01af31db2720
permissions -rw-r--r--
clarified file name;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
64605
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
     1
# Isabelle/PIDE for Visual Studio Code editor #
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
     2
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
     3
* Extension for the editor ([TypeScript](extension/src/extension.ts))
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
     4
* Language Server protocol implementation ([Isabelle/Scala](src/server.scala))
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
     5
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
     6
64696
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
     7
## Run ##
64605
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
     8
64696
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
     9
* Extensions: search "Isabelle 0.1.0", click "Install"
64605
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    10
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    11
* Preferences / User settings / edit settings.json: e.g.
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    12
    `"isabelle.home": "/home/makarius/isabelle/repos"`
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    13
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    14
* File / Open Folder: e.g. `src/HOL/Isar_Examples/` then open .thy files
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    15
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    16
64696
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
    17
## Debug ##
64605
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    18
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    19
* shell> `code src/Tools/VSCode/extension`
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    20
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    21
* View / Debug / Launch Extension
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    22
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    23
* File / Open Folder: e.g. `src/HOL/Isar_Examples/` then open .thy files
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    24
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    25
64696
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
    26
## Build ##
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
    27
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
    28
* shell> `cd src/Tools/VSCode/extension; vsce package`
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
    29
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
    30
64605
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    31
## Relevant links ##
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    32
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    33
### VSCode editor ###
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    34
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    35
* https://code.visualstudio.com
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    36
* https://code.visualstudio.com/docs/extensionAPI/extension-points
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    37
* https://code.visualstudio.com/docs/extensions/example-language-server
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    38
* https://github.com/Microsoft/vscode-languageserver-node-example
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    39
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    40
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    41
### Protocol ###
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    42
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    43
* https://code.visualstudio.com/blogs/2016/06/27/common-language-protocol
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    44
* https://github.com/Microsoft/vscode-languageserver-node
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    45
* https://github.com/Microsoft/language-server-protocol
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    46
* https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    47
* http://www.jsonrpc.org/specification
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    48
* http://www.json.org
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    49
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    50
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    51
### Similar projects ###
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    52
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    53
* Coq: https://github.com/siegebell/vscoq
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    54
* OCaml: https://github.com/freebroccolo/vscode-reasonml
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    55
* Scala: https://github.com/dragos/dragos-vscode-scala
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    56
* Rust:
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    57
    * https://github.com/jonathandturner/rls
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    58
    * https://github.com/jonathandturner/rls_vscode
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    59
    * https://github.com/RustDT/RustLSP