Переносы слов в ТеХе

egr77

у меня такая проблема: на некоторых компах русские слова переносятся и не вылезают за пределы страницы при просмотре, на других - вылезают. Кто-нибудь в курсе, как устранить этот недостаток? (я редактирую в WinEdit 5.3)

joker2oo9

не правильно устаноылен TeX читай ФАК

br_77

попробуй задать \tolerance=9000 или \sloppy в преамбуле (до \begin).
sloppy сделает строки жидкими (равносильно \tolerance=999 но это не всегда портит картину.
Если важно, чтоб строка была не очень жидкая (жидкая значит: ж и д к а я поиграй с параметром \tolerance . Мне подошло 9000

maks247

это все не то, у него слова не переносятся

br_77

а что то? Я решал проблему так, получилось хорошо

yulial

на некоторых компах русские слова переносятся и не вылезают за пределы страницы при просмотре, на других - вылезают.

Не может такого быть -- в техе результат компиляции не зависит ни от платформы, ни от архитектуры, т. к. используется для вычислений арифметика с фиксированной точкой. Значит, у тебя по-разному настроен тех на разных машинах и у на некоторых русские слова не переносятся вообще. \tolerance тогда ни при чём. Нужно настроить переносы в Babel, и им пользоваться, т. к. это сейчас единственное стандартное средство для приспособления к русскому языку.


\usepackage[T2A]{fontenc} % кодировка шрифта
\usepackage[cp1251]{inpunenc} % входная кодировка (в данном случае Windows)
\usepackage[russian]{babel} % русские переносы и названия разделов ("глава", "часть" и т. д.)

maks247

далеко не всегда установка tolerance спасает от жидких строк. Установка sloppy при отстуствии переносов может вызвать очень плохие строчки. Проще переустановить пакеджи, чтобы не мучаться так с каждым документом

puzirev2007

Какие пакажи
У меня полный ТеХ стоит
И 2.2 и 2.3 и 2.4 МиКТеХ ставил.
Одна фигня, в длинных словах, даже которые словарь знает,
все равно не переносит
как с этим бороться ?

vitamin8808

проще настроить переносы -- один текстовый файл с конфигом поправить.
А \sloppy в документе больше одной страницы -- признак кривизны рук.

puzirev2007

Я в ТеХ сам два года работаю
Ничего нового в ФАКе, я сейчас глянул я не увидел
Так что просьба туда не отправлять, а посоветовать в чем беда может быть
Заранее спасибо

yulial

Да нафига переустанавливать пакеджи... В миктехе есть специальный файл texmf/tex/generic/config/language.dat, в котором прописаны подключённые таблицы переносов. Там нужно убрать комментарий в строчке


russian ruhyphen.tex % note: edit ruhyphen.tex for your encoding!


и пересобрать латех. В миктехе есть специальные визарды, которые это делают.

vitamin8808

не знаю как в miktex, а в дистрибутиве teTeX это
файлы .../texmf/tex/generic/ruhyphen/ruhyphen.tex и
.../texmf/tex/generic/config/language.dat руками поправить надо,
после чего запустить "texconfig rehash" или если через texconfig настраивать,
то он сам запустит.

puzirev2007

Гм..
Как пересобрать Латех?
Вот ентого не делал
Подскажи как это сделать плз

yulial

Кнут утверждал что алгоритм переносов справляется в 90% случаев (это про англ. таблицу что не так уж плохо, т. к. до переносов дело доходит нечасто. Но если слово непереносится можно вручную расставить точки возможного переноса: сте\-ре\-о\-мет\-рия. Если такое слово встречается много раз по тексту, в преамбулу можно вставить \hyphenation{сте-ре-о-мет-рия сте-рео-мет-ри-чес-кий} (все нужные словоформы и однокоренные слова).
И ещё. Слова с дефисами не переносятся. Выход: при русском Бабеле писать так: механико"=математический.

kachokslava


можно также нажать кнопочку "Update now" и "Refresh now" на вкладке General
ЗЫ. Словарь для переносов не используется уже лет пять

yulial

Ну я не помню точно, у меня не миктех... Говорю же, там визард есть, специальный. Там всё понятно.

puzirev2007

Угу ет я итак использую
что делать
Подскажи как пересобрать латех в миктехе

puzirev2007

Спасибо !
Помогло !

yulial

Базилио там обвёл красненьким, куда нажать.

ocean

> на некоторых компах русские слова переносятся и не вылезают
> за пределы страницы при просмотре, на других - вылезают.
Не стоит \sloppy и на других компах не настроен перенос русского текста.
\sloppy в любом случае стоит ставить. Даже при работающих переносах.
Иначе текст всё равно может вылезать за границу, хоть в большинстве случаев
этого и не видно.

ocean

> проще настроить переносы -- один текстовый файл с конфигом поправить.
> А \sloppy в документе больше одной страницы -- признак кривизны рук.
Скорее кривизна мозгов у тех, кто считает настройку переносов заменой \sloppy.
В нормальном документе нужно и то, и другое.

vitamin8808

Я отвечал на это :
попробуй задать \tolerance=9000 или \sloppy в преамбуле (до \begin).

Если ты согласен с этим товарищем, то только в путь.

ocean

Я вроде бы достаточно чётко сформулировал свою мысль.
Или ещё раз повторить надо?
Оставить комментарий
Имя или ник:
Комментарий: