Vi editor: excluindo uma parte de uma linha

0

Considere a seguinte linha de código python:

columns = ["registered","casual","counts", "workingday", "month", "dteday"]

Muitas vezes, preciso remover uma ou mais strings de uma lista dessas. Qual é a maneira mais eficiente de fazer isso? Eu normalmente movo o cursor para o início da primeira palavra e uso o modo visual para destacar e depois excluir as strings relevantes. Isso é bastante ineficiente, pois as aspas tornam o comando e menos eficaz; Existe uma maneira melhor de fazer isso?

    
por Patrick Connors 11.10.2018 / 19:07

2 respostas

3

Dependendo de como seu editor foi configurado, você pode usar dw ou dW . O segundo sempre funcionará se você tiver espaço em branco após cada vírgula.

Minúscula w representa uma palavra, distinta da pontuação. % Em maiúsculaW representa uma sequência de caracteres até o espaço em branco.

Você também pode usar construções como d/ seguido por uma vírgula e inserir, que excluirá do cursor o primeiro ponto correspondente.

    
por 11.10.2018 / 19:13
1

Para conteúdos simples como o seu exemplo, você pode usar o fato de que um argumento inteiro (incluindo a vírgula final) é um único :help WORD . Para argumentos complexos, isso rapidamente se desfaz e alternativas como f{char} ou /{pattern} são complicadas. Modo visual é a resposta incorporada, para o refinamento iterativo do texto. Se você quer algo melhor, você precisa de um plugin que possa entender a sintaxe dos argumentos. Eu posso recomendar sideways.vim como um poderoso e genérico que ambos ofereçam a seleção de argumentos (internos / externos), bem como a capacidade de reorganizá-los.

    
por 12.10.2018 / 15:06

Tags