Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Tab completion not working in same cell

Offen
#457 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
45/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Veraltet
Tech-Stack
jupyter, python

Rechercherichtung

Beginne damit, den Python-Repro mit ipykernel.tests.utils auszuführen, und konzentriere dich dabei auf kc.complete und die beiden zurückgegebenen matches-Werte. Verfolge die Verarbeitung der Kernel-Vervollständigung für Zellen, die einen Zeilenumbruch enthalten, und vergleiche sie mit dem einzeiligen Fall. Fertig ist die Aufgabe, wenn die Vervollständigung am Ende der zweiten Zelle funktioniert und die Regression durch einen Test abgedeckt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

I create two cells, run both

2019-11-15-100127

Then I try tab completion

2019-11-15-100114

If I press tab at the end of the second cell, nothing happens. If I press tab at the end of the third cells, it works.

Python repro:

from ipykernel.tests.utils import new_kernel, wait_for_idle, execute, TIMEOUT

cells = [
    'import datetime',
    't = datetime.date.today()',
    't = datetime.date.today()\nt.',
    't.'
]

with new_kernel() as kc:
    execute(cells[0], kc=kc)
    wait_for_idle(kc)
    execute(cells[1], kc=kc)
    wait_for_idle(kc)
    kc.complete(cells[2])
    matches_1 = kc.get_shell_msg(block=True, timeout=TIMEOUT)['content']['matches']
    kc.complete(cells[3])
    matches_2 = kc.get_shell_msg(block=True, timeout=TIMEOUT)['content']['matches']
Vorherrschende Sprache
Python
Sterne
734
Forks
411
Ø Merge
1 T. 2 Std.
Gemergte PRs (30 T.)
9

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus ipython/ipykernel

Alle Issues in ipython/ipykernel

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.