LINUX.ORG.RU

[vim] Отступы табами и пробелами вперемешку.

 


0

1

Как настроить vim так, чтобы:

  • Отступы от начала строки делались символами '\t'
  • Все отступы (с помощью клавиши TAB) после делались пробелами.

Первого легко достичь с помощью команды set noexpandtab. Как добиться второго пункта?

Например:

somecode({
	one_thing:   1
	two:         long_call(1, 2, 'option')
});

Все расположенное от начала строки и до one_thing и two должно быть заполнено '\t'.

А всё между one_thing и 1 — пробелами.

А тебя разработчики из твоей команды не побьют за такое? Серьёзно.

anonymous
()

а тебе религия запрещает вместо кнопки tab нажимать кнопку пробел когда делаешь отступы внутри строки ?

Reset ★★★★★
()
Ответ на: комментарий от anonymous

отступы внутри строки нельзя делать табами, даже если в команде принято делать отступ табами

Reset ★★★★★
()
Ответ на: комментарий от lazyklimm

Нет, это стандартная практика. Побьют если внутри строки будешь делать отступы табами.

Reset ★★★★★
()
Ответ на: комментарий от lazyklimm

> за такое - точно побьют

Неа. Наоборот. Сам кулаки потираю.

Дело в том, что табы не везде одинаковой ширины. Поэтому:

Подрузамевал автор:

http://img600.imageshack.us/img600/8310/redsource1.png

Увидел сосед:

http://img585.imageshack.us/img585/9519/redsource0.png

vladimir-vg ★★
() автор топика
Ответ на: комментарий от Reset

> а тебе религия запрещает вместо кнопки tab нажимать кнопку пробел когда делаешь отступы внутри строки ?

Много, долго и лень.

vladimir-vg ★★
() автор топика
Ответ на: комментарий от vladimir-vg

Если что - я сам за пробелы. Но не за выравнивание клавишей пробел (имхо это даже хуже выравнивания символами «\t») Идеал - нажатие клавиши отступа (например Tab) ставит текущую строку на положенный ей отступ, который делается символами пробела.

lazyklimm ★★★★★
()
Ответ на: комментарий от vladimir-vg

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

Reset ★★★★★
()
Ответ на: комментарий от vladimir-vg

Вот поэтому категорически нельзя ставить табы внутри строки.

Reset ★★★★★
()
Ответ на: комментарий от Reset

> это очень сложно сделать — надо анализировать текст сверху и снизу, чтобы поставить правильное число пробелов

Не, ну это совсем магия.

Я прошу просто вставлять пробелы так, чтобы кол-во символом от начала строки было кратно ширине таба,

т.е. всё то же самое что происходит при вставки таба, просто замена пробелами.

Для этого ничего не нужно анализировать.

vladimir-vg ★★
() автор топика
Ответ на: комментарий от Reset

> но тогда всё равно придется руками выравнивать

Ну да, но стучать по клаве надо заметно меньше. И не будет случайных ошибок +- пробел.

vladimir-vg ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.