Подтвердить что ты не робот

Удалите все суровые пространства перед линией в Vim

Я написал плагин, где дело доходит до разбора XML-тега. Содержимое внутри тега имеет отступы и когда я копирую разборную строку в файл, который он получает:

    Example line
        This is part of the parsed line
        Thats goes one
    End of line

Я хочу удалить все пробелы перед этими строками, окончательный текст должен быть

Example line
This is part of the parsed line
Thats goes one
End of line

Я пытался использовать =, но он не работает так, как я хочу. Как я могу сделать это с минимальными нажатиями клавиш?

4b9b3361

Ответ 1

Чтобы отформатировать строку слева, я использую :left. Используйте этот формат для всего файла:

:%le

Ответ 2

Простой поиск/замена s/^\s*// должен делать трюк, но это, вероятно, не минимальная версия.

Ответ 3

Лично я бы визуально выделил строки с помощью V, а затем использовал 99<, чтобы вывести текст так далеко, насколько это возможно.

Ответ 4

Как насчет этого:

:%s/^ *//

Или вы ищете решение vim- script?

Ответ 5

Просто введите d, а затем w, а затем j в начале каждой строки.

Ответ 6

Чтобы удалить начальные пробелы и вкладки с указанными номерами строк (например, из строк с 5 по 10),

:5,10s/^\s*//

Ответ 7

Поиск/замена, предложенная Lukáš Lalinský или подход %le на странице wikia, вероятно, так, как я бы это сделал, но в качестве другой альтернативы вы также можете сделать:

:%< 99

Как быстрый способ переместить весь файл (%) 99 раз влево.

Ответ 8

Удалите все последовательные пробелы: :%s/ */ /g

Мне было полезно перейти от:

$screen-xs-min:              480px;
$screen-sm-min:              768px;
$screen-md-min:                992px;
$screen-lg-min:                  1200px;

To:

$screen-xs-min: 480px;       
$screen-sm-min: 768px;       
$screen-md-min: 992px;           
$screen-lg-min: 1200px;                                                                                                 

Ответ 9

Еще один способ добиться этого - использовать обычную команду :h :normal-range

:%norm d^

Это соответствует столбцу 0 в каждой строке (%) и удаляет ( d) первый небелый символ ( ^).

Это немного больше, чтобы ввести в качестве принятого ответа, но позволяет легко расширять его, если у вас есть более сложный сценарий, например, дополнительный комментарий без комментариев:

:%norm d^I# 

Результат:

#Example line
#This is part of the parsed line
#Thats goes one
#End of line