jupyter / jupyter/notebook

Search And Replace: Search Filters: wrong number of selected cells

Open
#8,015 4 comments 2 reactions 0 assignees View on GitHub
bug
Dominant language
Jupyter Notebook
Stars
13.3k
Forks
5.8k
Avg merge
6d 11h
Merged PRs (30d)
7

Description

## Description

"Search Filters" pane of "Search And Replace" widget
shows wrong number of selected cells.

## Reproduce

1. Open Jupyter Notebook.
2. Create a cell.
3. Select both cells with `+`.
4. Actual: 2 cells are selected.
5. Press `+F`.
6. "Search And Replace" widget appears.
7. Click `Show Search Filters`.
8. "Search Filters" pane appears.
9. Expected: `Search in 2 Selected Cells`.
10. Actual: `Search in 1 Selected Cell`.

## Expected behavior

"Search Filters" pane of "Search And Replace" widget
shows wrong number of selected cells:
`Search in 2 Selected Cells`.

## Context

- Operating System and version: Calculate Linux (Gentoo-like).
- Browser and version: Chromium 149.0.7827.200.

- Jupyter Notebook version: 7.6.1.

Troubleshoot Output

which: no jupyter in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/22/bin)

$PATH:
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/opt/bin
/usr/lib/llvm/22/bin

sys.path:
/home/sasha/python-venv/bin
/usr/lib/python313.zip
/usr/lib/python3.13
/usr/lib/python3.13/lib-dynload
/home/sasha/python-venv/lib/python3.13/site-packages

sys.executable:
/home/sasha/python-venv/bin/python

sys.version:
3.13.14 (main, Jun 14 2026, 18:09:13) [GCC 15.2.1 20260214]

platform.platform():
Linux-6.18.33-calculate-x86_64-Intel-R-_Core-TM-_i5-7200U_CPU_@_2.50GHz-with-glibc2.43

pip list:
Package Version
------------------------- -----------
anyio 4.14.2
argon2-cffi 25.1.0
argon2-cffi-bindings 25.1.0
arrow 1.4.0
asttokens 3.0.2
async-lru 2.3.0
attrs 26.1.0
babel 2.18.0
beautifulsoup4 4.15.0
bleach 6.4.0
certifi 2026.7.22
cffi 2.1.0
charset-normalizer 3.4.9
comm 0.2.3
debugpy 1.8.21
defusedxml 0.7.1
et_xmlfile 2.0.0
executing 2.2.1
fastjsonschema 2.22.1
fqdn 1.5.1
h11 0.16.0
httpcore 1.0.9
httpx 0.28.1
idna 3.18
ipykernel 7.3.0
ipython 9.16.1
ipython_pygments_lexers 1.1.1
ipywidgets 8.1.8
isoduration 20.11.0
jedi 0.20.0
Jinja2 3.1.6
json5 0.15.0
jsonpointer 3.1.1
jsonschema 4.26.0
jsonschema-specifications 2025.9.1
jupyter 1.1.1
jupyter_builder 1.2.1
jupyter_client 8.9.1
jupyter-console 6.6.3
jupyter_core 5.9.1
jupyter-events 0.12.1
jupyter-lsp 2.3.1
jupyter_server 2.20.0
jupyter_server_terminals 0.5.4
jupyterlab 4.6.2
jupyterlab_pygments 0.3.0
jupyterlab_server 2.28.0
jupyterlab_widgets 3.0.16
lark 1.3.1
MarkupSafe 3.0.3
matplotlib-inline 0.2.2
mistune 3.3.4
nbclient 0.11.0
nbconvert 7.17.1
nbformat 5.10.4
nest-asyncio2 1.7.2
notebook 7.6.1
notebook_shim 0.2.4
numpy 2.5.1
openpyxl 3.1.5
packaging 26.2
pandas 3.0.3
pandocfilters 1.5.1
parso 0.8.7
pexpect 4.9.0
pip 26.2
platformdirs 4.11.0
prometheus_client 0.26.0
prompt_toolkit 3.0.53
psutil 7.2.2
ptyprocess 0.7.0
pure_eval 0.2.3
pycparser 3.0
Pygments 2.20.0
python-dateutil 2.9.0.post0
python-json-logger 4.1.0
PyYAML 6.0.3
pyzmq 27.1.0
referencing 0.37.0
requests 2.34.2
rfc3339-validator 0.1.4
rfc3986-validator 0.1.1
rfc3987-syntax 1.1.0
rpds-py 2026.6.3
Send2Trash 2.1.0
setuptools 83.0.0
six 1.17.0
soupsieve 2.9.1
stack-data 0.6.3
terminado 0.18.1
tinycss2 1.5.1
tornado 6.5.7
traitlets 5.16.1
typing_extensions 4.16.0
tzdata 2026.3
uri-template 1.3.0
urllib3 2.7.0
wcwidth 0.8.2
webcolors 25.10.0
webencodings 0.5.1
websocket-client 1.9.0
wheel 0.47.0
widgetsnbextension 4.0.15

Command Line Output

Browser Output


Contributor guide

Open the contributing guide

Research direction

Start by reproducing the issue in the Search And Replace widget using the documented two-cell selection steps on Jupyter Notebook 7.6.1. Trace the Search Filters pane's selected-cell count and add regression coverage if the existing test structure identifies a suitable entry point. Done means the pane displays “Search in 2 Selected Cells” for two selected cells.

Written by the indexing model from the issue text.

Assessment

Tech stack
jupyter-notebook
Domain
frontend, search
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.