LaTeX

Материал из K.Wiki
Перейти к: навигация, поиск

Пакеты

PSCYR

Как установить для TeX Live в Ubuntu

Проверено в Ubuntu 14.04 c TeX Live 2013.20140215-1 и pscyr4c.

  1. Скачать и распаковать файлы шрифта:
    mkdir pscyr
    cd ./pscyr
    wget http://tex.imm.uran.ru/texserver/fonts/pscyr/PSCyr-0.4c-patch2-tex.tar.gz
    tar -xvzf ./PSCyr-0.4c-patch2-tex.tar.gz
    wget http://tex.imm.uran.ru/texserver/fonts/pscyr/PSCyr-0.4c-patch2-type1.tar.gz
    tar -xvzf ./PSCyr-0.4c-patch2-type1.tar.gz

    Скачанные файлы можно удалить:

    rm ./PSCyr-0.4c-patch2-tex.tar.gz
    rm ./PSCyr-0.4c-patch2-type1.tar.gz
  2. Скопировать нужные описания шрифта:
    mkdir ./fonts/map
    cp ./dvips/config/*.map ./fonts/map/
    echo "fadr6t   AdvertisementPSCyr \"T2AEncoding ReEncodeFont\" <t2a.enc <adver4.pfb" >> ./fonts/map/pscyr.map
    mkdir ./fonts/enc
    cp ./dvips/base/*.enc ./fonts/enc/
  3. Узнать путь к локальному дереву texmf:
    kpsewhich -expand-var='$TEXMFLOCAL'
  4. Скопировать файлы пакета в локальное дерево texmf:
    sudo cp -R ./* {путь к локальному дереву texmf}
  5. Обновить настройки:
    sudo texhash
    updmap --enable Map=pscyr.map
    sudo mktexlsr

Ссылки

Вёрстка

Как заставить макрос не поглощать пробел после себя?

Есть два варианта:

  • при создании макроса в конец описания добавить команду \xspace (требуется пакет xspace);
  • при вставке макроса в текст после него добавить {} или \ .

Как заставить макрос поглотить все пробелы после себя?

Вставить в конец макроса команду \ignorespaces.

Как избежать принудительного изменения размера шрифтов?

Подключить пакет anyfontsize.

Магия

Как получить ширину фрагмента текста

Командой \widthof{текст}, если подключить пакет calc.

Как создать новый стиль страниц?

\def\ps@<имя стиля>{<команды стиля>}

Как проверить, что аргумент команды пуст?

\ifx&#1&% если аргумент пуст
    ...
\else% если аргумент не пуст
    ...
\fi%

Bamer

Как переопределить команду для оверлеев?

\renewcommand<>{\команда}[1]{\only#2{\beameroriginal{\команда}{#1}}}

Как проверить, что код внутри слайда?

\ifbeamer@inframe% если внутри слайда
    ...
\else% если вне слайда
    ...
\fi%