Comments (6)
I actually tried to get workspaceContains
to work in activation, but ran into issues. Will revisit it again this week to fine tune that part.
https://code.visualstudio.com/api/references/activation-events#workspaceContains
from evidence-vscode.
We already perform many Evidence project detection checks and commands enablement.
This was added in (#18)
Current limitation
Mostly due to Sprint 1 only one week of dev constraint to get basic interactive commands working first:
- v1.0.0 only supports Evidence projects at the root/open workspace folder. I mentioned this in slack last week.
We'd need to extend those checks to detect nested Evidence projects for dbt, etc.
from evidence-vscode.
Treatment of status bar items / commands
When an evidence project is detected in the workspace, we should offer all of the commands and status bar items, regardless of what files are open in vscode.
Eventually we might have some commands which are file specific, but right now all of them are project-level.
Enabling and activating vscode extensions on startup is taxing and frowned upon in vscode dev community.
Evidence extension and commands get activated on these main language events in VS Code currently:
"activationEvents": [
"onLanguage:emd",
"onLanguage:markdown",
"onLanguage:javascript",
"onLanguage:json",
"onLanguage:svelte",
...
Opening any of those files in VS Code will activate Evidence extension and reveal available commands.
Also, many extensions contribute to the VS Code status bar. So, us taking space there without any emd documents to preview or update is hard to justify.
from evidence-vscode.
If it's possible to use logic beyond just the file extension to determine how to treat the file, I think we could use the above approach to make a simpler judgements about how to treat the .md files that the extension encounters:
- All .md files inside project-root/pages can safely be treated as evidence markdown
- All .md files outside of project-root/pages should be treated as regular markdown
I like this suggestion and will use it when I add the rest as described in #9 for the markdown detection.
from evidence-vscode.
- Makes sense to defer the monorepo support.
- Can you activate upon detecting a qualifying package.json in the workspace? I agree that always having the 'evidence run' command present in the status bar would not be desirable, but always having it there while you're in an Evidence project seems like the correct behaviour. Fine to defer it to feedback though.
- Re: #9, that's fantastic!
from evidence-vscode.
Most of the listed loose ends in this ticket were already resolved. See other referenced tickets.
The rest will be handled in #64 and other markdown related tickets.
from evidence-vscode.
Related Issues (20)
- Preview window shows up if you kill server before it has finished launch HOT 5
- Ctrl+R startServer keybinding collision with browser refresh in codespaces HOT 3
- Clean Install Walkthrough Flow HOT 1
- Make component props discoverable HOT 1
- Slash command is fired even when focus is outside of current file HOT 1
- Restore default `README.md` and standard `.md` markdown documents handling in VS Code IDE HOT 1
- New Evidence Project option in right-click menu shows up at the top of the list HOT 2
- Evidence: New Evidence Project - does not appear to fetch latest template HOT 1
- VSCode: Remove 'tab target' in SQL code blocks HOT 2
- Display current version of node if incompatible
- Extension does not activate in evidence project HOT 6
- VS Code re-opens the file-select window on top of the error message when trying to create evidence in non empty folder
- Create Templated Page from Query does not work without a link column HOT 2
- Extension is not activitated HOT 6
- Curating of CLI information
- Terminology of commands exposed to users HOT 1
- Setting to prefer external browser rather than simple browser HOT 1
- Remove Create Evidence Project from Template
- Button placement/icon to start/stop server HOT 1
- Automatic server start causes second loading message to appear
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from evidence-vscode.