Dmitry Azhichakov wrote: > С выравниваниями при немоноширинных шрифтах проблем гораздо больше, чем > вы думаете. И в LaTeX есть специальные средства для их решения, но это > в LaTeX, а не в исходниках на какой-нибудь Жаве. > > Например: > > a[1] = 1; > a[10] = 10; > a[100] = 100; > > хорошо бы выровнять "=" в столбец, но если шрифт немоноширинный, эта > запись "расползется". > Десяток писем назад я описал один из возможных алгоритмов, которые могли бы выравнивать подобные группы внутри текста. Всего-то надо перед каждым элементом группы (знаком "равно") ставить какой-нибудь спецсимвол, который бы значил, что знаки "равно" надо выровнять друг под другом. По чистой случайности, таким символом может быть символ табуляции.
Хотя если выравнивать бездумно пробелами - да, запись расползётся. Разумеется. Про что я и говорю. > Или можно записать так: > > a[ 1] = 1; > a[ 10] = 10; > a[100] = 100; > > и выровнять числа по разрядам. А это уже ASCII-art какой-то, прости господи. Хотя, возникни такая нужда (а в отличие от "левого поля" и "выравнивания символов в столбец", она интуитивно не кажется такой уж необходимой), можно было бы завести другой спецсимвол. Тоже неотображаемый. Какой-нибудь "правый таб". (Риторическое) вы когда пробелами символы друг под друга подгоняете, у вас не возникает подсознательного ощущения, что занимаетесь чем-то не тем? В то время как реально вам надо было бы просто набрать примерно следующее: a[1]<tab>= 1;<tab># singles a[10]<tab>= 10;<tab># decimals a[100]<tab>= 100;<tab># hundreds Оно, в общем-то, сработает даже сейчас, с "восьмипробельными табами". Но появись в каком редакторе адаптивная табуляция, выровнялись бы даже следующие строчки, как a[9 223 372 036 854 775 807]<tab>= 9 223 372 036 854 775 807;<tab># overflows a[1]<tab>= 1;<tab># singles , так и a[1]<tab>= 1;<tab># singles a[9 223 372 036 854 775 807]<tab>= 9 223 372 036 854 775 807;<tab># overflows Для первого необходимо, чтобы следующие строки переходили не в фиксированные табуляционные позиции (8/16/24...), а в позиции "флажков", выставленных предыдущей строкой. А для второго - чтобы позиции для "флажков" выбирались не по одной строке, а по всем строкам, в которых происходит выравнивание по этому флажку. Alex Myodov -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

