bookloupe/bookloupe.h
author ali <ali@juiblex.co.uk>
Sat Sep 21 23:47:52 2013 +0100 (2013-09-21)
changeset 101 7afb1e598abd
child 103 adc06e9e8470
permissions -rw-r--r--
Update documentation for 2.0.51
ali@94
     1
#ifndef BOOKLOUPE_H
ali@94
     2
#define BOOKLOUPE_H
ali@94
     3
ali@94
     4
/* special characters */
ali@94
     5
#define CHAR_SPACE	  32
ali@94
     6
#define CHAR_TAB	   9
ali@94
     7
#define CHAR_LF		  10
ali@94
     8
#define CHAR_CR		  13
ali@94
     9
#define CHAR_DQUOTE	  34
ali@94
    10
#define CHAR_SQUOTE	  39
ali@94
    11
#define CHAR_OPEN_SQUOTE  96
ali@94
    12
#define CHAR_TILDE	 126
ali@94
    13
#define CHAR_ASTERISK	  42
ali@94
    14
#define CHAR_FORESLASH	  47
ali@94
    15
#define CHAR_CARAT	  94
ali@94
    16
ali@94
    17
#define CHAR_UNDERSCORE    '_'
ali@94
    18
#define CHAR_OPEN_CBRACK   '{'
ali@94
    19
#define CHAR_CLOSE_CBRACK  '}'
ali@94
    20
#define CHAR_OPEN_RBRACK   '('
ali@94
    21
#define CHAR_CLOSE_RBRACK  ')'
ali@94
    22
#define CHAR_OPEN_SBRACK   '['
ali@94
    23
#define CHAR_CLOSE_SBRACK  ']'
ali@94
    24
ali@94
    25
#define CHAR_LS_QUOTE	  0x2018
ali@94
    26
#define CHAR_RS_QUOTE	  0x2019
ali@94
    27
ali@94
    28
#define CHAR_IS_SQUOTE(c)	((c)==CHAR_SQUOTE || (c)==CHAR_OPEN_SQUOTE || \
ali@94
    29
				 (c)==CHAR_LS_QUOTE || (c)==CHAR_RS_QUOTE)
ali@94
    30
ali@94
    31
#define CHAR_IS_APOSTROPHE(c)	((c)==CHAR_SQUOTE || (c)==CHAR_RS_QUOTE)
ali@94
    32
ali@94
    33
#define CHAR_IS_CLOSING_QUOTE(c) \
ali@94
    34
    ((c)==CHAR_DQUOTE || (c)==CHAR_SQUOTE || (c)==CHAR_RS_QUOTE)
ali@94
    35
ali@94
    36
/* longest and shortest normal PG line lengths */
ali@94
    37
#define LONGEST_PG_LINE   75
ali@94
    38
#define WAY_TOO_LONG      80
ali@94
    39
#define SHORTEST_PG_LINE  55
ali@94
    40
ali@94
    41
enum {
ali@94
    42
    ECHO_SWITCH,
ali@94
    43
    SQUOTE_SWITCH,
ali@94
    44
    TYPO_SWITCH,
ali@94
    45
    QPARA_SWITCH,
ali@94
    46
    PARANOID_SWITCH,
ali@94
    47
    LINE_END_SWITCH,
ali@94
    48
    OVERVIEW_SWITCH,
ali@94
    49
    STDOUT_SWITCH,
ali@94
    50
    HEADER_SWITCH,
ali@94
    51
    WEB_SWITCH,
ali@94
    52
    VERBOSE_SWITCH,
ali@94
    53
    MARKUP_SWITCH,
ali@94
    54
    USERTYPO_SWITCH,
ali@94
    55
    DP_SWITCH,
ali@94
    56
    SWITNO
ali@94
    57
};
ali@94
    58
ali@94
    59
struct first_pass_results {
ali@94
    60
    long firstline,astline;
ali@94
    61
    long footerline,totlen,binlen,alphalen,endquote_count,shortline,dotcomma;
ali@94
    62
    long fslashline,hyphens,longline,verylongline,htmcount,standalone_digit;
ali@94
    63
    long spacedash,emdash,space_emdash,non_PG_space_emdash,PG_space_emdash;
ali@94
    64
    int Dutchcount,Frenchcount;
ali@94
    65
};
ali@94
    66
ali@94
    67
struct warnings {
ali@94
    68
    int shortline,longline,bin,dash,dotcomma,ast,fslash,digit,hyphen;
ali@94
    69
    int endquote;
ali@94
    70
    gboolean isDutch,isFrench;
ali@94
    71
};
ali@94
    72
ali@94
    73
struct line_properties {
ali@94
    74
    unsigned int len,blen;
ali@94
    75
    gunichar start;
ali@94
    76
};
ali@94
    77
ali@94
    78
struct parities {
ali@94
    79
    int dquote,squote;
ali@94
    80
};
ali@94
    81
ali@94
    82
struct pending {
ali@94
    83
    char *dquote,*squote,*rbrack,*sbrack,*cbrack,*unders;
ali@94
    84
    long squot;
ali@94
    85
};
ali@94
    86
ali@94
    87
#endif /* BOOKOUPE_H */