Simplify clip region handling under Windows, which also makes Solo's
[sgt/puzzles] / puzzles.but
index 44e1ae3..f7d55a6 100644 (file)
@@ -5,41 +5,47 @@
 
 \cfg{text-filename}{puzzles.txt}
 
-\cfg{xhtml-contents-filename}{index.html}
-\cfg{xhtml-leaf-level}{1}
-\cfg{xhtml-contents-depth-0}{1}
-\cfg{xhtml-contents-depth-1}{2}
-\cfg{xhtml-leaf-contains-contents}{true}
+\cfg{html-contents-filename}{index.html}
+\cfg{html-template-filename}{%k.html}
+\cfg{html-index-filename}{docindex.html}
+\cfg{html-leaf-level}{1}
+\cfg{html-contents-depth-0}{1}
+\cfg{html-contents-depth-1}{2}
+\cfg{html-leaf-contains-contents}{true}
 
 \cfg{info-filename}{puzzles.info}
 
 \cfg{ps-filename}{puzzles.ps}
 \cfg{pdf-filename}{puzzles.pdf}
 
+\define{by} \u00D7{x}
+
 This is a collection of small one-player puzzle games.
 
 \copyright This manual is copyright 2004 Simon Tatham. All rights
 reserved. You may distribute this documentation under the MIT licence.
 See \k{licence} for the licence text in full.
 
-\versionid $Id$
+\cfg{html-local-head}{<meta name="AppleTitle" content="Puzzles Help">}
 
+\versionid $Id$
 
 \C{intro} Introduction
 
 I wrote this collection because I thought there should be more small
 desktop toys available: little games you can pop up in a window and
 play for two or three minutes while you take a break from whatever
-else you were doing. And I was also annoyed that every time I found a
-good game on (say) \i{Unix}, it wasn't available the next time I was
-sitting at a \i{Windows} machine, or vice versa; so I arranged that
-everything in my personal puzzle collection will happily run on both.
-When I find (or perhaps invent) further puzzle games that I like,
-they'll be added to this collection and will immediately be available
-on both platforms. And if anyone feels like writing any other front
-ends - Mac OS, PocketPC, or whatever it might be - then all the games
-in this framework will immediately become available on another
-platform as well.
+else you were doing. And I was also annoyed that every time I found
+a good game on (say) \i{Unix}, it wasn't available the next time I
+was sitting at a \i{Windows} machine, or vice versa; so I arranged
+that everything in my personal puzzle collection will happily run on
+both, and have more recently done a port to Mac OS X as well. When I
+find (or perhaps invent) further puzzle games that I like, they'll
+be added to this collection and will immediately be available on
+both platforms. And if anyone feels like writing any other front
+ends - PocketPC, Mac OS pre-10, or whatever it might be - then all
+the games in this framework will immediately become available on
+another platform as well.
 
 The actual games in this collection were mostly not my invention; I
 saw them elsewhere, and rewrote them in a form that was more
@@ -131,6 +137,8 @@ are specific to each game and are described in the following sections.
 
 \H{common-cmdline} Specifying game parameters on the \i{command line}
 
+(This section does not apply to the Mac OS X version.)
+
 The games in this collection deliberately do not ever save
 information on to the computer they run on: they have no high score
 tables and no saved preferences. (This is because I expect at least
@@ -203,6 +211,11 @@ controls are:
 also unlock it again, but while it's locked you can't accidentally
 turn it.
 
+\dt \e{Jumble tiles}: \q{J} key
+
+\dd This key turns all tiles that are not locked to random
+orientations.
+
 (All the actions described in \k{common-actions} are also available.)
 
 \H{net-params} \I{parameters, for Net}Net parameters
@@ -300,13 +313,13 @@ respectively.
 
 \cfg{winhelp-topic}{games.fifteen}
 
-The old ones are the best: this is the good old \q{\i{15-puzzle}} with
-sliding tiles. You have a 4x4 square grid; 15 squares contain numbered
-tiles, and the sixteenth is empty. Your move is to choose a tile next
-to the empty space, and slide it into the space. The aim is to end up
-with the tiles in numerical order, with the space in the bottom right
-(so that the top row reads 1,2,3,4 and the bottom row reads
-13,14,15,\e{space}).
+The old ones are the best: this is the good old \q{\i{15-puzzle}}
+with sliding tiles. You have a 4\by\.4 square grid; 15 squares
+contain numbered tiles, and the sixteenth is empty. Your move is to
+choose a tile next to the empty space, and slide it into the space.
+The aim is to end up with the tiles in numerical order, with the
+space in the bottom right (so that the top row reads 1,2,3,4 and the
+bottom row reads 13,14,15,\e{space}).
 
 \H{fifteen-controls} \i{Fifteen controls}
 
@@ -435,7 +448,7 @@ command-line configuration
 The expansion factor parameter, described in \k{rectangles-params},
 is not mentioned by default in the game ID (see \k{common-id}). So
 if you set your expansion factor to (say) 0.75, and then you
-generate an 11x11 grid, then the game ID will simply say
+generate an 11\by\.11 grid, then the game ID will simply say
 \c{11x11:}\e{numbers}. This means that if you send the game ID to
 another player and they paste it into their copy of Rectangles,
 their game will not be automatically configured to use the same
@@ -517,9 +530,57 @@ grey.
 The only options available from the \q{Custom...} option on the \q{Type}
 menu are \e{Width} and \e{Height}, which are self-explanatory.
 
+\C{solo} \i{Solo}
+
+\cfg{winhelp-topic}{games.solo}
+
+You have a square grid, which is divided into square or rectangular
+blocks. Each square must be filled in with a digit from 1 to the
+size of the grid, in such a way that
+
+\b every row contains only one occurrence of each digit
+
+\b every column contains only one occurrence of each digit
+
+\b every block contains only one occurrence of each digit.
+
+You are given some of the numbers as clues; your aim is to place the
+rest of the numbers correctly.
+
+The default puzzle size is 3\by\.3 (a 9\by\.9 actual grid, divided
+into nine 3\by\.3 blocks). You can also select sizes with
+rectangular blocks instead of square ones, such as 2\by\.3 (a
+6\by\.6 grid divided into six 3\by\.2 blocks).
+
+If you select a puzzle size which requires more than 9 digits, the
+additional digits will be letters of the alphabet. For example, if
+you select 3\by\.4 then the digits which go in your grid will be 1
+to 9, plus \cq{a}, \cq{b} and \cq{c}.
+
+I first saw this puzzle in \i{Nikoli} \k{nikoli}, although it's also
+been popularised by various newspapers under the name \q{Sudoku} or
+\q{Su Doku}.
+
+\H{solo-controls} \I{controls, for Solo}Solo controls
+
+To play Solo, simply click the mouse in any empty square and then
+type a digit or letter on the keyboard to fill that square. If you
+make a mistake, click the mouse in the incorrect square and press
+Space to clear it again (or use the Undo feature).
+
+(All the actions described in \k{common-actions} are also available.)
+
+\H{solo-parameters} \I{parameters, for Solo}Solo parameters
+
+Solo allows you to configure two separate dimensions of the puzzle
+grid: the number of columns, and the number of rows, into which the
+main grid is divided. (The size of a block is the inverse of this:
+for example, if you select 2 columns and 3 rows, each actual block
+will have 3 columns and 2 rows.)
+
 \A{licence} \I{MIT licence}\ii{Licence}
 
-This software is \i{copyright} 2004 Simon Tatham.
+This software is \i{copyright} 2004-2005 Simon Tatham.
 
 Portions copyright Richard Boulton.