2017-01-17 1 views
3

dire que je suis d'édition Ce JSONSupprimer jusqu'à la fin du bloc courant entre parenthèses dans vim

{ 
    "a": {"language": "python"}, 
    "b": {}, 
    "c": {"language": "java"}, 
    "d": {"encoding": "utf-16"} 
} 

Mon curseur est à b de "b": {}. Je veux supprimer jusqu'à la fin du bloc {} actuel. Donc, ça va ressembler,

{ 
    "a": {"language": "python"}, 
    " 
} 

Regarde peu étrange. Mais explique ce que je veux.

Comment puis-je faire cela dans Vim?

Répondre

7

Vous pouvez utiliser d]}.
De :help ]}:

        *]}* 
]}   go to [count] next unmatched '}'. 
      |exclusive| motion. 

L'aide dit aussi que c'est l'un des cas de mouvement de l'utilisation:

The above four commands can be used to go to the start or end of the current 
code block. It is like doing "%" on the '(', ')', '{' or '}' at the other 
end of the code block, but you can do this from anywhere in the code block. 
2

pour votre exemple d]], fonctionne aussi. C'est plus facile à appuyer. Cependant, ]} est préférable, car cela fonctionne quelle que soit la colonne sur laquelle se trouve le { or }.