25 October 2015

Kirara

This entry will look at the indexing software written with Plan 9's rc and dialect of ANSI C, and implemented using unicode encoding.

http://plan9.aichi-u.ac.jp/kirara/ (Japanese webpage)

See the QUICK GUIDE.

Namazu

System: Microsoft Windows XP Home Edition
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz

Deps: mingw32-base, msys-base, mingw-developer-kit,
msys-groff (bin), msys-man (bin), msys-unzip (bin),
msys-wget (bin), msys-perl (bin), File::MMagic (CPAN),
lynx-cs-setup.exe, tcl82.exe, namazu-2.0.21.tar.gz;
and (optionally) netscape-navigator-9.0.0.6.exe.

$ tar xvf namazu-2.0.21.tar.gz

...

$ cd namazu-2.0.21
$ ./configure \
> --prefix=/usr \
> --sysconfdir=/mingw/etc

...

$ make

...

$ make install

...

$ cd tknamazu
$ ./configure --prefix=c:/mingw/msys/1.0 \
> --bindir=c:/mingw/msys/1.0/bin \
> --sbindir=c:/mingw/msys/1.0/sbin \
> --libexecdir=c:/mingw/msys/1.0/libexec \
> --datadir=c:/mingw/msys/1.0/share \
> --sysconfdir=c:/mingw/etc \
> --localstatedir=c:/mingw/msys/1.0/var \
> --libdir=c:/mingw/msys/1.0/lib \
> --includedir=c:/mingw/msys/1.0/include \
> --infodir=c:/mingw/msys/1.0/info \
> --mandir=c:/mingw/msys/1.0/man \
> --with-namazu=c:/mingw/msys/1.0/bin/namazu.exe \
> --with-mknmz=c:/mingw/msys/1.0/bin/mknmz \
> --with-indexdir=c:/mingw/msys/1.0/var/namazu/index \
> --with-wish=c:/programmer/tcl/bin/wish82.exe \
> --with-lynx=c:/programmer/lynx/lynx.exe \
> --with-groff=c:/mingw/msys/1.0/bin/groff.exe \
> --with-info=c:/mingw/msys/1.0/bin/info.exe \
> --with-zcat=c:/mingw/msys/1.0/bin/zcat.exe \
> --with-netscape='"c:/programmer/netscape/navigator 9/navigator.exe"'

...

$ make

...

$ make install

...

$ exit

In tknamazurc correct the paths for INDEXES1, INDEXES2, and BOOKMARKS1.

hogehoge is Japanese for foobar

Borland Delphi 5 and 7 version (Japanese only) frontends were written for namazu-092 and -093beta by Seiji Yamashita. [srchs092.exe, srchs092-nb.exe, srchs092src.lzh, srchs093beta-0421.lzh]

http://www.syam.net/library/search-s/index.html

Anders Hejlsberg, a Danish software engineer, was the chief architect of the Delphi language, and currently is a lead architect at Microsoft Corp. for the C# language.

Awk

I'll create a delimited file from an agriculture sector* document as a sample for this entry.

This entry will look at awk, a pattern-directed scanning and processing language.

The AWK Programming Language
B.W. Kernighan, P.J. Weinberger,
A.V. Aho, © 1988 Bell Telephone
Laboratories, Incorporated

UNIX Awk: http://www.cs.princeton.edu/~bwk/btl.mirror/index.html
GNU Awk: https://www.gnu.org/software/gawk/manual/
Plan 9: http://man.cat-v.org/plan_9/1/awk

Navn: Institut Français des Productions Cidricoles
Adresse: La Rangée Chesnel, 61500 Sées, Frankrig
Telefon: +33 2 33 27 56 70
Web adresse: http://www.ifpc.eu/

* Varietes_cidricoles.pdf (POMME A CIDRE)

pdftotext version 0.20.2
GNU sed version 4.2.1 (has the -i argument)

sh-4.2$ pdftotext -f 6 -l 6 -layout Varietes_cidricoles.pdf
sh-4.2$ sed -i '12, 16d; s/3 DOUCE/ DOUCE/g; s/2 DOUCE/ DOUCE /g' Varietes_cidricoles.txt
sh-4.2$ head -n 67 Varietes_cidricoles.txt | tail -n +11 \
> | cut -f 41- -d " " > output
sh-4.2$

The resulting file named 'output' is a three column width file, modify the file so
it is single column as appears at the base of this Internet log (blog) post.

Add delimiters to the records excepting the uppercase and blank lines.

sh-4.2$ sed -i 's/ (/:(/g; s/) /):/g; s/[0-9]$/&::/g; s/[a-z]$/&::::/g' output
sh-4.2$

Add data to the fourth fields excepting the uppercase and blank lines.

sh-4.2$ sed -i '2, 15s/::$/:amere:/; 18, 38s/::$/:douce amere:/; 41, 50s/::$/:douce:/' output
sh-4.2$ sed -i '53, 60s/::$/:acidulee:/; 63s/::$/:aigre amere:/; 66, 82s/::$/:aigre:/' output
sh-4.2$

Obtain the names of the registered cultivars.

sh-4.2$ pdftotext Varietes_cidricoles.pdf - | grep ® | sort -u
Chanteline®
Chanteline® 1
Cidor®
Judaine®
Judaine® 1
Judeline®
Judeline® 1
Juliana®
sh-4.2$

Determine if these are also present in our text file.

sh-4.2$ for cultivar in Chanteline Cidor Judaine Judeline Juliana
> do
> grep $cultivar output
> done
Cidor:(4.02 / 25.9):1055:amere:
Judaine:(0.75 / 100.4):1053:aigre:
Judeline:(0.67 / 75.42):1050:acidulee:
Juliana:(1.78 / 154):1061:aigre:
sh-4.2$

Then enter the registered mark as unicode chars in the appropriate records.

sh-4.2$ cat script
4s/$/&®/
55s/$/&®/
72s/$/&®/
75s/$/&®/
sh-4.2$ file script
script: UTF-8 Unicode text
sh-4.2$ sed -i -f script output
sh-4.2$

Delete the uppercase and blank lines.

sh-4.2$ sed -i '1d; 16, 17d; 39, 40d; 51, 52d; 61, 62d; 64, 65d' output
sh-4.2$

Sort the file alphabetically and redirect stdout to a new file.

sh-4.2$ export LC_ALL=fr_FR.UTF-8
sh-4.2$ sort output > varietes_cidricoles
sh-4.2$ exit

The resulting file which will be utilised for exercises with awk
is located in the sidebar.

sh-4.2$ awk -F: '/aigre amere/' varietes_cidricoles
Cazo Jaune:(3.28 / 196.2):1054:aigre amere:
sh-4.2$

sh-4.2$ awk -F: 'NR == 18 { print $1$5 " is a bitter apple." }' varietes_cidricoles
Cidor® is a bitter apple.
sh-4.2$

sh-4.2$ awk -F: 'NR == 23 { gsub("oe", "oë", $1); print }' varietes_cidricoles
Douce Coëtligné (1.83 / 29.09) 1051 douce
sh-4.2$

sh-4.2$ awk -F: 'NR==39 || NR==58 { gsub(/^\(/, "", $2); gsub(/\)$/, "", $2); split($2,a," / "); \
> print $1$5 " has " a[1] " g/l polyphenols and " a[2] " meq/l acidity." }' varietes_cidricoles
Judeline® has 0.67 g/l polyphenols and 75.42 meq/l acidity.
Petit Jaune has 1.2 g/l polyphenols and 110.59 meq/l acidity.
sh-4.2$

Create a CRLF .csv file for use in an MS® spreadsheet.

sh-4.2$ tr ':' ',' < varietes_cidricoles | awk '{ printf "%s\r\n",  $0 }' > varietes_cidricoles.csv
sh-4.2$

One can manually delete in notepad.exe the empty line at the end of the .csv file.

sh-4.2$ cat output
AMERE
C'Huero Briz (4.67 / 30.65) 1056
Chevalier Jaune (3.79 / 33.09) 1053
Cidor (4.02 / 25.9) 1055
Domaines (3.6 / 31.81) 1067
Doux Joseph (3.61 / 31.04) 1058
Fréquin Rouge Petit (5.06 / 36.35) 1065
Jeanne Renard (4.23 / 25.35) 1065
Kermerrien (4.32 / 22.17) 1062
Marie Ménard (4.82 / 32.78) 1061
Marin Onfroy (3.25 / 25.5) 1059
Meriennet
Mettais (3.78 / 25.61) 1063
Petit Amer (4.43 / 29.65) 1055
Tardive de la Sarthe (3.68 / 29.51) 1059

DOUCE AMERE
Antoinette (2.73 / 36.79) 1050
Argile Rouge Bruyère
Bedan (2.27 / 22.04) 1056
Binet Blanc (2.52 / 26.5) 1060
Binet Rouge (2.41 / 26.54) 1063
Binet Violet (2.62 / 24.93) 1050
Bisquet (2.12 / 31.31) 1045
C'Huero Ru
Cartigny (2.21 / 31.26) 1051
Clos Renaux (2.2 / 36.91) 1052
Clozette Douce (2.32 / 33.25) 1054
Douce Moen (2.43 / 31.85) 1061
Doux Lozon (2.13 / 21.21) 1053
Gros Bois (2.86 / 42.15) 1050
Gros Oeillet
Moulin à Vent (2.7 / 38.96) 1061
Muscadet de Dieppe (2.54 / 30.95) 1055
Noël des Champs (2.33 / 22.6) 1050
Omont (2.2 / 29) 1063
Peau de Chien (2.95 / 32.25) 1065
Saint Martin (2.27 / 30.09) 1055

DOUCE
Belle Fille de la Manche
Douce Coetligné (1.83 / 29.09) 1051
Doux au Gober
Doux Evêque Jaune (1.96 / 24.25) 1052
Doux Normandie (1.42 / 24.56) 1065
Doux Veret de Carrouges (1.77 / 24.62) 1055
Muscadet Petit de l'Orne (1.9 / 24.23) 1061
Queue Torte
Rouge Duret (1.65 / 25.3) 1049
Rousse de la Sarthe (1.64 / 25.22) 1056

ACIDULEE
Blanchet (1.28 / 71.4) 1050
Guillevic (1.35 / 86.29) 1059
Judeline (0.67 / 75.42) 1050
Locard Blanc
Pomme de Moi
Rouget de Dol Gros
Sebin Blanc (1.44 / 81.2) 1051
Tesnière (1.56 / 83.97) 1055

AIGRE AMERE
Cazo Jaune (3.28 / 196.2) 1054

AIGRE
Armagnac (1.7 / 121.21) 1065
Avrolles (0.87 / 178.99) 1055
Blanc Sur (1.23 / 99.25) 1055
Diot Roux (1.85 / 146.48) 1052
Gesnot (1.11 / 97) 1049
Jaune de Vitré (1.61 / 132.44) 1060
Judaine (0.75 / 100.4) 1053
Judin (0.89 / 98.24) 1060
Judor (0.73 / 100.63) 1052
Juliana (1.78 / 154) 1061
Jurella (0.61 / 126.7) 1053
Locard Vert
Petit Jaune (1.2 / 110.59) 1055
Pomme de Bouet
Rambault (1.4 / 95.76) 1061
Rénao
René Martin (1.38 / 113.31) 1053
sh-4.2$

regexp

This entry will look at Plan 9 Basic REs (similiar to those found in ed), at P9's Extended REs (as in egrep, before egrep got complicated), and at Tcl8.6.x series RE notation based on Henry Spencer's package with some (not quite all) of the Perl 5 extensions.

System: Plan 9, Linux, MS XP Home Edition
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz
Deps: plan9port (Linux), 9pm or pf9 (MS)

I've not yet written the code to enable plan9port to run under
Microsoft Corporation's SUA/SFU Interix <versions>.

http://plan9.bell-labs.com/sources/extra/9pm051031.zip

my setting in
Kontrolpanel | System | Avanceret | Miljøvariabler | Brugervariabler
Control Panel | System | Advanced | Environment Variables | User Variables

font C:/Programmer/9pm/font/lucm.9.font

https://bitbucket.org/mtrS/pf9/downloads/

8b0f391be5a4.zip

Conor Williams at the University of Limerick (in 2003)
ported Tcl 8.3.5 to Plan 9.

Ævar Arnfjörð Bjarmason from Iceland (in 2007) wrote
re-engine-Plan9 (CPAN), requiring Perl 5.10 or newer.

Slackware-14.0
perl v5.16.1
(exited on error on Plan9.xs:158:5)

I don't expect some entries on this blog will be filled in on
a short time frame. In the interim the reader may refer to:

http://man.cat-v.org/plan_9_2nd_ed/2/regexp
http://man.cat-v.org/plan_9_2nd_ed/6/regexp

http://man.cat-v.org/p9p/3/regexp
http://man.cat-v.org/p9p/7/regexp

Brent Welch has kindly made available some chapters of his book
"Practical Programming in Tcl and Tk" (Prentice Hall) including
Part II, Chapter 11. Regular Expressions (circa Tcl/Tk 8.0)

http://www.beedub.com/book/2nd/booktoc.mif.html

Most introductory Perl books contain a chapter on regexes.

perlrequick  - Perl regular expressions quick start
perlretut - Perl regular expressions tutorial

Regular Expression Matching Can Be Simple And Fast
(but is slow in Java, Perl, PHP, Python, Ruby, ...)
https://swtch.com/~rsc/regexp/regexp1.html
Discussion on reddit and perlmonks and LtU.

Unix Software from Plan 9
https://swtch.com/plan9port/unix/
libutf, libfmt, libbio, libregexp9. mk,
mk-with-libs

ed

This entry will look at ed, the venerable text editor.

Troff

This entry will look at troff, a text-formatting program.

18 October 2015

Xapian

Awaiting network testing on Windows 7 Ultimate, in the interim the reader may refer to:
http://lists.xapian.org/pipermail/xapian-discuss/2015-October/009265.html

System: Slackware Linux (version 14.0)
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz

xapian-core-1.2.21.tar.xz

$ make check
./apitest backend none: All 58 tests passed.
./apitest backend inmemory: All 226 tests passed, 8 skipped.
./apitest backend brass: All 302 tests passed, 2 skipped.
./apitest backend chert: All 302 tests passed, 2 skipped.
./apitest backend flint: All 298 tests passed, 2 skipped.
./apitest backend multi_brass: All 157 tests passed, 5 skipped.
./apitest backend multi_chert: All 157 tests passed, 5 skipped.
./apitest backend multi_flint: All 155 tests passed, 5 skipped.
./apitest backend remoteprog_brass: All 225 tests passed, 3 skipped.
./apitest backend remotetcp_brass: All 225 tests passed, 3 skipped.
./apitest backend remoteprog_chert: All 225 tests passed, 3 skipped.
./apitest backend remotetcp_chert: All 225 tests passed, 3 skipped.
./apitest backend remoteprog_flint: All 219 tests passed, 2 skipped.
./apitest backend remotetcp_flint: All 219 tests passed, 2 skipped.
./apitest total: All 2993 tests passed, 45 skipped.
PASS: apitest
PASS: internaltest
PASS: stemtest (stemdict tests skipped)
PASS: queryparsertest
PASS: termgentest
PASS: unittest
==================
All 6 tests passed
==================

api collapsekey2 tests skipped on all backends

adddoc5, adddoc6, metadata5, nomoredocids1, termtoolong1,
and uuid1 skipped on inmemory

eliteset1, 2, 4, and 5, skipped on multi_brass, multi_chert,
and multi_flint

positfromtermit1 skipped on remoteprog_brass, remotetcp_brass,
remoteprog_chert, remotetcp_chert, remoteprog_flint, and
remotetcp_flint

replicate2 skipped on brass

replicate5 skipped on chert and flint

valueweightsource5 skipped on inmemory, remoteprog_brass,
remotetcp_brass, remoteprog_chert, and remotetcp_chert

Yi

System: Microsoft Windows XP Home Edition
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz

Installation of yi-0.10.1.

C:\DOCUME~1\UserName>CD \

C:\>MKDIR Programmer\gtk

Extract gtk+-bundle_3.6.4-20130921_win32.zip into C:\Programmer\gtk and add
C:\Programmer\gtk\bin to the System variable PATH.

C:\>pkg-config --cflags gtk+-2.0
-mms-bitfields -IC:/Programmer/gtk/include/gtk-2.0 -IC:/Programmer/gtk/lib/gtk-2.0/include
-IC:/Programmer/gtk/include/atk-1.0 -IC:/Programmer/gtk/include/cairo -IC:/Programmer/gtk /include/gdk-pixbuf-2.0 -IC:/Programmer/gtk/include/pango-1.0 -IC:/Programmer/gtk/include
/glib-2.0 -IC:/Programmer/gtk/lib/glib-2.0/include -IC:/Programmer /gtk/include -IC:/Program
mer/gtk/include/freetype2 -IC:/Programmer/gtk/include/libpng14

C:\>gtk-demo

Create a file named 'gtkrc' with the line

gtk-theme-name = "MS-Windows"

C:\>edit.com Programmer\gtk\etc\gtk-2.0\gtkrc

C:\>TYPE Programmer\gtk\etc\gtk-2.0\gtkrc
gtk-theme-name = "MS-Windows"

C:\>

Install HaskellPlatform-2014.2.0.0-i386-setup.exe, accepting the licence and the
default options.

The System variable PATH should now read

C:\Programmer\Haskell\bin;C:\Programmer\Haskell\lib\extralibs\bin;C:\Programmer\gtk\bin;
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programmer\
Haskell\mingw\bin

a User variable PATH should be created with
C:\Documents and Settings\UserName\Application Data\cabal\bin

that folder however does not yet exist.

C:\>EXIT

Opening the Command Prompt again will load the new PATH variables.

C:\DOCUME~1\UserName>ECHO %PATH%
C:\Programmer\Haskell\bin;C:\Programmer\Haskell\lib\extralibs\bin;C:\Programmer\gtk\bin;
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programmer\
Haskell\mingw\bin;C:\Documents and Settings\UserName\Application Data\cabal\bin

C:\DOCUME~1\UserName>

Running the command

C:\DOCUME~1\UserName>cabal list --installed

or,

C:\DOCUME~1\UserName>cabal list --simple-output

will create the file C:\DOCUME~1\UserName\Application Data\cabal\config.

C:\DOCUME~1\UserName>CD \

C:\>cabal update
Downloading the latest package list from hackage.haskell.org
Note: there is a new version of cabal-install available.
To upgrade, run: cabal install cabal-install

C:\>cabal install cabal-install
Resolving dependencies...
Downloading Cabal-1.22.4.0...
Configuring Cabal-1.22.4.0...
Building Cabal-1.22.4.0...
Installed Cabal-1.22.4.0
Downloading cabal-install-1.22.6.0...
Configuring cabal-install-1.22.6.0...
Building cabal-install-1.22.6.0...
Installed cabal-install-1.22.6.0

C:\>cabal install gtk2hs-buildtools-0.13.0.4
Resolving dependencies...
Downloading hashtables-1.2.0.2...
Configuring hashtables-1.2.0.2...
Building hashtables-1.2.0.2...
Installed hashtables-1.2.0.2
Downloading gtk2hs-buildtools-0.13.0.4...
Configuring gtk2hs-buildtools-0.13.0.4...
Building gtk2hs-buildtools-0.13.0.4...
Installed gtk2hs-buildtools-0.13.0.4

The --dry-run -v options used to check dependencies in verbose mode.

C:\>cabal install yi-0.10.1 -f-vty -fpango --dry-run -v
Reading available packages...
Choosing modular solver.
Resolving dependencies...
In order, the following would be installed:
StateVar-1.1.0.0 (new package)
base-orphans-0.4.0 (new package)
cautious-file-1.0.2 (new package)
data-default-class-0.0.1 (new package)
data-default-instances-base-0.0.1 (new package)
data-default-instances-containers-0.0.1 (new package)
data-default-instances-old-locale-0.0.1 (new package)
dlist-0.7.1.1 (new package)
data-default-instances-dlist-0.0.1 (new package)
data-default-0.5.3 (new package)
executable-path-0.0.3 (new package)
extensible-exceptions-0.1.1.4 (new package)
fingertree-0.1.1.0 (new package)
ghc-paths-0.1.0.9 (new package)
io-storage-0.3 (new package)
oo-prototypes-0.1.0.0 (new package)
pointedlist-0.6.1 (new package)
prelude-extras-0.4 (new package)
reflection-1.5.2.1 (new package)
safe-0.3.9 (new package)
tagged-0.8.1 (new package)
text-1.2.1.1 -integer-simple (new version)
hashable-1.2.3.3 (new version)
nats-1 (new package)
parsec-3.1.9 (new version)
regex-tdfa-1.2.0 (new package)
tf-random-0.5 (new package)
QuickCheck-2.7.6 (latest: 2.8.1) (new version)
transformers-compat-0.4.0.3 (latest: 0.4.0.4) (new package)
distributive-0.4.4 (new package)
exceptions-0.8.0.2 (new package)
ghc-mtl-1.2.1.0 (new package)
hint-0.4.2.3 (new package)
transformers-base-0.4.4 (new package)
unix-compat-0.4.1.4 (new package)
unordered-containers-0.2.5.1 (new version)
dynamic-state-0.2.0.0 (new package)
semigroups-0.16.2.2 (new package)
bifunctors-5 (new package)
utf8-string-1 (new package)
cairo-0.13.1.0 (new package)
glib-0.13.1.1 (new package)
gio-0.13.1.0 (new package)
pango-0.13.1.0 (new package)
gtk-0.13.8.1 (new package)
void-0.7 (new package)
contravariant-1.3.1.1 (new package)
comonad-4.2.6 (latest: 4.2.7) (new package)
profunctors-5.1.1 (new package)
semigroupoids-5.0.0.2 (new package)
free-4.12.1 (new package)
adjunctions-4.2.1 (new package)
kan-extensions-4.2.2 (new package)
lens-4.11 (new package)
word-trie-0.3.0 (new package)
xdg-basedir-0.2.2 (new package)
dyre-0.8.12 (new package)
yi-language-0.2.0 (new package)
yi-rope-0.4.1.0 (latest: 0.7.0.1) (new package)
yi-0.10.1 (latest: 0.12.0) -vty +pango (new package)

C:\>cabal install yi-0.10.1 -f-vty -fpango

The installation 'C:\>cabal install yi-0.10.1 -f-vty -fpango' was stopped after xdg-basedir-0.2.2 was installed and then the dyre, xdg and yi files were deleted from the \Application Data\ghc and \Application Data\cabal subdirectories.

C:\xdg-basedir-0.2.2\System\Environment\XDG\BasDir.hs was edited to read 'Lokale indstillinger' instead of 'Local Settings' for a Danish computer, and then the modified xdg-basedir-0.2.2 was installed manually.

C:\>CD xdg-basedir-0.2.2

C:\xdg-basedir-0.2.2>runhaskell Setup configure --user
Configuring xdg-basedir-0.2.2...

C:\xdg-basedir-0.2.2>runhaskell Setup build
Building xdg-basedir-0.2.2...
Preprocessing library xdg-basedir-0.2.2...
[1 of 1] Compiling System.Environment.XDG.BaseDir ( System\Environment\XDG\BaseD
ir.hs, dist\build\System\Environment\XDG\BaseDir.o )
In-place registering xdg-basedir-0.2.2...

C:\xdg-basedir-0.2.2>runhaskell Setup install
Installing library in C:\Documents and Settings\UserName\Application
Data\cabal\i386-windows-ghc-7.8.3\xdg-basedir-0.2.2
Registering xdg-basedir-0.2.2...

C:\xdg-basedir-0.2.2>cabal install yi-0.10.1 -f-vty -fpango
Resolving dependencies...
Downloading dyre-0.8.12...
Downloading hint-0.4.2.3...
Downloading yi-language-0.2.0...
Downloading yi-rope-0.4.1.0...
Configuring hint-0.4.2.3...
Configuring dyre-0.8.12...
Building dyre-0.8.12...
Building hint-0.4.2.3...
Configuring gtk-0.13.8.1...
Installed dyre-0.8.12
Configuring yi-language-0.2.0...
Installed hint-0.4.2.3
Building yi-language-0.2.0...
Building gtk-0.13.8.1...
Configuring yi-rope-0.4.1.0...
Installed yi-language-0.2.0
Building yi-rope-0.4.1.0...
Installed yi-rope-0.4.1.0
Installed gtk-0.13.8.1
Downloading yi-0.10.1...
Configuring yi-0.10.1...
Building yi-0.10.1...
Installed yi-0.10.1

C:\xdg-basedir-0.2.2>EXIT

Read the documentation on user customisation.