[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Нужен ли bash



On Thu, Sep 25, 2008 at 03:05:18AM +0400, Alex Myodov wrote:
> Не могу сказать, что я полностью понял логику выравнивания в том куске.
> Но в том, что я понял, я бы расставил табуляции (буде у меня был
> редактор, который бы обрабатывал табуляцию так "умно", как мне хочется),
> следующим образом:

Я в ответе Atrem Chuprina отписался по поводу того, что тут не так все
просто.

> (defmacro save-variables (vars &rest body)
> <tab>"Protect values of global vars from changes by body."
> <tab>(declare (indent 1))
> <tab>(let ((save-pairs (loop<tab>for var in vars
> <tab><tab><tab>collect (cons var (make-symbol "tmp")))))
> <tab><tab>(let (<tab>(save-form (loop<tab>for pair in save-pairs
> <tab><tab><tab><tab><tab>collect `(,(cdr pair) ,(car pair))))
> <tab><tab><tab><tab>(restore-form (loop for pair in save-pairs
> 
> Для каждой строчки придётся помнить предыдущий известный размер левого
> поля. Если в этой строке табов в начале строки столько же, сколько для
> левого поля - отступаем на столько же. Если на один таб больше - то
> делаем поле на один шаг больше. Если на два или более табов больше -
> отступаем под следующий определённый "флажок". Флажки определяются
> исключительно табами в "теле" текста.

Чтобы с этими табами правильно отформатировать, нужно распарсить
исходник, а если это сделать, то правильно его отформатировать можно и
без табов.

> >> Хотя если выравнивать бездумно пробелами - да, запись расползётся.
> >> Разумеется. Про что я и говорю.
> >>     
> >
> > А если выравнивать бездумно табуляциями, придавая им смысл, отличный от
> > того, который принят большинством, 
> Большинством принято, что символ табуляции... табулирует.
> Если же вы имели в виду, что символ табуляции должен отступать на
> фиксированные и равномерные расстояния, то как минимум в OpenOffice
> думают иначе.

Большинством представителей определенного слоя населения -- в данном
случае, программистов. Также, как у математиков свои представления о
смысле используемых ими значков, а у полиграфистов свои далеко не
тривиальные представления о том, как правильно форматировать текст.

-- 
Dmitry


Reply to: