From 0f92380b76d9764b7175623348bab06ec88adfe2 Mon Sep 17 00:00:00 2001 From: Brett Parker Date: Sat, 11 Jul 2009 13:31:45 +0100 Subject: [PATCH 1/1] Make more lint compliant --- curses_crossword.py | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) mode change 100644 => 100755 curses_crossword.py diff --git a/curses_crossword.py b/curses_crossword.py old mode 100644 new mode 100755 index 662fa17..123c3ee --- a/curses_crossword.py +++ b/curses_crossword.py @@ -1,4 +1,8 @@ #!/usr/bin/python +""" +Play a crossword puzzle in a curses grid. Takes a command line argument of the +crossword puzzle file. +""" import curses import curses.ascii @@ -26,7 +30,7 @@ try: "8": unichr(8312).encode(code), "9": unichr(8313).encode(code), } -except: +except UnicodeError, e: for number in range(0, 10): superscript_numbers[str(number)] = str(number) @@ -56,6 +60,11 @@ else: sys.exit(0) def parsecrossword(crossworddata): + """ + Read the content of a crossword file in to memory and rejig it in to the 3 + seperate sections that we expect - namely the grid, the across clues and + the down clues. + """ ingrid = False inacross = False indown = False @@ -151,10 +160,9 @@ def crossword(stdscr, crossworddata): cury += 1 curgridy = 0 for line in crossword["grid"]: - datastr = "" curx = 0 curgridx = 0 - for c in line: + for curch in line: stdscr.addch(cury, curx, curses.ACS_VLINE) if curx > 0: stdscr.addch(cury+1, curx, curses.ACS_PLUS) @@ -164,7 +172,7 @@ def crossword(stdscr, crossworddata): stdscr.addch(cury+1, curx + 2, curses.ACS_HLINE) stdscr.addch(cury+1, curx + 3, curses.ACS_HLINE) curx += 1 - if c == "x": + if curch == "x": stdscr.addch(cury, curx, curses.ACS_BLOCK) stdscr.addch(cury, curx+1, curses.ACS_BLOCK) stdscr.addch(cury, curx+2, curses.ACS_BLOCK) @@ -225,10 +233,10 @@ def crossword(stdscr, crossworddata): stdscr.move(cury, curx) while 1: - c = stdscr.getch() - if c == curses.ascii.ESC: + inch = stdscr.getch() + if inch == curses.ascii.ESC: break - if c == curses.KEY_RIGHT: + if inch == curses.KEY_RIGHT: if gridx < (len(crossword["grid"][0]) - 1): gridx += 1 curx += 4 @@ -240,7 +248,7 @@ def crossword(stdscr, crossworddata): gridx -= 1 curx -= 4 stdscr.move(cury, curx) - if c == curses.KEY_LEFT: + if inch == curses.KEY_LEFT: if gridx > 0: curx -= 4 gridx -= 1 @@ -252,7 +260,7 @@ def crossword(stdscr, crossworddata): gridx += 1 curx += 4 stdscr.move(cury, curx) - if c == curses.KEY_UP: + if inch == curses.KEY_UP: if gridy > 0: gridy -= 1 cury -= 2 @@ -264,7 +272,7 @@ def crossword(stdscr, crossworddata): gridy += 1 cury += 2 stdscr.move(cury, curx) - if c == curses.KEY_DOWN: + if inch == curses.KEY_DOWN: if gridy < (len(crossword["grid"]) - 1): gridy += 1 cury += 2 @@ -276,10 +284,10 @@ def crossword(stdscr, crossworddata): gridy -= 1 cury -= 2 stdscr.move(cury, curx) - if curses.ascii.isalpha(c) or c == ord(" "): - stdscr.addch(cury, curx, c) + if curses.ascii.isalpha(inch) or inch == ord(" "): + stdscr.addch(cury, curx, inch) stdscr.move(cury, curx) - if c == curses.KEY_BACKSPACE or c == curses.KEY_DC: + if inch == curses.KEY_BACKSPACE or inch == curses.KEY_DC: stdscr.addch(cury, curx, ord(" ")) stdscr.move(cury, curx) -- 2.39.5