#+SETUPFILE: ~/.emacs.d/org-templates/projects.org #+EXPORT_FILE_NAME: index #+OPTIONS: toc:2 #+TITLE: Octans Octans is a program to solve Algot's Wordplay (Wordsearch) puzzles. - Website: https://andinus.nand.sh/octans - Source: https://git.tilde.institute/andinus/octans - GitHub: https://github.com/andinus/octans * Demo This was recorded with =asciinema(1)=. [[https://asciinema.org/a/385500][https://asciinema.org/a/385500.png]] + Octans v0.1.0 - finds 10 solutions to a puzzle: https://asciinema.org/a/385598 + Octans v0.1.0: https://asciinema.org/a/385500 + Octans 2020-01-14: https://asciinema.org/a/384464 + alt-link (download): https://andinus.nand.sh/static/octans * Documentation ** Implementation Initially it went over the list of words & checked if they exist in the grid. This was very slow. Currently it walks the grid & checks if the current string exist in the dictionary. This is faster for these reasons: - The dictionary is sorted, we perform binary range search on the dictionary to return the list of all words that start with specific string. - Starting positions are limited. If the dictionary wasn't sorted then this probably would've been slower than previous implementation. ** Options *** dict Octans's default dictionary file is =/usr/share/dict/words=, use =--dict= flag to change the dictionary. The words in dictionary must be seperated by a newline (=\n=) & sorted alphabetically. *** path The path to be passed must be a *readable file* or an *url* in either format: - Link when you view it from your local instance: https://tilde.zone/web/statuses/105531207939242077 - Link from Algot's profile: https://mastodon.art/@Algot/105333136907848390 *** verbose This will increase verbosity.