21

On TeX.SX there are a lot of questions of the form "How do I typeset [some phonetic symbol]?" For example:

One of the issues that often comes up in answers to these questions is whether International Phonetic Alphabet (IPA) symbols should be typeset using

What should a user consider when deciding which of these approaches to use?

This question is related to Is \aa or å preferred?, but I'm focused on the tipa package specifically here, not the broader question of LaTeX-based macros vs. Unicode. This is also related to questions about pdfLaTeX vs. XeLaTeX vs. LuaLaTeX, but again I'm focused on tipa, which can be used with any of those.

Jason Zentz
  • 4,158
  • Possible duplicate: http://tex.stackexchange.com/q/224058 This is the same question in my eyes and my answer would be the same. If you are fully compatible to UTF8 and you find it easy to type such stuff directly, you should do that. Your list of advantages is quite complete so you should make your own decision. Personally, I never use tipa but I am on LuaLaTeX and have never not-found any symbol in the unicode. The question on non unicode symbols in tipa would be answered by its documentation for sure. – LaRiFaRi Jan 21 '15 at 07:02
  • @LaRiFaRi, I agree that the question you linked to is related, and certainly the advantages to using Unicode that I mention in my question would be relevant in answering that question. But my question is really about 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. – Jason Zentz Jan 21 '15 at 15:13
  • 1
    Both Unicode and tipa lack symbols. But tipa lacks way more -- it doesn't even cover the IPA itself, even though that was the reason tipa 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. – Sverre Jan 21 '15 at 15:27
  • @LaRiFaRi, the 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 that tipa does contain some non-Unicode symbols, but I'm more concerned with whether there are tipa symbols that users have actually needed and haven't been able to find in any Unicode font. – Jason Zentz Jan 21 '15 at 15:35
  • ScriptSource has a useful page that lists all the symbols in Pullum & Ladusaw's (1996) Phonetic Symbol Guide along with their Unicode counterparts. There is a list of about 35 non-Unicode symbols from the PSG, and at least some of these are in tipa. But they're really obscure, and some Unicode fonts might even have them in their PUA (as @Sverre mentions), so I'm curious to hear if anyone has really been forced to use tipa in order to produce these. – Jason Zentz Jan 21 '15 at 15:38
  • tipa includes quite a few symbols used by Chinese linguists (I bet because the author of tipa knows that literature). I wouldn't call such glyphs "obscure" (Norwegian phonetic glyphs might be obscure to you, for example, but they're not to me). Why does it matter if someone here tells you they needed to use tipa for one of these Chinese phonetic glyphs? It doesn't mean that there are no fonts out there with those characters, it could just mean that they couldn't find them (or that they didn't try). – Sverre Jan 21 '15 at 15:42
  • @JasonZentz But why? The unicode is increasing all of the time. So maybe someone needed a symbol someday but now it is in unicode already. Sorry, but it appears to be very tedious to find examples in order to answer here. But one possible use of tipa is: It is an own font so if someone likes this font, he could use it. It makes no sense to use some Linux Libertine O replacment, if I do not like it as much as the one from tipa. All symbols (design, definition, discussion) are written down in a PDF on http://www.ctan.org/pkg/tipa – LaRiFaRi Jan 21 '15 at 15:42
  • To be clear, my rationale for asking the question is that I would like to teach my students that they should always use Unicode and avoid tipa. But if there are legitimate scenarios where they might run into problems with that, I would like to be able to warn them. I'm often surprised by how often tipa is still used (and recommended on this site) and have been wondering if there are technical reasons for that. – Jason Zentz Jan 21 '15 at 15:51
  • 2
    I think there are two reasons why 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 a tipa user today. (2). People want to use LaTeX. I sometimes use tipa, 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. – Sverre Jan 21 '15 at 16:14
  • I just ran into the issue of having to typeset a devoiced/voiceless consonant. I haven't checked for any other consonants, but I haven't been able to find a voiceless alveolar trill in Unicode, for example. – Adam Liter Feb 08 '15 at 23:24
  • Also, if the question is really just whether there are things in the IPA that aren't in Unicode, maybe this is more appropriate for the linguistics Stack Exchange site? – Adam Liter Feb 08 '15 at 23:25
  • The IPA is definitely fully covered by Unicode (see the ScriptSource page I linked to in a comment above). The voiceless alveolar trill [r̥] can be made using the normal [r] with the combining ring below [ ̥] (U+0325). The official IPA chart doesn't have separate symbols for every voiceless sound -- it has the voiceless diacritic which can be placed under or over the corresponding voiced sound. So Unicode does the same. – Jason Zentz Feb 09 '15 at 01:28
  • As I said in the question, I'm just trying to figure out why there are so many people who continue to use tipa. I know that Unicode covers any symbol I've ever had occasion to use, but others (as @Sverre mentioned) may have a different experience. It's fine if people use tipa due for backwards compatibility, but that doesn't mean we should continue to recommend it to new users. – Jason Zentz Feb 09 '15 at 01:33

5 Answers5

23

Unicode's advantages

As I see it, there are many advantages to using a Unicode font with XeLaTeX/LuaLaTeX, some of which are mentioned in answers to the above questions and in other places, notably Alan Munn's answers to How to use phonetic IPA characters in LaTeX and Preparing a text for conversion to LaTeX: How to convert "ejective stops" in TIPA?:

  • Code readability. There's no doubt that [ˌɛkspləˈneɪʃən] is easier to (proof)read than \textipa{[""Ekspl@"neIS@n]}.
  • No special command/environment. There's no need for \textipa{...}, {\tipaencoding ...}, or \begin{IPA} ... \end{IPA}.
  • Cross-application compatibility
    • Copy and paste. If you are bringing your data into a .tex file from another application (e.g., Excel, Toolbox, ELAN, FLEx, etc.), Unicode input allows you to simply copy and paste without any conversion to tipa (or other LaTeX) macros. And if you want to take an example from your .tex file and put it in a Word document, email, or webpage, copy and paste works on the way out too.
    • Keyboard shortcuts. If you already use a Unicode IPA keyboard layout (or a keyboard layout specific to a language you work on), you can use the same shortcuts you would use in any other Unicode application. See my answer to Accessing IPA characters when using Charis SIL for more about using a keyboard layout for Unicode IPA input.
  • PDF usability. When you use a Unicode font, people who only have access to the resulting PDF can search for IPA symbols, and they can copy and paste them out of the document, too. This is only occasionally true for PDFs that use tipa, as discussed at How to use the real letters in a pdf?.
  • Flexibility in font selection. You can use any Unicode font that has the characters you need. tipa's options give you symbols designed to match Computer Modern, Times, or Helvetica, and that's it.
  • Font consistency. You can choose a font whose IPA symbols were created by the designer of the rest of the font, so they will match the body text. tipa matches Computer Modern quite well, but it merely approximates Times and Helvetica.
  • OpenType features. There are several Unicode fonts with full IPA coverage that also have OpenType features that you can make use of using fontspec in XeLaTeX or LuaLaTeX. For example, Charis SIL has alternate glyphs for literacy applications (<ɑɡ> instead of <ag>, etc.) and for localization (e.g., variant glyphs for <Ŋ> and <ʋ>).

tipa's advantages

There are at least two advantages to tipa, possibly a third:

  • Backwards compatibility. It's a lot of work to convert tipa code into Unicode, and it might not be worth it if most of the data you are working with is already coded for tipa.
  • Control over microtypography. tipa has commands (section 4 of the manual) that allow you to place diacritics manually and make some other fine adjustments to kerning, etc. Some Unicode fonts allow diacritic stacking and correct placement of modifier letters, but this varies widely across fonts.
  • Ease/speed of input. This is frequently mentioned in favor of tipa, but personally I've never found using tipa shortcuts to be any faster than using a Unicode IPA keyboard layout with mnemonic, semantic key assignment.

Conclusion

The package tipa should be considered a legacy method for using IPA characters in LaTeX, just as other non-Unicode fonts have been phased out (e.g., IPAPhon and the non-Unicode versions of the SIL and LaserIPA fonts). It may be necessary to use tipa in some circumstances for compatibility reasons (using already tipa-coded data, following a publisher's style guide, etc.), but in general users should strongly consider using Unicode with XeLaTeX or LuaLaTeX.

Jason Zentz
  • 4,158
  • Still I'd recommend marking the use of IPA symbols as arguments to a macro that sets the T3 encoding (in case you're using pdflatex); you gain in flexibility. – egreg Apr 26 '15 at 09:47
  • @Jason Zentz Then what about complex character like t͡ʃʰ, xelatex ignore it most of the time – karu Apr 14 '16 at 14:51
  • 3
    @karu, that is a font issue. You have to load a font that has the symbols you need and uses diacritics and tie bars correctly. Charis SIL is one example of a font that will typeset t͡ʃʰ correctly. – Jason Zentz Apr 14 '16 at 14:54
  • Sorry to comment on such an old question, but by any chance do you know which font with IPA glyphs is compatible with Latin Modern, using XeTeX? I know there are many fonts suitable for maths that are now available, but despite using XeLaTeX, I remain addicted to the old fashioned fonts. – Logos Oct 02 '20 at 21:42
  • 1
    @Logos, I don't know of any, but I haven't actively worked with IPA or LaTeX for a few years. See Niranjan's answer below for mention of the unitipa package, but I'd agree with Alan Munn's point in the comments there that this doesn't capture all the benefits of using Unicode. – Jason Zentz Oct 05 '20 at 14:30
  • @Logos Try CMU Serif font, for Unicode; or cm-unicode package for legacy. Unicode: it is better to use xunicode package, which makes tipa commands work with Unicode fonts. – Cicada Apr 04 '21 at 07:47
  • Note that the tipa manual is written from the perspective that the reader already knows latex to invert, reverse, rotate, overstrike, build composites, etc, so that, with only 256 slots in the T3 encoding (per font file), the package can concentrate on more intricate matters like shortcuts. Adjustments to components of composite glyphs can be done to and with any font (usually to fill gaps by the font designer) - it is not compulsory to use tipa for that. Besides which, xunicode package re-defines tipa commands to work in a Unicode context anyway. So tipa package is for the 8-bit world. – Cicada Apr 04 '21 at 07:49
  • To be fair code-readability is only because nobody implement it in PDFLaTeX, it can be implemented as well. (modulo combining diacritics, that one need special command/environment) – user202729 Aug 06 '22 at 13:55
5

If for some reason you have TIPA commands such as \textturnscripta in your LaTeX document but you are using an Unicode-compliant TeX engine and your current font contains all necessary glyphs (e.g., the FreeSerif font family), then here are some redefinitions of TIPA (and other similar LaTeX) commands that produce the corresponding Unicode characters:

\def\AA{Å}
\def\AE{Æ}
\def\DH{Ð}
\def\O{Ø}
\def\Thorn{Þ}
\def\TH{Þ}
\def\ss{ß}
\def\aa{å}
\def\ae{æ}
\def\dh{ð}
\def\o{ø}
\def\textthorn{þ}
\def\textthornvari{þ}
\def\textthornvarii{þ}
\def\textthornvariii{þ}
\def\textthornvariv{þ}
\def\th{þ}
\def\DJ{Đ}
\def\dj{đ}
\def\textcrd{đ}
\def\textHbar{Ħ}
\def\textcrh{ħ}
\def\texthbar{ħ}
\def\i{ı}
\def\j{ȷ}
\def\IJ{IJ}
\def\ij{ij}
\def\textkra{ĸ}
\def\L{Ł}
\def\textbarl{ł}
\def\l{ł}
\def\NG{Ŋ}
\def\ng{ŋ}
\def\OE{Œ}
\def\oe{œ}
\def\textTbar{Ŧ}
\def\textTstroke{Ŧ}
\def\texttbar{ŧ}
\def\texttstroke{ŧ}
\def\textcrb{ƀ}
\def\textBhook{Ɓ}
\def\textOopen{Ɔ}
\def\textChook{Ƈ}
\def\textchook{ƈ}
\def\texthtc{ƈ}
\def\textDafrican{Ɖ}
\def\textDhook{Ɗ}
\def\textEreversed{Ǝ}
\def\textEopen{Ɛ}
\def\textFhook{Ƒ}
\def\textflorin{ƒ}
\def\textGammaafrican{Ɣ}
\def\texthvlig{ƕ}
\def\hv{ƕ}
\def\textIotaafrican{Ɩ}
\def\textKhook{Ƙ}
\def\textkhook{ƙ}
\def\texthtk{ƙ}
\def\textcrlambda{ƛ}
\def\textNhookleft{Ɲ}
\def\OHORN{Ơ}
\def\ohorn{ơ}
\def\textPhook{Ƥ}
\def\textphook{ƥ}
\def\texthtp{ƥ}
\def\textEsh{Ʃ}
\def\ESH{Ʃ}
\def\textlooptoprevesh{ƪ}
\def\textpalhookbelow{ƫ}
\def\textThook{Ƭ}
\def\textthook{ƭ}
\def\texthtt{ƭ}
\def\textTretroflexhook{Ʈ}
\def\UHORN{Ư}
\def\uhorn{ư}
\def\textVhook{Ʋ}
\def\textYhook{Ƴ}
\def\textyhook{ƴ}
\def\textEzh{Ʒ}
\def\texteturned{ǝ}
\def\textturna{ɐ}
\def\textscripta{ɑ}
\def\textturnscripta{ɒ}
\def\textbhook{ɓ}
\def\texthtb{ɓ}
\def\textoopen{ɔ}
\def\textopeno{ɔ}
\def\textctc{ɕ}
\def\textdtail{ɖ}
\def\textrtaild{ɖ}
\def\textdhook{ɗ}
\def\texthtd{ɗ}
\def\textreve{ɘ}
\def\textschwa{ə}
\def\textrhookschwa{ɚ}
\def\texteopen{ɛ}
\def\textepsilon{ɛ}
\def\textrevepsilon{ɜ}
\def\textrhookrevepsilon{ɝ}
\def\textcloserevepsilon{ɞ}
\def\textbardotlessj{ɟ}
\def\texthtg{ɠ}
\def\textscriptg{ɡ}
\def\textscg{ɢ}
\def\textgammalatinsmall{ɣ}
\def\textgamma{ɣ}
\def\textramshorns{ɤ}
\def\textturnh{ɥ}
\def\texthth{ɦ}
\def\texththeng{ɧ}
\def\textbari{ɨ}
\def\textiotalatin{ɩ}
\def\textiota{ɩ}
\def\textsci{ɪ}
\def\textltilde{ɫ}
\def\textbeltl{ɬ}
\def\textrtaill{ɭ}
\def\textlyoghlig{ɮ}
\def\textturnm{ɯ}
\def\textturnmrleg{ɰ}
\def\textltailm{ɱ}
\def\textltailn{ɲ}
\def\textnhookleft{ɲ}
\def\textrtailn{ɳ}
\def\textscn{ɴ}
\def\textbaro{ɵ}
\def\textscoelig{ɶ}
\def\textcloseomega{ɷ}
\def\textphi{ɸ}
\def\textturnr{ɹ}
\def\textturnlonglegr{ɺ}
\def\textturnrrtail{ɻ}
\def\textlonglegr{ɼ}
\def\textrtailr{ɽ}
\def\textfishhookr{ɾ}
\def\textlhti{ɿ}
\def\textscr{ʀ}
\def\textinvscr{ʁ}
\def\textrtails{ʂ}
\def\textesh{ʃ}
\def\texthtbardotlessj{ʄ}
\def\textraisevibyi{ʅ}
\def\textctesh{ʆ}
\def\textturnt{ʇ}
\def\textrtailt{ʈ}
\def\texttretroflexhook{ʈ}
\def\textbaru{ʉ}
\def\textupsilon{ʊ}
\def\textscriptv{ʋ}
\def\textvhook{ʋ}
\def\textturnv{ʌ}
\def\textturnw{ʍ}
\def\textturny{ʎ}
\def\textscy{ʏ}
\def\textrtailz{ʐ}
\def\textctz{ʑ}
\def\textezh{ʒ}
\def\textyogh{ʒ}
\def\textctyogh{ʓ}
\def\textglotstop{ʔ}
\def\textrevglotstop{ʕ}
\def\textinvglotstop{ʖ}
\def\textstretchc{ʗ}
\def\textbullseye{ʘ}
\def\textscb{ʙ}
\def\textcloseepsilon{ʚ}
\def\texthtscg{ʛ}
\def\textsch{ʜ}
\def\textctj{ʝ}
\def\textturnk{ʞ}
\def\textscl{ʟ}
\def\texthtq{ʠ}
\def\textbarglotstop{ʡ}
\def\textbarrevglotstop{ʢ}
\def\textdzlig{ʣ}
\def\textdyoghlig{ʤ}
\def\textdctzlig{ʥ}
\def\texttslig{ʦ}
\def\textteshlig{ʧ}
\def\texttesh{ʧ}
\def\texttctclig{ʨ}
\def\textprimstress{ˈ}
\def\textlengthmark{ː}
yannis
  • 2,013
  • 19
  • 18
1

Unicode, definitely. The sole exception is if your publisher doesn’t support it. PDFTeX, for example, cannot handle combining Unicode characters, only precomposed ones.

The tipa package was last updated in 2004. The only fonts it supports are Computer Modern Roman/Sans-Serif/Typewriter, Times, and Helvetica. It loads an 8-bit font encoding, making it difficult to use in the same document as non-European scripts.

You can use Unicode input with tipa (other than combining accents in PDFTeX) by setting the Unicode character active with \DeclareUnicodeCharacter or newunicodechar. If you want to use tipa-like commands, a modern package would probably declare them to check \iffontchar, use the Unicode symbol in the current font if it has it, and fall back, perhaps to an 8-bit font, otherwise. You can write that yourself, but tipa doesn’t do it, nor does inputenc support T3.

Davislor
  • 44,045
1

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:

CMU Serif

Linguistics Pro

Noto Serif

Gentium Plus

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}

Cicada
  • 10,129
0

I wrote a Rust(binary) program to convert unicodes to TIPA commands here.

It's based on some data tables which I've collected and remain a bit incomplete. But it satisfies me now.

You can call it with \write18, this is an example under Linux:

\documentclass{article}
\usepackage[tone]{tipa}

\newwrite\tipaout \newread\tipain

\newcommand\callunitipa[1]{% % Mind the setting of triggering LaTeX Workshop % Hard to escape chars, should use files instead of args. \typeout{Call unitipa with: #1}% \immediate\openout\tipaout=unicode-tipa_in.tex% \immediate\write\tipaout{#1}% \immediate\closeout\tipaout% \immediate\write18{unitipa.sh "$(cat unicode-tipa_in.tex)" > unicode-tipa_out.tex}% \immediate\write18{unitipa.sh "#1" >> unicode-tipa_tex.log}% \immediate\openin\tipain=unicode-tipa_out.tex% \immediate\read\tipain to \tipatmp% \immediate\closein\tipain% \tipatmp\unskip% read will cause a linebreak at the end, use unskip to cancel its effect. }

\newcommand{\utipa}[1]{\expandafter\textipa{\callunitipa{#1}}}

\begin{document} \utipa{} \end{document}

Someone working with me is also migrate tipa T3-encoding fonts to Unicode fonts(TrueType etc.). Still waiting for the day it completes.

  • As it’s currently written, your answer is unclear. Please [edit] to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center. – Community Aug 06 '22 at 06:50