# Adding Acrostic Support to Crosswords
**Status:** draft | unimplemented

Acrostic puzzles are two-pane puzzles. Typically, they consist of two
sections. There's a main grid that spells out a sentance or phrase,
with each cell containing a number. Then, a set of clues, whos answers
are made up from the letters of the grids. The first letter of each
answer traditionally spells out the final answer to the clue.

For example, if the first section is a quote, then the first letter of
the clues may spell out the author of the quote. There's more about
this type of puzzle on the [wikipedia
page](https://en.wikipedia.org/wiki/Acrostic_(puzzle)).

![Example Acrostic](acrostic-puzzle-wikipedia.jpg)<br>
_Example Acrostic puzzle from wikipedia_

## Overall Plan

- [ ] Add acrostic support to libipuz
    - [ ] Add new puzzle type to libipuz
    - [ ] Add documentation of any quirks or expectations
    - [ ] Add some loading / saving tests.
- [ ] Add acrostic loading support to PuzzleSet
- [ ] Create a simple play-acrostic widget
    - [ ] Create the main board
    - [ ] Write a PlayAnswer widget that can be used as an answer
          widget
    - [ ] Write a PlayAcrosticList that can be used as a clue list for
          acrostics
    - [ ] Update XwordState to be able to handle Answer widgets
- [ ] Add a test suite for XwordState

## Prep work

- [ ] Create a sample acrostic .ipuz 
- [ ] Separate PlayXword into a PlayWidget parent class and a subclass
