Antrag zum Wechseln zur Python-Funktionsdefinition, die nicht der obersten Ebene entspricht


8

Ich bin auf der Suche nach so etwas wie [[(oder [], ]], ][) , das funktioniert mit Nicht-Top-Level - Funktionsdefinitionen anstelle der nächsten Zeile mit einer Top-Level - Klasse oder eine Funktionsdefinition auf dem ersten Zeichen.

class Foo():
  def __init__(self):
    pass

  def baz(self): #jump from here...
    pass

  def box(self): #... to here without searching or...
    pass

biz = 123

def bar(): #... without going straight here
  pass

Es scheint, als würde vim standardmäßig Variablendefinitionen und andere Dinge ignorieren, die mit dem ersten Zeichen einer Zeile beginnen. Wenn ich jedoch Klassenmethoden durchschaue, kann ich nur nach diesen suchen def XYZ.

Antworten:


12

]m(und [m) scheinen die Rechnung zu passen. Von :help ]m:

                        *]m*
]m          Go to [count] next start of a method (for Java or
            similar structured language).  When not before the
            start of a method, jump to the start or end of the
            class.  When no '{' is found after the cursor, this is
            an error.  |exclusive| motion. {not in Vi}

Durch einfaches Drücken ]mspringen Sie genau an die gewünschte Stelle.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.