Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lingua Franca Package Explorer: extensions to UI in VScode plugin #156

Merged
merged 41 commits into from
Oct 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
c0b6335
Experimental extensions to UI in VScode plugin
edwardalee Apr 18, 2024
c793eb0
Push LF data provider
edwardalee Apr 21, 2024
f5b9fc6
Add LSP message.
soerendomroes Apr 23, 2024
6428a3d
Bug Fix - wait until LS is ready to handle requests
Apr 23, 2024
f1279d6
Set-up notification handler from server to client
Apr 23, 2024
f468764
Improved Tree View: hierarchical structure, go to file
Apr 29, 2024
1e31c70
Tree View: improved got-to-file command; added open-in-slit-view comm…
May 1, 2024
9ac3296
Implemented remote library management functionality
vinzbarbuto May 2, 2024
9ddeb4b
Refactored Remote view to Liingo Libraries; enhanced tree view refres…
vinzbarbuto May 10, 2024
34654e6
Updated Lingo Libraries path
vinzbarbuto Jun 4, 2024
9ff17fc
Solved bug in importReactorCommand function
vinzbarbuto Jun 20, 2024
ef739ca
Updated README.md
vinzbarbuto Jul 8, 2024
3d41e4c
Updated icon.png
vinzbarbuto Jul 8, 2024
4a39103
Added 'GoToFile' inline action for Reactor view elements; Moved 'open…
vinzbarbuto Jul 16, 2024
52e636d
Added LF_PACKAGE_EXPLORER.md
vinzbarbuto Jul 16, 2024
d3f849e
Update and rename LF_PACKAGE_EXPLORED.md to LF_PACKAGE_EXPLORER.md
vinzbarbuto Jul 16, 2024
1d67e69
Update README.md
vinzbarbuto Jul 16, 2024
7b1772b
Merge branch 'main' into extending
vinzbarbuto Jul 16, 2024
7ca960c
Update src/lfview/lf-data-provider.ts
vinzbarbuto Jul 16, 2024
c10ec70
Update src/lfview/lf-data-provider.ts
vinzbarbuto Jul 16, 2024
0afcf17
Update src/build_commands.ts
vinzbarbuto Jul 16, 2024
f311bf3
Update LF_PACKAGE_EXPLORER.md
vinzbarbuto Jul 16, 2024
ec3e44d
Update src/extension.ts
vinzbarbuto Jul 16, 2024
d18dad3
Update src/extension.ts
vinzbarbuto Jul 16, 2024
9a74383
Resolved merge conflicts and fixed type errors
vinzbarbuto Jul 17, 2024
fc33abc
Add proper types instead of using any; Moved commandPalette in the ri…
vinzbarbuto Jul 18, 2024
dfdb927
Improve reactor highlighting for “GoToFile” action; Enhanced insertio…
vinzbarbuto Jul 19, 2024
2bb5a7d
Merge branch 'main' into extending
edwardalee Aug 19, 2024
7c60934
Refactored: Moved searchPath from lib/ to src/lib/; Added new error h…
vinzbarbuto Aug 20, 2024
65a500e
Update LF_PACKAGE_EXPLORER.md
vinzbarbuto Aug 28, 2024
ef4da34
Update Package Explorer description to reflect recent changes
vinzbarbuto Aug 28, 2024
3deb853
Add support to new import statement
vinzbarbuto Sep 12, 2024
a58711b
Add support to new import statement v2
vinzbarbuto Sep 12, 2024
6b5b2f7
Add support to new import statement v3; Modify importReactorCommand s…
vinzbarbuto Sep 12, 2024
87b6bdf
Added support for the new Lingo libraries import statement
vinzbarbuto Sep 24, 2024
e6bdce4
Removed LF_PACKAGE_EXPLORER.md
vinzbarbuto Sep 30, 2024
9295b1e
User interface redesign
vinzbarbuto Oct 3, 2024
58858b4
Merge branch 'main' into extending
vinzbarbuto Oct 3, 2024
2ac798e
Prevent file save on import addition to avoid tree view refreshes
vinzbarbuto Oct 3, 2024
662eff4
Apply suggestions from code review
lhstrh Oct 9, 2024
2e7a5be
Update README.md
lhstrh Oct 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,6 @@ node_modules/*
out/
.gradle/*
__pycache__/*
.DS_Store
lfw-pkg/
dist/
20 changes: 20 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
"outFiles": [
"${workspaceFolder}/out/**/*.js"
],
"sourceMaps": true,
"request": "launch",
"type": "extensionHost",
"preLaunchTask": "${defaultBuildTask}"
Expand Down Expand Up @@ -58,6 +59,25 @@
"${workspaceFolder}/out/**/*.js"
],
},
{
"name": "Launch VS Code Extension (Socket) LF",
"type": "extensionHost",
"request": "launch",
"args": [
"--extensionDevelopmentPath=${workspaceFolder}/",
],
"env": {
"LF_LS_PORT": "7670"
},
"skipFiles": [
"<node_internals>/**"
],
"sourceMaps": true,
"smartStep": true,
"outFiles": [
"${workspaceFolder}/out/**/*.js",
],
},
{
"args": [
"--extensionDevelopmentPath=${workspaceFolder}",
Expand Down
9 changes: 8 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,14 @@
![Open VSX Downloads](https://img.shields.io/open-vsx/dt/lf-lang/vscode-lingua-franca?label=Open%20VSX%20Registry%20%E2%A4%93)
![Visual Studio Marketplace Downloads](https://img.shields.io/visual-studio-marketplace/d/lf-lang.vscode-lingua-franca?label=VS%20Marketplace%20%E2%A4%93)

This extension adds language support for [Lingua Franca (LF)](https://www.lf-lang.org/). It is based on the LF Language and Diagram Server and provides:
This extension adds language support for [Lingua Franca (LF)](https://www.lf-lang.org/).

## ✨ Check out the new Lingua Franca Package Explorer! ✨
Click on the LF icon in the Activity Bar on the left, which features two distinct tree-view sections:
* **Local Libraries:** Unpublished libraries found in the local filesystem under `./src/lib`;
* **Lingo Libraries:** Published libraries downloaded into the workspace using the [Lingo package manager](https://github.com/lf-lang/lingo/).

## Other features
* find references
* folding ranges
* get workspace symbols
Expand Down
37 changes: 37 additions & 0 deletions images/logo/lf-logo-dark.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
34 changes: 34 additions & 0 deletions images/logo/lf-logo-light.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
133 changes: 132 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,24 @@
}
}
],
"colors": [
{
"id": "editorIcon.currentProject",
"description": "Color for a TreeIteem label",
"defaults": {
"dark": "#57cc99",
"light": "#57cc99"
}
},
{
"id": "editorIcon.notCurrentProject",
"description": "Color for a TreeIteem label",
"defaults": {
"dark": "#fcbf49",
"light": "#fcbf49"
}
}
],
"semanticTokenScopes": [
{
"scopes": {
Expand All @@ -83,7 +101,8 @@
},
{
"command": "linguafranca.buildAndRun",
"title": "Lingua Franca: Build and Run"
"title": "Lingua Franca: Build and Run",
"icon": "$(play)"
},
{
"command": "linguafranca.checkDocker",
Expand All @@ -94,10 +113,51 @@
"title": "New Lingua Franca File",
"shortTitle": "Lingua Franca File"
},
{
"command": "linguafranca.refreshEntries",
"title": "Refresh Tree View",
"icon": "$(refresh)"
},
{
"command": "linguafranca.goToFile",
"title": "Go To Selected File",
"icon": "$(go-to-file)"
},
{
"command": "linguafranca.importReactor",
"title": "Import Selected Reactor",
"icon": "$(insert)"
},
{
"command": "linguafranca.openInSplitView",
"title": "Open in Split View",
"icon": "$(split-horizontal)"
},
{
"command": "linguafranca.collapseAll",
"title": "Collapse All",
"icon": "$(collapse-all)"
},
{
"command": "linguafranca.getVersion",
"title": "Lingua Franca: Get Version"
},
{
"command": "linguafranca.includeProject",
"title": "Include in current project",
"icon": "$(desktop-download)"
},
{
"command": "linguafranca.goToLingoToml",
"title": "Go to Lingo.toml",
"icon": "$(edit)"
},
{
"command": "linguafranca.openInTerminal",
"title": "Open in Terminal",
"icon": "$(terminal)"
}

],
"configuration": {
"title": "LinguaFranca",
Expand All @@ -120,6 +180,11 @@
"when": "resourceLangId == lflang",
"command": "klighd-vscode.diagram.open",
"group": "navigation"
},
{
"when": "resourceLangId == lflang",
"command": "linguafranca.buildAndRun",
"group": "navigation"
}
],
"editor/context": [
Expand All @@ -146,7 +211,73 @@
"command": "linguafranca.getVersion",
"when": "false"
}
],
"view/title": [
{
"command": "linguafranca.refreshEntries",
"group": "navigation@1",
"when": "view == lf-lang-projects"
},
{
"command": "linguafranca.collapseAll",
"group": "navigation@2",
"when": "view == lf-lang-projects"
}

],
"view/item/context" : [
{
"command": "linguafranca.openInTerminal",
"group": "inline@1",
"when": "viewItem == project"
},
{
"command": "linguafranca.includeProject",
"group": "inline@1",
"when": "viewItem == root || viewItem == file-local"
},
{
"command": "linguafranca.goToFile",
"group": "inline@2",
"when": "viewItem == file-local || viewItem == file-lingo || viewItem == file-local-included || viewItem == reactor || viewItem == reactor-included"
},
{
"command": "linguafranca.openInSplitView",
"group": "inline@3",
"when": "viewItem == file-local || viewItem == file-lingo || viewItem == file-local-included"
},
{
"command": "linguafranca.openInSplitView",
"when": "viewItem == reactor || viewItem == reactor-included"
},
{
"command": "linguafranca.importReactor",
"group": "inline@3",
"when": "viewItem == reactor-included"
},
{
"command": "linguafranca.goToLingoToml",
"group": "inline",
"when": "viewItem == lingo"
}
]
},
"viewsContainers": {
"activitybar": [
{
"id": "lf-lang",
"title": "Lingua Franca Projects",
"icon": "images/logo/lf-logo-dark.svg"
}
]
},
"views": {
"lf-lang": [
{
"id": "lf-lang-projects",
"name": ""
}
]
}
},
"devDependencies": {
Expand Down
Loading
Loading