Русский язык в teTeX

lerroy

Поставил teTeX (установил вместе с редактором Kile тексты компилятся, только проблема в том что babel не расставляет переносы.
С помощью
texconfig
пытался подключить russian, редактировал соответсвующий ruhyphen.tex, ничего не помогает.
Может кто с этим разбирался?

MammonoK

а что ты в ruhyphen написал? у меня тетех переносит вроде.

lerroy

Что-то я запутался совсем.
В папке /usr/share/texmf-tetex/tex/generic/hyphen файла ruhyphen.tex нет совсем.
Выбирая пункт hyphentation в меню программы texconfig показыват файл /etc/texmf/language.d/00tex.cnf , в котором написано что для добавления дополнительных языков переноса, надо редактировать файлы содержащиеся в /etc/texmf/language.d/ ,а этот файл лишь рассказывает как их добавлять. Там уже есть строчка:
russian	ruhyphen.tex	% note: edit ruhyphen.tex for your encoding! 

Файл ruhyphen.tex есть в папке /usr/share/texmf-tetex/tex/generic/. Его содержимое я как раз и редактировал, вот его содержание(без коментов):
 
\ifx\Encoding\undefined
\def\Encoding{t2a}
%\def\Encoding{ucy}
%\def\Encoding{lcy}
%\def\Encoding{ot2}
%\def\Encoding{koi}
\fi

\ifx\Pattern\undefined
\def\Pattern{al}
%\def\Pattern{as}
%\def\Pattern{ct}
%\def\Pattern{dv}
%\def\Pattern{mg}
%\def\Pattern{vl}
%\def\Pattern{zn}
\fi

\input catkoi
\input koi2\Encoding
\input ruhyph\Pattern

% the following four lines are optional
\input cyryo\Pattern
\def\t{t2a}\ifx\t\Encoding\input hypht2 \fi
\patterns{.�8 8�.}
\patterns{8�. :censored:.}

\endgroup

\lefthyphenmin2
\righthyphenmin2

Естественно я его туда скопировал, выполнил texconfig init, однако при компиляции тестового файла test.tex содержащего в преамбуле:
\documentclass{article}
\usepackage[english,russian]{babel}
\usepackage[T2A]{fontenc}
\usepackage[cp1251]{inputenc}

выдает ошибку:
/usr/share/texmf-tetex/tex/generic/babel/russianb.ldf:0:
No hyphenation patterns were loaded for(babel) the language
`Russian'(babel) I will use the patterns loaded for \language=0 instead.
/usr/share/texmf-tetex/tex/generic/babel/russianb.ldf:136: No input encoding
specified for Russian language on input line 136.
No input encoding specified for Russian language
./test.tex:6:Overfull \hbox (48.79639pt too wide) in paragraph
[LaTeX] 0 errors, 2 warnings, 1 badbox
[LaTeX] Done!

MammonoK

Хм.
У меня все заработало, я просто в
.../texmf/tex/generic/config/language.dat
оставил только 3 строчки:
ruseng ruenhyph
=russian
=english
потом сделал texconfig init
p.s. может у тебя тетех старый?

lerroy

В том то и дело что походу дела новый, третий. Там походу все по другому. Такого файла language.dat вообще нет, и папки по другому расположены.

kachokslava

Версию теха в студию.
преамбулу в студию.

lerroy

Преамбула (см. предыдущий пост):

\documentclass{article}
\usepackage[english,russian]{babel}
\usepackage[T2A]{fontenc}
\usepackage[cp1251]{inputenc}

Дистрибутив TeXa: teTeX 3.0.

kachokslava

tex --version в студию.
версии бабеля тоже запости.
и вообще, для справки - inputenc надо вставлять ДО бабеля

lerroy

tex --version
TeX 3.141592 (Web2C 7.5.4)
kpathsea version 3.5.4
Copyright (C) 1997-2004 D.E. Knuth.

Поменял местами inputenc и бабеля не помогает

lerroy

up

lerroy

Переставил teTex, теперь при отработке тестового файла textst.tex получаю:

spinor-desktop:/home/spinor/textst# latex textst.tex
This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
entering extended mode
(./textst.tex
LaTeX2e <2003/12/01>
Babel <v3.8d> and hyphenation patterns for loaded.
(/usr/share/texmf-tetex/tex/latex/base/article.cls
Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
(/usr/share/texmf-tetex/tex/latex/base/size10.clo
(/usr/share/texmf-tetex/tex/latex/base/inputenc.sty
(/usr/share/texmf-tetex/tex/latex/cyrillic/cp1251.def
(/usr/share/texmf-tetex/tex/generic/babel/babel.sty
(/usr/share/texmf-tetex/tex/generic/babel/english.ldf
(/usr/share/texmf-tetex/tex/generic/babel/babel.def
(/usr/share/texmf-tetex/tex/generic/babel/russianb.ldf

Package babel Warning: No hyphenation patterns were loaded for
(babel) the language `Russian'
(babel) I will use the patterns loaded for \language=0 instead.

(/usr/share/texmf-tetex/tex/latex/cyrillic/t2aenc.def (./textst.aux)
(/usr/share/texmf-tetex/tex/latex/cyrillic/t2acmr.fd)

! LaTeX Error: Command \texteuro unavailable in encoding T2A.

See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...

l.5 Парооидальная ш
изофрения это дело тако...

Файл textst.tex:

\documentclass{article}
\usepackage[english,russian]{babel}
sepackage[cp1251]{inputenc}
\begin{document}
Парооидальная шизофрения это дело такое. Космические пираты разрушающие пространство
метафизической сути и сплошная проституция кругом.
\end{document}

kravecnata

А что происходит при вызове "texconfig hyphen latex"?

lerroy

Показывает содержимое файла language.dat, в котором в частности есть строки:
  
American ushyph1.tex
=USenglish

ruseng ruenhyphen.tex
=russian
=english

Это я их редактировал. До этого показывал содержимое файла 00tex.cnf, в котором рассказывалась как их редактировать.

sagemma

Почему-то я во всём топике до сих пор не увидел слов о том, что ты перегенерил форматные файлы после изменения language.dat
попробуй initexmf --dump

kravecnata

texconfig вроде бы должен перегенерить форматы, разве нет?
Оставить комментарий
Имя или ник:
Комментарий: