src/Tools/VSCode/README.md
author wenzelm
Mon, 22 May 2017 00:23:25 +0200
changeset 65897 94b0da1b242e
parent 65158 b87a972b965d
child 66596 c5bd8267d832
permissions -rw-r--r--
back to scala-2.11.8 due to apparent non-termination of HOL-Codegenerator_Test;
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
64757
7e3924224769 updated package;
wenzelm
parents: 64740
diff changeset
     9
* Extensions: search for "Isabelle", 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
65138
64dfee6bd243 added admin tool "isabelle build_vscode";
wenzelm
parents: 65060
diff changeset
    28
* shell> `isabelle build_vscode`
64740
01af31db2720 proper packaging;
wenzelm
parents: 64733
diff changeset
    29
65158
wenzelm
parents: 65138
diff changeset
    30
* Extensions / ... / Install from VSIX: `src/Tools/VSCode/extension/isabelle-X.Y.Z.vsix`
64696
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
    31
e991a4fab0dc publish extension on Visual Studio Marketplace;
wenzelm
parents: 64695
diff changeset
    32
64605
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    33
## Relevant links ##
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
### VSCode editor ###
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    36
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    37
* https://code.visualstudio.com
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    38
* https://code.visualstudio.com/docs/extensionAPI/extension-points
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    39
* https://code.visualstudio.com/docs/extensions/example-language-server
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    40
* https://github.com/Microsoft/vscode-languageserver-node-example
65060
98931050065f more links;
wenzelm
parents: 64872
diff changeset
    41
* https://github.com/Microsoft/vscode
64605
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
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    44
### Protocol ###
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    45
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    46
* https://code.visualstudio.com/blogs/2016/06/27/common-language-protocol
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    47
* https://github.com/Microsoft/vscode-languageserver-node
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    48
* https://github.com/Microsoft/language-server-protocol
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    49
* https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    50
* http://www.jsonrpc.org/specification
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    51
* http://www.json.org
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
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    54
### Similar projects ###
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    55
65060
98931050065f more links;
wenzelm
parents: 64872
diff changeset
    56
* Lean Prover: https://github.com/leanprover/vscode-lean
64605
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    57
* Coq: https://github.com/siegebell/vscoq
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    58
* OCaml: https://github.com/freebroccolo/vscode-reasonml
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    59
* Scala: https://github.com/dragos/dragos-vscode-scala
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    60
* Rust:
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    61
    * https://github.com/jonathandturner/rls
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    62
    * https://github.com/jonathandturner/rls_vscode
9c1173a7e4cb basic support for VSCode Language Server protocol;
wenzelm
parents:
diff changeset
    63
    * https://github.com/RustDT/RustLSP