]> git.donarmstrong.com Git - lilypond.git/blobdiff - scripts/lilypond-book.py
Get texidoc translations out of snippets source files
[lilypond.git] / scripts / lilypond-book.py
index a78fdfc02e1733992778931f15d6de1d952cacaf..1e0f7abf661d9ede9773e81d1277fdd91f6c57d7 100644 (file)
@@ -464,12 +464,15 @@ def do_process_cmd (chunks, input_name, options):
     else:
         progress (_ ("All snippets are up to date..."))
 
-    if options.lily_output_dir != options.output_dir:
-        output_files = split_output_files (options.lily_output_dir)
+    progress (_ ("Linking files..."))
+    abs_lily_output_dir = os.path.join (options.original_dir, options.lily_output_dir)
+    abs_output_dir = os.path.join (options.original_dir, options.output_dir)
+    if abs_lily_output_dir != abs_output_dir:
+        output_files = split_output_files (abs_lily_output_dir)
         for snippet in snippets:
-            snippet.link_all_output_files (options.lily_output_dir,
+            snippet.link_all_output_files (abs_lily_output_dir,
                                            output_files,
-                                           options.output_dir)
+                                           abs_output_dir)
 
 
 ###
@@ -613,7 +616,7 @@ def inverse_relpath (path, relpath):
     return the first path relative to the second."""
     if os.path.isabs (relpath):
         return os.path.abspath (path)
-    relparts = ['']
+    relparts = []
     parts = os.path.normpath (path).split (os.path.sep)
     for part in os.path.normpath (relpath).split (os.path.sep):
         if part == '..':
@@ -633,10 +636,16 @@ def do_options ():
     global_options.information = {'program_version': ly.program_version, 'program_name': ly.program_name }
     global_options.original_dir = original_dir
 
+    if global_options.lily_output_dir:
+        global_options.lily_output_dir = os.path.expanduser (global_options.lily_output_dir)
+        global_options.include_path.insert (0, inverse_relpath (original_dir, global_options.lily_output_dir))
+
     if global_options.output_dir:
         global_options.output_dir = os.path.expanduser (global_options.output_dir)
         global_options.include_path.insert (0, inverse_relpath (original_dir, global_options.output_dir))
 
+    global_options.include_path.insert (0, ".")
+
     # Load the python packages (containing e.g. custom formatter classes)
     # passed on the command line
     nr = 0