Module to get OSA terminology description through the "official channels",
in stead of manually getting the AETE/AEUT resource. Donated by Donovan
Preston. This is his original code (but with the filename changed) checked
in for reference only.
diff --git a/Mac/Modules/OSATerminology.c b/Mac/Modules/OSATerminology.c
new file mode 100644
index 0000000..f76f49e
--- /dev/null
+++ b/Mac/Modules/OSATerminology.c
@@ -0,0 +1,70 @@
+#include <Python/Python.h>
+#include <Carbon/Carbon.h>
+#include <Python/pymactoolbox.h>
+
+PyObject * PyOSA_GetAppTerminology(PyObject* self, PyObject* args) {
+	AEDesc temp;
+	FSSpec tempFSSpec;
+	
+	ComponentInstance defaultComponent;
+	ScriptingComponentSelector theType;
+	SInt16 defaultTerminology;
+	Boolean didLaunch;
+	
+	OSAError err;
+	
+	PyObject * returnVal;
+	
+	if (!PyArg_ParseTuple(args, "O&", PyMac_GetFSSpec, &tempFSSpec)) return NULL;
+	
+  defaultComponent = OpenDefaultComponent (kOSAComponentType,
+					      'ascr');
+//					      kOSAGenericScriptingComponentSubtype);
+
+  err = GetComponentInstanceError (defaultComponent);
+	printf("OpenDefaultComponent: %d\n", err);
+	err = OSAGetCurrentDialect(defaultComponent, &defaultTerminology);
+	printf("getcurrentdialect: %d\n", err);
+	err = OSAGetAppTerminology (
+    	defaultComponent, 
+    	kOSAModeNull, 
+    	&tempFSSpec, 
+    	defaultTerminology, 
+    	&didLaunch, 
+    	&temp
+	);
+
+/*	err = ASGetAppTerminology (
+    	defaultComponent, 
+    	&tempFSSpec, 
+    	defaultTerminology, 
+    	&didLaunch, 
+    	&temp
+	);*/
+
+	printf("getappterminology: %d\n", err);
+
+	returnVal = Py_BuildValue("O&i",
+			AEDesc_New, &temp, didLaunch);
+	return returnVal;
+}
+
+/* 
+ * List of methods defined in the module
+ */
+static struct PyMethodDef PyOSA_methods[] =
+{
+  {"GetAppTerminology", 
+   (PyCFunction) PyOSA_GetAppTerminology,
+   METH_VARARGS,
+   "Get an applications terminology, as an AEDesc object."},
+
+  {NULL, (PyCFunction) NULL, 0, NULL}
+};
+
+
+void
+initPyOSA(void)
+{
+	Py_InitModule("PyOSA", PyOSA_methods);
+}
\ No newline at end of file