# Feature request: Let us easily write in IPA and tree diagrams

Giving an IPA transcription or a tree is very often necessary in discussing linguistics topics, but it is exceedingly slow and painful to do it here, because the editing software seems to have no special provision for it. I know a little about doing it using external tools, but that is so much trouble that I would seldom do it.

IPA is difficult to provide for, and I have no ideas about doing it. I do have an idea about formatting tree diagrams. I'll give you the format for specifying trees that I worked out a while back for making class handouts. It uses indentation.

Imagine a simple tree for "A fruit fell into the garbage can". Here's the way I'd like to write the code for a suitable tree:

S
NP
Det
a
N
fruit
VP
V
fell
PP
P
into
NP
Det
the
N
garbage
can


I imagine the intent of this is obvious. In the display, S labels the top node, and additional indentation means that a label is for a daughter of the preceding node. Lines with the same indentation and not separated by a line with less indentation are tree sisters. That's it -- very simple.

I'd love to be able to illustrate answers with trees.

The programs I wrote a long time ago to format trees in the above indented format are still available here: https://www.ctan.org/tex-archive/graphics/tree?lang=en . I doubt they'd be any use these days.

• You can use this for writing IPA: IPA Keyboard userscript for you!
– Alenanno Mod
Dec 17 '15 at 0:21
• @Alenanno, thank you. I've been using the IPA chart-keyboard at westonruter.github.io/ipa-chart/keyboard . I like it, but it's too slow. Dec 17 '15 at 0:52
• You might kludge your trees by left-justifying with a char like '.' (so counting the dots would show the depth). .NP ..Det ...a
– amI
Feb 10 '16 at 22:56
• @amI, yes, and depth can also annotated by the number of preceding unmatched left parens. So, e.g., (S(NP (John)) (VP(V (loves))(NP (Mary)))). My programs also recognize this notation. However, I find the indentation notation easiest to read. If you use an editor for input that automatically indents to the level of the preceding line, that does some of the work for you. Feb 11 '16 at 0:35

I personally think that a web TeX renderer that uses SVG (like what Mathematics SE has) will work because:

1) you can type with your normal QWERTY keyboard, it even works on handheld devices.

2) No need for special programms and installations. It requires less work. And it's easy. Same can be done for vowel charts, tree diagrams etc.

• I know TeX, but I don't know anything about web TeX, so perhaps I'm mistaken, but I don't think the difficulties in providing linguistics oriented formatting have much to do with rendering. For tree diagrams, it would be nice to have slanty lines, but it's not completely necessary -- fairly decent boxy diagrams can be made with the box characters available in Unicode. Rather than rendering, the problems concern specifying and implementing a practical input language. That is what my suggestion about trees was about. Mar 22 '16 at 15:20
• Not just TeX but we can create display engines like: MathJax for linguistics. Source code: github.com/mathjax/MathJax website:mathjax.org Mar 22 '16 at 17:30
• You can also check the link below for incorporating TeX in a website:tex.stackexchange.com/questions/23804/… Mar 22 '16 at 17:34
• Thank you for the references to MathJax. I don't yet see how it would be helpful in using tree diagrams. Mar 22 '16 at 18:10
• MathJax is not useful in linguistics purposes per se but it's a good example of how web display engines can be worked to fulfill special needs of a discipline. We, linguists can develop engines like MathJax for our needs; drawing tree diagrams, and IPA charts to name a few. Mar 22 '16 at 18:29
• Yes, that is the subject of my request (except not IPA charts). I hope someone will write an engine for displaying tree diagrams. Mar 22 '16 at 20:36

For general-purpose character typing, there are two programs. Allchars (available from Sourceforge) is free, and Accent Composer (Kovach Computing) is about \$25. In both cases, you provide a 2-character input sequence which returns a single unicode character. The program is invoked via a hotkey such as F12 or tapping right-ctrl followed by the letter sequence, ego. F12-n-g could return ŋ. This provides a uniform method of inputting arbitrary characters in an window -- in your browser, composing email in T-bird, writing a document, or grepping at the command line (is not a browser add-on). You tailor the key sequences to whatever is mnemonic for you (since the pre-defined key settings don't pander to the interests of linguists). This methods encompasses any arbitrary arrangement of unicode characters, rather than defining small subsets of characters as a "language". IMO Accent Composer is easier to configure and has more options for specifying the hotkey.

• Thanks for the reference. I took a look at Allchars -- it doesn't seem to be maintained any more. Besides, personally, I would never be able to use a program that requires me to remember a bunch of conventions. The IPA keyboard I use from westonruter doesn't even make me remember IPA characters -- all I have to know are the articulations I want to describe. Dec 18 '15 at 16:08
• Another point is that sometimes I'm browsing the website on my mobile phone and/or tablet so I don't hav access to sftwares like this. Online TeX rendering is perfect. Mar 22 '16 at 9:32