If it helps, and to add to @yannis' answer, the old xunicode
package (back when xelatex was the only UTF8-aware engine) redefines tipa commands to Unicode.
So you can use fontspec
to choose whichever fonts are suitable.
xunicode
can run under lualatex with one additional code line (see MWE).
Some examples:




Not all fonts have full coverage of the glyphs.
Items in red indicate potential revision of the macro definition might be required.
Some slight typing corrections in the yannis list have been silently made.
Conclusion
IPA symbols are a script in their own right.
For large volumes, direct input (using a dedicated keyboard overlay) would be the most efficient input method.
For using a smaller set of glyphs, named macros would keep the source code readable and easier to maintain compared to using codepoints (e.g., ^^^^0259
= ə
), at the expense of typing in the macro names and knowing what the names actually are and mean. Perhaps shortcuts for the more commonly-used ones would help.
Tipa-as-unicode would fall at this smaller end of the spectrum, in terms of usage and convenience.
MWE
\documentclass{article}
\usepackage{xcolor}
\usepackage{fontspec}
\setmainfont{Noto Serif}
\def\XeTeXpicfile{}%so can compile with LuaLatex
\usepackage{xunicode}
%\usepackage{tipa}
\newcommand\fnamea{Noto Serif}
\newcommand\fnameb{Junicode}
\newcommand\fnamec{Linguistics Pro}
\newcommand\fnamed{DejaVu Serif}
\newcommand\fnamee{Gentium Plus}
\newcommand\fnamef{Liberation Serif}
\newcommand\fnameg{CMU Serif}
\newfontfamily\ffonta{\fnamea}
\newfontfamily\ffontb{\fnameb}
\newfontfamily\ffontc{\fnamec}
\newfontfamily\ffontd{\fnamed}
\newfontfamily\ffonte{\fnamee}
\newfontfamily\ffontf{\fnamef}
\newfontfamily\ffontg{\fnameg}
\newcommand\dolist[2]{%1=font command,2=fontname
#1 Tipa Unicode commands using \fbox{{\large #2}} font.
First item is the Tipa macro, second item is the Unicode character directly.
\AA{Å}
\AE{Æ}
\DH{Ð}
\O{Ø}
\Thorn{Þ}
\TH{Þ}
\ss{ß}
\aa{å}
\ae{æ}
\dh{ð}
\o{ø}
\textthorn{þ}
\textthornvari{þ}
\textthornvarii{þ}
\textthornvariii{þ}
\textthornvariv{þ}
\th{þ}
\DJ{Đ}
\dj{đ}
\textcrd{đ}
\textHbar{Ħ}
\textcrh{ħ}
\texthbar{ħ}
\i{ı}
\j{ȷ}
\IJ{IJ}
\ij{ij}
\textkra{ĸ}
\L{Ł}
\textbarl{ł}
\l{ł}
\NG{Ŋ}
\ng{ŋ}
\OE{Œ}
\oe{œ}
\textTbar{Ŧ}
\textTstroke{Ŧ}
\texttbar{ŧ}
\texttstroke{ŧ}
\textcrb{ƀ}
\textBhook{Ɓ}
\textOopen{Ɔ}
\textChook{Ƈ}
\textchook{ƈ}
\texthtc{ƈ}
\textDafrican{Ɖ}
\textDhook{Ɗ}
\textEreversed{Ǝ}
\textEopen{Ɛ}
\textFhook{Ƒ}
\textflorin{ƒ}
\textGammaafrican{Ɣ}
\texthvlig{ƕ}
\hv{ƕ}
\textIotaafrican{Ɩ}
\textKhook{Ƙ}
\textkhook{ƙ}
\texthtk{ƙ}
\textcrlambda{ƛ}
\textNhookleft{Ɲ}
\Ohorn{Ơ}
\ohorn{ơ}
\textPhook{Ƥ}
\textphook{ƥ}
\texthtp{ƥ}
\textEsh{Ʃ}
\ESH{Ʃ}
\textlooptoprevesh{ƪ}
\textcolor{red}{\textpalhookbelow{t}}{ƫ} %command takes argument
\textThook{Ƭ}
\textthook{ƭ}
\texthtt{ƭ}
\textTretroflexhook{Ʈ}
\Uhorn{Ư}
\uhorn{ư}
\textVhook{Ʋ}
\textYhook{Ƴ}
\textyhook{ƴ}
\textcolor{red}{\textEzh}{Ʒ} %Ǯǯ: misaligned char?
\texteturned{ǝ}
\textturna{ɐ}
\textscripta{ɑ}
\textturnscripta{ɒ}
\textbhook{ɓ}
\texthtb{ɓ}
\textoopen{ɔ}
\textopeno{ɔ}
\textctc{ɕ}
\textdtail{ɖ}
\textrtaild{ɖ}
\textdhook{ɗ}
\texthtd{ɗ}
\textreve{ɘ}
\textschwa{ə}
\textrhookschwa{ɚ}
\texteopen{ɛ}
\textepsilon{ɛ}
\textrevepsilon{ɜ}
\textrhookrevepsilon{ɝ}
\textcloserevepsilon{ɞ}
\textbardotlessj{ɟ}
\texthtg{ɠ}
\textscriptg{ɡ}
\textscg{ɢ}
\textgammalatinsmall{ɣ}
\textcolor{red}{\textgamma}{ɣ} %
\textramshorns{ɤ}
\textturnh{ɥ}
\texthth{ɦ}
\texththeng{ɧ}
\textbari{ɨ}
\textiotalatin{ɩ}
\textiota{ɩ}
\textsci{ɪ}
\textltilde{ɫ}
\textbeltl{ɬ}
\textrtaill{ɭ}
\textlyoghlig{ɮ}
\textturnm{ɯ}
\textturnmrleg{ɰ}
\textltailm{ɱ}
\textltailn{ɲ}
\textnhookleft{ɲ}
\textrtailn{ɳ}
\textscn{ɴ}
\textbaro{ɵ}
\textscoelig{ɶ}
\textcloseomega{ɷ}
\textphi{ɸ}
\textturnr{ɹ}
\textturnlonglegr{ɺ}
\textturnrrtail{ɻ}
\textlonglegr{ɼ}
\textrtailr{ɽ}
\textfishhookr{ɾ}
\textlhti{ɿ}
\textscr{ʀ}
\textinvscr{ʁ}
\textrtails{ʂ}
\textesh{ʃ}
\texthtbardotlessj{ʄ}
\textcolor{red}{\textraisevibyi}{ʅ} %ʅ
\textctesh{ʆ}
\textturnt{ʇ}
\textrtailt{ʈ}
\texttretroflexhook{ʈ}
\textbaru{ʉ}
\textupsilon{ʋ}
\textscriptv{ʋ}
\textvhook{ʋ}
\textturnv{ʌ}
\textturnw{ʍ}
\textturny{ʎ}
\textscy{ʏ}
\textrtailz{ʐ}
\textctz{ʑ}
\textezh{ʒ}
\textyogh{ʒ}
\textctyogh{ʓ}
\textglotstop{ʔ}
\textrevglotstop{ʕ}
\textinvglotstop{ʖ}
\textstretchc{ʗ}
\textbullseye{ʘ}
\textscb{ʙ}
\textcloseepsilon{ʚ}
\texthtscg{ʛ}
\textsch{ʜ}
\textctj{ʝ}
\textturnk{ʞ}
\textscl{ʟ}
\texthtq{ʠ}
\textbarglotstop{ʡ}
\textbarrevglotstop{ʢ}
\textdzlig{ʣ}
\textdyoghlig{ʤ}
\textdctzlig{ʥ}
\texttslig{ʦ}
\textteshlig{ʧ}
\texttesh{ʧ}
\texttctclig{ʨ}
\textprimstress{ˈ}
\textlengthmark{ː}
\textsc{Shortcuts}: \textipa{["pI\*Di]}
\textipa{[\!b] [\:r] [\;B]}
\textsc{Input Methods}:
[\textsecstress\textepsilon kspl\textschwa\textprimstress ne\textsci\textesh\textschwa n]
:
\textipa{[""Ekspl@"neIS@n]}
v\textturnv v w\textsca w y\textturny y [\textesh]
:
\textipa{v2v w\textsca w yLy [S]}
[\textipa{S}]
:
\textipa{[S]}
\par
\vspace{3ex}
\hrule
\vspace{4ex}
}
\begin{document}
\dolist{\ffonta}{\fnamea}
\dolist{\ffontb}{\fnameb}
\dolist{\ffontc}{\fnamec}
\dolist{\ffontd}{\fnamed}
\dolist{\ffonte}{\fnamee}
\dolist{\ffontf}{\fnamef}
\dolist{\ffontg}{\fnameg}
\end{document}
tipa
but I am on LuaLaTeX and have never not-found any symbol in the unicode. The question on non unicode symbols intipa
would be answered by its documentation for sure.tipa
specifically and whether anyone has chosen to use it instead of Unicode on the basis of its technical capabilities. I've edited my question to better reflect this.tipa
lack symbols. Buttipa
lacks way more -- it doesn't even cover the IPA itself, even though that was the reasontipa
was created. But with XeLaTeX/LuaLaTeX, you can always find some font out there that has the extra symbols you need (I do this when I transcribe things with the Norwegian phonetic alphabet, which isn't included by Unicode yet). Doing that is much harder or impossible with LaTeX/tipa.tipa
manual is a great resource, but it makes no mention of Unicode, let alone provide corresponding Unicode codepoints for each symbol (it was last updated in 2004, so this isn't too surprising). I know thattipa
does contain some non-Unicode symbols, but I'm more concerned with whether there aretipa
symbols that users have actually needed and haven't been able to find in any Unicode font.tipa
is used: (1) Inertia vel sim. I'm lucky that I started using TeX when XeTeX was fairly mature (in 2012). But if I started in 2002, I would probably be atipa
user today. (2). People want to use LaTeX. I sometimes usetipa
, and the only reason is that I am writing a document that I wish to compile with LaTeX. LaTeX has some advantages over XeLaTeX (e.g.microtype
), but LuaLaTeX will eventually close that gap.