From 705fd24fd5c64fcf0bd59c0cda29a2125d7199e3 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Mon, 8 May 2000 15:56:37 +0000 Subject: 11044, 11260: DVORAK options for spell checking. --- ChangeLog | 7 +++++++ Doc/Zsh/options.yo | 6 ++++++ Src/options.c | 1 + Src/utils.c | 19 ++++++++++++++++++- Src/zsh.h | 1 + 5 files changed, 33 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 405ebdd52..c5201cb14 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2000-05-08 Peter Stephenson + + * 11260: Doc/Zsh/options.yo: docs for 11044 + + * Hiroki Tamakoshi: 11044: Src/options.c, Src/utils.c, Src/zsh.h: + Option to use Dvorak keyboard in spell-checking. + 2000-05-08 Geoff Wing * gcw: unposted: Etc/CONTRIBUTORS fix diff --git a/Doc/Zsh/options.yo b/Doc/Zsh/options.yo index e55ed53bd..9b2d34b92 100644 --- a/Doc/Zsh/options.yo +++ b/Doc/Zsh/options.yo @@ -326,6 +326,12 @@ do not report an error unless all the patterns in a command have no matches. Overrides tt(NULL_GLOB). ) +pindex(DVORAK) +item(tt(DVORAK))( +Use the Dvorak keyboard instead of the standard qwerty keyboard as a basis +for examining spelling mistakes for the tt(CORRECT) and tt(CORRECT_ALL) +options and the tt(spell-word) editor command. +) pindex(EQUALS) cindex(filename expansion, =) item(tt(EQUALS) )( diff --git a/Src/options.c b/Src/options.c index c68d58986..9125a2380 100644 --- a/Src/options.c +++ b/Src/options.c @@ -210,6 +210,7 @@ static struct optname optns[] = { {NULL, "promptvars", OPT_ALIAS, /* bash */ PROMPTSUBST}, {NULL, "stdin", OPT_ALIAS, /* ksh */ SHINSTDIN}, {NULL, "trackall", OPT_ALIAS, /* ksh */ HASHCMDS}, +{NULL, "dvorak", 0, DVORAK}, {NULL, NULL, 0, 0} }; diff --git a/Src/utils.c b/Src/utils.c index 416d0aeaf..e109d8ba5 100644 --- a/Src/utils.c +++ b/Src/utils.c @@ -2127,7 +2127,7 @@ static int spdist(char *s, char *t, int thresh) { char *p, *q; - char *keymap = + const char qwertykeymap[] = "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ \t1234567890-=\t\ \tqwertyuiop[]\t\ @@ -2139,6 +2139,23 @@ spdist(char *s, char *t, int thresh) \tASDFGHJKL:\"\n\t\ \tZXCVBNM<>?\n\n\t\ \n\n\n\n\n\n\n\n\n\n\n\n\n\n"; + const char dvorakkeymap[] = + "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ +\t1234567890[]\t\ +\t',.pyfgcrl/=\t\ +\taoeuidhtns-\n\t\ +\t;qjkxbmwvz\t\t\t\ +\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ +\t!@#$%^&*(){}\t\ +\t\"<>PYFGCRL?+\t\ +\tAOEUIDHTNS_\n\t\ +\t:QJKXBMWVZ\n\n\t\ +\n\n\n\n\n\n\n\n\n\n\n\n\n\n"; + const char *keymap; + if ( isset( DVORAK ) ) + keymap = dvorakkeymap; + else + keymap = qwertykeymap; if (!strcmp(s, t)) return 0; diff --git a/Src/zsh.h b/Src/zsh.h index 585e94e59..dec00c9e7 100644 --- a/Src/zsh.h +++ b/Src/zsh.h @@ -1431,6 +1431,7 @@ enum { VERBOSE, XTRACE, USEZLE, + DVORAK, OPT_SIZE }; -- cgit 1.4.1