Skip to content

brho/xword

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XWord - A cross platform crossword solving program
==================================================

https://sourceforge.net/projects/wx-xword/

XWord is a cross-platform crossword puzzle program designed to be highly
configurable.  It reads and writes the Across Lite .puz file format, and reads
the Across Lite plain text format (version 1 or 2).

Supported features:
    - Solving of all American style and cryptic crosswords (except diagramless).
    - Solving rebus puzzles.
    - A timer.
    - Checking and revealing letters.
    - Scrambling and unscrambling puzzle solutions.
    - Viewing and editing puzzle notes.
    - Zooming the grid in and out.
    - Rearranging the window layout.
    - Color, font, and solving behavior configuration.
    - Batch conversion to and from .puz and .txt formats.
    - Recovery of corrupted Across Lite .puz files.  If a .puz file is
      corrupt in any way, XWord will alert the user and attempt to display
      as much of the puzzle as possible (usually the entire puzzle is
      recoverable).
    - Printing (not yet polished, and somewhat buggy: e.g. the page setup
      dialog doesn't always display the correct paper size)

Rebus
=====

XWord can now be used to solve rebus puzzles.

Key               Function
-------------------------------------
Insert            Begin entering multiple letters and/or numbers into a square.
Insert or Enter   End entering multiple letters.
Delete            Remove letters from the beginning of the word.
Backspace         Remove letters from the end of the word.
Ctrl + Delete     Remove all letters.
Ctrl + Backspace  Remove all letters.



Configuration
=============

Configuration settings can be accessed from the File menu (under "Preferences").
Users can configure grid movement/solving options, colors, and fonts.  Most of
XWord's configuration can be accessed this way.  However, there are a few
configuration settings that are not yet implemented in the GUI (and require a
program restart to take effect):


    - Clue list spacing.
        Accessed under [Clue] heading of config file (spacing)

        X and y spacing applied to the clue list text, and between the clue
        number and the clue text.
        This is slightly buggy, as setting an X padding to zero causes some of
        the clue numbers to get cut off.

    - Grid line thickness
        Accessed under [Grid] heading of config file (lineThickness)

        Sets the thickness of lines between squares in the grid (in pixels)

    - Printing support
        Printing is not ready for a real release, but it can be enabled anyway
        by adding "enablePrinting=1" under the [Printing] heading.



Batch conversion
================

XWord can also be used to batch convert .txt formatted puzzles into .puz files
(and vice-versa).  The convert dialog is located in the Tools menu.  Conversion
can also be invoked at the command line (conversion still occurs using the
gui).

    -c --convert

        Runs XWord in batch convert mode.  XWord will convert files using the
        convert dialog.  When the user closes the dialog, XWord wil exit.
        Other switches do nothing unless -c is specified.
        With no other switches, convert files and place the output files in
        the same directory.

    -o  --output-files

        If converting files, specify each output file after each input file:
            xword -c -o in_file_1 out_file_1 in_file_2 out_file_2

    -w  --overwrite

        If output files exist, overwrite them instead of giving the output
        a different file name.  If this switch is not specified and the output
        file exists, XWord will add a number to the output file name.

    -d  --directory=<output directory>

        Place converted files in this directory.  Output files can be specified
        as relative paths, in which case files will be made relative to this
        directory.




Building XWord
==============

XWord uses the wxWidgets cross-platform toolkit (version 2.8.10 as of this
writing).  The distributed builds are statically linked and use unicode.  If you
want to build a non-unicode version of XWord, you will get a couple of errors,
because of a few unicode-specific functions and parameters.  These should be
easy to fix.

http://www.wxwidgets.org


Visual C++ and Code::Blocks project files are supplied in the source
distribution.  The Code::Blocks file is intended to work only on Linux (i.e. it
uses the wx-config program).


XWord requires the following libraries in addition to the wxWidgets Base and
Core libraries:

wxAUI
wxpng
wxzlib

XWord can also be built with make.  Just run make from the top-level directory.


Windows-specific building instructions
======================================

The VC project file is set up to link to the MSVC runtime library *statically*
(so that XWord can be run on Windows without needing to download any dlls).
You will either need to build the wxWidgets libraries so that they also link to
the MSVC runtimes statically, or change the setting
(Properties >> C/C++ >> Code Generation >> Runtime Library).