1 /* $NetBSD: msg.h,v 1.2 2013/11/22 15:52:05 christos Exp $ */
3 * Copyright (c) 1993, 1994
4 * The Regents of the University of California. All rights reserved.
5 * Copyright (c) 1993, 1994, 1995, 1996
6 * Keith Bostic. All rights reserved.
8 * See the LICENSE file for redistribution information.
10 * Id: msg.h,v 10.11 2000/04/21 21:26:19 skimo Exp (Berkeley) Date: 2000/04/21 21:26:19
14 * Common messages (continuation or confirmation).
17 CMSG_CONF
, CMSG_CONT
, CMSG_CONT_EX
,
18 CMSG_CONT_R
, CMSG_CONT_S
, CMSG_CONT_Q
} cmsg_t
;
24 * In historical vi, O_VERBOSE didn't exist, and O_TERSE made the error
25 * messages shorter. In this implementation, O_TERSE has no effect and
26 * O_VERBOSE results in informational displays about common errors, for
29 * M_NONE Display to the user, no reformatting, no nothing.
31 * M_BERR Error: M_ERR if O_VERBOSE, else bell.
32 * M_ERR Error: Display in inverse video.
33 * M_INFO Info: Display in normal video.
34 * M_SYSERR Error: M_ERR, using strerror(3) message.
35 * M_VINFO Info: M_INFO if O_VERBOSE, else ignore.
37 * The underlying message display routines only need to know about M_NONE,
38 * M_ERR and M_INFO -- all the other message types are converted into one
39 * of them by the message routines.
42 M_NONE
= 1, M_BERR
, M_ERR
, M_INFO
, M_SYSERR
, M_VINFO
, M_DBERR
} mtype_t
;
45 * There are major problems with error messages being generated by routines
46 * preparing the screen to display error messages. It's possible for the
47 * editor to generate messages before we have a screen in which to display
48 * them, or during the transition between ex (and vi startup) and a true vi.
49 * There's a queue in the global area to hold them.
51 * If SC_EX/SC_VI is set, that's the mode that the editor is in. If the flag
52 * S_SCREEN_READY is set, that means that the screen is prepared to display
55 typedef struct _msgh MSGH
; /* MSGS list head structure. */
56 LIST_HEAD(_msgh
, _msg
);
58 LIST_ENTRY(_msg
) q
; /* Linked list of messages. */
59 mtype_t mtype
; /* Message type: M_NONE, M_ERR, M_INFO. */
60 char *buf
; /* Message buffer. */
61 size_t len
; /* Message length. */
64 /* Flags to msgq_status(). */
65 #define MSTAT_SHOWLAST 0x01 /* Show the line number of the last line. */
66 #define MSTAT_TRUNCATE 0x02 /* Truncate the file name if it's too long. */