summaryrefslogtreecommitdiffstats
path: root/silpa
diff options
context:
space:
mode:
authorSanthosh Thottingal <santhosh.thottingal@gmail.com>2009-04-22 23:39:53 +0530
committerSanthosh Thottingal <santhosh.thottingal@gmail.com>2009-04-22 23:39:53 +0530
commit39d12a4a44fe0a2b386ba9562833f8bf6f6275f2 (patch)
tree22b0d993ef475d75e5a3562789da3b4b07914ac9 /silpa
parent10d9985caf134fcf7ac85de8105de53c5d2442f1 (diff)
downloadRachana.git-39d12a4a44fe0a2b386ba9562833f8bf6f6275f2.tar.gz
Rachana.git-39d12a4a44fe0a2b386ba9562833f8bf6f6275f2.tar.xz
Rachana.git-39d12a4a44fe0a2b386ba9562833f8bf6f6275f2.zip
Adding Dictionary Module to Silpa
Diffstat (limited to 'silpa')
-rw-r--r--silpa/index.py1
-rw-r--r--silpa/modules/__init__.py4
-rw-r--r--silpa/modules/dictionary/dictionary.py70
-rw-r--r--silpa/silpa.conf15
4 files changed, 83 insertions, 7 deletions
diff --git a/silpa/index.py b/silpa/index.py
index 91798a1..8a44a15 100644
--- a/silpa/index.py
+++ b/silpa/index.py
@@ -15,6 +15,7 @@ def index(form):
response=SilpaResponse()
if(action):
module_manager=ModuleManager()
+ action=action.replace(" ","_")
module_instance = module_manager.getModuleInstance(action)
if(module_instance):
response.setBreadcrumb(module_instance.get_module_name())
diff --git a/silpa/modules/__init__.py b/silpa/modules/__init__.py
index 7a3b875..c46904b 100644
--- a/silpa/modules/__init__.py
+++ b/silpa/modules/__init__.py
@@ -1,10 +1,12 @@
#! /usr/bin/env python
# -*- coding: utf-8 -*-
-from lemmatizer import *
+from stemmer import *
from payyans import *
from transliterator import *
from syllabalizer import *
from guesslanguages import *
from hyphenator import *
from fortune import *
+from inexactsearch import *
+from dictionary import *
diff --git a/silpa/modules/dictionary/dictionary.py b/silpa/modules/dictionary/dictionary.py
new file mode 100644
index 0000000..7ba877a
--- /dev/null
+++ b/silpa/modules/dictionary/dictionary.py
@@ -0,0 +1,70 @@
+#! /usr/bin/env python
+# -*- coding: utf-8 -*-
+# English Malayalam Dictionary
+# Copyright 2008 Santhosh Thottingal <santhosh.thottingal@gmail.com>
+# http://www.smc.org.in
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# If you find any bugs or have any suggestions email: santhosh.thottingal@gmail.com
+# URL: http://www.smc.org.in
+
+
+from common import *
+import os
+import pickle
+class Dictionary(SilpaModule):
+
+ def lookup_en_ml(self, key):
+ self.dictFile=os.path.dirname(__file__) + "/data/dict.dat"
+ pickled_dict=open(self.dictFile,'r')
+ self.dictionary=pickle.load(pickled_dict)
+ meaning=""
+ if self.dictionary.has_key(key):
+ meaningList=self.dictionary[key]
+ for meaning_item in meaningList:
+ meaning=meaning+meaning_item.strip() +"<br/>"
+ else :
+ meaning="No Meaning found"
+ return meaning.decode('utf-8')
+ def process(self,form):
+ response = """
+ <h2>English Malayalam Dictionary</h2></hr>
+ <p>Enter the word to lookup in the dictionary
+ </p>
+ <form action="" method="get">
+ <input type="text" value="%s" name="word"/>
+ <input type="submit" id="Find_Meaning" value="Find Meaning" name="action" style="width:12em;"/>
+ </br>
+ </form>
+ """
+ if(form.has_key('word')):
+ search_key = form['word'].value.decode('utf-8')
+ response=response % search_key
+ response = response+"<h2>Search Results</h2></hr>"
+ if(search_key==None):
+ response = response+ "Enter a word to find meaning."
+ else:
+ response = response+ self.lookup_en_ml(search_key)
+ else:
+ response=response % ""
+ return response
+ def get_module_name(self):
+ return "English Malayalam Dictionary"
+ def get_info(self):
+ return "English Malayalam Dictionary. Dictionary is compiled by Kerala state IT Mission"
+
+def getInstance():
+ return Dictionary()
diff --git a/silpa/silpa.conf b/silpa/silpa.conf
index 2323b33..7e47cad 100644
--- a/silpa/silpa.conf
+++ b/silpa/silpa.conf
@@ -14,13 +14,16 @@ SILPA_SITE_COPYRIGHT= Copyright 2008-2009. Silpa Team. All rights Reserved.
#Action names should be unique. and should be prefixed with "SILPA_ACTION."
#TO disable an action, comment out the line
#An example entry
-#SILPA_ACTION.sort=modules.sort #comment at the end of line is also allowed
+#SILPA_ACTION.Sort=modules.sort #comment at the end of line is also allowed
SILPA_ACTION.Transliterate=modules.transliterate #transliterator module
-SILPA_ACTION.Lemmatize=modules.lemmatizer #Lemmatizer module for Indian Languages
-SILPA_ACTION.Detect Language=utils #This is also a valid module
-SILPA_ACTION.Guess Language=modules.guess_language #This is also a valid module
-SILPA_ACTION.To Unicode=modules.payyans #Ascii to Unicode conversion Module
-SILPA_ACTION.To ASCII=modules.payyans #Unicode to Ascii conversion Module
+SILPA_ACTION.Stem=modules.stemmer #stemmer module for Indian Languages
+SILPA_ACTION.Detect_Language=utils #This is also a valid module
+SILPA_ACTION.Guess_Language=modules.guess_language #This is also a valid module
+SILPA_ACTION.To_Unicode=modules.payyans #Ascii to Unicode conversion Module
+SILPA_ACTION.To_ASCII=modules.payyans #Unicode to Ascii conversion Module
SILPA_ACTION.Syllabalize=modules.syllabalizer #Syllabalizer module
SILPA_ACTION.Hyphenate=modules.hyphenator #Syllabalizer module
+SILPA_ACTION.Find_Meaning=modules.dictionary #English Malayalam Module
+SILPA_ACTION.Fortune=modules.fortune #Syllabalizer module
+SILPA_ACTION.Approximate_Search=modules.inexactsearch #Approximate search
#End of Silpa configuration file