jupyterlab / jupyterlab-celltags Goto Github PK
View Code? Open in Web Editor NEWA JupyterLab extension for notebook cell tags
License: BSD 3-Clause "New" or "Revised" License
A JupyterLab extension for notebook cell tags
License: BSD 3-Clause "New" or "Revised" License
Hi all,
The new version of celltags, currently in progress, will have an updated UI in which clicking on a tag automatically selects the corresponding cells within the notebook (currently, an additional button must be pressed to perform this action). Here is an idea of what this might look like:
I am hoping to get some insight on what users would expect/prefer to happen if, with a tag already selected ("assert"), they clicked another tag (e.g., bootstrap). The main 3 possibilities I am considering are:
The cell "tags"
field should be an array of strings. However, the user can put any data in the cell metadata. When I was testing this, I accidentally put a string in the tags field, e.g.
{
"tags": "mytag"
}
and found that I got tags for "m", "y", "t", "a", and "g". We should do some validation on the tag values.
...with a brief description of what exactly jupyterlab-celltags
does.
First congratulations for this awesome plugin !
Many thanks :)
Do you think this plugin could be extented to have tags for an entire notebook and to be able to search tags within a predefined list of notebooks ?
A la Emacs org-mode (which has a very good jupyter-notebook support by the way) or Evernote.
Anyway many many thanks for jupyterlab-celltags !
Hi, I love this extension!
I use it for running specific cells in the notebook (probably I'm not the only one).
The problem - I cannot do it fast with keyboard.
Now I'm:
I wonder if it would be possible to simply add "RUN all cells with this tag" bellow "select all cells with this tag" in extension sidebar on the left. It would speed up UX so much!
Never the less, awesome job!!!
Hello celltags users! @markellekelly is working on refactoring code for this extension with the intent to merge into core JupyterLab over on this repo. To supplement her efforts, I'm going to be working on the related UX and UI updates for cell tags.
We're going to be building celltags from the ground up, so we are starting by focusing on the following functionalities:
Another way of putting this is that we are currently focusing on single tag manipulation for a single cell at a time.
I want to use this issue to keep you updated on progress and give you a chance to give feedback on proposed changes.
(If you're wondering who I am, I'm a UX/UI intern at Jupyter Cal Poly. You may have seen me working on a rich text mode extension for the last few months.)
My JLab extension jupyterlab-sos uses a few tags to control the generation of HTML reports. Currently it adds tags and removes tags using keyboard shortcuts. However, the changes are done under the hood and are not reflected in the side panel when this extension is installed.
Is there any event or hook so that my extension can notify jupyterleb-celltags
changes of cell meta data? It might be easier to use this extension to add/remove tags, but I do not know if an API is provided.
After a successful update to jupyterlab 1.0.1 and installation of celltags extension, I do not see any of the features present in the appropriate cell tools tab. I made a clean installation of jupyterlab with pip in python 3.6.
Below is the labextension list:
(base) bjarne@huygens-hpc:~$ jupyter labextension list
JupyterLab v1.0.1
Known labextensions:
app dir: /home/bjarne/.pyenv/versions/3.6.0/share/jupyter/lab
@jpmorganchase/perspective-jupyterlab v0.2.23 enabled OK
@jupyter-widgets/jupyterlab-manager v1.0.0 enabled OK
@jupyter-widgets/jupyterlab-sidecar v0.3.0 enabled OK
@jupyterlab/celltags v0.1.4 enabled OK
@jupyterlab/toc v1.0.0-rc.0 enabled OK
@krassowski/jupyterlab_go_to_definition v0.4.0 enabled OK
ipysheet v0.4.1 enabled OK
jupyterlab-system-monitor v0.4.0 enabled OK
jupyterlab-topbar-extension v0.4.0 enabled OK
lineup_widget v1.0.7 enabled OK
plotlywidget v0.10.0 enabled OK
qgrid v1.1.1 enabled OK
and the appearance in jupyterlab:
Any suggestions on how to fix this?
Turns out I was not running the correct environment. Now, after running the correct environment with JLab 1.0.1, I see that the cell tags are listed in the Table of Contents tab, but I cannot add new tags and I cannot select multiple cells by selecting a tag - it merely filters the toc. Should the celltags tools not still be located under the Notebook Tools tab?
As this repository has been merged into the core of jupyterlab, this repository will be archived. The code now lives in https://github.com/jupyterlab/jupyterlab/tree/master/packages/celltags and https://github.com/jupyterlab/jupyterlab/tree/master/packages/celltags-extension
A cell tags UI is present in jupyter notebook by default, and I would argue that it would make sense for it to be present in lab by default as well. Are there any plans to merge this extension into jupyterlab core at some point? Are there any good arguments for not merging, or delaying it further?
Hi there!
Is there a way to apply tag to multiple cells? When I select multiple cells and apply a tag, it is only applied to the last cell in the sequence, I'd have to manually apply tag one by one. Maybe this is a version mismatch thing, since my extension doesn't have the same interface as the demo (the "select cells" button is still in the TOC tab). However, I tried to update it with jupyter labextension update @jupyterlab/celltags
but it says that my version (v0.1.4
) is up to date.
I've tried installing celltags using the method described.
I can see it in the Extension Manager as installed and enabled, but when I go to the Cell Inspector, I dont see any Tags option. I'm also unable to manually input metadata.
Using JupyterLab 0.35.4 through Anaconda.
Any ideas what the issue could be?
Hi,
I'm trying to install the extension on the last version of jupyterlab (v1.1.1).
As you can see on the screenshot below, icons are not rendered anymore.
After investigation, it seems that the upgrade of babel from version 5 to 6 is responsible of this issue. It's certainly updated in the dependency tree of other packages and extensions in the Jupyter environment.
The require function behavior has changed, and the call to the "require" function (here: https://github.com/jupyterlab/jupyterlab-celltags/blob/master/src/components/tag.tsx#L117) now returns an object, and not a string as expected.
From web browser :
From the code, this call returns an object :
src={require('../../static/add_blue.svg')}
The fix which returns what's expected for a src attribute :
src={require('../../static/add_blue.svg').default}
Another solution would be to use this plugin : https://www.npmjs.com/package/babel-plugin-add-module-exports
Regards,
Jérémy
Hello!
Great extension!
From what I can see, if I assign tags to markdown cells, they do not persist if I close the file (after saving) and open it up again. I don't see this behaviour for tags assigned to code cells.
It would be really helpful if I can assign persistent tags to markdown cells. :)
Thank you so much!
Hi,
I'm running Jupyterlab version 0.35.2 and I think the latest extension version (I'm not sure how to check that). However, I don't see an option to "select all cells with this tag" option is not available for me. Any ideas?
Hello,
It used to be posible to select cells by label using the table of content. I have updated the installation from anaconda from scratch and this feature is no longer present. Now you can only use tags to filter from the TOC. I really liked this feature and I wonder if I have some problem in the installation or if it is removed.
Best regards,
Sergio
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.