<?xml version="1.0" encoding="UTF-8"?>
<!--

 Authors: Duncan Coutts
 Copyright (C) 2007 Duncan Coutts <duncan@haskell.org>

 This library is free software; you can redistribute it and/or
 modify it under the terms of the GNU Library General Public
 License as published by the Free Software Foundation; either
 version 2 of the License, or (at your option) any later version.

 This library is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 Library General Public License for more details.

 You should have received a copy of the GNU Library General Public
 License along with this library; if not, write to the
 Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.

-->
<language id="haskell-literate" _name="Literate Haskell" version="2.0" _section="Sources">
  <metadata>
    <property name="mimetypes">text/x-literate-haskell</property>
    <property name="globs">*.lhs</property>
  </metadata>

  <definitions>
    <context id="haskell-literate">
      <include>

        <context ref="def:shebang"/>
        <context ref="c:if0-comment"/>
        <context ref="c:include"/>
        <context ref="c:preprocessor"/>
        <context ref="def:in-comment"/>

        <context id="line-code" end-at-line-end="true">
          <start>^&gt;</start>
          <include>
            <context ref="haskell:body"/>
          </include>
        </context>

        <context id="block-code">
          <start>^\\begin\{code\}</start>
          <end>^\\end\{code\}</end>
          <include>
            <context ref="haskell:body" />
          </include>
        </context>

      </include>
    </context>

  </definitions>
</language>
