]> git.lyx.org Git - lyx.git/blobdiff - lib/scripts/TeXFiles.py
Merge branch 'master' into biblatex2
[lyx.git] / lib / scripts / TeXFiles.py
index bf85ebf44d80f2fa9d21b1a81b5bfbd13e7973b8..31b44b49049f2a9fccf08c9b04ffe88efb7752ee 100755 (executable)
@@ -1,13 +1,12 @@
-#!/usr/bin/env python
-# -*- coding: iso-8859-15 -*-
+# -*- coding: utf-8 -*-
 
 # file TeXFiles.py
 # This file is part of LyX, the document processor.
 # Licence details can be found in the file COPYING.
 
-# \author Herbert Voß
+# \author Herbert Voß
 # \author Jean-Marc Lasgouttes
-# \author Jürgen Spitzmüller
+# \author Jürgen Spitzmüller
 # \author Bo Peng
 
 # Full author contact details are available in file CREDITS.
 # TeX style files      -> option sty
 # bibtex style files   -> option bst
 # bibtex database files -> option bib
+# biblatex bibstyles   -> option bbx
+# biblatex citestyles  -> option cbx
 #
 # with the help
 # of kpsewhich and creates a
-# bstFiles.lst, clsFiles.lst, styFiles.lst, bibFiles.lst
+# bstFiles.lst, clsFiles.lst, styFiles.lst, bibFiles.lst,
+# bbxFiles.lst, cbxFiles.lst
 # without any parameter all files are created.
 #
 # Herbert Voss <voss@perce.org>
 #
 # Updates from Jean-Marc Lasgouttes.
 #
-# bib support added by Juergen Spitzmueller (v0.3)
+# bib, bbx and cbx support added by Juergen Spitzmueller (v0.4)
 #
 # translated to python by Bo Peng, so that the script only 
 # relies on python and kpsewhich (no shell command is used).
@@ -39,6 +41,8 @@ cls_stylefile = 'clsFiles.lst'
 sty_stylefile = 'styFiles.lst'
 bst_stylefile = 'bstFiles.lst'
 bib_files = 'bibFiles.lst'
+bbx_files = 'bbxFiles.lst'
+cbx_files = 'cbxFiles.lst'
 
 def cmdOutput(cmd):
     '''utility function: run a command and get its output as a string
@@ -52,19 +56,19 @@ def cmdOutput(cmd):
 # processing command line options
 if len(sys.argv) > 1:
     if sys.argv[1] in ['--help', '-help']:
-        print '''Usage: TeXFiles.py [-version | cls | sty | bst | bib ]
+        print '''Usage: TeXFiles.py [-version | cls | sty | bst | bib | bbx| cbx ]
             Default is without any Parameters,
             so that all files will be created'''
-        sye.exit(0)
+        sys.exit(0)
     else:
         types = sys.argv[1:]
         for type in types:
-            if type not in ['cls', 'sty', 'bst', 'bib']:
+            if type not in ['cls', 'sty', 'bst', 'bib', 'bbx', 'cbx']:
                 print 'ERROR: unknown type', type
                 sys.exit(1)
 else:
     # if no parameter is specified, assume all
-    types = ['cls', 'sty', 'bst', 'bib']
+    types = ['cls', 'sty', 'bst', 'bib', 'bbx', 'cbx']
 
 #
 # MS-DOS and MS-Windows define $COMSPEC or $ComSpec and use `;' to separate
@@ -73,9 +77,7 @@ else:
 # Create a variable that holds the right character to be used by the scripts.
 path_sep = os.pathsep
 if sys.platform == 'cygwin':
-    # MikTeX's kpsewhich says "kpathsea emulation version x.x.x", whereas
-    # teTeX's simply "kpathsea version x.x.x".
-    if 'emulation' in cmdOutput('kpsewhich --version'):
+    if ';' in cmdOutput('kpsewhich --show-path=.tex'):
         path_sep = ';'
     else:
         path_sep = ':'
@@ -95,6 +97,12 @@ for type in types:
     elif type == 'bib':
         outfile = bib_files
         kpsetype = '.bib'
+    elif type == 'bbx':
+        outfile = bbx_files
+        kpsetype = '.tex'
+    elif type == 'cbx':
+        outfile = cbx_files
+        kpsetype = '.tex'
 
     dirs = cmdOutput('kpsewhich --show-path=' + kpsetype).replace('!!', '').strip()
     # remove excessive //