# Create your views here.
-import pickle
+import cPickle
from django.shortcuts import render_to_response
from django.template import RequestContext
from random import randint
-import os.path
-
def _choose_word(word):
try:
return ''
# load dictionary on start, it won't change
+from django.conf import settings
+
try:
- f = open(os.path.join(os.path.dirname(__file__), 'dictionary.p'))
- _dictionary = pickle.load(f)
+ f = open(settings.LESMIANATOR_PICKLE)
+ _dictionary = cPickle.load(f)
except:
_dictionary = {}
word = u''
empty = -10
left = 1000
+ lines = 0
if not _dictionary:
left = 0
- while empty != 3 and left:
+ # want at least two lines, but let Lesmianator end his stanzas
+ while (empty < 2 or lines < 2) and left:
letter = _choose_word(word)
letters.append(letter)
word = word[-2:] + letter
if letter == u'\n':
- empty += 1
+ # count non-empty lines
+ if empty == 0:
+ lines += 1
+ #
+ if lines >= 2:
+ empty += 1
+ lines += 1
else:
empty = 0
left -= 1