Git Product home page Git Product logo

Comments (6)

RandomFractals avatar RandomFractals commented on June 17, 2024 1

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.

RandomFractals avatar RandomFractals commented on June 17, 2024

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.

RandomFractals avatar RandomFractals commented on June 17, 2024

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.

RandomFractals avatar RandomFractals commented on June 17, 2024

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:

  1. All .md files inside project-root/pages can safely be treated as evidence markdown
  2. 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.

mcrascal avatar mcrascal commented on June 17, 2024
  1. Makes sense to defer the monorepo support.
  2. 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.
  3. Re: #9, that's fantastic!

from evidence-vscode.

RandomFractals avatar RandomFractals commented on June 17, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.