Як я можу скомпілювати LaTeX в UTF8? [зачинено]


81

Я зробив свій документ за стандартом ISO. Він не підтримує алфавіти umlaut, такі як ä та ö. Вони мені потрібні. Документ компілюється без UTF8, але не з UTF8. Точніше, документ не компілюється з рядком на початку мого main.tex:

\usepackage[utf8]{inputenc}

Як я можу скомпілювати свій документ LaTeX у UTF8?

Відповіді:


103

Я не впевнений, чи я маю вашу проблему, але, можливо, це допомагає, якщо ви зберігаєте джерело за допомогою кодування UTF-8.

Я також використовую \usepackage[utf8]{inputenc}у своїх джерелах LaTeX, і, зберігаючи файли як файли UTF-8, все працює просто персиково.


Чи можете ви дати команду змінити налаштування файлів на UTF-8? Як я можу побачити свої поточні налаштування?
Лео Леопольд Герц 준영

2
Це залежить від вашого редактора, він повинен мати можливість зберігати файли в UTF-8. Перевірте відповідні налаштування параметрів. На моєму Mac надає мені поле зі списком, яке дозволяє встановити кодування у діалоговому вікні файлу.
Уве Хонекамп

20

Збережіть файл у форматі UTF8.

Перевірте формат файлу, використовуючи таку команду (UNIX):

file -bi filename.tex 

Ви повинні побачити:

text/x-tex; charset=utf-8

Перетворіть файл за допомогою, iconvякщо це не UTF8:

iconv --from-code=ISO-8859-1 --to-code=UTF-8 filename.txt > filename-utf.txt

1
Це короткострокове рішення: рішення Уве Хонекампа полегшує життя, оскільки дозволяє безпосередньо набирати наголошені літери замість того, щоб використовувати менш розбірливі команди LaTeX.
Eric O Lebigot

3
це file -Iна El Capitan здається
Ніколас

file filename.texпрацював у мене (моджаве)
Оскар Лімка

14

\usepackage[utf8]{inputenc} не працюватиме для такого бібліографічного запису, як цей:

@ARTICLE{Hardy2007,
author = {Ibn Taymiyyah, Aḥmad ibn ʿAbd al{-}Halīm},
title = {Naqḍ al{-}manṭiq},
shorttitle = {Naqḍ al-manṭiq},
editor = {Ḥamzah, Aḥmad},
publisher = {Maktabat a{l-}Sunnah},
address = {Cairo},
year = {1970},
sortname = {IbnTaymiyyaNaqdalmantiq},
keywords = { Logic, Medieval}} 

Для цього запису використовуйте \usepackage[utf8x]{inputenc}


Це вирішує проблеми з символами інших мов (наприклад, китайської, японської, корейської, в’єтнамської), як показано у вашому прикладі. Більше читання: tex.stackexchange.com/questions/13067/utf8x-vs-utf8-inputenc
caw

Я натрапив на цю відповідь помилково, і це вирішило мені давню проблему з тире та наголошеними літерами у змісті бічної панелі PDF.
Оскар Лімка

5

Перетворіть ваш документ на utf8. LaTeX просто читає ваш текст таким, яким він є. Якщо ви хочете використовувати вхідне кодування utf8, ваш документ повинен бути закодований у utf8. Зазвичай це може встановити редактор. Існує також програма, iconvяка корисна для перетворення файлів із кодування iso в utf.

Врешті-решт, вам доведеться використовувати редактор, який може підтримувати utf. (Я не маю уявлення про стан підтримки utf у Windows, але будь-який розумний редактор у Linux повинен бути добре).


4
iconv --from-code = ISO-8859-1 --to-code = UTF-8 iso.txt> utf.txt
Йохан

0

Вам потрібно було піктограми вашого джерела.

Тим не менш, компілятор на базі T E X, який викликається, latexнасправді не підтримує кодування змінної довжини; їй потрібні великі бібліотеки, які повідомляють, що певні байти поєднуються. Xelatex підтримує Unicode і працює набагато краще.


0

Я використовую LEd Editor зі спеціальною функцією "Фільтр". Він замінює \ "{o} на ö і навпаки у власному редакторі, зберігаючи оригінал \" {o} у файлах tex. Це робить текст легко читабельним при перегляді в редакторі LEd, і немає необхідності в спеціальних пакетах. Це також працює з файлами бібліографії.


0

Я маю успіх із використанням аддону Chrome "Sharelatex". Цей онлайн-редактор має велику сумісність з більшістю латексних файлів, але йому дещо бракує можливостей конфігурації. www.sharelatex.com

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.