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

Re: Выравнивания



On Tue, Sep 23, 2008 at 12:56:11PM +0400, Dmitry Azhichakov wrote:
> 
> Это зависит не от языка программирования, а от программы. Я время от
> времени вижу исходники, опубликованные в вебе немоноширинным шрифтом.
> Это, как правило, ужасно.

В принципе, если отступы в начале строк делать в одном стили (или только
табами или только пробелами) и не использовать пробелы в середине строк
для выравнивания чего-либо (например того, что приведено ниже), то должно
быть без разницы. Ну кроме случаев, когда в комментариях рисуются таблицы
и т.д.

> С выравниваниями при немоноширинных шрифтах проблем гораздо больше, чем
> вы думаете. И в LaTeX есть специальные средства для их решения, но это
> в LaTeX, а не в исходниках на какой-нибудь Жаве.
> 
> Например:
> 
> a[1]   = 1;
> a[10]  = 10;
> a[100] = 100;
> 
> хорошо бы выровнять "=" в столбец, но если шрифт немоноширинный, эта
> запись "расползется".
> 
> Или можно записать так:
> 
> a[  1] =   1;
> a[ 10] =  10;
> a[100] = 100;

IMHO это не сильно критично. 

> и выровнять числа по разрядам. С немоноширинными шрифтами мало того, что
> правая граница чисел расползется, так если ее выровнять, и сами числа
> тоже располутся, ввиду возможной разной ширины цифр (в LaTeX для этого
> есть немоноширинные шрифты с моноширинными цифрами -- специально для
> таких случаев).

\LaTeX -- это не редактор исходного кода, а издательская система. Довольно
удобная, если потратить некоторое количество времени на изучение. Правда,
если нет готового стиля под местный недоСТП, то подгонка существующих
может занять достаточно большое количество времени. Какую-нибудь бумажку
на 5-10 листов проще оформить в OpenOffice.

В любом случае, у LaTeX тоже нужно просить, чтобы конкретно в заданном
месте он выравнивал текст определенным образом.

Для исходного кода есть специальные форматировщики, которые умеют
приводить код к одному стилю. В частности uncrustify, на сколько я помню,
умеет выравнивать присваивания, инициализацию массивов и некоторые другие
случаи? Пробелами, ествественно.

-- 
WBR, Dmitry

Attachment: signature.asc
Description: Digital signature


Reply to: