summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>1999-10-27 09:39:10 +0000
committerTanaka Akira <akr@users.sourceforge.net>1999-10-27 09:39:10 +0000
commita17347df5947b438c36b2f3d1eaa966e11e25a83 (patch)
tree6e6a1b541bcd86e6c58dfa7557b257ff55304d38
parent65392c396bc521661593d1fa028b8a2d0b2461af (diff)
downloadzsh-a17347df5947b438c36b2f3d1eaa966e11e25a83.tar.gz
zsh-a17347df5947b438c36b2f3d1eaa966e11e25a83.zip
removed.
-rw-r--r--Src/Zle/comp1.c291
-rw-r--r--Src/Zle/comp1.export22
-rw-r--r--Src/Zle/comp1.mdd3
3 files changed, 0 insertions, 316 deletions
diff --git a/Src/Zle/comp1.c b/Src/Zle/comp1.c
deleted file mode 100644
index acd1288a6..000000000
--- a/Src/Zle/comp1.c
+++ /dev/null
@@ -1,291 +0,0 @@
-/*
- * comp1.c - base of the completion system
- *
- * This file is part of zsh, the Z shell.
- *
- * Copyright (c) 1992-1997 Paul Falstad
- * All rights reserved.
- *
- * Permission is hereby granted, without written agreement and without
- * license or royalty fees, to use, copy, modify, and distribute this
- * software and to distribute modified versions of this software for any
- * purpose, provided that the above copyright notice and the following
- * two paragraphs appear in all copies of this software.
- *
- * In no event shall Paul Falstad or the Zsh Development Group be liable
- * to any party for direct, indirect, special, incidental, or consequential
- * damages arising out of the use of this software and its documentation,
- * even if Paul Falstad and the Zsh Development Group have been advised of
- * the possibility of such damage.
- *
- * Paul Falstad and the Zsh Development Group specifically disclaim any
- * warranties, including, but not limited to, the implied warranties of
- * merchantability and fitness for a particular purpose. The software
- * provided hereunder is on an "as is" basis, and Paul Falstad and the
- * Zsh Development Group have no obligation to provide maintenance,
- * support, updates, enhancements, or modifications.
- *
- */
-
-#include "comp1.mdh"
-
-#include "comp1.pro"
-
-/* default completion infos */
-
-/**/
-struct compctl cc_compos, cc_default, cc_first, cc_dummy;
-
-/* hash table for completion info for commands */
-
-/**/
-HashTable compctltab;
-
-/* Words on the command line, for use in completion */
-
-/**/
-int clwsize, clwnum, clwpos;
-/**/
-char **clwords;
-
-/* != 0 if in a shell function called from completion, such that read -[cl] *
- * will work (i.e., the line is metafied, and the above word arrays are OK). */
-
-/**/
-int incompctlfunc;
-
-/**/
-static void
-createcompctltable(void)
-{
- compctltab = newhashtable(23, "compctltab", NULL);
-
- compctltab->hash = hasher;
- compctltab->emptytable = emptyhashtable;
- compctltab->filltable = NULL;
- compctltab->addnode = addhashnode;
- compctltab->getnode = gethashnode2;
- compctltab->getnode2 = gethashnode2;
- compctltab->removenode = removehashnode;
- compctltab->disablenode = NULL;
- compctltab->enablenode = NULL;
- compctltab->freenode = freecompctlp;
- compctltab->printnode = NULL;
-}
-
-/**/
-static void
-freecompctlp(HashNode hn)
-{
- Compctlp ccp = (Compctlp) hn;
-
- zsfree(ccp->nam);
- freecompctl(ccp->cc);
- zfree(ccp, sizeof(struct compctlp));
-}
-
-/**/
-void
-freecompctl(Compctl cc)
-{
- if (cc == &cc_default ||
- cc == &cc_first ||
- cc == &cc_compos ||
- --cc->refc > 0)
- return;
-
- zsfree(cc->keyvar);
- zsfree(cc->glob);
- zsfree(cc->str);
- zsfree(cc->func);
- zsfree(cc->explain);
- zsfree(cc->ylist);
- zsfree(cc->prefix);
- zsfree(cc->suffix);
- zsfree(cc->hpat);
- zsfree(cc->subcmd);
- if (cc->cond)
- freecompcond(cc->cond);
- if (cc->ext) {
- Compctl n, m;
-
- n = cc->ext;
- do {
- m = (Compctl) (n->next);
- freecompctl(n);
- n = m;
- }
- while (n);
- }
- if (cc->xor && cc->xor != &cc_default)
- freecompctl(cc->xor);
- zfree(cc, sizeof(struct compctl));
-}
-
-/**/
-void
-freecompcond(void *a)
-{
- Compcond cc = (Compcond) a;
- Compcond and, or, c;
- int n;
-
- for (c = cc; c; c = or) {
- or = c->or;
- for (; c; c = and) {
- and = c->and;
- if (c->type == CCT_POS ||
- c->type == CCT_NUMWORDS) {
- free(c->u.r.a);
- free(c->u.r.b);
- } else if (c->type == CCT_CURSUF ||
- c->type == CCT_CURPRE) {
- for (n = 0; n < c->n; n++)
- if (c->u.s.s[n])
- zsfree(c->u.s.s[n]);
- free(c->u.s.s);
- } else if (c->type == CCT_RANGESTR ||
- c->type == CCT_RANGEPAT) {
- for (n = 0; n < c->n; n++)
- if (c->u.l.a[n])
- zsfree(c->u.l.a[n]);
- free(c->u.l.a);
- for (n = 0; n < c->n; n++)
- if (c->u.l.b[n])
- zsfree(c->u.l.b[n]);
- free(c->u.l.b);
- } else {
- for (n = 0; n < c->n; n++)
- if (c->u.s.s[n])
- zsfree(c->u.s.s[n]);
- free(c->u.s.p);
- free(c->u.s.s);
- }
- zfree(c, sizeof(struct compcond));
- }
- }
-}
-
-/**/
-int
-compctlread(char *name, char **args, char *ops, char *reply)
-{
- char *buf, *bptr;
-
- /* only allowed to be called for completion */
- if (!incompctlfunc) {
- zwarnnam(name, "option valid only in functions called for completion",
- NULL, 0);
- return 1;
- }
-
- if (ops['l']) {
- /* -ln gives the index of the word the cursor is currently on, which is
- available in cs (but remember that Zsh counts from one, not zero!) */
- if (ops['n']) {
- char nbuf[14];
-
- if (ops['e'] || ops['E'])
- printf("%d\n", cs + 1);
- if (!ops['e']) {
- sprintf(nbuf, "%d", cs + 1);
- setsparam(reply, ztrdup(nbuf));
- }
- return 0;
- }
- /* without -n, the current line is assigned to the given parameter as a
- scalar */
- if (ops['e'] || ops['E']) {
- zputs((char *) line, stdout);
- putchar('\n');
- }
- if (!ops['e'])
- setsparam(reply, ztrdup((char *) line));
- } else {
- int i;
-
- /* -cn gives the current cursor position within the current word, which
- is available in clwpos (but remember that Zsh counts from one, not
- zero!) */
- if (ops['n']) {
- char nbuf[14];
-
- if (ops['e'] || ops['E'])
- printf("%d\n", clwpos + 1);
- if (!ops['e']) {
- sprintf(nbuf, "%d", clwpos + 1);
- setsparam(reply, ztrdup(nbuf));
- }
- return 0;
- }
- /* without -n, the words of the current line are assigned to the given
- parameters separately */
- if (ops['A'] && !ops['e']) {
- /* the -A option means that one array is specified, instead of
- many parameters */
- char **p, **b = (char **)zcalloc((clwnum + 1) * sizeof(char *));
-
- for (i = 0, p = b; i < clwnum; p++, i++)
- *p = ztrdup(clwords[i]);
-
- setaparam(reply, b);
- return 0;
- }
- if (ops['e'] || ops['E']) {
- for (i = 0; i < clwnum; i++) {
- zputs(clwords[i], stdout);
- putchar('\n');
- }
-
- if (ops['e'])
- return 0;
- }
-
- for (i = 0; i < clwnum && *args; reply = *args++, i++)
- setsparam(reply, ztrdup(clwords[i]));
-
- if (i < clwnum) {
- int j, len;
-
- for (j = i, len = 0; j < clwnum; len += strlen(clwords[j++]));
- bptr = buf = zalloc(len + j - i);
- while (i < clwnum) {
- strucpy(&bptr, clwords[i++]);
- *bptr++ = ' ';
- }
- bptr[-1] = '\0';
- } else
- buf = ztrdup("");
- setsparam(reply, buf);
- }
- return 0;
-}
-
-/**/
-int
-boot_comp1(Module m)
-{
- compctlreadptr = compctlread;
- clwords = (char **) zcalloc((clwsize = 16) * sizeof(char *));
- createcompctltable();
- cc_compos.mask = CC_COMMPATH;
- cc_default.refc = 10000;
- cc_default.mask = CC_FILES;
- cc_first.refc = 10000;
- cc_first.mask = 0;
- return 0;
-}
-
-#ifdef MODULE
-
-/**/
-int
-cleanup_comp1(Module m)
-{
- deletehashtable(compctltab);
- zfree(clwords, clwsize * sizeof(char *));
- compctlreadptr = fallback_compctlread;
- return 0;
-}
-
-#endif /* MODULE */
diff --git a/Src/Zle/comp1.export b/Src/Zle/comp1.export
deleted file mode 100644
index 1ac9195df..000000000
--- a/Src/Zle/comp1.export
+++ /dev/null
@@ -1,22 +0,0 @@
-#!
-cc_compos
-cc_default
-cc_dummy
-cc_first
-clwnum
-clwords
-clwpos
-clwsize
-cmatcher
-compctl_widgetptr
-compctltab
-freecmatcher
-freecmlist
-freecompcond
-freecompctl
-incompctlfunc
-instring
-patcomps
-printcompctlptr
-quotename
-rembslash
diff --git a/Src/Zle/comp1.mdd b/Src/Zle/comp1.mdd
deleted file mode 100644
index 9037e568a..000000000
--- a/Src/Zle/comp1.mdd
+++ /dev/null
@@ -1,3 +0,0 @@
-objects="comp1.o"
-
-headers="comp.h"