C-Menu 0.2.9
A User Interface Toolkit
Loading...
Searching...
No Matches
view.h
Go to the documentation of this file.
1/** @file view.h
2 @brief View data structures, enums, types, end external declarations
3 @author Bill Waller
4 Copyright (c) 2025
5 MIT License
6 billxwaller@gmail.com
7 @date 2026-02-09
8 */
9
10#ifndef _VIEW_H
11#define _VIEW_H 1
12
13#define _XOPEN_SOURCE_EXTENDED 1
14#define NCURSES_WIDECHAR 1
15#include <ncursesw/ncurses.h>
16#include <signal.h>
17#include <stddef.h>
18#include <stdlib.h>
19#ifndef _COMMON_H
20typedef struct Init Init;
21#endif
22#define COLOR_LEN 8
23#define NPOS 256
24#define NMARKS 256
25#define MAXLEN 256
26#define NULSL
27#define NULL_POSITION -1
28#define VBUFSIZ 65536
29#define BUFSIZ 8192
30#define PAD_COLS 4096
31
33
34#define LINE_TBL_INCR
35 1024 // number of entries to add to line_tbl when reallocating
36
37typedef struct {
38 int fg_clr_idx; /**< foreground_color */
39 int bg_clr_idx; /**< background_color */
40 int bo_clr_idx; /**< bold_color */
41 int ln_clr_idx; /**< line_number_color */
42 int ln_bg_clr_idx; /**< line_number_background_color */
43 char fg_clr_x[COLOR_LEN]; /**< foreground_color in hex, e.g. "#RRGGBB" */
44 char bg_clr_x[COLOR_LEN]; /**< background_color in hex, e.g. "#RRGGBB" */
45 char bo_clr_x[COLOR_LEN]; /**< bold_color in hex, e.g. "#RRGGBB" */
46 char ln_clr_x[COLOR_LEN]; /**< line_number_color in hex, e.g. "#RRGGBB" */
47 char ln_bg_clr_x[COLOR_LEN]; /**< line_number_background_color in hex */
48 int lines; /**< number of lines for window size */
49 int cols; /**< number of columns for window size */
50 int begy; /**< screen line upper left corner of window */
51 int begx; /**< screen column upper left corner of window */
52 char provider_cmd[MAXLEN]; /**< command provides input */
53 char receiver_cmd[MAXLEN]; /**< command receives output */
54 char cmd[MAXLEN]; /**< command to execute in foreground, e.g. an editor */
55 char cmd_all[MAXLEN]; /**< View - command to execute at start of program */
56 char prompt_str[MAXLEN]; /**< prompt string for chyron */
57 char title[MAXLEN]; /**< title string for window */
58 int argc; /**< command line arguments count */
59 char **argv; /**< command line arguments vector */
60 int optind; /**< getopt pointer to non-option arguments in argv */
61 bool f_ignore_case; /**< View - ignore case in search */
62 bool f_at_end_remove; /**< obsolete, unneeded */
63 bool f_squeeze; /**< View - print one line for each group of blank lines */
64 bool f_strip_ansi; /**< strip ansi escape sequences when writing buffer */
65 bool f_multiple_cmd_args; /**< View - put multiple arguments in a single
66 string */
67 WINDOW *win; /**< ncurses window used by View */
68 WINDOW *box; /**< ncurses window used by View for box around win */
69 char tmp_prompt_str[MAXLEN]; /**< temporary prompt string used when building
70 prompt */
71 int curr_argc; /**< current argument count when processing multiple
72 arguments */
73 char cmd_arg[MAXLEN]; /**< argument string */
74 int tab_stop; /**< number of spaces between tab stops */
75 int next_cmd_char; /**< index of next character in cmd string to process
76 when building prompt */
77 bool f_bod; /**< beginning of data */
78 bool f_eod; /**< end of data */
79 bool f_forward; /**< motion flag forward */
80 bool f_is_pipe; /**< input is from a pipe */
81 char file_name[MAXLEN]; /**< basename of file being viewed */
82 bool f_redisplay_page; /**< flag indicating page needs to be redisplayed */
83 bool f_displaying_help; /**< currently didsplaying help information */
84 bool f_first_iter; /**< first iteration of search */
85 bool f_search_complete; /**< Entire file has been searched */
86 bool f_full_screen; /**< default mode if lines and columns not specified */
87 bool f_timer; /**< time commands and display elapsed time in prompt */
88
89 bool f_cmd; /**< cmd is verified */
90 bool f_cmd_all; /**< cmd_all is verified */
91 char cur_file_str[MAXLEN]; /**< file currently open for viewing */
92 char line_in_s[PAD_COLS]; /**< raw input line from buffer */
93 char line_out_s[PAD_COLS]; /**< scratch buffer */
94 char stripped_line_out[PAD_COLS]; /**< printable characters only */
95 cchar_t cmplx_buf[PAD_COLS]; /**< complex character buffer */
96 char *line_out_p; /**< pointer to current position in line_out_s */
97 char *line_in_beg_p; /**< pointer used in matching search targets */
98 char *line_in_end_p; /**< pointer used in matching search targets */
99 WINDOW *pad; /**< ncurses pad used by View */
100 int cury; /**< cury is the pad row of the cursor location */
101 int curx; /**< curx is the pad column of the cursor location */
102 int scroll_lines; /**< number of lines to scroll */
103 int cmd_line; /**< command line location on pad */
104 int maxcol; /**< length of longest line on pad */
105 int pminrow; /**< first pad row displayed in view window */
106 int pmincol; /**< first pad column displayed in view window */
107 int sminrow; /**< screen position of first row of pad displayed in view
108 window */
109 int smincol; /**< screen position of first column of pad displayed in view
110 window */
111 int smaxrow; /**< screen position of last row of pad displayed in view
112 windiow */
113 int smaxcol; /**< screen position of last column of pad displayed in view
114 window */
115 int first_match_x; /**< first column of current search match in
116 stripped_line_out */
117 int last_match_x; /**< last column of current search match in
118 stripped_line_out */
119 char in_spec[MAXLEN]; /**< input file spec */
120 char out_spec[MAXLEN]; /**< output file spec */
121 char help_spec[MAXLEN]; /**< help file spec */
122 bool f_in_spec; /**< input file verified */
123 bool f_out_spec; /**< output file verified */
124 bool f_help_spec; /**< output file verified */
125 char *file_spec_ptr; /**< pointer to current file spec */
126 char *next_file_spec_ptr; /**< pointer to next file spec */
127 char *tmp_file_name_ptr; /**< pointer to temporary file spec */
128 off_t file_size; /**< size of file being viewed */
129 off_t file_pos; /**< current file position */
130 off_t prev_file_pos; /**< previous file position */
131 off_t page_top_pos; /**< file position of top line displayed */
132 off_t page_bot_pos; /**< file position of last line displayed */
133 off_t srch_curr_pos; /**< current search position */
134 off_t srch_beg_pos; /**< file position when search started */
135 off_t mark_tbl[NMARKS]; /**< not implemented */
136 bool f_in_pipe; /**< input is from a pipe */
137 int in_fd; /**< input file descriptor */
138 int out_fd; /**< output file descriptor */
139 FILE *in_fp; /**< pointer to input stream data structure */
140 int stdin_fd; /**< standard input file descriptor */
141 FILE *stdin_fp; /**< pointer to standard input stream data structure */
142 int stdout_fd; /**< standard output file descriptor */
143 FILE *stdout_fp; /**< pointer to standard output stream data structure */
144 char *buf; /**< pointer to first byte of virtual buffer */
145 char *buf_curr_ptr; /**< pointer to current position in virtual buffer */
146 char *buf_end_ptr; /**< pointer to first byte after end of data in virtual
147 buffer */
148 char *lnbuf; /**< pointer to first byte of virtual buffer */
149 char *lnbuf_curr_ptr; /**< pointer to first byte of virtual buffer */
150 char *lnbuf_end_ptr; /**< pointer to first byte after end of data in virtual
151 buffer */
152 WINDOW *ln_win; /**< ncurses window used by View for line numbers */
153 int ln_win_lines; /**< number of lines in line number window */
154 int ln_win_cols; /**< number of columns in line number window */
155 bool f_ln; /**< flag - number lines */
156 off_t ln; /**< line number */
157 char ln_s[10]; /**< line number formatted string */
158 off_t *ln_tbl; /**< line number table - array of file positions */
159 off_t ln_tbl_size; /**< number of entries allocated in line_tbl */
160 off_t ln_tbl_cnt; /**< number of entries used in line_tbl */
161 off_t ln_max_pos; /**< position of last page number increment */
162 off_t page_top_ln; /**< line number of top line displayed */
163 off_t page_bot_ln; /**< line number of last line displayed */
164} View;
165extern View *view;
166
167extern int get_cmd_spec(View *, char *);
168extern void go_to_position(View *, long);
169extern void cat_file(View *);
170extern char err_msg[MAXLEN];
171
172#endif
void form_help(char *)
@ P_HELP
Definition form.h:32
@ P_CALC
Definition form.h:38
@ P_CONTINUE
Definition form.h:28
@ P_END
Definition form.h:43
@ P_ACCEPT
Definition form.h:30
@ P_CANCEL
Definition form.h:34
@ P_EDIT
Definition form.h:41
@ P_REFUSE
Definition form.h:36
int form_yx_to_fidx(Form *, int, int)
#define FIELD_MAXLEN
Definition form.h:18
FieldFormat
Definition form.h:48
@ FF_DECIMAL_INT
Definition form.h:51
@ FF_STRING
Definition form.h:49
@ FF_HEX_INT
Definition form.h:53
@ FF_YYYYMMDD
Definition form.h:62
@ FF_HHMMSS
Definition form.h:64
@ FF_CURRENCY
Definition form.h:59
@ FF_FLOAT
Definition form.h:55
@ FF_INVALID
Definition form.h:69
@ FF_DOUBLE
Definition form.h:57
@ FF_APR
Definition form.h:66
int form_read_description(Form *)
Form * form
Definition mem.c:47
void form_display_chyron(Form *)
#define FIELD_MAXCNT
Definition form.h:19
int cmd_processor(Init *)
Init * init
Definition common.h:186
OptType
option types
Definition common.h:78
@ OT_INT
Definition common.h:80
@ OT_BOOL
Definition common.h:81
@ OT_HEX
Definition common.h:82
@ OT_STRING
Definition common.h:79
Caller
Definition common.h:75
@ FORM
Definition common.h:75
@ MENU
Definition common.h:75
@ VIEW
Definition common.h:75
@ PICK
Definition common.h:75
int popup_form(Init *, int, char **, int, int)
Definition popups.c:34
OptGroup
option groups
Definition common.h:86
@ OG_FILES
Definition common.h:87
@ OG_DIRS
Definition common.h:88
@ OG_SPECS
Definition common.h:89
@ OG_MISC
Definition common.h:90
@ OG_FLAGS
Definition common.h:92
@ OG_PARMS
Definition common.h:91
@ OG_COL
Definition common.h:93
int popup_menu(Init *, int, char **, int, int)
Definition popups.c:8
int popup_view(Init *, int, char **, int, int, int, int)
Definition popups.c:47
int parse_opt_args(Init *, int, char **)
Definition init.c:393
int popup_pick(Init *, int, char **, int, int)
Definition popups.c:21
@ IC_MENU
Definition common.h:184
@ IC_VIEW
Definition common.h:184
@ IC_FORM
Definition common.h:184
@ IC_PICK
Definition common.h:184
char minitrc[MAXLEN]
int init_cnt
Definition mem.c:43
int mpick(int, char **, int, int, int, int, char *, int)
Pick * pick
Definition mem.c:46
#define OBJ_MAXCNT
Definition pick.h:17
volatile sig_atomic_t sig_received
Definition sig.c:31
size_t rtrim(char *)
Trims trailing spaces from string s in place.
Definition futil.c:102
bool handle_signal(sig_atomic_t)
int eargc
Definition futil.c:41
void win_Toggle_Attrs()
#define MAXWIN
Definition cm.h:468
int n_cols
#define KEY_ALTEND
Definition cm.h:403
int mbegx
#define KEY_ALTLEFT
Definition cm.h:406
void curskeys(WINDOW *)
#define KEY_ALTDOWN
Definition cm.h:407
void sig_shell_mode()
void get_rfc3339_s(char *, size_t)
bool f_have_shell_tioctl
Definition scriou.c:24
void init_stdscr()
#define KEY_ALTHOME
Definition cm.h:400
int dbgfd
colors_enum
Definition cm.h:122
@ CLR_FG
Definition cm.h:140
@ CLR_RED
Definition cm.h:124
@ CLR_YELLOW
Definition cm.h:126
@ CLR_BCYAN
Definition cm.h:137
@ CLR_WHITE
Definition cm.h:130
@ CLR_MAGENTA
Definition cm.h:128
@ CLR_BLACK
Definition cm.h:123
@ CLR_BWHITE
Definition cm.h:138
@ CLR_LN_BG
Definition cm.h:144
@ CLR_BO
Definition cm.h:142
@ CLR_BBLACK
Definition cm.h:131
@ CLR_BBLUE
Definition cm.h:135
@ CLR_LN
Definition cm.h:143
@ CLR_BGREEN
Definition cm.h:133
@ CLR_BYELLOW
Definition cm.h:134
@ CLR_BMAGENTA
Definition cm.h:136
@ CLR_BORANGE
Definition cm.h:139
@ CLR_BG
Definition cm.h:141
@ CLR_BRED
Definition cm.h:132
@ CLR_NCOLORS
Definition cm.h:145
@ CLR_BLUE
Definition cm.h:127
@ CLR_GREEN
Definition cm.h:125
@ CLR_CYAN
Definition cm.h:129
void mouse_getch(int *, int *, int *, int *)
int display_ok_message(char *)
int cp_title
#define KEY_ALTF0
Definition cm.h:345
int cp_default
#define MAXARGS
Definition cm.h:30
void destroy_win(WINDOW *)
int cols
bool f_curses_open
Definition sig.c:33
int enter_option()
#define CHYRON_KEYS
Definition cm.h:230
struct termios shell_tioctl curses_tioctl
Definition scriou.c:34
void dump_opts()
FTypes
Definition cm.h:156
@ FT_UNKNOWN
Definition cm.h:164
@ FT_SOCK
Definition cm.h:163
@ FT_DIR
Definition cm.h:159
@ FT_FIFO
Definition cm.h:160
@ FT_REG
Definition cm.h:162
@ FT_CHR
Definition cm.h:158
@ FT_BLK
Definition cm.h:157
@ FT_LNK
Definition cm.h:161
int mg_line
const wchar_t bw_tt
void write_log(char *)
unsigned char uchar
Definition cm.h:469
int cp_bold
char earg_str[MAXLEN]
Definition futil.c:40
bool verify_dir_q(char *, int)
String mk_string(size_t)
Create a String struct with a dynamically allocated string.
Definition futil.c:1396
bool construct_file_spec(char *, char *, char *, char *, char *, int)
int mcols
const wchar_t bw_cr
#define KEY_ALTPGDN
Definition cm.h:404
int mg_action
#define XTERM_256COLOR
Definition cm.h:347
const wchar_t bw_bt
#define KEY_ALTRIGHT
Definition cm.h:408
#define CHYRON_KEY_MAXLEN
Definition cm.h:227
bool verify_file_q(char *, int)
bool f_debug
int lines
#define KEY_ALTDEL
Definition cm.h:402
#define SCR_COLS
Definition cm.h:31
int cp_highlight
void dump_opts_by_use(char *, char *)
int open_log(char *)
int begx
int wait_timeout
Definition futil.c:98
int win_attr_even
char errmsg[]
Definition futil.c:84
#define KEY_ALTUP
Definition cm.h:405
LFFlags
Definition cm.h:148
@ LF_EXC_REGEX
Definition cm.h:151
@ LF_HIDE
Definition cm.h:149
@ LF_ICASE
Definition cm.h:150
@ LF_EXEC
Definition cm.h:153
@ LF_REGEX
Definition cm.h:152
int mlines
#define KEY_ALTPGUP
Definition cm.h:401
void destroy_box(WINDOW *)
bool f_restore_screen
#define COLOR_LEN
Definition cm.h:180
char * eargv[MAXARGS]
Definition futil.c:42
int win_attr_odd
int n_lines
int mg_col
bool f_have_curses_tioctl
Definition scriou.c:25
#define KEY_ALTF(n)
Definition cm.h:346
void w_mouse_getch(WINDOW *, int *, int *, int *, int *)
int mbegy
bool str_to_bool(const char *)
Converts String to boolean true or false.
Definition futil.c:649
#define __atexit
This macro registers the end_pgm function to be called when the program exits.
Definition cm.h:194
struct termios shell_out_tioctl curses_out_tioctl
Definition scriou.c:36
void user_end()
int display_curses_keys()
#define KEY_ALTINS
Definition cm.h:399
int begy
void display_argv_error_msg(char *, char **)
struct termios shell_in_tioctl curses_in_tioctl
Definition scriou.c:35
int cp_ln_bg
struct termios shell_err_tioctl curses_err_tioctl
Definition scriou.c:37
int clr_idx
@ MT_TEXT
Definition menu.h:22
@ MT_CHOICE
Definition menu.h:22
@ MT_NULL
Definition menu.h:22
Menu * menu
Definition mem.c:45
@ MA_RETURN
Definition menu.h:25
@ MA_DISPLAY_MENU
Definition menu.h:25
@ MA_RESET_MENU
Definition menu.h:25
@ MA_NEW
Definition menu.h:25
@ MA_CONTINUE
Definition menu.h:25
void free_menu_line(Line *)
#define MAX_MENU_LINES
Definition menu.h:19
@ CT_PICK
Definition menu.h:37
@ CT_FORM
Definition menu.h:33
@ CT_UNDEFINED
Definition menu.h:43
@ CT_MENU
Definition menu.h:36
@ CT_RETURN
Definition menu.h:40
@ CT_TOGGLE
Definition menu.h:41
@ CT_HELP
Definition menu.h:31
@ CT_WRITE_CONFIG
Definition menu.h:42
@ CT_FORM_WRITE
Definition menu.h:35
@ CT_EXEC
Definition menu.h:30
@ CT_VIEW
Definition menu.h:38
@ CT_NULL
Definition menu.h:29
@ CT_ABOUT
Definition menu.h:32
@ CT_FORM_EXEC
Definition menu.h:34
@ CT_CKEYS
Definition menu.h:39
#define NMARKS
Definition view.h:24
#define BUFSIZ
Definition view.h:29
int get_cmd_spec(View *, char *)
char err_msg[MAXLEN]
void go_to_position(View *, long)
PROMPT_TYPE
Definition view.h:32
@ PT_STRING
Definition view.h:32
@ PT_NONE
Definition view.h:32
@ PT_SHORT
Definition view.h:32
@ PT_LONG
Definition view.h:32
#define PAD_COLS
Definition view.h:30
View * view
Definition mem.c:48
#define TRUE
Definition iloan.c:19
int popup_ckeys()
Display Curses Keys Responds to curses keys and mouse events, displaying the key code and description...
Definition curskeys.c:23
#define KSTRLEN
Definition curskeys.c:14
#define MAXLEN
Definition curskeys.c:15
int cp_box
Definition dwin.c:138
unsigned int cmd_key
Definition dwin.c:117
WINDOW * win
Definition dwin.c:113
const wchar_t bw_rt
Definition dwin.c:102
const wchar_t bw_ho
Definition dwin.c:95
cchar_t CCC_LN
Definition dwin.c:151
int cp_win
Definition dwin.c:137
int clr_pair_cnt
Definition dwin.c:144
WINDOW * win_win[MAXWIN]
Definition dwin.c:114
bool waitpid_with_timeout(pid_t pid, int timeout)
Definition dwin.c:1431
bool action_disposition(char *title, char *action_str)
Definition dwin.c:1224
const wchar_t bw_tl
Definition dwin.c:97
char em1[MAXLEN]
Definition dwin.c:133
int tty_fd
Definition dwin.c:153
void display_chyron(WINDOW *win, Chyron *chyron, int line, int col)
Definition dwin.c:297
cchar_t CCC_WIN
Definition dwin.c:146
int clr_cnt
Definition dwin.c:142
const wchar_t bw_tr
Definition dwin.c:98
int clr_pair_idx
Definition dwin.c:143
int cp_ln
Definition dwin.c:141
const wchar_t bw_lt
Definition dwin.c:101
int click_x
Definition dwin.c:45
int src_line
Definition dwin.c:129
char * src_name
Definition dwin.c:130
cchar_t CCC_BOX
Definition dwin.c:148
const wchar_t bw_bl
Definition dwin.c:99
int win_ptr
Definition dwin.c:121
int exit_code
Definition dwin.c:116
int click_y
Definition dwin.c:44
char em0[MAXLEN]
Definition dwin.c:132
char em3[MAXLEN]
Definition dwin.c:135
int cp_reverse_highlight
Definition dwin.c:140
char const colors_text[][10]
Definition dwin.c:91
int rgb_clr_to_cube(int)
void set_chyron_key(Chyron *, int, char *, int)
Definition dwin.c:245
const wchar_t bw_ve
Definition dwin.c:96
cchar_t CCC_REVERSE
Definition dwin.c:149
cchar_t CCC_NORM
Definition dwin.c:145
int cp_reverse
Definition dwin.c:139
int win_attr
Definition dwin.c:119
WINDOW * win_box[MAXWIN]
Definition dwin.c:115
char fn[MAXLEN]
Definition dwin.c:131
char em2[MAXLEN]
Definition dwin.c:134
int cp_norm
Definition dwin.c:136
const wchar_t bw_br
Definition dwin.c:100
char ff_tbl[][26]
Definition fields.c:40
struct termios shell_tioctl
Definition scriou.c:22
bool open_curses(SIO *)
Initialize NCurses and color settings.
Definition dwin.c:423
int xwgetch(WINDOW *, Chyron *, int)
Wrapper for wgetch that handles signals, mouse events, checks for clicks on the chyron line,...
Definition dwin.c:1359
void restore_wins()
Restore all windows after a screen resize.
Definition dwin.c:938
int win_new(int, int, int, int, char *, int)
Create a new window with optional box and title.
Definition dwin.c:783
void win_init_attrs()
Initialize window attributes.
Definition dwin.c:162
WINDOW * win_del()
Delete the current window and its associated box window.
Definition dwin.c:902
void mvwaddstr_fill(WINDOW *, int, int, char *, int)
For lines shorter than their display area, fill the rest with spaces.
Definition dwin.c:1262
void cbox(WINDOW *)
Draw a box around the specified window.
Definition dwin.c:960
void win_resize(int, int, char *)
Resize the current window and its box, and update the title.
Definition dwin.c:851
void destroy_curses()
Gracefully shut down NCurses and restore terminal settings.
Definition dwin.c:738
void win_redraw(WINDOW *)
Redraw the specified window.
Definition dwin.c:891
bool is_set_chyron_key(Chyron *, int)
Check if function key label is set.
Definition dwin.c:217
Chyron * destroy_chyron(Chyron *chyron)
Destroy Chyron structure.
Definition dwin.c:198
int get_chyron_key(Chyron *, int)
Get keycode from chyron.
Definition dwin.c:369
void set_chyron_key_cp(Chyron *, int, char *, int, int)
Set chyron key.
Definition dwin.c:237
void compile_chyron(Chyron *)
construct the chyron string from the chyron structure
Definition dwin.c:268
void unset_chyron_key(Chyron *, int)
Unset chyron key.
Definition dwin.c:258
Chyron * new_chyron()
Create and initialize Chyron structure.
Definition dwin.c:183
RGB xterm256_idx_to_rgb(int)
Convert XTerm 256 color index to RGB color.
Definition dwin.c:590
int clr_name_to_idx(char *)
Get color index from color name.
Definition dwin.c:1282
int rgb_to_curses_clr(RGB *)
Get color index for RGB color.
Definition dwin.c:541
bool init_clr_palette(SIO *)
Initialize color palette based on SIO settings.
Definition dwin.c:651
void apply_gamma(RGB *)
Apply gamma correction to RGB color.
Definition dwin.c:624
int rgb_to_xterm256_idx(RGB *)
Convert RGB color to XTerm 256 color index.
Definition dwin.c:569
int get_clr_pair(int fg, int bg)
Get color pair index for foreground and background colors.
Definition dwin.c:510
bool wait_destroy(Chyron *)
Destroy the waiting message window and chyron.
Definition dwin.c:1203
int wait_continue(WINDOW *, Chyron *, int)
Update the waiting message with remaining time and check for user input.
Definition dwin.c:1215
int answer_yn(char *em0, char *em1, char *em2, char *em3)
Accept a single letter answer.
Definition dwin.c:994
WINDOW * wait_mk_win(Chyron *, char *)
Display a popup waiting message.
Definition dwin.c:1172
int Perror(char *)
Display a simple error message window or print to stderr.
Definition dwin.c:1110
int display_error(char *em0, char *em1, char *em2, char *em3)
Display an error message window or print to stderr.
Definition dwin.c:1054
void abend(int, char *)
Abnormal program termination.
Definition dwin.c:1331
Chyron * wait_mk_chyron()
Create a Chyron struct for the waiting message.
Definition dwin.c:1161
int fork_exec(char **)
Fork and exec a command.
Definition exec.c:128
int shell(char *)
Execute a shell command.
Definition exec.c:80
int full_screen_fork_exec(char **)
Execute a command in full screen mode.
Definition exec.c:44
int full_screen_shell(char *)
Execute a shell command in full screen mode.
Definition exec.c:60
int form_fmt_field(Form *, char *)
Format field according to its format type.
Definition fields.c:421
int field_editor(Form *)
Accept input for a field.
Definition fields.c:59
int form_display_field_n(Form *, int)
Display field n.
Definition fields.c:351
int form_display_field(Form *)
Display current field.
Definition fields.c:369
int form_desc_error(int, char *, char *)
Handle errors encountered while parsing the form description file, providing detailed error messages ...
int init_form(Init *, int, char **, int, int)
Initialize form data structure and parse description file.
Definition form_engine.c:59
int field_navigator(Form *)
Handle user input for field entry, allowing navigation between fields and looping until an exit actio...
bool locate_file_in_path(char *, char *)
Locates a file in the system PATH.
Definition futil.c:939
void destroy_argv(int argc, char **argv)
Deallocates memory allocated for argument strings in argv.
Definition futil.c:221
size_t canonicalize_file_spec(char *)
Removes quotes and trims at first space.
Definition futil.c:1216
size_t strnz__cpy(char *, const char *, size_t)
safer alternative to strncpy
Definition futil.c:269
bool trim_ext(char *, char *)
trims the file extension from "filename" and copies the result to "buf"
Definition futil.c:741
bool stripz_quotes(char *)
removes leading and trailing double quotes if present
Definition futil.c:469
size_t trim(char *)
Trims leading and trailing spaces from string s in place.
Definition futil.c:118
bool is_directory(const char *)
Checks if the given path is a directory.
Definition futil.c:1245
bool file_spec_path(char *, char *)
extracts the path component of a file specification
Definition futil.c:578
bool str_to_upper(char *)
Converts a string to uppercase.
Definition futil.c:247
bool dir_name(char *, char *)
Returns the directory name of a file specification.
Definition futil.c:801
double str_to_double(char *)
converts string to double
Definition futil.c:637
bool str_to_lower(char *)
Converts a string to lowercase.
Definition futil.c:233
bool lf_find(const char *, const char *, const char *, int, int)
Find files in a directory matching a regular expression.
Definition futil.c:977
bool strnfill(char *, char, int)
Fills string s with character c n.
Definition futil.c:440
size_t strnz(char *, size_t)
terminates string at New Line, Carriage Return, or max_len
Definition futil.c:340
size_t ssnprintf(char *, size_t, const char *,...)
ssnprintf was designed to be a safer alternative to snprintf.
Definition futil.c:147
bool strip_quotes(char *)
removes leading and trailing double quotes if present
Definition futil.c:454
bool is_valid_regex(const char *)
Checks if the given regular expression pattern is valid.
Definition futil.c:1256
char * strnz_dup(char *, size_t)
Allocates memory for and duplicates string s up to length l or until line feed or carriage return.
Definition futil.c:379
size_t strip_ansi(char *, char *)
Strips ANSI SGR escape sequences (ending in 'm') from string s to d.
Definition futil.c:537
bool mk_dir(char *dir)
If directory doesn't exist, make it.
Definition futil.c:1195
size_t strnz__cat(char *, const char *, size_t)
safer alternative to strncat
Definition futil.c:298
bool str_subc(char *, char *, char, char *, int)
Replaces "ReplaceChr" in "s" with "Withstr" in "d" won't copy more than "l" bytes to "d" Replaces all...
Definition futil.c:415
bool verify_file(char *, int)
Verifies that the file specified by "in_spec" exists and is accessible with the permissions specified...
Definition futil.c:892
char * rep_substring(const char *, const char *, const char *)
Replace all occurrences of "tgt_s" in "org_s" with "rep_s".
Definition futil.c:1292
size_t strnlf(char *, size_t)
terminates string with line feed
Definition futil.c:358
int a_toi(char *, bool *)
a safer alternative to atoi() for converting ASCII strings to integers.
Definition futil.c:505
bool file_spec_name(char *, char *)
extracts the file name component of a file specification
Definition futil.c:605
bool expand_tilde(char *, int)
Replace Leading Tilde With Home Directory.
Definition futil.c:684
bool verify_dir(char *, int)
Verifies that the directory specified by "spec" exists and is accessible with the permissions specifi...
Definition futil.c:841
bool chrep(char *, char, char)
Replaces all occurrences of old_chr in s with new_chr in place.
Definition futil.c:486
bool base_name(char *, char *)
Returns the base name of a file specification.
Definition futil.c:775
bool normalize_file_spec(char *)
replace backslashes with forward lashes
Definition futil.c:561
int str_to_args(char **, char *, int)
Converts a string into an array of argument strings.
Definition futil.c:167
bool trim_path(char *)
Trims trailing spaces and slashes from directory path in place.
Definition futil.c:713
size_t string_cpy(String *, const String *)
Copy src String to dest String, allocating additional memory for dest String if necessary.
Definition futil.c:1430
String to_string(const char *)
String functions provide a simple string library to facilitate string manipulation in C,...
Definition futil.c:1375
size_t string_ncpy(String *, const String *, size_t)
copies up to n characters from src String to dest String, allocating additional memory for dest Strin...
Definition futil.c:1487
size_t string_cat(String *, const String *)
Concatenates src String to dest String, allocating additional memory for dest String if necessary.
Definition futil.c:1447
String free_string(String)
Free the dynamically allocated String.
Definition futil.c:1415
size_t string_ncat(String *, const String *, size_t)
Concatenates up to n characters from src String to dest String, allocating additional memory for dest...
Definition futil.c:1466
int segmentation_fault()
Function to intentionally cause a segmentation fault for testing purposes.
Definition futil.c:1512
bool derive_file_spec(char *, char *, char *)
Derive full file specification from directory and file name.
Definition init.c:821
int write_config(Init *)
Write the current configuration to a file specified in init->minitrc.
Definition init.c:723
void mapp_initialization(Init *, int, char **)
Main initialization function for MAPP - Menu Application.
Definition init.c:324
void zero_opt_args(Init *)
Initialize optional arguments in the Init struct to default values.
Definition init.c:408
int init_view_full_screen(Init *)
Initialize C-Menu View in full screen mode.
Definition init_view.c:40
int init_view_boxwin(Init *, char *)
Initialize the C-Menu View in box window mode.
Definition init_view.c:123
int view_init_input(View *, char *)
Initialize the input for a C-Menu View.
Definition init_view.c:223
View * destroy_view(Init *init)
Destroy View structure.
Definition mem.c:346
Form * new_form(Init *, int, char **, int, int)
Create and initialize Form structure.
Definition mem.c:253
bool init_menu_files(Init *, int, char **)
Initialize Menu file specifications.
Definition mem.c:486
bool verify_spec_arg(char *, char *, char *, char *, int)
Verify file specification argument.
Definition mem.c:373
Init * new_init(int, char **)
Create and initialize Init structure.
Definition mem.c:70
Menu * new_menu(Init *, int, char **, int, int)
Create and initialize Menu structure.
Definition mem.c:148
Menu * destroy_menu(Init *init)
Destroy Menu structure.
Definition mem.c:169
Form * destroy_form(Init *init)
Destroy Form structure.
Definition mem.c:276
View * new_view(Init *)
Create and initialize View structure.
Definition mem.c:300
Pick * new_pick(Init *, int, char **, int, int)
Create and initialize Pick structure.
Definition mem.c:200
Init * destroy_init(Init *init)
Destroy Init structure.
Definition mem.c:105
Pick * destroy_pick(Init *init)
Destroy Pick structure.
Definition mem.c:230
unsigned int menu_engine(Init *)
The main loop of the menu system.
Definition menu_engine.c:37
unsigned int get_command_type(char *)
Get command type from command string.
unsigned int parse_menu_description(Init *)
Parse menu description file and create Menu.
void save_object(Pick *, char *)
Saves a string as an object in the pick structure.
void toggle_object(Pick *)
Toggles the selection state of the currently selected object in pick window.
int init_pick(Init *, int, char **, int, int)
Initializes pick structure and opens pick input file or pipe.
Definition pick_engine.c:59
int output_objects(Pick *)
Outputs selected objects to specified output file.
void reverse_object(Pick *)
Reverses the display of the currently selected object in pick window.
int pick_engine(Init *)
Initializes pick interface, calculates window size and position, and enters picker loop.
void display_page(Pick *)
Displays current page of objects in pick window.
int open_pick_win(Init *)
Initializes the pick window based on the parameters specified in the Pick structure.
bool capture_shell_tioctl()
capture_shell_tioctl() - capture shell terminal settings
Definition scriou.c:43
char di_getch()
sget single character from terminal in raw mode
Definition scriou.c:139
bool restore_curses_tioctl()
restore_curses_tioctl() - restore curses terminal settings
Definition scriou.c:81
bool capture_curses_tioctl()
capture_curses_tioctl() - capture curses terminal settings
Definition scriou.c:68
bool mk_raw_tioctl(struct termios *)
mk_raw_tioctl() - set terminal to raw mode
Definition scriou.c:126
bool set_sane_tioctl(struct termios *)
set_sane_tioctl() - set terminal to sane settings for C-MENU
Definition scriou.c:95
bool restore_shell_tioctl()
restore_shell_tioctl() - restore shell terminal settings
Definition scriou.c:56
void sig_dfl_mode()
Set signal handlers to default behavior.
Definition sig.c:42
void signal_handler(int)
Signal handler for interrupt signals.
Definition sig.c:95
void sig_prog_mode()
Set up signal handlers for interrupt signals.
Definition sig.c:62
int view_file(Init *)
Start view.
void cat_file(View *)
Concatenate File to Standard Output.
char title[MAXLEN]
Definition common.h:123
char mapp_data[MAXLEN]
Definition common.h:139
char minitrc[MAXLEN]
Definition common.h:164
bool f_out_spec
Definition common.h:161
char mapp_help[MAXLEN]
Definition common.h:140
int begx
Definition common.h:112
bool f_title
Definition common.h:156
char chyron_s[MAXLEN]
Definition common.h:122
SIO * sio
Definition common.h:108
int pick_cnt
Definition common.h:177
bool f_cmd_all
Definition common.h:155
Form * form
Definition common.h:174
char in_spec[MAXLEN]
Definition common.h:158
char cmd_all[MAXLEN]
Definition common.h:117
bool f_mapp_help
Definition common.h:147
bool f_mapp_msrc
Definition common.h:148
int argc
Definition common.h:124
char fill_char[2]
Definition common.h:137
bool f_cmd
Definition common.h:154
int prompt_type
Definition common.h:120
char about_fn[MAXLEN]
Definition common.h:165
char mapp_msrc[MAXLEN]
Definition common.h:141
int cols
Definition common.h:110
int menu_cnt
Definition common.h:173
int tab_stop
Definition common.h:171
bool f_mapp_home
Definition common.h:144
bool f_erase_remainder
Definition common.h:134
bool f_mapp_data
Definition common.h:145
bool f_mapp_desc
Definition common.h:151
char mapp_home[MAXLEN]
Definition common.h:138
bool f_mapp_user
Definition common.h:149
char prompt_str[MAXLEN]
Definition common.h:119
bool f_squeeze
Definition common.h:130
int begy
Definition common.h:111
char parent_cmd[MAXLEN]
Definition common.h:118
char mapp_spec[MAXLEN]
Definition common.h:166
char receiver_cmd[MAXLEN]
Definition common.h:115
bool f_multiple_cmd_args
Definition common.h:132
int select_max
Definition common.h:169
bool f_ln
Definition common.h:135
bool f_mapp_spec
Definition common.h:146
char provider_cmd[MAXLEN]
Definition common.h:114
char out_spec[MAXLEN]
Definition common.h:159
bool f_strip_ansi
Definition common.h:129
View * view
Definition common.h:178
Menu * menu
Definition common.h:172
bool f_at_end_remove
Definition common.h:128
int view_cnt
Definition common.h:179
char brackets[3]
Definition common.h:136
bool f_ignore_case
Definition common.h:127
char ** argv
Definition common.h:125
int lines
Definition common.h:109
char mapp_user[MAXLEN]
Definition common.h:142
char cmd[MAXLEN]
Definition common.h:116
int optind
Definition common.h:126
bool f_help_spec
Definition common.h:157
bool f_receiver_cmd
Definition common.h:153
bool f_provider_cmd
Definition common.h:152
int form_cnt
Definition common.h:175
char help_spec[MAXLEN]
Definition common.h:167
char editor[MAXLEN]
Definition common.h:162
Pick * pick
Definition common.h:176
bool f_in_spec
Definition common.h:160
char menuapp[MAXLEN]
Definition common.h:163
char text[CHYRON_KEY_MAXLEN]
Definition cm.h:233
int end_pos
Definition cm.h:236
int cp
Definition cm.h:237
int keycode
Definition cm.h:235
int l
Definition cm.h:244
cchar_t cmplx_buf[MAXLEN]
Definition cm.h:243
char s[MAXLEN]
Definition cm.h:242
ChyronKey * key[CHYRON_KEYS]
Definition cm.h:241
int r
Definition cm.h:266
int b
Definition cm.h:268
int g
Definition cm.h:267
int pair_id
Definition cm.h:305
int fg
Definition cm.h:303
int bg
Definition cm.h:304
char * s
Definition cm.h:570
size_t l
Definition cm.h:571
Arg ** v
Definition cm.h:577
size_t n
Definition cm.h:579
size_t l
Definition cm.h:586
char * s
Definition cm.h:585
size_t l
allocated length
Definition cm.h:595
wchar_t * s
Definition cm.h:594
size_t l
Definition cm.h:607
cchar_t * s
Definition cm.h:606
double green_gamma
Definition cm.h:628
char black[COLOR_LEN]
Definition cm.h:631
FILE * stdout_fp
Definition cm.h:658
char bg_clr_x[COLOR_LEN]
Definition cm.h:652
char fg_clr_x[COLOR_LEN]
Definition cm.h:651
int cp_reverse_highlight
Definition cm.h:673
double blue_gamma
Definition cm.h:629
int clr_idx
Definition cm.h:667
char bred[COLOR_LEN]
Definition cm.h:641
char yellow[COLOR_LEN]
Definition cm.h:634
int cp_ln_bg
Definition cm.h:679
int clr_cnt
Definition cm.h:665
int stdout_fd
Definition cm.h:662
char bo_clr_x[COLOR_LEN]
Definition cm.h:653
char abg[COLOR_LEN]
Definition cm.h:650
int stderr_fd
Definition cm.h:663
int cp_ln
Definition cm.h:678
int cp_box
Definition cm.h:674
FILE * stdin_fp
Definition cm.h:657
char bcyan[COLOR_LEN]
Definition cm.h:646
char borange[COLOR_LEN]
Definition cm.h:648
double red_gamma
Definition cm.h:627
char red[COLOR_LEN]
Definition cm.h:632
FILE * tty_fp
Definition cm.h:660
char magenta[COLOR_LEN]
Definition cm.h:636
char bgreen[COLOR_LEN]
Definition cm.h:642
int cp_bold
Definition cm.h:675
char ln_clr_x[COLOR_LEN]
Definition cm.h:654
char byellow[COLOR_LEN]
Definition cm.h:643
char bwhite[COLOR_LEN]
Definition cm.h:647
int cp_reverse
Definition cm.h:672
char ln_bg_clr_x[COLOR_LEN]
Definition cm.h:655
char cyan[COLOR_LEN]
Definition cm.h:637
int cp_default
Definition cm.h:669
FILE * stderr_fp
Definition cm.h:659
char tty_name[MAXLEN]
Definition cm.h:656
int cp_highlight
Definition cm.h:677
int cp_title
Definition cm.h:676
char orange[COLOR_LEN]
Definition cm.h:639
int clr_pair_cnt
Definition cm.h:666
char green[COLOR_LEN]
Definition cm.h:633
char white[COLOR_LEN]
Definition cm.h:638
char bg[COLOR_LEN]
Definition cm.h:649
char bblue[COLOR_LEN]
Definition cm.h:644
int tty_fd
Definition cm.h:664
int cp_norm
Definition cm.h:670
char bmagenta[COLOR_LEN]
Definition cm.h:645
char blue[COLOR_LEN]
Definition cm.h:635
int cp_win
Definition cm.h:671
int stdin_fd
Definition cm.h:661
double gray_gamma
Definition cm.h:630
char bblack[COLOR_LEN]
Definition cm.h:640
int clr_pair_idx
Definition cm.h:668
int len
Definition form.h:108
int col
Definition form.h:104
char str[SCR_COLS]
Definition form.h:106
int line
Definition form.h:102
int line
Definition form.h:115
char display_s[FIELD_MAXLEN]
Definition form.h:132
char accept_s[FIELD_MAXLEN]
Definition form.h:128
int ff
Definition form.h:121
int col
Definition form.h:117
char input_s[FIELD_MAXLEN]
Definition form.h:125
int len
Definition form.h:119
char filler_s[FIELD_MAXLEN]
Definition form.h:137
FILE * out_fp
Definition form.h:161
Text * text[FIELD_MAXCNT]
Definition form.h:331
bool f_in_pipe
Definition form.h:221
bool f_mapp_spec
Definition form.h:192
bool f_erase_remainder
Definition form.h:235
WINDOW * box
Definition form.h:156
Field * field[FIELD_MAXCNT]
Definition form.h:344
char receiver_cmd[MAXLEN]
Definition form.h:178
bool f_process
Definition form.h:245
int didx
Definition form.h:316
int begy
Definition form.h:151
char provider_cmd[MAXLEN]
Definition form.h:170
bool f_query
Definition form.h:247
int out_fd
Definition form.h:165
int cols
Definition form.h:150
int lines
Definition form.h:149
int fcnt
Definition form.h:309
int begx
Definition form.h:153
bool f_out_pipe
Definition form.h:226
int fidx
Definition form.h:301
bool f_provider_cmd
Definition form.h:255
bool f_calculate
Definition form.h:243
int bg_clr_idx
Definition form.h:147
char fill_char[2]
Definition form.h:290
bool help
Definition form.h:249
bool f_cmd
Definition form.h:270
bool f_help_spec
Definition form.h:231
FILE * in_fp
Definition form.h:159
char out_spec[MAXLEN]
Definition form.h:208
Chyron * chyron
Definition form.h:356
int bo_clr_idx
Definition form.h:148
bool f_receiver_cmd
Definition form.h:262
char in_spec[MAXLEN]
Definition form.h:201
char mapp_spec[FIELD_MAXLEN]
Definition form.h:167
char cmd[MAXLEN]
Definition form.h:185
char title[MAXLEN]
Definition form.h:157
char brackets[3]
Definition form.h:278
int dcnt
Definition form.h:323
int fg_clr_idx
Definition form.h:146
bool f_out_spec
Definition form.h:218
WINDOW * win
Definition form.h:155
bool f_in_spec
Definition form.h:215
int in_fd
Definition form.h:163
char help_spec[MAXLEN]
Definition form.h:194
char * choice_text
Definition menu.h:54
char * raw_text
Definition menu.h:51
char * command_str
Definition menu.h:70
unsigned int type
Definition menu.h:49
int letter_pos
Definition menu.h:60
unsigned int command_type
Definition menu.h:64
char choice_letter
Definition menu.h:57
char provider_cmd[MAXLEN]
Definition menu.h:126
int cols
Definition menu.h:92
char mapp_spec[MAXLEN]
Definition menu.h:115
int argc
Definition menu.h:109
Line * line[MAX_MENU_LINES]
Definition menu.h:194
bool f_help_spec
Definition menu.h:153
WINDOW * win
Definition menu.h:100
WINDOW * box
Definition menu.h:103
char cmd[MAXLEN]
Definition menu.h:141
bool f_provider_cmd
Definition menu.h:158
int bo_clr_idx
Definition menu.h:88
int fg_clr_idx
Definition menu.h:82
int begy
Definition menu.h:94
int text_max_len
Definition menu.h:181
bool f_mapp_spec
Definition menu.h:148
char receiver_cmd[MAXLEN]
Definition menu.h:134
int item_count
Definition menu.h:187
bool f_receiver_cmd
Definition menu.h:165
int choice_max_len
Definition menu.h:175
int bg_clr_idx
Definition menu.h:85
bool f_cmd
Definition menu.h:171
int line_idx
Definition menu.h:190
char help_spec[MAXLEN]
Definition menu.h:121
int lines
Definition menu.h:90
char ** argv
Definition menu.h:112
char title[MAXLEN]
Definition menu.h:106
int begx
Definition menu.h:97
int pg_line
Definition pick.h:72
bool f_mapp_spec
Definition pick.h:53
int tbl_lines
Definition pick.h:79
int select_idx
Definition pick.h:67
int tbl_pages
Definition pick.h:76
int tbl_cols
Definition pick.h:80
bool f_cmd
Definition pick.h:64
bool f_provider_cmd
Definition pick.h:62
int obj_idx
Definition pick.h:71
int obj_cnt
Definition pick.h:70
int pg_lines
Definition pick.h:73
int win_width
Definition pick.h:30
WINDOW * box
Definition pick.h:36
bool f_in_spec
Definition pick.h:54
int fg_clr_idx
Definition pick.h:26
char cmd[MAXLEN]
Definition pick.h:51
bool f_help_spec
Definition pick.h:58
FILE * in_fp
Definition pick.h:40
int tbl_col_width
Definition pick.h:82
int bg_clr_idx
Definition pick.h:27
bool f_out_spec
Definition pick.h:55
int argc
Definition pick.h:38
int tbl_page
Definition pick.h:77
int bo_clr_idx
Definition pick.h:28
bool f_multiple_cmd_args
Definition pick.h:59
int x
Definition pick.h:34
char mapp_spec[MAXLEN]
Definition pick.h:44
bool f_in_pipe
Definition pick.h:56
bool f_selected[OBJ_MAXCNT]
Definition pick.h:60
int out_fd
Definition pick.h:43
int select_cnt
Definition pick.h:68
char title[MAXLEN]
Definition pick.h:37
int win_lines
Definition pick.h:29
bool help
Definition pick.h:61
char help_spec[MAXLEN]
Definition pick.h:47
char in_buf[BUFSIZ]
Definition pick.h:65
int tbl_line
Definition pick.h:78
char chyron_s[MAXLEN]
Definition pick.h:48
int in_fd
Definition pick.h:42
bool f_out_pipe
Definition pick.h:57
char receiver_cmd[MAXLEN]
Definition pick.h:50
char ** argv
Definition pick.h:39
int pg_objs
Definition pick.h:74
int select_max
Definition pick.h:69
char in_spec[MAXLEN]
Definition pick.h:45
WINDOW * win
Definition pick.h:35
FILE * out_fp
Definition pick.h:41
int begx
Definition pick.h:32
char parent_cmd[MAXLEN]
Definition pick.h:52
Chyron * chyron
Definition pick.h:83
int begy
Definition pick.h:31
int tbl_col
Definition pick.h:81
int tab_idx
Definition pick.h:75
char ** object
Definition pick.h:66
bool f_receiver_cmd
Definition pick.h:63
char provider_cmd[MAXLEN]
Definition pick.h:49
char out_spec[MAXLEN]
Definition pick.h:46
int y
Definition pick.h:33
int bo_clr_idx
Definition view.h:40
char provider_cmd[MAXLEN]
Definition view.h:52
char in_spec[MAXLEN]
Definition view.h:119
char * lnbuf_curr_ptr
Definition view.h:149
char ln_bg_clr_x[COLOR_LEN]
Definition view.h:47
char fg_clr_x[COLOR_LEN]
Definition view.h:43
int cury
Definition view.h:100
int argc
Definition view.h:58
int optind
Definition view.h:60
char ** argv
Definition view.h:59
int smaxrow
Definition view.h:111
bool f_search_complete
Definition view.h:85
int next_cmd_char
Definition view.h:75
char * buf
Definition view.h:144
char * line_out_p
Definition view.h:96
int curx
Definition view.h:101
char * line_in_end_p
Definition view.h:98
int in_fd
Definition view.h:137
off_t srch_curr_pos
Definition view.h:133
bool f_in_spec
Definition view.h:122
WINDOW * pad
Definition view.h:99
off_t page_top_pos
Definition view.h:131
FILE * in_fp
Definition view.h:139
off_t file_pos
Definition view.h:129
off_t page_top_ln
Definition view.h:162
char prompt_str[MAXLEN]
Definition view.h:56
int smincol
Definition view.h:109
off_t prev_file_pos
Definition view.h:130
bool f_bod
Definition view.h:77
bool f_first_iter
Definition view.h:84
char line_in_s[PAD_COLS]
Definition view.h:92
int ln_clr_idx
Definition view.h:41
char help_spec[MAXLEN]
Definition view.h:121
bool f_redisplay_page
Definition view.h:82
char * file_spec_ptr
Definition view.h:125
WINDOW * win
Definition view.h:67
char * next_file_spec_ptr
Definition view.h:126
int stdout_fd
Definition view.h:142
bool f_is_pipe
Definition view.h:80
bool f_ignore_case
Definition view.h:61
char * lnbuf
Definition view.h:148
bool f_cmd_all
Definition view.h:90
bool f_help_spec
Definition view.h:124
char cmd[MAXLEN]
Definition view.h:54
off_t ln
Definition view.h:156
int first_match_x
Definition view.h:115
bool f_in_pipe
Definition view.h:136
char receiver_cmd[MAXLEN]
Definition view.h:53
char * buf_curr_ptr
Definition view.h:145
int smaxcol
Definition view.h:113
off_t * ln_tbl
Definition view.h:158
int cols
Definition view.h:49
bool f_full_screen
Definition view.h:86
int ln_win_cols
Definition view.h:154
bool f_ln
Definition view.h:155
bool f_strip_ansi
Definition view.h:64
bool f_eod
Definition view.h:78
off_t mark_tbl[NMARKS]
Definition view.h:135
char ln_s[10]
Definition view.h:157
bool f_cmd
Definition view.h:89
WINDOW * ln_win
Definition view.h:152
int lines
Definition view.h:48
bool f_forward
Definition view.h:79
int fg_clr_idx
Definition view.h:38
int last_match_x
Definition view.h:117
int pminrow
Definition view.h:105
off_t ln_max_pos
Definition view.h:161
char stripped_line_out[PAD_COLS]
Definition view.h:94
int ln_bg_clr_idx
Definition view.h:42
off_t srch_beg_pos
Definition view.h:134
off_t ln_tbl_cnt
Definition view.h:160
bool f_at_end_remove
Definition view.h:62
char * tmp_file_name_ptr
Definition view.h:127
int pmincol
Definition view.h:106
char bo_clr_x[COLOR_LEN]
Definition view.h:45
off_t file_size
Definition view.h:128
char bg_clr_x[COLOR_LEN]
Definition view.h:44
bool f_squeeze
Definition view.h:63
char tmp_prompt_str[MAXLEN]
Definition view.h:69
char cur_file_str[MAXLEN]
Definition view.h:91
char * buf_end_ptr
Definition view.h:146
char line_out_s[PAD_COLS]
Definition view.h:93
int sminrow
Definition view.h:107
cchar_t cmplx_buf[PAD_COLS]
Definition view.h:95
int bg_clr_idx
Definition view.h:39
FILE * stdin_fp
Definition view.h:141
int cmd_line
Definition view.h:103
char out_spec[MAXLEN]
Definition view.h:120
bool f_timer
Definition view.h:87
int tab_stop
Definition view.h:74
off_t page_bot_ln
Definition view.h:163
char title[MAXLEN]
Definition view.h:57
char cmd_all[MAXLEN]
Definition view.h:55
off_t page_bot_pos
Definition view.h:132
bool f_displaying_help
Definition view.h:83
int begy
Definition view.h:50
int maxcol
Definition view.h:104
int curr_argc
Definition view.h:71
int out_fd
Definition view.h:138
char * lnbuf_end_ptr
Definition view.h:150
FILE * stdout_fp
Definition view.h:143
char ln_clr_x[COLOR_LEN]
Definition view.h:46
WINDOW * box
Definition view.h:68
int scroll_lines
Definition view.h:102
int ln_win_lines
Definition view.h:153
bool f_out_spec
Definition view.h:123
char file_name[MAXLEN]
Definition view.h:81
int stdin_fd
Definition view.h:140
int begx
Definition view.h:51
off_t ln_tbl_size
Definition view.h:159
char * line_in_beg_p
Definition view.h:97
bool f_multiple_cmd_args
Definition view.h:65
char cmd_arg[MAXLEN]
Definition view.h:73