Skip to content
This repository has been archived by the owner on Sep 24, 2021. It is now read-only.

theia-ide/theia-go-extension

Repository files navigation

Theia Go Extension

An extension for the Theia-IDE to support the Go language, using the Go language server.

Getting started

Install nvm.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.5/install.sh | bash

Install npm and node.

nvm install 8
nvm use 8

Install yarn.

npm install -g yarn

Running the browser example

yarn rebuild:browser
cd browser-app
yarn start

Open http://localhost:3000 in the browser.

Running the Electron example

yarn rebuild:electron
cd electron-app
yarn start

Developing with the browser example

Start watching of the hello world extension.

cd go-extension
yarn watch

Start watching of the browser example.

yarn rebuild:browser
cd browser-app
yarn watch

Launch Start Browser Backend configuration from VS code.

Open http://localhost:3000 in the browser.

Developing with the Electron example

Start watching of the hello world extension.

cd go-extension
yarn watch

Start watching of the electron example.

yarn rebuild:electron
cd electron-app
yarn watch

Launch Start Electron Backend configuration from VS code.

Publishing go-extension

Each change on master triggers a build on travis against Theia next. The resulting package is automatically published to as @theia/go:next.

For a release (or when Theia releases a new major), we have to build against Theia latest. To achieve that

rm yarn.lock               # make sure to re-install deps
sh theia-version.sh latest # set all dependencies to Theia to 'latest'
yarn                       # rebuild (don't forget!)
yarn run publish:latest    # publish
rm yarn.lock               # make sure to re-install deps
sh theia-version.sh next   # reset Theia dependencies to 'next'
yarn                       # make sure yarn-lock is reset to 'next'
git add -A
git commit -m 'Bumped version number'