Affichage des numéros de ligne dans les ordinateurs portables IPython / Jupyter


139

Les rapports d'erreurs de la plupart des noyaux de langage exécutés dans IPython / Jupyter Notebooks indiquent la ligne sur laquelle l'erreur s'est produite; mais (au moins par défaut) aucun numéro de ligne n'est indiqué dans les blocs-notes.

Est-il possible d'ajouter les numéros de ligne aux notebooks IPython / Jupyter?


Il serait également utile de modifier le comportement par défaut du bloc-notes ipython de sorte qu'il affiche les numéros de ligne par défaut
gota

Réponses:


169

CTRL- MLbascule les numéros de ligne dans la zone CodeMirror. Consultez l'Aide rapide pour d'autres raccourcis clavier.

Plus en détail CTRL- M(ou ESC) vous amène au mode commande, puis appuyez sur les Ltouches pour faire basculer la visibilité des numéros de ligne cellulaire actuels. Dans les versions de notebook plus récentes, Shift-Ltoutes les cellules doivent être activées.

Si vous ne vous souvenez pas du raccourci, faites apparaître la palette de commandes Ctrl-Shift+P( Cmd+Shift+Psur Mac) et recherchez "numéros de ligne"), cela devrait permettre de basculer et de vous montrer le raccourci.


83
Pour Ipython 3 (Jupyter), en mode commande (Esc), il suffit d'appuyer sur "L" pour basculer les numéros de ligne
Julien Marrec

7
Existe-t-il un moyen d'ajouter automatiquement un numéro de ligne à toutes les cellules de Jupiter
ChathuraG

1
Utilisez Ctrl-m hpour afficher tous les raccourcis clavier dans le bloc-notes ipython. Sinon, vous pouvez cliquer sur QuckHelpen haut pour afficher les raccourcis
nexayq

Ctrl-Shift+Ppour la victoire
openwonk

81

Sur IPython 2.2.0, il suffit de taper l (L minuscule) en mode commande (activé en tapant Esc). Voir [Aide] - [Raccourcis clavier] pour d'autres raccourcis.

En outre, vous pouvez définir le comportement par défaut pour afficher les numéros de ligne en les modifiant custom.js.


4
Je ne comprends pas comment cette réponse n'a pas été acceptée (peut-être postée trop tard?), Car c'est la bonne si vous n'utilisez pas CodeMirror mais seulement IPython Notebook. EDIT: en fait, IPython Notebook utilise CodeMirror. Les deux réponses sont donc correctes. J'ai appris quelque chose de nouveau aujourd'hui, merci!
gaborous

merci, cela a fonctionné pour le notebook jupyter en chrome. cela semble plus facile ...
user391339

38

Sélectionnez l'option Basculer le numéro de ligne dans View-> Toggle Line Number.

Le menu ressemble à ceci


1
Je ne peux pas croire que c'était aussi simple. Je ne sais pas pourquoi ce n'est pas activé par défaut quand ils donnent des erreurs par ligne. Ce serait bien si le cahier mettait simplement en évidence la ligne qui a donné l'erreur.
Kaito

9

Pour activer les numéros de ligne par défaut dans toutes les cellules au démarrage, je recommande ce lien . Je cite:

  1. Accédez à votre répertoire de configuration jupyter, que vous pouvez trouver en tapant ce qui suit sur la ligne de commande:

    jupyter --config-dir
  2. À partir de là, ouvrez ou créez le customdossier.

  3. Dans ce dossier, vous devriez trouver un custom.jsfichier. S'il n'y en a pas, vous devriez pouvoir en créer un. Ouvrez-le dans un éditeur de texte et ajoutez ce code:

    define([
        'base/js/namespace',
        'base/js/events'
        ],
        function(IPython, events) {
            events.on("app_initialized.NotebookApp",
                function () {
                    IPython.Cell.options_default.cm_config.lineNumbers = true;
                }
            );
        }
    );

8

Pour moi, ctrl + mest utilisé pour enregistrer la page Web au format png, donc cela ne fonctionne pas correctement. Mais je trouve un autre moyen.

Sur la barre d'outils, il y a un bas nommé ouvrez la palette de commandes , vous pouvez cliquer dessus et taper dans la ligne, et vous pouvez voir le numéro de ligne de cellule à bascule ici.


7

Voici comment connaître le raccourci actif (en fonction de votre système d'exploitation et de la version de votre ordinateur portable, cela peut changer)

Help > Keyboard Shortcuts > toggle line numbers

Sur OSX exécutant ipython3, c'était ESC L


1

Vous pouvez également trouver Toggle Line Numbersdans Viewla barre d'outils supérieure du notebook Jupyter dans votre navigateur. Cela ajoute / supprime les numéros de lignes dans toutes les cellules du bloc-notes.

Pour moi, Esc+ lseulement ajouté / supprimé les numéros de ligne de la cellule active.


1

Shift-LJe cherchais ceci: dans JupyterLab 1.0.0


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.