summaryrefslogtreecommitdiffstats
path: root/addon-sdk/source/python-lib/cuddlefish/util.py
diff options
context:
space:
mode:
Diffstat (limited to 'addon-sdk/source/python-lib/cuddlefish/util.py')
-rw-r--r--addon-sdk/source/python-lib/cuddlefish/util.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/addon-sdk/source/python-lib/cuddlefish/util.py b/addon-sdk/source/python-lib/cuddlefish/util.py
new file mode 100644
index 000000000..513495a69
--- /dev/null
+++ b/addon-sdk/source/python-lib/cuddlefish/util.py
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+IGNORED_FILE_PREFIXES = ["."]
+IGNORED_FILE_SUFFIXES = ["~", ".swp"]
+IGNORED_DIRS = [".git", ".svn", ".hg"]
+
+def filter_filenames(filenames, ignored_files=[".hgignore"]):
+ for filename in filenames:
+ if filename in ignored_files:
+ continue
+ if any([filename.startswith(suffix)
+ for suffix in IGNORED_FILE_PREFIXES]):
+ continue
+ if any([filename.endswith(suffix)
+ for suffix in IGNORED_FILE_SUFFIXES]):
+ continue
+ yield filename
+
+def filter_dirnames(dirnames):
+ return [dirname for dirname in dirnames if dirname not in IGNORED_DIRS]