53

I wish to write a paper about linguistics, so I thought about trying LaTeX. Sadly I couldn't figure out how to write the unique characters I need for my work, for example epsilon with a little tilde above it, i with two dots above it, velar nasal and so on.

I know I can write stuff like ó with \'{o}, but I couldn't figure out how to put the epsilon in there, or how to write more unique characters.

doncherry
  • 54,637
John
  • 605

3 Answers3

54

There are two ways to write IPA symbols in LaTeX. One uses regular pdfLaTeX and the tipa package; the other uses XeLaTeX or LuaLaTeX and you can enter the symbols directly into your source, assuming you have the correct fonts.

The SIL Doulos font is an excellent Unicode IPA font that is widely used in Linguistics. You can download it here.. But many other OpenType fonts have a full set of phonetic characters too.

I'll outline both techniques here:

\documentclass{article}
\usepackage{tipa}
\begin{document}
\textipa{[DIsIzs@maIpieI]}

\textipa{[Its\*rilijizitutaIp]}
\end{document}

Using XeLaTeX or LuaLaTeX

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Doulos SIL}
\begin{document}
[ðɪsɪzsəmaɪpeɪ]

[ɪtsɹilijizitutaɪp]
\end{document}

Output:

output of code 1output of code 2

There are advantages and disadvantages to each method. The main advantage of the XeLaTeX/LuaLaTeX route is that your source code becomes much more readable. The downside of this, however, is that you need to develop techniques for entering all the characters, which isn't necessarily fast. However, if you are already used to the TIPA input method (or have existing documents) the xunicode package (which is loaded by fontspec) allows you to use most (but not all) TIPA input methods as well, so for many kinds of input you can have either.

The TIPA method allows for a faster input method at the expense of less readable source.

Alan Munn
  • 218,180
  • For entering the characters, I recommend emacs and set-input-method - there's ipa, ipa-praat, ipa-x-sampa, ipa-kirshenbaum. Choose your poison. – Reactormonk Oct 16 '12 at 22:21
  • did anyone write aa conventer from unicode ipa symbols to tipa representation? – smihael Aug 21 '15 at 23:50
  • @smihael Not that I know of. Why would you want to go in that direction? If you're entering IPA you might as well use XeLaTeX or LuaLaTeX and not use TIPA at all. – Alan Munn Aug 21 '15 at 23:56
  • Sometimes XeLaTeX or LuaLaTeX are not available on target system and you already have copied IPA representation from online dictionaries. Maybe I'll write a simple converter one day :) – smihael Aug 22 '15 at 00:51
  • 1
    If you wonder, the first line reads "This is some IPA" and the second line reads "It's really easy to type". That link can pronounce IPA text https://itinerarium.github.io/phoneme-synthesis/ – Denis Cousineau Apr 18 '18 at 18:37
  • 1
    @smihael, have a look at the unitipa package. It's a TeX-internal converter. You don't even need to go outside your TeX document. – Niranjan Mar 19 '21 at 06:47
8

If you need to type characters from the IPA (International Phonetic Alphabet), you can use the package TIPA, whose manual is also available. I found its sources within my installation of TexLive 2011, but haven't tested them yet.

There's also a paper from tug about it.

To research about special tildes and characters, you can read:

4

If you are used to write IPA characters in your documents with package TIPA, but want them in Unicode; you might want to use package tipauni. This package converts the TIPA commands into Unicode characters and thus one can easily change the font; make the IPA characters bold, italic; copy and paste the IPA characters from the output PDF and they just need to add three letters in their documents. i.e. \usepackage{tipauni} in place of \usepackage{tipa}. Here is an example -

\documentclass{article}
\usepackage{tipauni} % Use package `tipa' to see the difference.

\begin{document} Hello world! These are some symbols from the IPA chart.

\textipa{123456789}

The following symbols are printed in bold & italic typeface.

{% \itshape\bfseries

\begin{IPA} ABCDEFGHIJKLMNOPQRST \end{IPA} }% \end{document}

Niranjan
  • 3,435