Movimento per passare alla definizione della funzione Python di livello non superiore


8

Sto cercando qualcosa di simile [[(o [], ]], ][) che funziona con definizioni di funzioni non-alto livello, invece della riga successiva con una classe di livello superiore o definizione di funzione sul primo carattere.

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

Sembra che, per impostazione predefinita, vim ignori le definizioni delle variabili e altre cose che iniziano con il primo carattere di una riga, ma quando cerco i metodi di classe, la mia unica risorsa è cercare def XYZ.

Risposte:


12

]m(e [m) sembrano adattarsi al conto. Da :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}

Semplicemente premendo ]msalterà nel punto esatto che si desidera.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.