Showing posts with label TeX. Show all posts
Showing posts with label TeX. Show all posts

Tuesday, July 26, 2016

Getting Xindy to work for IAST-encoded text

Update, 2021

January 2021.  Since writing about Xindy below in 2016, a new indexing program has been released, Xindex by Herbert Voß.  I now use xindex with this configuration file for IAST sorting.  My preamble says 

\usepackage[imakeidx]{xindex} 

\makeindex[name=lexical,
title=Lexical Index,
columns=3,
options=  -c iast -a -n, % nocasesensitive, noheadings
]

Tuesday, January 22, 2013

TeX implementations in the Cloud

The more mature products (2014)

Both the above have collaborative-editing features.  Both have free access for limited projects, but require subscription for larger projects or collaborative teams.


Others of varying levels of activity (2014)

  • FlyLaTeX (self-hosting; free and open-source)
  • TeXTouch (iTunes, iPhone editor, can compile when online)
  • Verbosus (with Android and iOS apps)
  • Blue Publications
  • LaTeXLab - requires your Google login details :-( 
  • Pine from Sayahna.orgIn alpha test (a document processing system in the cloud that makes use of MediaWiki and its resources)
  • CloudTeX from Sayahna.org
    XeLaTeX and LuaTeX supported.   Working prototype available to testers. 
  • A different CloudTeX Seems to have gone quiet as of 2013.
  • SpanDex
    XeLaTeX and LuaTeX available, but limited Unicode fonts.
    Closed.
  • ScribTeX  (phased out as of Feb 2013, in favour of ShareLaTeX, but still exists)
  • MonkeyTeX (4/2014)

Tuesday, July 03, 2012

Sanskrit hyphenation list

I'm gradually building up a file of hyphenated Sanskrit words and compounds, written in the Latin alphabet.  The file is called sanskrit-hyphenations.tex, and you are welcome to download it.

It contains hyphenation points for words in English (ayur-veda), and for words in Sanskrit (āyur-veda).
 To use it, do something like this in your style file:
\setotherlanguage{sanskrit}
\newfontfamily\sanskritfont{Sanskrit 2003}
% Define \sansk{} which is the same as \emph{}, except
% that it causes appropriate hyphenation

% for Sanskrit words.  Use \sansk{} for Sanskrit and
% \emph{} for English.

\newcommand{\sansk}[1]{\emph{\textsanskrit{#1}}}
 and \input the sanskrit-hyphenations.tex file after \begin{document}, thus:
\begin{document}
  \input{sanskrit-hyphenations.tex}

...
\end{document}

XeTeX  already has built-in hyphenation rules for Devanāgarī and Romanized Sanskrit. The above file is intended to extend the hyphenation coverage for Romanized words, using etymological and stylistic considerations.

Tuesday, October 04, 2011

Simplest Sanskrit XeLaTeX file

Input:

\documentclass{article}
\usepackage{polyglossia}
\setmainfont[Script=Devanagari]{Nakula}

\begin{document}
Your Devanāgarī looks like this:  आसीद्राजा नलो नाम and your romanized stuff looks like this: āsīd rājā nalo nāma.  
\end{document}

Output:






You can get the Nakula font (and its twin, Sahadeva) from John Smith's website, http://bombay.indology.info

Monday, November 22, 2010

Hyphenating Sanskrit in roman transliteration

%!TeX program = xelatex
%
% Thanks to Yves Codet for the first version of this test file, and to Yves
% and Jonathan Kew for the hyphenation tables
% for Sanskrit (hyph-sa.tex):
%
% This file exemplifies the case where some Sanskrit is embedded in a
% mainly-English document, but the Sanskrit words are appropriately
% hyphenated. The Sanskrit words are in the argument of the
% \textsanskrit{} command.

\documentclass[12pt]{article}

\usepackage{fontspec}
\usepackage{polyglossia}

\setdefaultlanguage{english}
\setmainfont{Charis SIL}

\setotherlanguage{sanskrit}
\newfontfamily\sanskritfont{Charis SIL}

\textwidth=0.5cm
\parindent 0pt

\begin{document}

Sanskrit hyphenation:
\par\smallskip

\textsanskrit{manum ekāgram āsīnam abhigamya maharṣayaḥ |\par}

\bigskip

English hyphenation:
\par\smallskip

manum ekāgram āsīnam abhigamya maharṣayaḥ |

\end{document}

Tuesday, July 06, 2010

Switching from Devanāgarī to Roman with a single command

I have to admit even I am startled by the success of this.
In the input file below, I changed the single command:
  • \setdefaultlanguage{sanskrit}

to

  • \setdefaultlanguage{english}
and the result was the following:

A minimal edition of a Sanskrit verse, using XeLaTeX and Ledmac


And here's the input for the above (tested and working in September 2019):


\documentclass{book}
% Set up things for XeLaTeX, and Devanagari.
% Simplified version of http://cikitsa.blogspot.com/2010/07/xelatex-for-sanskrit.html

\usepackage{polyglossia} % the multilingual support package
% Next, from the polyglossia manual:
\setdefaultlanguage{sanskrit} % this is mostly going to be Sanskrit,
\setotherlanguage{french} % with some French embedded in it,
\setotherlanguage{english} % and some English.
% These will call appropriate hyphenation.
\usepackage{xltxtra} % standard for nearly all XeLaTeX documents
\defaultfontfeatures{Mapping=tex-text} % ditto
\setmainfont{Gandhari Unicode} % could be any Unicode font
% Now define the Devanagari font:
% John Smith's Sahadeva, input using standard UTF8 transliteration
\newfontfamily\sanskritfont [Script=Devanagari,Mapping=RomDev]{Sahadeva}

% Now come the commands for the critical edition formatting:
\usepackage[noeledmac]{ledmac} %"noeledmac" stops some annoying messages
% customizations to Ledmac, and macros to make life easier.
\def\Variant#1{\Afootnote{\relax#1}}
\def\Lemma#1{\lemma{\relax#1}}
\let\Reference=\Bfootnote
\let\Grammatical=\Cfootnote
\let\Tibetan=\Dfootnote
% in a real edition, I'd probably also make
% abbreviations for \textfrench (perhaps \tf) etc.
\def\Omission#1{$\langle$#1$\rangle$}
\def\ScribalDeletion#1{{\rm[\kern-.15em[}#1{\rm]\kern-.15em]}}
\def\hardspace{\texttt{\char`\ }}
\def\And{{\rm\penalty-1\quad$\mid\mid$~}} % divider between variants to the same lemma
% more customizations: make the A notes
% (\Variants and \Lemmas)into two-column format,
% and make the B notes (\Reference) normal footnotes.
%
% changes to stuff cut-and-pasted from ledmac.sty:
\makeatletter
\renewcommand*{\twocolfootfmt}[3]{%
\normal@pars
% \hsize .45\hsize
\hsize .49\hsize
\parindent=0pt
\tolerance=5000
\raggedright
\leavevmode\hangindent1.5em\hangafter1
\strut{\notenumfont\printlines#1|}\enspace
{\select@lemmafont#1|#2}\rbracket\enskip
#3\strut\par\allowbreak}
\foottwocol{A}
\renewcommand*{\normalfootfmt}[3]{%
\normal@pars
\parindent=0pt \parfillskip=0pt plus 1fil
\hangindent1.5em\hangafter1
{\notenumfont\printlines#1|}\strut\enspace
{\select@lemmafont#1|#2}\rbracket\enskip#3\strut\par}
\footnormal{B}
\makeatother
\firstlinenum{1}
\linenumincrement{1}


% and here begins the edition:
%
\begin{document}
\chapter*{yogaśatakam}
\large


\section*{\textenglish{The example verse by itself}}

\textenglish{From \emph{Yogaśataka: Texte m\'edical attribu\'e
\`a Nāgārjuna\ldots par Jean Filliozat} (Pondich\'ery, 1979), pp.\,1, 59:\par}

\bigskip

kṛtsnasya tantrasya gṛhītadhāmna-\\
ścikitsitādviprasṛtasya dūram|
vidagthavaidyapratipūjitasya\\
kariṣyate yogaśatasya bandhaḥ|| 1||

\bigskip

\section*{\textenglish{The example verse, with apparatus}}
% we could use the \stanza command, but I haven't bothered.

%
% I find that the judicious use of indentation
% and newlines helps enormously to see what's what.
% Using a good "folding editor" would be even better.
%

\begingroup
\beginnumbering
\autopar
\edtext{
\edtext{kṛtsnasya}{
\Variant{%
\textfrench{N1 détruit, C1 }kṛtas tasya,
\textfrench{C2 }kṛtasya.}
\Tibetan{\textfrench{T \emph{mth'yas}, ``sans limite, immense''
traduit }kṛtsnasya.}}
tantrasya
\edtext{gṛhītadhāmna-}{
\Variant{\textfrench{Ca, JK }dhamnā.}}\\
\edtext{ścikitsitā}{
\Lemma{cikitsitād} % not ``ścikitsitā'', of course. We're preserving
the sandhyakṣaras.
\Variant{\textfrench{C1, C2 } cikitsitāt.}
\Tibetan{\textfrench{T \emph{gso-spyad} ''pratique de la
thérapeutique''. Ordinairement
  \emph{gso spyad} est ``investigation del la th.''}}}% comment sign to stop a break after the conjunct
\edtext{dviprasṛtasya}{
\Lemma{viprasṛtasya} % as above with cikitsitād.
\Variant{\textfrench{Ca} cikitsitārthaprasṛtasya, \textfrench{C1, C2}
viprasutasya.}}
\edtext{dūram}{
\Variant{\textfrench{Ca} dūrāt}}|
\\ \indent
%
% the above line is annoying. Because the whole verse is
% inside an \edtext{} macro, in order to get the
% \Grammatical note naming the upajāti verse, we have to
% avoid having paragraph breaks, which are not allowed
% inside \edtext{}.
% instead, we use \\ (newline) and \indent (paragraph indent)
% to get the same visual effect. A nasty kludge.
%
vidagdhavaidyapratipūjitasya\\
\edtext{kariṣyate}{
\Variant{\textfrench{N1} karikṣete.}}
yogaśatasya bandhaḥ|| 1||
}{\Lemma{}\Grammatical{Upajāti.}}
\par % necessary to stop \autopar complaining. Thanks to Alessandro Graheli.
\endgroup
\end{document}

Monday, July 05, 2010

XeLaTeX for Sanskrit

This example worked well in July 2010, but some TeX packages have since been updated slightly.  See the new, updated version of this example, posted on 27 May 2013.



Sunday, April 04, 2010

TeXWorks for linux

TeXworks is a nice editor with an emphasis on multilingual use, simplicity and rapid document preview. It is from Jonathan Kew, author of XeTeX.

Binary downloads for Mac and Windows are available from the TeXworks home page. For Ubuntu Linux, there's a PPA here.

Monday, July 30, 2007

Critical edition typesetting

Some years ago, John Lavagnino and I wrote the EDMAC
software for typesetting critical editions. EDMAC was an application for use with plain TeX. Later, adaptations were made to allow EDMAC to work with LaTeX etc. More recently, the ConTeXt package, also based on TeX, has been developing methods for handling critical edition typesetting.

Idris Hamid, Colorado State University, recently gave this talk at the TUG 2007 conference, San Diego, about doing critical editions using ConTeXt.