Giter VIP home page Giter VIP logo

vscode-jupyter-powertoys's Introduction

Project

This Visual Studio Code extension provides experimental features to extend the Jupyter notebook experience in VS Code.

This extension is intended to supplement the features provided by the main Jupyter extension. As this extension is providing experimental features, there is no set roadmap for how features will be added or removed from it. Features may be added or removed at any time and there is no guarantee of future support by virtue of inclusion in the extension now. Features in this extension that see high usage may be considered for removal from this extension and inclusion in the main Jupyter VS Code extension. In that case, best efforts will be made to notify of the change and migrate settings if possible.

If these tools aren't quite satisfying your need for something new and cool, also be sure to checkout these other standalone Jupyter Extension addons:

  • Gather - Quickly extract tidy scripts or notebooks from your mess of experimentation.
  • Pyodide Kernel - Yes, you can run Python in the browser without the need to install or configure any Jupyter server!

Contributing

This project uses GitHub Issues to track bugs and feature requests. Please search the existing issues before filing new issues to avoid duplicates. For new issues, file your bug or feature request as a new Issue.

For help and questions about using this project, please start a Discussion on our GitHub Discussions page.

For those interested in contributing to the code of this project please see the contributing guide.

These are experimental features, so support for help and bug fixing regarding them may be limited.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

Features

General Feature Usage

All features provided by the Jupyter PowerToys extension can be enabled or disabled via settings. Search for Jupyter PowerToys from the VS Code settings UI and change the enabled setting to add or remove any of the individual features provided by this extension.

Notebook Run Groups

The notebook run groups feature provides the ability to group notebook cells into a sets of cells which can be executed as a group together. The Jupyter > Notebook Run Groups > Group Count setting controls the number of these groups available, from one to three. Icons to add or remove cells from groups are added to the toolbar of each notebook cell. Cell groups can be executed via the command palette, optional icons in the cell toolbar, or from the dropdown on the cell run button.

Contextual Help

Contextual help provides help text returned by the kernel when changing cursor position in a notebook.

The amount of help text can be controlled with the jupyter.contextualHelp.detailLevel setting.

Kernel Management panel

List, start, stop, reset, kernels all from a new convenient Jupyter sidebar.

Recording 2022-05-05 at 17 37 21

vscode-jupyter-powertoys's People

Contributors

donjayamanne avatar gjsjohnmurray avatar greazer avatar ianmatthewhuff avatar lramos15 avatar lszomoru avatar microsoft-github-operations[bot] avatar microsoftopensource avatar rchiodo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vscode-jupyter-powertoys's Issues

[Bug] Copy and paste not working

When I try to copy something from contextual help panel it won't copy the item to my clipboard and there is a option for cut but if i press that , the cell in my jupyter notebook disappear

2022-12-17

pyodide opencv-python package not available

The opencv-python package available in the pyodide kernel reports not available when running the kernel from vscode.dev

from platform import python_version
print(python_version())
import cv2 as cv

3.9.5

ModuleNotFoundError Traceback (most recent call last)
Cell In[24], line 7
5 from platform import python_version
6 print(python_version())
----> 7 import cv2 as cv

ModuleNotFoundError: No module named 'cv2'

#############################
The test file from the pyodide repo uses import cv2 as cv for importing the package. https://github.com/pyodide/pyodide/blob/main/packages/opencv-python/test_opencv_python.py

activeKernels.filter is not a function

can't retrieve active kernel from the sidebar with the error prompt activeKernels.filter is not a function. let me know how I can further provide debug log, thanks.

[FR] Add shortcut to clean specify cell group.

Hi,there. Just came across an engineering issue.

Proposal Summary

Add shortcut to clean specify cell group could be very helpful.

Motivation

After tagged a couple of cells to groups, things become kind of a mess. Say if clean and rebuild group 1. Currently, it seems to have to scroll down the whole notebook to check and untag group cells individually.
Either a function to list all the cells by which specify group hold or a group clean shortcut could help.

Update to use new cell ContextKeys API for notebook run groups

Due to previous API limitations the visibility of the icons to add cells to and from run groups were all keyed off the active notebook cell. Here is an example of the issue:

image

Note with two docs side by side the active selection is in the right document. But in the left document the cell UI is still visible and it's incorrect (it's allowing an add to a group that already has it). With the new support for per cell context resources we can now fix this up.

PowerToys makes jupyter notebook so slow with multiple dictionaries

I have multiple dictionaries with length 10,000 created and each key is associated with a (1, 300) vector. Then suddenly, running cells became so slow on the notebook. It took a few mins to show a single key-value pair, and even took about 4 mins to submit a written function.

So I checked executing notifications, and turned out that it might be caused by PowerToys.

When I submitted a function, and there appeared multiple Executing code running at the same time.

After disabling it, everything went back to normal.

image

[Bug] Groups do not update anymore

Clicking the button does not cause the group to be displayed at the bottom, nor does it actually add the group to the JSON.
The group is displayed as soon as you change something in the cell or it disappears from the screen once, but not in the JSON.
Furthermore, the buttons have no effect at all on new cells, only after reloading the window they have any effect at all.

grafik

Extension Version: v0.0.5
Jupyter Extension: v2022.6.1201981810
VSCode: 1.69.2

Closed remote kernel won't disappear from jupyter powertoys.

to reproduce:

  1. open a jupyter notebook
  2. when selecting kernel, specify a remote jupyter server
  3. run any code in the notebook to start the kernel
  4. close the jupyter kernel in jupyter powertoys menu
  5. refresh the session list

for screenshots see below

powertoys.issue.mp4

I am pretty sure that the kernel is closed after I click the dustbin icon as the process disappeared from htop, and the remote server showed relevant log, and when I run the code cell again it gave me:
image

So I believe the kernel has been shutdown correctly but the kernel refresh process have some issue

Tasks

No tasks being tracked yet.

Delete `Restart Kernel` command

When I search restart kernel on the command palette, I see two commands to restart the kernel:
Screenshot_20230124_072914

And clicking on the jupyter-kernelManager.restartKernel command gives me error:
Screenshot_20230124_073005

Contextual help on R documents does not show the head title lines in correct encodings as in documents contents

The contextual help works very good for python notebooks. For R documents the contextual help also works well, except those head lines, titles, and subtitles. It looks like those lines are in different encodings than the documents contents. The contextual help on those lines often have one extra char before each of the letters. Seems like utf16 encoding strings show in utf8 settings.

I also have jupyterhub running jupyterlab notebooks. The contextual help on those jupyterlab pages do not have this issue. The vscode is attached to the same R kernel on the same docker container which jupyterhub is running on. I think both of vscode and jupyterhub use the same R documents from the same source. So for vscode there may be more encoding aspects to be considered. Thanks your for
you help on this issue.

Improving cell grouping UX

I think the cell grouping experience can definitely be improved here and think that it would benefit a lot of users! Not to make this into a spec, and understanding that this won't be "to do now", but just brainstorming here:

  • Ability to create more than 2 groups
  • Intuitive key bindings for grouping cells, running them, and then ungrouping them
  • Would be nice to have the grouping persist via git (e.g. through metadata)
  • Creating custom names for groups
  • Being able to easily copy and paste a group of cells to a different notebook
  • Being able to always start a notebook with a specific group (e.g. "I use similar imports all the time")

image

Extension won't install

I tried to install the extension through VSCode and receive a notice it can't be installed with the current version. I'm running version 1.66.2 which is current.

Add detailed Python env info to kernels

Would be nice if we can see all the packages installed for environments (both the ones in the "Kernel Specifications" and in the "Active Jupyter Sessions"). Also, the dropdown for an Active Jupyter Sessions doesn't do anything (orange circle), and that's where I'd expect this information to be at:
image

As a reference, kind of like how Don's Python Environment Manager lists "Info" and "Packages" for each env:
image

Make Contextual Help completely available to .py files using the Interactive Window

Hi folks, I'm really glad this extension is being developed since I really believe this is the most important Python issue in VScode right now, as discussed here.

The Docs View extension is not a satisfying alternative because it does not display the full info for some methods/functions.

Also, it would be very helpful to be able to search the Contextual Help and to navigate to previous and next help tabs (RStudio Help pane is a very good reference).

Thank you

Adopt new notebookWorkspaceEdit proposal

๐Ÿ‘‹ We're currently working to finalize VS Code apis for editing notebooks. As part of this work, we've deprecated the notebookEditorEdit API proposal and have replaced it with a new notebookWorkspaceEdit proposal

This proposal should offer the same functionality as the old API, but expresses it differently.

However before finalizing this new API, we'd like to hear your feedback about it. Please try migrating to the new notebookWorkspaceEdit API and let me know if you run into any problems or have any concerns

If everything looks good with the notebookWorkspaceEdit proposal, please go ahead and check in the migration to the new API so we can eventually remove the old, now deprecated notebookEditorEdit proposal

See microsoft/vscode#149181 for details

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.