Git Product home page Git Product logo

jupyterlab-celltags's Introduction

jupyterlab-celltags is archived. The code in this repo is outdated, and no new development work will occur here.

As of JupyterLab 2.0, jupyterlab-celltags has been pulled into JupyterLab core as the @jupyterlab/celltags package.

If you are using JupyterLab >=2.0, celltags are available by default. Please do not try to install this extension.

If you are using JupyterLab 1.x, you can still install and use this extension.

Binder

jupyterlab-celltags

The JupyterLab cell tags extension enables users to easily add, view, and manipulate descriptive tags for notebook cells. The extension includes the functionality to select all cells with a given tag, supporting the performance of any operation on those cells.

Prerequisites

  • JupyterLab

Install

jupyter labextension install @jupyterlab/celltags

Development

Contributing

If you would like to contribute to the project, please read our contributor documentation.

JupyterLab follows the official Jupyter Code of Conduct.

Dev Install

Requires node 4+ and npm 4+

# Clone the repo to your local environment
git clone https://github.com/jupyterlab/jupyterlab-celltags.git

# move into repo dir
cd jupyterlab-celltags

# build celltags and install it into jupyterlab
jlpm build:dev

To watch for/rebuild on changes to this extension's source code, run:

jlpm run build:watch

For the watch build, you will also need to separately rebuild Jupyterlab itself when you make changes. You can either do this manually:

jupyter lab build

or run Jupyterlab itself in watch mode, which will pick up the changes automatically (you'll still need to reload your browser yourself):

jupyter lab --watch

jupyterlab-celltags's People

Contributors

choldgraf avatar dependabot[bot] avatar ellisonbg avatar gnestor avatar jtpio avatar markellekelly avatar telamonian avatar zsailer avatar zuoyuanh 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  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

jupyterlab-celltags's Issues

Celltags refactor and design updates

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:

  1. View tags for a single selected cell
  2. Add tags
  3. Delete tags

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.)

tags not available in cell tools tab in Jlab 1.0.1

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:
celltags-issue

Any suggestions on how to fix this?

EDIT

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?

Apply tag to multiple cells at once

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.

Select all cells with this tag option not available

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?

Make tags persist for markdown cells

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!

Tags not available

(venv) (base) ➜ git:(master) jupyter labextension list
JupyterLab v0.35.4
Known labextensions:
app dir: /home/juan/Desktop/juan/bio/venv/share/jupyter/lab
@jupyterlab/celltags v0.1.4 enabled OK

What am I missing?

Screenshot from 2019-09-02 12-02-12

Icons are not rendered correctly

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.

image

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 :

image

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

CellTags not visible after install

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?

image

image

Check if tags are an array

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.

Run cells with selected tag

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:

  • selecting tab in left sidebar
  • click: "select all cells with this tag"
  • click away to the notebook (set focus)
  • press ctrl+enter to run it
    ...again and again

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!!!

Tag select in TOC

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

Hook or event for updating tags programmatically?

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.

notebooktag and search celltags in notebooks

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 !

Absob into lab core?

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?

Expand README

...with a brief description of what exactly jupyterlab-celltags does.

Looking for input on multiple selection in celltags 1.0

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:
image
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:

  1. Completely deselects the first tag and only considers the newly clicked tag
  2. Selects in the document the union of cells (i.e., any cell tagged with either of the tags.)
  3. Selects in the document the intersection of cells (any cell tagged with both tags).
    Thanks for your input!
    @ellisonbg

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.