symbian-qemu-0.9.1-12/python-2.6.1/Misc/TextMate/Python-Dev.tmbundle/Commands/2 to 3 - Module Deletion.tmCommand
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian-qemu-0.9.1-12/python-2.6.1/Misc/TextMate/Python-Dev.tmbundle/Commands/2 to 3 - Module Deletion.tmCommand Fri Jul 31 15:01:17 2009 +0100
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>beforeRunningCommand</key>
+ <string>nop</string>
+ <key>command</key>
+ <string>#!/usr/bin/python
+"""Generate code to warn about a module's removal in Python 3.0.
+
+XXX Not supported:
+- Module's in a package do not have their full name generated.
+- Package's __init__ module; should detect and use the package's name instead.
+
+"""
+py_template = """from warnings import warnpy3k
+warnpy3k("the ${1:%s} module has been removed in Python 3.0", stacklevel=2)
+del warnpy3k$0"""
+
+c_template = """
+if (PyErr_WarnPy3k("the ${1:%s} module has been removed in "
+ "Python 3.0", 2) < 0)
+ return;$0"""
+
+
+import imp
+import os
+
+file_name = os.path.split(os.environ['TM_FILEPATH'])[1]
+
+py_suffixes = reversed(sorted((suffix[0] for suffix in imp.get_suffixes() if suffix[2] == imp.PY_SOURCE), key=len))
+c_suffixes = reversed(sorted((os.path.splitext(suffix[0])[0] + '.c'
+ for suffix in imp.get_suffixes() if suffix[2] == imp.C_EXTENSION), key=len))
+
+pairings = ((py_suffixes, py_template), (c_suffixes, c_template))
+
+def create_template(suffixes, template):
+ for suffix in suffixes:
+ if not file_name.endswith(suffix):
+ continue
+ module_name = file_name[:-len(suffix)]
+ return template % module_name
+ else:
+ return None
+
+for template in (create_template(*pair) for pair in pairings):
+ if not template:
+ continue
+ print template,
+ break
+else:
+ print 'XXX Could not generate code.'</string>
+ <key>input</key>
+ <string>none</string>
+ <key>name</key>
+ <string>2 to 3 - Module Deletion</string>
+ <key>output</key>
+ <string>insertAsSnippet</string>
+ <key>tabTrigger</key>
+ <string>2to3moddel</string>
+ <key>uuid</key>
+ <string>9519C22B-6AB8-41A1-94F6-079E0B45C147</string>
+</dict>
+</plist>