# Style sheet for S transscripts -- GNU R (www.r-project.org) is an
# implementation of S, a language for statistical computing and graphics. 
#
# A suitable sheets.map entry would be
# R/S transscript files
# st:	/*.St/ /*.Rout/
#
# Copyright (c) 2000, 2001 Torsten Hothorn, Kurt Hornik, Dirk Eddelbuettel

#
# This file is part of a2ps.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# This program 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; see the file COPYING.  If not, see
# <https://www.gnu.org/licenses/gpl-3.0.html>.
#

style "S transscript" is
written by "Torsten Hothorn <Torsten.Hothorn@rzmail.uni-erlangen.de>, Kurt Hornik <Kurt.Hornik@ci.tuwien.ac.at>, Dirk Eddelbuettel <edd@debian.org>"
version is 0.1
requires a2ps 4.9.5

documentation is
   "Should handle transscripts from interpreters of S, a language for"
   "statistical computing and graphics, such as R."
   ""
   "R consists of a language plus a run-time environment with graphics, a"
   "debugger, access to certain system functions, and the ability to run"
   "programs stored in script files."
   ""
   "R has a home page at `https://www.r-project.org/'.  It is free software"
   "distributed under a GNU-style copyleft, and an official part of the GNU"
   "project (`GNU S')."
end documentation

first alphabet is
   "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ."
second alphabet is
   "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.0123456789"
case sensitive

#ancestors are
#   s
#end ancestors

sequences are
  "#" Comment,
  "\"" Plain String "\"" Plain
end sequences

operators are
   (/((R?>|\\+).*)$/ \1 Keyword),
   (/^(Dumped|Error:|Syntax error:|Warning messages?:)/ \1 Keyword_strong),
   (/^(In addition: Warning messages?:) *$/ \1 Keyword_strong),
   (/^(Error in.* :)( )/ \1 Keyword_strong, \2 Plain)
end operators

end style
