[BACK]Return to literals.c CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Annotation of mandoc/literals.c, Revision 1.1

1.1     ! kristaps    1: /* $Id: mlg.c,v 1.19 2008/12/07 21:30:49 kristaps Exp $ */
        !             2: /*
        !             3:  * Copyright (c) 2008 Kristaps Dzonsons <kristaps@kth.se>
        !             4:  *
        !             5:  * Permission to use, copy, modify, and distribute this software for any
        !             6:  * purpose with or without fee is hereby granted, provided that the
        !             7:  * above copyright notice and this permission notice appear in all
        !             8:  * copies.
        !             9:  *
        !            10:  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
        !            11:  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
        !            12:  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
        !            13:  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
        !            14:  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
        !            15:  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
        !            16:  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
        !            17:  * PERFORMANCE OF THIS SOFTWARE.
        !            18:  */
        !            19: #include <assert.h>
        !            20: #include <string.h>
        !            21: #include <stdlib.h>
        !            22:
        !            23: #include "libmdocml.h"
        !            24: #include "private.h"
        !            25: #include "ml.h"
        !            26:
        !            27:
        !            28: char *
        !            29: ml_literal(int tok, const int *argc,
        !            30:                const char **argv, const char **morep)
        !            31: {
        !            32:
        !            33:        switch (tok) {
        !            34:        case (ROFF_Ex):
        !            35:                return ("The %s utility exits 0 on success, and "
        !            36:                                "&gt;0 if an error occurs.");
        !            37:        case (ROFF_Rv):
        !            38:                return ("The %s() function returns the value 0 if "
        !            39:                                "successful; otherwise the value -1 "
        !            40:                                "is returned and the global variable "
        !            41:                                "<span class=\"inline-Va\">errno</span> "
        !            42:                                "is set to indicate the error.");
        !            43:        case (ROFF_In):
        !            44:                return("#include &lt;%s&gt;");
        !            45:        case (ROFF_At):
        !            46:                /* FIXME: this should be in roff.c. */
        !            47:                assert(NULL == *argv);
        !            48:                assert(ROFF_ARGMAX == *argc);
        !            49:                if (NULL == *morep)
        !            50:                        return("AT&amp;T UNIX");
        !            51:                if (0 == strcmp(*morep, "v6"))
        !            52:                        return("Version 6 AT&amp;T UNIX");
        !            53:                else if (0 == strcmp(*morep, "v7"))
        !            54:                        return("Version 7 AT&amp;T UNIX");
        !            55:                else if (0 == strcmp(*morep, "32v"))
        !            56:                        return("Version 32v AT&amp;T UNIX");
        !            57:                else if (0 == strcmp(*morep, "V.1"))
        !            58:                        return("AT&amp;T System V.1 UNIX");
        !            59:                else if (0 == strcmp(*morep, "V.4"))
        !            60:                        return("AT&amp;T System V.4 UNIX");
        !            61:                abort();
        !            62:                /* NOTREACHED */
        !            63:        case (ROFF_St):
        !            64:                assert(ROFF_ARGMAX != *argc);
        !            65:                assert(NULL == *argv);
        !            66:                switch (*argc) {
        !            67:                case(ROFF_p1003_1_88):
        !            68:                        return("IEEE Std 1003.1-1988 "
        !            69:                                        "(&#8220;POSIX&#8221;)");
        !            70:                case(ROFF_p1003_1_90):
        !            71:                        return("IEEE Std 1003.1-1990 "
        !            72:                                        "(&#8220;POSIX&#8221;)");
        !            73:                case(ROFF_p1003_1_96):
        !            74:                        return("ISO/IEC 9945-1:1996 "
        !            75:                                        "(&#8220;POSIX&#8221;)");
        !            76:                case(ROFF_p1003_1_2001):
        !            77:                        return("IEEE Std 1003.1-2001 "
        !            78:                                        "(&#8220;POSIX&#8221;)");
        !            79:                case(ROFF_p1003_1_2004):
        !            80:                        return("IEEE Std 1003.1-2004 "
        !            81:                                        "(&#8220;POSIX&#8221;)");
        !            82:                case(ROFF_p1003_1):
        !            83:                        return("IEEE Std 1003.1 "
        !            84:                                        "(&#8220;POSIX&#8221;)");
        !            85:                case(ROFF_p1003_1b):
        !            86:                        return("IEEE Std 1003.1b "
        !            87:                                        "(&#8220;POSIX&#8221;)");
        !            88:                case(ROFF_p1003_1b_93):
        !            89:                        return("IEEE Std 1003.1b-1993 "
        !            90:                                        "(&#8220;POSIX&#8221;)");
        !            91:                case(ROFF_p1003_1c_95):
        !            92:                        return("IEEE Std 1003.1c-1995 "
        !            93:                                        "(&#8220;POSIX&#8221;)");
        !            94:                case(ROFF_p1003_1g_2000):
        !            95:                        return("IEEE Std 1003.1g-2000 "
        !            96:                                        "(&#8220;POSIX&#8221;)");
        !            97:                case(ROFF_p1003_2_92):
        !            98:                        return("IEEE Std 1003.2-1992 "
        !            99:                                        "(&#8220;POSIX.2&#8221;)");
        !           100:                case(ROFF_p1387_2_95):
        !           101:                        return("IEEE Std 1387.2-1995 "
        !           102:                                        "(&#8220;POSIX.7.2&#8221;)");
        !           103:                case(ROFF_p1003_2):
        !           104:                        return("IEEE Std 1003.2 "
        !           105:                                        "(&#8220;POSIX.2&#8221;)");
        !           106:                case(ROFF_p1387_2):
        !           107:                        return("IEEE Std 1387.2 "
        !           108:                                        "(&#8220;POSIX.7.2&#8221;)");
        !           109:                case(ROFF_isoC_90):
        !           110:                        return("ISO/IEC 9899:1990 "
        !           111:                                        "(&#8220;ISO C90&#8221;)");
        !           112:                case(ROFF_isoC_amd1):
        !           113:                        return("ISO/IEC 9899/AMD1:1995 "
        !           114:                                        "(&#8220;ISO C90&#8221;)");
        !           115:                case(ROFF_isoC_tcor1):
        !           116:                        return("ISO/IEC 9899/TCOR1:1994 "
        !           117:                                        "(&#8220;ISO C90&#8221;)");
        !           118:                case(ROFF_isoC_tcor2):
        !           119:                        return("ISO/IEC 9899/TCOR2:1995 "
        !           120:                                        "(&#8220;ISO C90&#8221;)");
        !           121:                case(ROFF_isoC_99):
        !           122:                        return("ISO/IEC 9899:1999 "
        !           123:                                        "(&#8220;ISO C99&#8221;)");
        !           124:                case(ROFF_ansiC):
        !           125:                        return("ANSI X3.159-1989 "
        !           126:                                        "(&#8220;ANSI C&#8221;)");
        !           127:                case(ROFF_ansiC_89):
        !           128:                        return("ANSI X3.159-1989 "
        !           129:                                        "(&#8220;ANSI C&#8221;)");
        !           130:                case(ROFF_ansiC_99):
        !           131:                        return("ANSI/ISO/IEC 9899-1999 "
        !           132:                                        "(&#8220;ANSI C99&#8221;)");
        !           133:                case(ROFF_ieee754):
        !           134:                        return("IEEE Std 754-1985");
        !           135:                case(ROFF_iso8802_3):
        !           136:                        return("ISO 8802-3: 1989");
        !           137:                case(ROFF_xpg3):
        !           138:                        return("X/Open Portability Guide Issue 3 "
        !           139:                                        "(&#8220;XPG3&#8221;)");
        !           140:                case(ROFF_xpg4):
        !           141:                        return("X/Open Portability Guide Issue 4 "
        !           142:                                        "(&#8220;XPG4&#8221;)");
        !           143:                case(ROFF_xpg4_2):
        !           144:                        return("X/Open Portability Guide Issue 4.2 "
        !           145:                                        "(&#8220;XPG4.2&#8221;)");
        !           146:                case(ROFF_xpg4_3):
        !           147:                        return("X/Open Portability Guide Issue 4.3 "
        !           148:                                        "(&#8220;XPG4.3&#8221;)");
        !           149:                case(ROFF_xbd5):
        !           150:                        return("X/Open System Interface Definitions "
        !           151:                                        "Issue 5 (&#8220;XBD5&#8221;)");
        !           152:                case(ROFF_xcu5):
        !           153:                        return("X/Open Commands and Utilities Issue 5 "
        !           154:                                        "(&#8220;XCU5&#8221;)");
        !           155:                case(ROFF_xsh5):
        !           156:                        return("X/Open System Interfaces and Headers "
        !           157:                                        "Issue 5 (&#8220;XSH5&#8221;)");
        !           158:                case(ROFF_xns5):
        !           159:                        return("X/Open Networking Services Issue 5 "
        !           160:                                        "(&#8220;XNS5&#8221;)");
        !           161:                case(ROFF_xns5_2d2_0):
        !           162:                        return("X/Open Networking Services "
        !           163:                                        "Issue 5.2 Draft 2.0 "
        !           164:                                        "(&#8220;XNS5.2D2.0&#8221;)");
        !           165:                case(ROFF_xcurses4_2):
        !           166:                        return("X/Open Curses Issue 4 Version 2 "
        !           167:                                        "(&#8220;XCURSES4.2&#8221;)");
        !           168:                case(ROFF_susv2):
        !           169:                        return("Version 2 of the Single "
        !           170:                                        "UNIX Specification");
        !           171:                case(ROFF_susv3):
        !           172:                        return("Version 3 of the Single "
        !           173:                                        "UNIX Specification");
        !           174:                case(ROFF_svid4):
        !           175:                        return("System V Interface Definition, Fourth "
        !           176:                                        "Edition (&#8220;SVID4&#8221;)");
        !           177:                default:
        !           178:                        break;
        !           179:                }
        !           180:                abort();
        !           181:                /* NOTREACHED */
        !           182:        case (ROFF_Bt):
        !           183:                return("is currently in beta test.");
        !           184:        case (ROFF_Ud):
        !           185:                return("currently under development.");
        !           186:        case (ROFF_Fx):
        !           187:                return("FreeBSD");
        !           188:        case (ROFF_Nx):
        !           189:                return("NetBSD");
        !           190:        case (ROFF_Ox):
        !           191:                return("OpenBSD");
        !           192:        case (ROFF_Ux):
        !           193:                return("UNIX");
        !           194:        case (ROFF_Bx):
        !           195:                return("BSD");
        !           196:        case (ROFF_Bsx):
        !           197:                return("BSDI BSD/OS");
        !           198:        default:
        !           199:                break;
        !           200:        }
        !           201:        abort();
        !           202:        /* NOTREACHED */
        !           203: }
        !           204:

CVSweb