Другое кодирование латекса и bibtex [закрытых] файлов

Если Вы захотите хранить соленый объект, необходимо будет использовать блоб, так как это - двоичные данные. Однако Вы можете, скажем, base64 кодировать соленый объект получить строку, которая может быть сохранена в текстовом поле.

Обычно, хотя, делая этот вид вещи показательно из плохого дизайна, так как Вы храните непрозрачные данные, Вы теряете способность использовать SQL, чтобы сделать любое полезное управление на тех данных. Хотя, не зная, что Вы на самом деле делаете, я не могу действительно сделать моральный запрос к нему.

18
задан czuk 28 October 2009 в 08:12
поделиться

3 ответа

Прежде всего, согласно вики LyX BibTeX не может использовать UTF-8:

BibTeX не поддерживает файлы, закодированные в UTF-8 (т. Е. Unicode) , которая в настоящее время является кодировкой файлов по умолчанию в большинстве операционных систем. Причина в том, что текущий BibTeX (v. 0.99c) был выпущен в 1988 году и, таким образом, предшествовал появлению юникода. Если давно анонсированный BibTeX v. 1.0 или одно из многих запланированных потенциально успешных приложений не готовы, для файла bib необходимо использовать latin1 (ISO-8859-1) или другую 8-битную кодировку (это не влияет на LaTeX кодировка, которая все еще может быть utf8).

Обычно все, что находится внутри файла BibTeX, дословно копируется в исходный код LaTeX (с некоторым форматированием, возможно, с изменением регистра и т. Д.), Например названия книг, авторы и т. Д.

Таким образом, кодировка вашего файла BibTeX должна соответствовать кодировке, используемой вашим файлом LaTeX, иначе все станет забавным. Вы также не можете использовать предоставленные babel команды в BibTeX (такие как "a для ä , предоставлено n? German), если ваш документ не включает нужные пакеты.

канонический способ - сделать файлы BibTeX независимыми от каких-либо проблем с кодировкой или пакетом, всегда указав специальные символы с соответствующими командами.

Это в основном означает, что вместо записи ä у вас будет использовать {\ "a} , если вы хотите быть абсолютно уверены, что это работает. Кажется, это довольно стандартная практика.

В руководстве BibTeX BibTeXing Орена Паташника также подробно говорится об этом:

BibTeX теперь обрабатывает акцентированные иначе все станет смешно. Вы также не можете использовать предоставленные babel команды в BibTeX (такие как "a для ä , предоставлено n? German), если ваш документ не включает нужные пакеты.

канонический способ - сделать файлы BibTeX независимыми от каких-либо проблем с кодировкой или пакетом, всегда указав специальные символы с соответствующими командами.

Это в основном означает, что вместо записи ä у вас будет использовать {\ "a} , если вы хотите быть абсолютно уверены, что это работает. Кажется, это довольно стандартная практика.

В руководстве BibTeX BibTeXing Орена Паташника также подробно говорится об этом:

BibTeX теперь обрабатывает акцентированные иначе все станет смешно. Вы также не можете использовать предоставленные babel команды в BibTeX (такие как "a для ä , предоставлено n? German), если ваш документ не включает нужные пакеты.

канонический способ - сделать файлы BibTeX независимыми от каких-либо проблем с кодировкой или пакетом, всегда указав специальные символы с соответствующими командами.

Это в основном означает, что вместо записи ä у вас будет использовать {\ "a} , если вы хотите быть абсолютно уверены, что это работает. Кажется, это довольно стандартная практика.

В руководстве BibTeX BibTeXing Орена Паташника также подробно говорится об этом:

BibTeX теперь обрабатывает акцентированные символы. Например, если у вас есть запись с двумя полями

 author = "Kurt G {\" o} del ",
год = 1931,

и если вы используете альфа библиографии, то BibTeX будет построить метку [Göd31] для этого запись, которая вам и нужна. Чтобы заставить эту функцию работать вы должны поместите весь акцентированный символ в подтяжки; в этом случае либо {\ "o} , либо {\ "{o}} подойдет. Кроме того, эти брекеты сами по себе не должны быть закрыты в фигурных скобках (кроме тех, которые может ограничить все поле или вся запись); и должен быть обратная косая черта как самый первый символ внутри подтяжек. Таким образом, ни {G {\ "{o}} del} и {G \" {o} del} не будет работать для этого примера. Эта особенность обрабатывает все акцентированные символы и все, кроме иностранного без обратной косой черты символы из таблиц 3.1 и 3.2 книга LaTeX. Эта функция ведет себя аналогично для «акцентов» вы можете определить; мы вскоре увидим пример. Для подсчета букв в этикетках BibTeX учитывает все внутри фигурных скобок одна буква.

15
ответ дан 30 November 2019 в 08:33
поделиться

BibTeX имеет огромные проблемы с символами, отличными от ASCII, даже в последней версии. Если вы предпочитаете современную систему, я бы порекомендовал комбинацию biblatex и biber . Оба все еще находятся в стадии бета-тестирования, но они неплохо работают даже в производственной среде. Благодаря этой комбинации исчезнут большинство проблем, связанных с библиографиями LaTeX. В качестве примечания, документация biblatex также содержит раздел о проблемах кодирования с традиционным BibTeX (§ 2.4.3).

3
ответ дан 30 November 2019 в 08:33
поделиться

Bibtex имеет случайную поддержку любых нестандартных кодировок символов - по сути, иногда это работает, большую часть времени нет и официально не поддерживается ( Подробнее ]).

Лично в .bib я придерживаюсь базовой магии ASCII и LaTeX, например \ "o. Для .tex, если я не пишу по-английски, я сохраняю .tex в UTF-8 с помощью \ usepackage [utf8] {inputenc}.

0
ответ дан 30 November 2019 в 08:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: