From 9a2e713411d8cdb4c8e47b4a7063a515a021b5ed Mon Sep 17 00:00:00 2001 From: Andinus Date: Fri, 19 Feb 2021 19:57:26 +0530 Subject: Bump version to v0.1.4, document changes --- META6.json | 2 +- README | 33 ++++++++++++++++++++++------ README.org | 72 ++++++++++++++++++++++++++++++++++++++++++++------------------ 3 files changed, 79 insertions(+), 28 deletions(-) diff --git a/META6.json b/META6.json index 17c56f3..4aee3ff 100644 --- a/META6.json +++ b/META6.json @@ -1,7 +1,7 @@ { "name" : "octans", "auth" : "github:andinus", - "version" : "0.1.3", + "version" : "0.1.4", "description" : "Octans is a program to solve Algot's Wordplay (Wordsearch) puzzles", "authors" : [ "Andinus " ], "license" : "ISC", diff --git a/README b/README index d2d6452..7c33219 100644 --- a/README +++ b/README @@ -12,10 +12,17 @@ Demo Installation .. Release .. From Source +..... Without `git' +..... With `git' Documentation .. Implementation .. Options +..... dict +..... length +..... path +..... verbose News +.. v0.1.4 - 2021-02-19 .. v0.1.3 - 2021-01-24 .. v0.1.2 - 2021-01-20 .. v0.1.1 - 2021-01-20 @@ -24,15 +31,17 @@ News Octans is a program to solve Algot's Wordplay (Wordsearch) puzzles. -• Website: -• Source: -• GitHub: +━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + Website + Source + GitHub (mirror) +━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Demo ════ - This was recorded with `asciinema(1)'. + This was recorded with `asciinema'. [https://asciinema.org/a/385500.png] @@ -54,6 +63,9 @@ Installation from 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 ─────── @@ -162,6 +174,15 @@ verbose News ════ +v0.1.4 - 2021-02-19 +─────────────────── + + ⁃ Fix the puzzle parsing regex + + The older regex fails to parse this puzzle: + . + + v0.1.3 - 2021-01-24 ─────────────────── @@ -183,5 +204,5 @@ v0.1.1 - 2021-01-20 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. 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. -- cgit 1.4.1-2-gfad0