Skip to content

Commit e9070e9

Browse files
committed
Update doc for jlab 1.0
1 parent da920f7 commit e9070e9

File tree

1 file changed

+42
-33
lines changed

1 file changed

+42
-33
lines changed

README.md

Lines changed: 42 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,16 @@ Quickly open a file in JupyterLab by typing part of its name
88

99
## Compatibility
1010

11-
* Python >=3.6.x
12-
* JupyterLab 0.35.x
13-
* Jupyter Notebook >=5.2.x
14-
* Notebook server configurations where notebook documents and other files reside
15-
on the local filesystem (which is the the notebook server default)
11+
- Python >=3.6.x
12+
- JupyterLab >=1.0,<2.0
13+
- Jupyter Notebook >=5.2,<6.0
14+
- Notebook server configurations where notebook documents and other files reside on the local
15+
filesystem (which is the the notebook server default)
1616

1717
## Install
1818

19-
Install the Jupyter Notebook server extension under `PREFIX` (e.g., the active
20-
virtualenv or conda env).
19+
Install the Jupyter Notebook server extension under `PREFIX` (e.g., the active virtualenv or conda
20+
env).
2121

2222
```
2323
pip install jupyterlab-quickopen
@@ -31,8 +31,8 @@ jupyter labextension install @parente/jupyterlab-quickopen
3131

3232
### Install Alternatives
3333

34-
You can use `jupyter serverextension` commands to enable and disable the
35-
server extension in different contexts, e.g.:
34+
You can use `jupyter serverextension` commands to enable and disable the server extension in
35+
different contexts, e.g.:
3636

3737
```
3838
jupyter serverextension enable --py jupyterlab_quickopen --user
@@ -43,15 +43,15 @@ jupyter serverextension disable --py jupyterlab_quickopen --sys-prefix
4343

4444
### A Keyboard Shortcut
4545

46-
You can assign a keyboard shortcut to show the quickopen panel at any time. Open
47-
the keyboard editor by clicking *Settings &rarr; Advanced Settings Editor
48-
&rarr; Keyboard Shortcuts*. Then enter JSON in the *User Overrides* text area
49-
like the following, adjusting the `keys` value to assign the shortcut of your
50-
choosing:
46+
You can assign a keyboard shortcut to show the quickopen panel at any time. Open the keyboard editor
47+
by clicking _Settings &rarr; Advanced Settings Editor &rarr; Keyboard Shortcuts_. Then enter JSON in
48+
the _User Overrides_ text area like the following, adjusting the `keys` value to assign the shortcut
49+
of your choosing:
5150

5251
```
5352
{
54-
"quickopen:activate": {
53+
"shortcuts": [
54+
{
5555
"command": "quickopen:activate",
5656
"keys": [
5757
"Accel Ctrl P"
@@ -60,34 +60,40 @@ choosing:
6060
"title": "Activate Quick Open",
6161
"category": "Main Area"
6262
}
63+
]
6364
}
6465
```
6566

6667
### Patterns to Exclude
6768

68-
You can control which files to exclude from the quick open list using
69-
Notebook server settings, JupyterLab settings, or both.
69+
You can control which files to exclude from the quick open list using Notebook server settings,
70+
JupyterLab settings, or both.
7071

71-
On the server side, use the `ContentsManager.allow_hidden`
72-
and/or `ContentsManager.hide_globs` settings. See the
72+
On the server side, use the `ContentsManager.allow_hidden` and/or `ContentsManager.hide_globs`
73+
settings. See the
7374
[documentation about Jupyter Notebook options](https://jupyter-notebook.readthedocs.io/en/stable/config.html)
7475
for details.
7576

76-
In the JupyterLab web app, open the *Settings* menu, click the *Advanced
77-
Settings Editor* option, select the *Quick Open* item in the *Raw View* sidebar,
78-
and enter JSON in the *User Overrides* text area to override the default
79-
values.
77+
In the JupyterLab web app, open the _Settings_ menu, click the _Advanced Settings Editor_ option,
78+
select the _Quick Open_ item in the _Raw View_ sidebar, and enter JSON in the _User Overrides_ text
79+
area to override the default values.
8080

8181
![Screenshot of the quick open settings editor](./doc/settings.png)
8282

8383
## Develop
8484

85-
The project includes a Makefile which makes setting up a development environment
86-
using `conda` easy.
85+
The project includes a Makefile which makes setting up a development environment using `pipenv`
86+
easy. You must also install the latest Node LTS release as a prerequisite.
8787

8888
```
89-
# Create a conda environment and install the lab/server extensions
90-
make conda-env
89+
# Create a dev environment
90+
make pipenv
91+
92+
# Activate the dev environment
93+
make shell
94+
95+
# Install the frontend and server extensions
96+
make build
9197
9298
# In one terminal, watch the frontend extension source for changes and rebuild
9399
# the extension package
@@ -98,13 +104,16 @@ make watch-src
98104
make watch-lab
99105
```
100106

101-
Keep an eye on the terminal running `watch-src` for TypeScript build errors.
102-
Keep an eye on the terminal running `watch-lab` to know when to refresh your
103-
browser. Quit and re-run the `make watch-lab` command any time you make
104-
changes to the **server** extension.
107+
Keep an eye on the terminal running `watch-src` for TypeScript build errors. Keep an eye on the
108+
terminal running `watch-lab` to know when to refresh your browser. Quit and re-run the
109+
`make watch-lab` command any time you make changes to the **server** extension.
105110

106111
## FAQ
107112

108-
*Does this belong in JupyterLab?*
113+
_Does this belong in JupyterLab?_
109114

110-
Maybe. To start, I wanted to do some hacking and it's easiest to do that in a small, independent repo. Putting this feature into JupyterLab-proper requires making the server-side portion work with `ContentManagers` that are not based on the local filesystem. That change might require a new `ContentManager` API since walking the file hierarchy via HTTP calls is pretty heavyweight. Python/TypeScript tests are also required.
115+
Maybe. To start, I wanted to do some hacking and it's easiest to do that in a small, independent
116+
repo. Putting this feature into JupyterLab-proper requires making the server-side portion work with
117+
`ContentManagers` that are not based on the local filesystem. That change might require a new
118+
`ContentManager` API since walking the file hierarchy via HTTP calls is pretty heavyweight.
119+
Python/TypeScript tests are also required.

0 commit comments

Comments
 (0)