diff options
Diffstat (limited to 'README.org')
-rw-r--r-- | README.org | 72 |
1 files changed, 51 insertions, 21 deletions
diff --git a/README.org b/README.org index 0f8bda0..ece7157 100644 --- a/README.org +++ b/README.org @@ -1,16 +1,17 @@ -#+SETUPFILE: ~/.emacs.d/org-templates/projects.org -#+EXPORT_FILE_NAME: index -#+OPTIONS: toc:2 num:nil -#+TITLE: Octans +#+title: Octans +#+author: Andinus +#+email: andinus@nand.sh +#+setupfile: ~/.emacs.d/org-templates/projects.org 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 +| Website | https://andinus.nand.sh/octans | +| Source | https://git.tilde.institute/andinus/octans | +| GitHub (mirror) | https://github.com/andinus/octans | * Demo -This was recorded with =asciinema(1)=. + +This was recorded with ~asciinema~. [[https://asciinema.org/a/385500][https://asciinema.org/a/385500.png]] @@ -22,39 +23,49 @@ This was recorded with =asciinema(1)=. + alt-link (download): https://andinus.nand.sh/static/octans * Installation + Octans is released to CPAN, you can get it from there or install it from -source. In any case, =zef= is required to install the distribution. +source. In any case, ~zef~ is required to install the distribution. + +You can run Octans without ~zef~. Just run ~raku -Ilib bin/octans~ from +within the source directory. ** Release -1. Run =zef install octans=. -Octans should be installed, try running =octans --version= to confirm. +1. Run ~zef install octans~. + +Octans should be installed, try running ~octans --version~ to confirm. ** From Source + You can either download the release archive generated by cgit/GitHub or -clone the project if you have =git= installed. +clone the project if you have ~git~ installed. + +*** Without ~git~ -*** Without =git= 1. Download the release: - https://git.tilde.institute/andinus/octans - https://github.com/andinus/octans/releases 2. Extract the file. -3. Run =zef install .= in source directory. +3. Run ~zef install .~ in source directory. + +*** With ~git~ -*** With =git= All commits will be signed by my [[https://andinus.nand.sh/static/D9AE4AEEE1F1B3598E81D9DFB67D55D482A799FD.asc][PGP Key]]. -#+BEGIN_SRC sh +#+begin_src sh # Clone the project. git clone https://git.tilde.institute/andinus/octans cd octans # Install octans. zef install . -#+END_SRC +#+end_src * Documentation + ** Implementation + Initially it went over the list of words & checked if they exist in the grid. This was very slow. @@ -69,17 +80,23 @@ dictionary. This is faster for these reasons: If the dictionary wasn't sorted then this probably would've been slower than previous implementation. -The =neighbors= subroutine (=lib/Octans/Neighbors.rakumod=) was taken from +The ~neighbors~ subroutine (=lib/Octans/Neighbors.rakumod=) was taken from my AoC (Advent of Code) 2020's day-11 solution. ** Options + *** dict -Octans's default dictionary file is =/usr/share/dict/words=, use =--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. + *** length + Minimum word length to look for. Default is 7. + *** path + The path to be passed must be a *readable file* or an *url* in either format: @@ -90,18 +107,31 @@ format: https://mastodon.art/@Algot/105333136907848390 *** verbose + This will increase verbosity. * News + +** v0.1.4 - 2021-02-19 + ++ Fix the puzzle parsing regex + + The older regex fails to parse this puzzle: + https://mastodon.art/@Algot/105690195742318751. + ** v0.1.3 - 2021-01-24 + + Added an option to specify minimum word length. ** v0.1.2 - 2021-01-20 + + Input puzzle can now be of any size & not restricted to 4x4 grid. ** v0.1.1 - 2021-01-20 + + Read puzzle from a file. ** v0.1.0 - 2021-01-19 -This version improved performance by re-implementing the algorithm to -find words in grid. + ++ Improved performance by using a better algorithm to find words in the + grid. |