Я хотел бы иметь возможность неразрушающего выравнивания столбцов при редактировании CSV-файлов в VIM.

Мне известны различные способы табулирования / выравнивания данных в столбцах в vim, но все они изменяют сам файл, а не его вид. Я начал использовать плагин csv.vim, который очень хорош, и было бы здорово, если бы я мог интегрировать решение в его рабочий процесс, так как оно уже автоматически обнаруживает и выделяет столбцы соответственно.

В идеале интервал между дисплеями не должен рассматриваться как символы, поэтому команды перемещения будут вести себя так, как если бы их не было.

1 ответ1

2

К сожалению, это невозможно, и это не вписывается в миссию мощного текстового (в отличие от WYSIWYG) редактора Vim.

Наиболее близкая доступная функциональность в Vim - это (недавняя) функция сокрытия , которая работает наоборот: она может (хотя и с недостатками) объединять несколько символов в одно (или ни одного) представление ячейки символов. Вам понадобится обратное: расширение одного пробела на переменное количество отображаемых ячеек. Когда-то говорили о патче "variable tabstops" в списке рассылки vim_dev , но это ни к чему не привело.

Лучший обходной путь доступны в указанной csv.vim плагин, который :[Un]ArrangeColumn может (временно) изменить сам текст (также автоматически открыть / сохранить; :help csv-arrange-autocmd

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .