Am Samstag 09 Mai 2009 schrieb Kornel Benko:
> Am Samstag 09 Mai 2009 schrieb José Matos:
> > Like the following patch (untested)?
>
> Test was ok with the option -s.
>
> But I was unable to find out how to use --src_file.
>
>       Kornel

The test is valid now for "--src_file" too. This lyx_pot.py does not break the 
existing build tools.
Is it ok to commit (trunk only)?

I already adapted the cmake build to this new parameter (but not commited 
yet). It will help to not exceed the command line length on windows.

        Kornel

Index: po/lyx_pot.py
===================================================================
--- po/lyx_pot.py	(revision 29603)
+++ po/lyx_pot.py	(working copy)
@@ -189,7 +189,7 @@
                 string = string.replace('&amp;', '&').replace('&lt;', '<').replace('&gt;', '>')
                 string = string.replace('\\', '\\\\').replace('"', r'\"')
                 print >> output, '#: %s:%d\nmsgid "%s"\nmsgstr ""\n' % \
-                    (relativePath(src, base), lineno+1, string) 
+                    (relativePath(src, base), lineno+1, string)
         input.close()
     output.close()
 
@@ -324,13 +324,15 @@
 
 
 Usage = '''
-lyx_pot.py [-b|--base top_src_dir] [-o|--output output_file] [-h|--help] -t|--type input_type input_files
+lyx_pot.py [-b|--base top_src_dir] [-o|--output output_file] [-h|--help] [-s|src_file filename] -t|--type input_type input_files
 
-where 
+where
     --base:
         path to the top source directory. default to '.'
     --output:
         output pot file, default to './lyx.pot'
+    --src_file
+        filename that contains a list of input files in each line
     --input_type can be
         ui: lib/ui/*
         layouts: lib/layouts/*
@@ -345,9 +347,10 @@
     input_type = None
     output = 'lyx.pot'
     base = '.'
+    input_files = []
     #
-    optlist, args = getopt.getopt(sys.argv[1:], 'ht:o:b:',
-        ['help', 'type=', 'output=', 'base='])
+    optlist, args = getopt.getopt(sys.argv[1:], 'ht:o:b:s:',
+        ['help', 'type=', 'output=', 'base=', 'src_file='])
     for (opt, value) in optlist:
         if opt in ['-h', '--help']:
             print Usage
@@ -358,22 +361,28 @@
             base = value
         elif opt in ['-t', '--type']:
             input_type = value
+        elif opt in ['-s', '--src_file']:
+            input_files = [f.strip() for f in open(value)]
+
     if input_type not in ['ui', 'layouts', 'modules', 'qt4', 'languages', 'encodings', 'external', 'formats'] or output is None:
         print 'Wrong input type or output filename.'
         sys.exit(1)
+
+    input_files += args
+
     if input_type == 'ui':
-        ui_l10n(args, output, base)
+        ui_l10n(input_files, output, base)
     elif input_type == 'layouts':
-        layouts_l10n(args, output, base)
+        layouts_l10n(input_files, output, base)
     elif input_type == 'qt4':
-        qt4_l10n(args, output, base)
+        qt4_l10n(input_files, output, base)
     elif input_type == 'external':
-        external_l10n(args, output, base)
+        external_l10n(input_files, output, base)
     elif input_type == 'formats':
-        formats_l10n(args, output, base)
+        formats_l10n(input_files, output, base)
     elif input_type == 'encodings':
-        encodings_l10n(args, output, base)
+        encodings_l10n(input_files, output, base)
     else:
-        languages_l10n(args, output, base)
+        languages_l10n(input_files, output, base)
 
 

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to