Package: xwordlist
xwordlistxwordlistis a command line Python program designed to help you create, build and organize crossword puzzle word lists. As I started to think about constructing crossword puzzles with heavy themes — trying to make the entire puzzle themed, not just three or four long entries — I realized that I would need the ability to acquire and organize large amounts of text on very specific topics. After hacking around with a combination of search-and-replace text editors and Excel, I realized I needed to build someting more custom and thusxwordlistwas born.Besides helping with basic text functions such as deduping, alphabetizing and changing case, this program is able to pull content out of structured web pages and parse large blocks of text, including lists of web pages with similarly structured content. Although I first started using the software to grab the lyrics of songs, I have added regex and better html parsing functionality to make it easier to get data from Wikipedia and less structured sites.For more information, see the project’s main website hosted atxwl.ist. For an example of a themed 5x5 mini puzzle built with a word list assembled using this software, seemy personal website. For one of the original inspirations for this project, see Malaika Handa’sCrosswiftpuzzle using only Taylor Swift’s lyrics.InstallationIt helps to have some familiarity with Python and terminal programs to installxwordlistbut it is not a requirement. If your environment is all set up and you knowpipis both installed and up-to-date, skip down to thepipinstructions below. Most Macs and Linux users will find thatpipis installed but probably needs to be updated. Most Windows users will need to installpipfirst (seeWindows Special Instructionsbelow). In other words, unless you really know what you are doing, you probably need to continue to follow the next paragraph or the special Windows instructions.Search forterminaland your operating system should show you the name and how to launch your default terminal program. The first thing you will need to do is make sure your Python is up-to-date (required) and that you have activated a virtual environment (recommended). SeeInstalling Python Packagesfor helpful instructions on how to do both as well as how to install and upgradepip. Follow the instructions on that page down to the section labeledInstalling from PyPI.From there, you can installxwordlistby typingpip install xwordlistBe sure to typexwordlistas there is other software calledwordlist(without the “x”) which is not what you want. To see if your installation was successful, typexwordlist --versionIf properly installed, the software should respond with its name and the installed version.Windows Special InstructionsRegardless of whether Python is already installed on your Windows computer, I would highly recommend a fresh install of an up-to-date version fromPython.org’s Windows downloads page. In theStable Releasescolumn are a number of Windows installers that are compatible with versions of Windows going back to XP and compatible with 32-bit and 64-bit Intel machines or 64-bit ARM. Find the most recent version of Python that is compatbile with your version of Windows and the type of processor you have and download that.When you launch the installer, select “Customize Installation” and make sure the boxes next to “Pip” and “Py launcher” are selected. Hit the “Next” button and make sure the boxes next to both “Create shortcuts for installed applications” and “Add Python to environment variables” are selected. Finally, hit the “Install” button.From there, you should be able to follow the original instructions above by typingpip install xwordlistManual InstallationTo install the software manually, copy thexwordlistcode to your local working environment by either cloning this repository or downloading and unpacking thezip archiveinto a new directory. To install the dependencies required to makexwordlistwork, use your terminal program to find the directory in which you have copied the files and typepython3 -m pip install -r requirements.txtTo see if your installation was successful, typepython3 xwordlist.py --versionIf properly installed, the software should respond with its name and the installed version.UsageIf you have installed the software usingpip, you should be able to run the program by simply typingxwordlistorxwl. For manual installs, you will need to typepython3 xwordlist.py. The rest of the documentation assumes you have installed viapipand uses the short form.For quick help instructions on the command line, typexwordlist --helpPlease see theproject’s main websitefor more information about using the software including abasic example,recipes for common patternsand areferenceto all options.Find a bug? Please let us knowhere.LicenseThis software is available as open source under the terms of theMIT License.