From b96a73a8cba47ee342d4c470396d59d10af77a3f Mon Sep 17 00:00:00 2001
From: Peter Steinbach <steinbach@scionics.de>
Date: Tue, 7 Jul 2015 14:15:27 +0200
Subject: [PATCH] * renamed to propert English * added new function that
 replaces occurrences of a defined set of parameters   (required to handle
 brackets inside filenames) * using glob_and_escape in Snakefile now

---
 spim_registration/timelapse/Snakefile            |  4 ++--
 .../{timelaps_utils.py => timelapse_utils.py}    | 16 ++++++++++++++++
 2 files changed, 18 insertions(+), 2 deletions(-)
 rename spim_registration/timelapse/{timelaps_utils.py => timelapse_utils.py} (70%)

diff --git a/spim_registration/timelapse/Snakefile b/spim_registration/timelapse/Snakefile
index f7211ce..bbefb2d 100644
--- a/spim_registration/timelapse/Snakefile
+++ b/spim_registration/timelapse/Snakefile
@@ -1,5 +1,5 @@
 import os, glob, sys, re
-from timelaps_utils import produce_xml_merge_job_files, produce_string, padding_of_file_id
+from timelapse_utils import produce_xml_merge_job_files, produce_string, padding_of_file_id, glob_and_escape
 
 #where are we (can be configured through -d/--directory flag)
 JOBDIR=os.path.abspath(os.path.curdir)
@@ -32,7 +32,7 @@ rule resave_prepared:
 
 # defining xml for czi dataset
 rule define_xml_czi:
-    input:glob.glob('*.czi'), config["define_xml_czi"]["first_czi"]
+    input: glob_and_escape("*.czi"), config["define_xml_czi"]["first_czi"]
     output: config["common"]["first_xml_filename"] + ".xml"
     log: "define_xml_czi.log"
     run: 
diff --git a/spim_registration/timelapse/timelaps_utils.py b/spim_registration/timelapse/timelapse_utils.py
similarity index 70%
rename from spim_registration/timelapse/timelaps_utils.py
rename to spim_registration/timelapse/timelapse_utils.py
index 6a2bebe..fea8e41 100644
--- a/spim_registration/timelapse/timelaps_utils.py
+++ b/spim_registration/timelapse/timelapse_utils.py
@@ -1,6 +1,7 @@
 import re
 import os
 import math
+import glob
 
 def produce_xml_merge_job_files(_datasets):
    fre = re.compile(r'(?P<xml_base>\w+)-(?P<file_id>\d+)-00.h5')
@@ -31,3 +32,18 @@ def padding_of_file_id(_n_timepoints):
       return 2
    else:
       return value
+
+def glob_and_escape(_glob_string):
+   """ escaping all brackets in filenames """
+   
+   value = glob.glob(_glob_string)
+   translate_table = {
+      '(' : '\(',
+      ')' : '\)'
+   }
+
+   for index in range(len(value)):
+      for (k,v) in translate_table.items():
+         value[index] = value[index].replace(k,v)
+
+   return value
-- 
GitLab