cliptic
: Crosswords in your Terminal
- A command-line interface for downloading and playing cryptic crosswords from within the terminal.
- Puzzles are sourced from the free crosswords uploaded daily to Lovatt's.
- cliptic is written in Ruby using the ncurses library
New to 0.1.3
Bug Fixes
- Fix the ssl certificate bug that prevents fetching puzzles
- Fix the "out of range" bug when moving to an undefined index using
g
Features
- Add manual redraw feature to the main puzzle view. Called with
^L
(useful for terminal resize)
- Add exit controls to the resize interface (
q
or ^C
)
Features
- VIM-like keybindings
- Puzzles scraped daily from Lovatt's. Puzzles are cached locally to prevent excessive requests
- Progress can be saved to continue puzzles at a later time
- Time taken to complete the puzzle is logged on completion of puzzle. High scores can be viewed within cliptic
- Track progress for puzzles released in the last week
- Puzzle history is tracked, making it easy to pick up recently played puzzles
- Select puzzles to play by date manually (puzzles are available for up to 9 months from release)
- Customisation of cliptic's appearance
Dependencies
System
Gems
Installing
As a Gem
- cliptic is available as a Ruby Gem. To install, simply run:
bash
gem install cliptic
### Manually
- Or, to install manually:
bash
git clone https://github.com/apexatoll/cliptic
cd cliptic
rake build install
Running
- To run cliptic after installation, simply run the command
cliptic
from within the terminal
- When the program is first run it will ask the user whether they want cliptic to generate a default config file. This is located in
~/.config/cliptic/cliptic.rc
- If the screen is too small to display cliptic, please resize until the prompt disappears
Other Commands
- There are other commands that can be run from the command line
Today
- The command
cliptic today
will play today's puzzle
- This command can be followed with a negative number to play a puzzle n days before today
- For example
cliptic today -2
will play the puzzle from the day before yesterday
Resetting Progress
- The command
cliptic reset
will allow the user to reset progress in cliptic.
- The command can be followed with either
all
, states
, scores
or recents
all
resets all progress
states
resets all game progress
scores
resets high scores
recents
resets puzzle history
Main Menu
- On the main menu there are several options
- Play today's puzzle
- Show this week's progress
- Select a date manually
- Display recent puzzles
- Show high scores
- Exit cliptic
Command |
Action |
j/DOWN , k/UP |
Move cursor |
q |
Back/quit |
ENTER |
Make selection |
Solving Puzzles
- By default, cliptic uses vim-like keybindings for navigation and text manipulation. There are plans to release more "accessible" keybindings in the future.
- Text manipulation is modal akin to vim. Vim-users will be familiar with insert and normal modes
- The currently focussed clue is displayed within the window at the bottom of the screen. If you are on a cell that is an intersection of two clues (ie an across and a down) you can swap between them using
TAB
Game Modes
- There are 2 game modes that can be played. These can be changed in the cliptic config file.
- Auto_mark = 1 (default)
- Each clue is marked once every cell is filled
- The clue will be highlighted green or red depending on whether the attempt is correct
- Auto_mark = 0
- No clues are marked automatically, similar to a paper crossword
- Clues can be checked manually using the
^G
command
Global Commands
Command |
Action |
^S |
Save current progress (note that progress is saved when exiting puzzles by default) |
^R |
Reveals solution for focussed clue (note that this forfeits adding this puzzle to high scores) |
^C |
Exit puzzle |
^E |
Resets timer and progress for puzzle |
^G |
Mark current progress (only relevant if auto_mark is set to 0) |
^P |
Pause game |
^L |
Redraws the screen (useful on resizing terminal window) |
Navigation (Normal Mode)
- There are several ways to navigate the cells of the cliptic grid in NORMAL MODE.
Command |
Action |
h , j , k , l |
Move cursor left, up, down, right. Arrow keys can also be used |
(n)w |
Move to (nth) next unsolved clue |
(n)b |
Move to (nth) previous unsolved clue |
e |
Move to end of clue |
<clue number>g |
Move to clue by number |
<cell number>G |
Move to cell by number (not 0 indexed |
TAB |
Swap from across to down clue (or vice versa) |
Entering Text (Insert Mode)
Command |
Action |
a-z |
Enter character to cell |
BACKSPACE |
Delete one character |
ESC |
Exit insert mode. Enter normal mode |
Normal Mode
Command |
Action |
I |
Move to the start of the clue and enter insert mode |
a |
Advance one cell and enter insert mode |
c(obj) |
calls d(obj) then enters insert mode |
d(obj) |
delete the object provided after d (may be w for word or l for character) |
i |
Enter insert mode |
r(char) |
Replaces the character under the cursor with char |
x |
deletes the character under the cursor |
Configuration
- Cliptic settings can be added to the cliptic.rc file found at
~/.config/cliptic/cliptic.rc
Interface
- Affect how cliptic functions
- Set using the format
set <setting> <0/1>
Settable Items
Item |
Description |
Default |
auto_advance |
Move to next clue after solve |
1 |
auto_mark |
Mark clues as they are entered |
1 |
auto_save |
Save progress on exit |
1 |
Colours
- Colours are numbered 1-16.
- 0 is default terminal color
- 1-8 equates to your terminals 8 default colours.
- 9-16 equate to same colours as the background and blank as the foreground
- To set colour settings use the format
hi <obj> <colour>
Settable Items
Item |
Description |
Default |
active_num |
Grid number of active clue |
3 |
bar |
Top and bottom bars |
16 |
block |
Grid blocks |
8 |
box |
Box outlines |
8 |
grid |
cliptic grids |
8 |
incorrect |
Incorrect clue attempt |
1 |
correct |
Correct clue attempt |
2 |
prompt |
Menu prompt |
3 |
default |
Default text color |
0 |
meta |
Clue box metadata |
3 |
num |
Inactive grid numbers |
8 |
logo_text |
Logo text color |
3 |
I |
Insert mode prompt |
15 |
N |
Normal mode prompt |
12 |
menu_active |
Active menu option |
15 |
menu_inactive |
Inactive menu option |
0 |
Feedback
- Cliptic is still in development
- If you have any feature requests or find any bugs please leave a new issue
- Contributions welcome!
Dedicated to WES who passed on to me his love of crosswords