123338178SMark Peek /* $Header: /src/pub/tcsh/tw.h,v 3.24 2004/11/23 02:10:50 christos Exp $ */ 2c80476e4SDavid E. O'Brien /* 3c80476e4SDavid E. O'Brien * tw.h: TwENEX functions headers 4c80476e4SDavid E. O'Brien */ 5c80476e4SDavid E. O'Brien /*- 6c80476e4SDavid E. O'Brien * Copyright (c) 1980, 1991 The Regents of the University of California. 7c80476e4SDavid E. O'Brien * All rights reserved. 8c80476e4SDavid E. O'Brien * 9c80476e4SDavid E. O'Brien * Redistribution and use in source and binary forms, with or without 10c80476e4SDavid E. O'Brien * modification, are permitted provided that the following conditions 11c80476e4SDavid E. O'Brien * are met: 12c80476e4SDavid E. O'Brien * 1. Redistributions of source code must retain the above copyright 13c80476e4SDavid E. O'Brien * notice, this list of conditions and the following disclaimer. 14c80476e4SDavid E. O'Brien * 2. Redistributions in binary form must reproduce the above copyright 15c80476e4SDavid E. O'Brien * notice, this list of conditions and the following disclaimer in the 16c80476e4SDavid E. O'Brien * documentation and/or other materials provided with the distribution. 1729301572SMark Peek * 3. Neither the name of the University nor the names of its contributors 18c80476e4SDavid E. O'Brien * may be used to endorse or promote products derived from this software 19c80476e4SDavid E. O'Brien * without specific prior written permission. 20c80476e4SDavid E. O'Brien * 21c80476e4SDavid E. O'Brien * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 22c80476e4SDavid E. O'Brien * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 23c80476e4SDavid E. O'Brien * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 24c80476e4SDavid E. O'Brien * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 25c80476e4SDavid E. O'Brien * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26c80476e4SDavid E. O'Brien * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27c80476e4SDavid E. O'Brien * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28c80476e4SDavid E. O'Brien * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29c80476e4SDavid E. O'Brien * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30c80476e4SDavid E. O'Brien * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31c80476e4SDavid E. O'Brien * SUCH DAMAGE. 32c80476e4SDavid E. O'Brien */ 33c80476e4SDavid E. O'Brien #ifndef _h_tw 34c80476e4SDavid E. O'Brien #define _h_tw 35c80476e4SDavid E. O'Brien 36c80476e4SDavid E. O'Brien #define TW_PATH 0x1000 37c80476e4SDavid E. O'Brien #define TW_ZERO 0x0fff 38c80476e4SDavid E. O'Brien 39c80476e4SDavid E. O'Brien #define TW_NONE 0x0000 40c80476e4SDavid E. O'Brien #define TW_COMMAND 0x0001 41c80476e4SDavid E. O'Brien #define TW_VARIABLE 0x0002 42c80476e4SDavid E. O'Brien #define TW_LOGNAME 0x0003 43c80476e4SDavid E. O'Brien #define TW_FILE 0x0004 44c80476e4SDavid E. O'Brien #define TW_DIRECTORY 0x0005 45c80476e4SDavid E. O'Brien #define TW_VARLIST 0x0006 46c80476e4SDavid E. O'Brien #define TW_USER 0x0007 47c80476e4SDavid E. O'Brien #define TW_COMPLETION 0x0008 48c80476e4SDavid E. O'Brien #define TW_ALIAS 0x0009 49c80476e4SDavid E. O'Brien #define TW_SHELLVAR 0x000a 50c80476e4SDavid E. O'Brien #define TW_ENVVAR 0x000b 51c80476e4SDavid E. O'Brien #define TW_BINDING 0x000c 52c80476e4SDavid E. O'Brien #define TW_WORDLIST 0x000d 53c80476e4SDavid E. O'Brien #define TW_LIMIT 0x000e 54c80476e4SDavid E. O'Brien #define TW_SIGNAL 0x000f 55c80476e4SDavid E. O'Brien #define TW_JOB 0x0010 56c80476e4SDavid E. O'Brien #define TW_EXPLAIN 0x0011 57c80476e4SDavid E. O'Brien #define TW_TEXT 0x0012 58c80476e4SDavid E. O'Brien #define TW_GRPNAME 0x0013 59c80476e4SDavid E. O'Brien 60c80476e4SDavid E. O'Brien #define TW_EXEC_CHK 0x01 61c80476e4SDavid E. O'Brien #define TW_DIR_CHK 0x02 62c80476e4SDavid E. O'Brien #define TW_TEXT_CHK 0x04 63c80476e4SDavid E. O'Brien 64c80476e4SDavid E. O'Brien #define TW_DIR_OK 0x10 65c80476e4SDavid E. O'Brien #define TW_PAT_OK 0x20 66c80476e4SDavid E. O'Brien #define TW_IGN_OK 0x40 67c80476e4SDavid E. O'Brien 68c80476e4SDavid E. O'Brien #ifndef TRUE 69c80476e4SDavid E. O'Brien # define TRUE 1 70c80476e4SDavid E. O'Brien #endif 71c80476e4SDavid E. O'Brien #ifndef FALSE 72c80476e4SDavid E. O'Brien # define FALSE 0 73c80476e4SDavid E. O'Brien #endif 74c80476e4SDavid E. O'Brien #define ON 1 75c80476e4SDavid E. O'Brien #define OFF 0 763b6eaa7bSAndrey A. Chernov #define FILSIZ BUFSIZE /* Max reasonable file name length */ 77c80476e4SDavid E. O'Brien #define ESC CTL_ESC('\033') 78c80476e4SDavid E. O'Brien #define equal(a, b) (strcmp(a, b) == 0) 79c80476e4SDavid E. O'Brien 80c80476e4SDavid E. O'Brien #define is_set(var) adrof(var) 81c80476e4SDavid E. O'Brien #define ismetahash(a) (ismeta(a) && (a) != '#') 82c80476e4SDavid E. O'Brien 83c80476e4SDavid E. O'Brien #define SEARCHLIST "HPATH" /* Env. param for helpfile searchlist */ 84c80476e4SDavid E. O'Brien #define DEFAULTLIST ":/usr/man/cat1:/usr/man/cat8:/usr/man/cat6:/usr/local/man/cat1:/usr/local/man/cat8:/usr/local/man/cat6" /* if no HPATH */ 85c80476e4SDavid E. O'Brien 86c80476e4SDavid E. O'Brien typedef enum { 87c80476e4SDavid E. O'Brien LIST, LIST_ALL, RECOGNIZE, RECOGNIZE_ALL, RECOGNIZE_SCROLL, 88c80476e4SDavid E. O'Brien PRINT_HELP, SPELL, GLOB, GLOB_EXPAND, VARS_EXPAND, PATH_NORMALIZE, 89c80476e4SDavid E. O'Brien COMMAND_NORMALIZE 90c80476e4SDavid E. O'Brien } COMMAND; 91c80476e4SDavid E. O'Brien 92c80476e4SDavid E. O'Brien struct scroll_tab_list { 93c80476e4SDavid E. O'Brien Char *element; 94c80476e4SDavid E. O'Brien struct scroll_tab_list *next; 95c80476e4SDavid E. O'Brien } ; 96c80476e4SDavid E. O'Brien 97c80476e4SDavid E. O'Brien extern struct scroll_tab_list *scroll_tab; 98c80476e4SDavid E. O'Brien extern int curchoice; 99c80476e4SDavid E. O'Brien 100c80476e4SDavid E. O'Brien extern int non_unique_match; 101c80476e4SDavid E. O'Brien 102c80476e4SDavid E. O'Brien extern int match_unique_match; 103c80476e4SDavid E. O'Brien 10423338178SMark Peek extern int InsideCompletion; 10523338178SMark Peek 10623338178SMark Peek extern struct varent completions; 10723338178SMark Peek 10823338178SMark Peek extern int color_context_ls; 10923338178SMark Peek 110c80476e4SDavid E. O'Brien #include "tw.decls.h" 111c80476e4SDavid E. O'Brien 112c80476e4SDavid E. O'Brien #endif /* _h_tw */ 113