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

Re: Нужен ли bash



Dmitry Azhichakov -> debian-russian@lists.debian.org  @ Tue, 23 Sep 2008 12:56:11 +0400:

 >>  DF> А, понял - вы пытаетесь редактировать программные тексты используя
 >>  DF> немоноширинные шрифты?  Это извращение.
 >> 
 >> Извращение - это бездумное следование стереотипам.

 DA> Оно не бездумное. Работа с "динамическими табуляциями" есть во всех
 DA> современных редакторах исходных текстов. Причем, исходные тексты,
 DA> написанные в одном редакторе, отлично читаются и исправляются в
 DA> другом, именно за счет "стереотипов". А с немоноширинными шрифтами
 DA> есть и другие проблемы. В частности, в большинстве шрифтов тяжело
 DA> отличить "1" от "I" и "l", а "O" от "0".

Когда оно не бездумное, бывают аргументы.

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

 DA> Это зависит не от языка программирования, а от программы. Я время
 DA> от времени вижу исходники, опубликованные в вебе немоноширинным
 DA> шрифтом.  Это, как правило, ужасно.

Если исходник был сделан "под моноширинный" - может быть.  Ну, или если
там сама программа ужасная.

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

 DA> Например:

 DA> a[1]   = 1;
 DA> a[10]  = 10;
 DA> a[100] = 100;

 DA> хорошо бы выровнять "=" в столбец, но если шрифт немоноширинный, эта
 DA> запись "расползется".

 DA> Или можно записать так:

 DA> a[  1] =   1;
 DA> a[ 10] =  10;
 DA> a[100] = 100;

 DA> и выровнять числа по разрядам.

Я и тот, и другой примеры буду писать a[1,10,100] = (1,10,100).  Ну, на
худой конец a[i]=i for i in (1,10,100).  Если язык этого не позволяет
(ну, помимо того, что это плохой, негодный язык) - у меня выравнивание
будет только по левому краю всей конструкции (т.е. по одному пробелу
вокруг знака "=", и больше никаких пробелов).

Потому что если первый из приведенных тобой вариантов читать еще можно,
но неудобно, то второй - ужасен.  В этой записи в первых двух строках
(особенно в первой) значение индекса, может, и хорошо читается, но тот
факт, что это индекс - плохо.

Про LaTeX я, спасибо, в курсе.  Позволю себе только напомнить, что в нем
как в языке программирования выравнивания вообще не приняты.

-- 
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru

Правки Белявского, сделанные им в рабочей копии головы
 -- Из коммитлога.


Reply to: