10

Is there a Markdown dialect or other minimal markup language that is tailored to the needs of linguists (of all sorts)?

I would expect it do treat the following constructs:

  • An asterisk directly preceding a word *wrong doesn’t start emphasis.
  • A question mark directly preceding a word ?doubtful is put in superscript.
  • Less-than < and greater-than > marks surrounded by spaces show etymology and may be replaced by other symbols like arrows or other prettier symbols ≺ ≻.
  • Most strings enclosed in /slashes/ or [square brackets] use (X-)SAMPA or Kirshenbaum and are converted to IPA,
    • except ones preceded by plus or minus sign for [±features]
    • and also all-uppercase [MORPH(EME)S].
  • Characters or strings in <angular brackets> are 〈graphemic〉 unless they can be parsed as an absolute URL.
  • Digits, possibly followed by apostrophes (or other symbols), inside round parentheses (1') mark examples at the beginning of a line and references to them elsewhere. Double parentheses for references ((2)) would be tolerable.
  • Phrases enclosed by single quotation marks ', including accent marks ´ are set in italics and are not emphasized (HTML <i>, not <em>).
  • Inside regular quotations, round and square brackets are highlighted, especially if they only contain dots [...], (…) or uppercase letters [SIC], [sic!].
  • Some syntax for simple trees.
  • Table syntax reused for interlinear glosses.
  • Other markup, like |letter|, could be added by the user easily.

That reminds me that I’ve never found a good introduction to the variety of linguistic typography. Everyone just teaches what they uses themself, or expects students to “just know”.

  • You can use encoded characters to prevent them from getting treated as markup directives. – prash May 22 '14 at 18:26
  • Um, no, that’s not what I want (except for the asterisk). These characters should be treated as markup, but in a way specific to linguistics, e.g. to trigger SAMPA to IPA conversion. – Crissov May 22 '14 at 19:14
  • Sorry, I had not read the entire list earlier. I am not aware of any markdown implementation tailored for linguistics. However, I believe Python Markdown is easy to extend. Perhaps you'd like to do it yourself? – prash May 22 '14 at 19:54
  • Would that there were such a thing; pretty obviously the SE software isn't it. I'm sure there are LaTex packages, but they require some intermediary to generate HTML. Plus I don't use LaTex )-: – jlawler May 22 '14 at 20:26
  • This document is about how to use LyX for the kind of things linguists would need; it addresses some of the topics you brought up. – prash May 22 '14 at 22:45
2

MarkDown is not very standardized, so you can always add "yet another MarkDown dialect". Perhaps the easiest way to support a language such as you describe, is to write several regular expression rules to transform it straight to HTML+CSS. There are many MarkDown-to-HTML programs you could start from, too.

One difficulty that arises in trying to design such a language, is that linguists want to make a lot of distinctions, and there's only a little punctuation that's convenient to type.

For example, you mentioned using table markdown conventions for interlinear displays. That would be handy, but also introduces the problem of how to represent regular tables, which you might very well want in the same document (so then you need a variation, or a way to switch, or something, which complicates the system). The other problem is that table markdown isn't enough -- some interlinear layouts involve multiple levels of breaks; for example, in agglutinative languages you may have almost the complexity of a syntactic tree, buried in multiple layers of interlinear annotations. And third, a MarkDown table processor would need substantial rewriting to correctly wrap lines for interlinear displays (I did get some nice interlinears to work using HTML and the CSS "display:inline-block" property; but I never could make it work for left-to-write annotations on right-to-left text....).

If you can afford a zero-sum game (you give up one thing MarkDown typically uses punctuation for, for each thing you get with your new processor), then it could work nicely. But you may soon find you want asterisk for emphasis too. Likewise for many of the other conventions. This commonly leads to creeping complexity, and people eventually switch to a metalanguage that provides (a) names rather than characters, (b) hierarchical state management, and (c) existing software for rendering, indexing, transforms, conversions to forms journal publishers will takes, and so on.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.