10e3d5408SPeter Wemm /**************************************************************************** 2*21817992SBaptiste Daroussin * Copyright 2018-2020,2021 Thomas E. Dickey * 3e1865124SBaptiste Daroussin * Copyright 1998-2016,2017 Free Software Foundation, Inc. * 40e3d5408SPeter Wemm * * 50e3d5408SPeter Wemm * Permission is hereby granted, free of charge, to any person obtaining a * 60e3d5408SPeter Wemm * copy of this software and associated documentation files (the * 70e3d5408SPeter Wemm * "Software"), to deal in the Software without restriction, including * 80e3d5408SPeter Wemm * without limitation the rights to use, copy, modify, merge, publish, * 90e3d5408SPeter Wemm * distribute, distribute with modifications, sublicense, and/or sell * 100e3d5408SPeter Wemm * copies of the Software, and to permit persons to whom the Software is * 110e3d5408SPeter Wemm * furnished to do so, subject to the following conditions: * 120e3d5408SPeter Wemm * * 130e3d5408SPeter Wemm * The above copyright notice and this permission notice shall be included * 140e3d5408SPeter Wemm * in all copies or substantial portions of the Software. * 150e3d5408SPeter Wemm * * 160e3d5408SPeter Wemm * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * 170e3d5408SPeter Wemm * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * 180e3d5408SPeter Wemm * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * 190e3d5408SPeter Wemm * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * 200e3d5408SPeter Wemm * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * 210e3d5408SPeter Wemm * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * 220e3d5408SPeter Wemm * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * 230e3d5408SPeter Wemm * * 240e3d5408SPeter Wemm * Except as contained in this notice, the name(s) of the above copyright * 250e3d5408SPeter Wemm * holders shall not be used in advertising or otherwise to promote the * 260e3d5408SPeter Wemm * sale, use or other dealings in this Software without prior written * 270e3d5408SPeter Wemm * authorization. * 280e3d5408SPeter Wemm ****************************************************************************/ 290e3d5408SPeter Wemm 300e3d5408SPeter Wemm /**************************************************************************** 310e3d5408SPeter Wemm * Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995 * 320e3d5408SPeter Wemm * and: Eric S. Raymond <esr@snark.thyrsus.com> * 334a1a9510SRong-En Fan * and: Thomas E. Dickey 1996-on * 340e3d5408SPeter Wemm ****************************************************************************/ 350e3d5408SPeter Wemm 360e3d5408SPeter Wemm /* 37*21817992SBaptiste Daroussin * $Id: dump_entry.h,v 1.44 2021/04/18 19:56:09 tom Exp $ 384a1a9510SRong-En Fan * 390e3d5408SPeter Wemm * Dump control definitions and variables 400e3d5408SPeter Wemm */ 410e3d5408SPeter Wemm 424a1a9510SRong-En Fan #ifndef DUMP_ENTRY_H 434a1a9510SRong-En Fan #define DUMP_ENTRY_H 1 444a1a9510SRong-En Fan 45aae38d10SBaptiste Daroussin #define NCURSES_OPAQUE 0 46aae38d10SBaptiste Daroussin #define NCURSES_INTERNALS 1 47aae38d10SBaptiste Daroussin #include <curses.h> 48aae38d10SBaptiste Daroussin #include <term.h> 49aae38d10SBaptiste Daroussin 500e3d5408SPeter Wemm /* capability output formats */ 510e3d5408SPeter Wemm #define F_TERMINFO 0 /* use terminfo names */ 520e3d5408SPeter Wemm #define F_VARIABLE 1 /* use C variable names */ 530e3d5408SPeter Wemm #define F_TERMCAP 2 /* termcap names with capability conversion */ 540e3d5408SPeter Wemm #define F_TCONVERR 3 /* as T_TERMCAP, no skip of untranslatables */ 550e3d5408SPeter Wemm #define F_LITERAL 4 /* like F_TERMINFO, but no smart defaults */ 560e3d5408SPeter Wemm 570e3d5408SPeter Wemm /* capability sort modes */ 580e3d5408SPeter Wemm #define S_DEFAULT 0 /* sort by terminfo name (implicit) */ 590e3d5408SPeter Wemm #define S_NOSORT 1 /* don't sort */ 600e3d5408SPeter Wemm #define S_TERMINFO 2 /* sort by terminfo names (explicit) */ 610e3d5408SPeter Wemm #define S_VARIABLE 3 /* sort by C variable names */ 620e3d5408SPeter Wemm #define S_TERMCAP 4 /* sort by termcap names */ 630e3d5408SPeter Wemm 6415589c42SPeter Wemm /* capability types for the comparison hook */ 6515589c42SPeter Wemm #define CMP_BOOLEAN 0 /* comparison on booleans */ 6615589c42SPeter Wemm #define CMP_NUMBER 1 /* comparison on numerics */ 6715589c42SPeter Wemm #define CMP_STRING 2 /* comparison on strings */ 6815589c42SPeter Wemm #define CMP_USE 3 /* comparison on use capabilities */ 6915589c42SPeter Wemm 70*21817992SBaptiste Daroussin #ifndef _TERMSORT_H 714a1a9510SRong-En Fan typedef unsigned PredType; 725d08fb1fSRong-En Fan typedef unsigned PredIdx; 73*21817992SBaptiste Daroussin #endif 74*21817992SBaptiste Daroussin 754a1a9510SRong-En Fan typedef int (*PredFunc) (PredType, PredIdx); 7673f0a83dSXin LI typedef void (*PredHook) (PredType, PredIdx, const char *); 774a1a9510SRong-En Fan 780e3d5408SPeter Wemm extern NCURSES_CONST char *nametrans(const char *); 797a656419SBaptiste Daroussin extern bool has_params(const char *, bool); 80aae38d10SBaptiste Daroussin extern int fmt_entry(TERMTYPE2 *, PredFunc, int, int, int, int); 814a1a9510SRong-En Fan extern int show_entry(void); 82aae38d10SBaptiste Daroussin extern void compare_entry(PredHook, TERMTYPE2 *, bool); 83aae38d10SBaptiste Daroussin extern void dump_entry(TERMTYPE2 *, int, int, int, PredFunc); 84aae38d10SBaptiste Daroussin extern void dump_init(const char *, int, int, bool, int, int, unsigned, bool, 85aae38d10SBaptiste Daroussin bool, int); 864a1a9510SRong-En Fan extern void dump_uses(const char *, bool); 87aae38d10SBaptiste Daroussin extern void repair_acsc(TERMTYPE2 *tp); 88aae38d10SBaptiste Daroussin 89aae38d10SBaptiste Daroussin #define L_CURL "{" 90aae38d10SBaptiste Daroussin #define R_CURL "}" 910e3d5408SPeter Wemm 920e3d5408SPeter Wemm #define FAIL -1 934a1a9510SRong-En Fan 944a1a9510SRong-En Fan #endif /* DUMP_ENTRY_H */ 95