LaTeX — различия между версиями
Материал из K.Wiki
Kirill (обсуждение | вклад) (→PSCYR) |
Kirill (обсуждение | вклад) (→Bamer) |
||
| (не показано 6 промежуточных версии этого же участника) | |||
| Строка 44: | Строка 44: | ||
* [http://welinux.ru/post/3200/ LaTeX — Установка pscyr в TeXlive] | * [http://welinux.ru/post/3200/ LaTeX — Установка pscyr в TeXlive] | ||
| − | == | + | == Вёрстка == |
=== Как заставить макрос не поглощать пробел после себя? === | === Как заставить макрос не поглощать пробел после себя? === | ||
Есть два варианта: | Есть два варианта: | ||
* при создании макроса в конец описания добавить команду <code>\xspace</code> (требуется пакет <code>xspace</code>); | * при создании макроса в конец описания добавить команду <code>\xspace</code> (требуется пакет <code>xspace</code>); | ||
* при вставке макроса в текст после него добавить <code>{}</code> или <code>\ </code>. | * при вставке макроса в текст после него добавить <code>{}</code> или <code>\ </code>. | ||
| + | |||
| + | === Как заставить макрос поглотить все пробелы после себя? === | ||
| + | Вставить в конец макроса команду <code>\ignorespaces</code>. | ||
| + | |||
| + | === Как избежать принудительного изменения размера шрифтов? === | ||
| + | Подключить пакет <code>anyfontsize</code>. | ||
| + | |||
| + | == Магия == | ||
| + | === Как получить ширину фрагмента текста === | ||
| + | Командой <code>\widthof{текст}</code>, если подключить пакет <code>calc</code>. | ||
| + | |||
| + | === Как создать новый стиль страниц? === | ||
| + | <code>\def\ps@<имя стиля>{<команды стиля>}</code> | ||
| + | |||
| + | === Как проверить, что аргумент команды пуст? === | ||
| + | \ifx&% если аргумент пуст | ||
| + | ... | ||
| + | \else% если аргумент не пуст | ||
| + | ... | ||
| + | \fi% | ||
| + | |||
| + | == Bamer == | ||
| + | === Как переопределить команду для оверлеев? === | ||
| + | \renewcommand<>{\команда}[1]{\only#2{\beameroriginal{\команда}{#1}}} | ||
| + | |||
| + | === Как проверить, что код внутри слайда? === | ||
| + | \ifbeamer@inframe% если внутри слайда | ||
| + | ... | ||
| + | \else% если вне слайда | ||
| + | ... | ||
| + | \fi% | ||
Текущая версия на 13:33, 25 августа 2017
Пакеты[править]
PSCYR[править]
Как установить для TeX Live в Ubuntu[править]
Проверено в Ubuntu 14.04 c TeX Live 2013.20140215-1 и pscyr4c.
-
Скачать и распаковать файлы шрифта:
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
-
Скопировать нужные описания шрифта:
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/
-
Узнать путь к локальному дереву texmf:
kpsewhich -expand-var='$TEXMFLOCAL'
-
Скопировать файлы пакета в локальное дерево texmf:
sudo cp -R ./* {путь к локальному дереву texmf} -
Обновить настройки:
sudo texhash updmap --enable Map=pscyr.map sudo mktexlsr
Ссылки[править]
Вёрстка[править]
Как заставить макрос не поглощать пробел после себя?[править]
Есть два варианта:
- при создании макроса в конец описания добавить команду
\xspace(требуется пакетxspace); - при вставке макроса в текст после него добавить
{}или\.
Как заставить макрос поглотить все пробелы после себя?[править]
Вставить в конец макроса команду \ignorespaces.
Как избежать принудительного изменения размера шрифтов?[править]
Подключить пакет anyfontsize.
Магия[править]
Как получить ширину фрагмента текста[править]
Командой \widthof{текст}, если подключить пакет calc.
Как создать новый стиль страниц?[править]
\def\ps@<имя стиля>{<команды стиля>}
Как проверить, что аргумент команды пуст?[править]
\ifx&% если аргумент пуст
...
\else% если аргумент не пуст
...
\fi%
Bamer[править]
Как переопределить команду для оверлеев?[править]
\renewcommand<>{\команда}[1]{\only#2{\beameroriginal{\команда}{#1}}}
Как проверить, что код внутри слайда?[править]
\ifbeamer@inframe% если внутри слайда
...
\else% если вне слайда
...
\fi%