diff --git a/Lib/idlelib/SearchEngine.py b/Lib/idlelib/SearchEngine.py
index b3b7b4d..2118cd3 100644
--- a/Lib/idlelib/SearchEngine.py
+++ b/Lib/idlelib/SearchEngine.py
@@ -85,7 +85,7 @@
         except re.error as what:
             args = what.args
             msg = args[0]
-            col = arg[1] if len(args) >= 2 else -1
+            col = args[1] if len(args) >= 2 else -1
             self.report_error(pat, msg, col)
             return None
         return prog
diff --git a/Lib/idlelib/StackViewer.py b/Lib/idlelib/StackViewer.py
index 74c9136..ccf6283 100644
--- a/Lib/idlelib/StackViewer.py
+++ b/Lib/idlelib/StackViewer.py
@@ -131,8 +131,8 @@
     root.geometry("+%d+%d"%(x, y + 150))
     flist = PyShellFileList(root)
     try: # to obtain a traceback object
-        a
-    except:
+        intentional_name_error
+    except NameError:
         exc_type, exc_value, exc_tb = sys.exc_info()
 
     # inject stack trace to sys
diff --git a/Lib/idlelib/idle_test/test_textview.py b/Lib/idlelib/idle_test/test_textview.py
index 9b25ecd..0e81b63 100644
--- a/Lib/idlelib/idle_test/test_textview.py
+++ b/Lib/idlelib/idle_test/test_textview.py
@@ -3,7 +3,7 @@
 import unittest
 import os
 from test.test_support import requires
-from Tkinter import Tk, Text, TclError
+from Tkinter import Tk
 from idlelib import textView as tv
 from idlelib.idle_test.mock_idle import Func
 from idlelib.idle_test.mock_tk import Mbox
@@ -93,6 +93,4 @@
         self.assertIsNone(view)
 
 if __name__ == '__main__':
-    unittest.main(verbosity=2, exit=False)
-    from idlelib.idle_test.htest import run
-    run(TextViewer)
+    unittest.main(verbosity=2)
