GithubHelp home page GithubHelp logo

andrew-lis / workbench Goto Github PK

View Code? Open in Web Editor NEW
11.0 4.0 1.0 1.32 MB

Workbench - the VSCode Extension

Home Page: https://marketplace.visualstudio.com/items?itemName=andrew-lis.workbench

License: MIT License

TypeScript 100.00%

workbench's Introduction

Workbench - the VSCode Extension

Group favorite files into a workbench!

The purpose of this extension is to be a small helper that collects all your favorite files together (into a workbench) and provides an easy navigation between them.

This is a beta version. Please read the roadmap and raise an issue if you see how this extension can be made better!

Usage

Mark a file as favorite from the Command Palette or editor’s Title Menu.

adding a file from title menu

Browse favorite files with a Alt+Q shortcut (type to filter by alias):

browsing files

To rename an alias of a favorite file:

  • Open the config file (command: Workbench: Open Config)
  • Edit the alias manually
  • Reload the config file (command: Workbench: Reload Config)

Features

  • Adding a file to the workbench (command: Workbench: Add File)
    • As a relative path
    • Duplicates are rejected
    • Parent directory name used as prefix (can be disabled through configuration foxWorkbench.prefixAliasWithDirName)
  • Listing files from a workbench (i.e. browsing favorites)
    • Command: Workbench: List Files
    • Shortcut: Alt+Q (works in the editor and on explorer)
    • An alias is created with a prefix number
    • The list is sorted by alias
  • Open all favorite files
    • Command: Workbench: Open All Files
  • Removing an opened file from the workbench (command: Workbench: Remove Current File)
  • Removing chosen file from the workbench (command: Workbench: Remove Chosen File)
  • Removing all files (i.e. clearing the workbench) (command: Workbench: Clear All Files)
    • With confirmation dialog
  • Data are stored as an easily accessible JSON file (config)
    • Location: ./.vscode/workbench.json
  • Reloading the config file
    • Command: Workbench: Reload Config
  • Opening the config file for edit
    • Command: Workbench: Open Config
    • File is not reloaded automatically, use Workbench: Reload Config command

Development Notes

  • TypeScript 2 is used
  • Promises are handled with await operator

Roadmap

  • External editions of storage file (workbench.json) should trigger a reload of in-memory data
  • Editing file aliases
  • [Epic] Switch between multiple workbenches

Known Issues

  • Editing an alias requires triggering a config reload File aliases can be renamed to anything by editing the workbench.json file and invoking Workbench: Reload Config. There are features on the roadmap to enable automatic reloads and allow alias editing from a command.

workbench's People

Contributors

andrew-lis avatar boyangwang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

boyangwang

workbench's Issues

We should support workspace

Currently it creates workbench config in the first folder of workspace folders.

Ideally, we can store this in workspace settings (inside .vscode-workspace file) so that it follows workspace

Suggestion: config workbench for add path in alias

Hi, very useful extension, however I work with ReactJS project and there all files are components with this structure:
screenshot_61
as you can see there is unclear which file I need:
screenshot_62
of course I can fix alias directly in workbench file, but this is really annoying, is it possible configure extension for add folder name (or even full path) in alias automatically?

Panel of Open Files like "Open Editors"

Really cool extension, the only thing missing for me is a Panel like "Open Editors" for all Files added to the Workbench. Maybe i try doing it myself, i wanted to learn writing extensions anyway :)

Allow files outside of workspace to be added and used

Hi! Great extension, thanks!

I want to do a feature request (or maybe bug report) and I will be happy to submit a PR. The feature is this: if you add a file from outside of current workspace (that is, e.g. you added /etc/hosts to workbench), it will try to find from workbench and give warning:

Ideally, it should respect absolute path in workbench.json. If it starts with a '/' or '~', as in /etc/hosts, resolve accordingly

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.