{
    "content": [
        {
            "type": "text",
            "text": "# XMESSAGE (man)\n\n## NAME\n\nxmessage - display a message or query in a window (X-based /bin/echo)\n\n## SYNOPSIS\n\nxmessage [ -buttons label1[:value1],label2[:value2], ...  ] [ options ] -file filename\nxmessage [ -buttons label1[:value1],label2[:value2], ...  ] [ options ] message ...\n\n## DESCRIPTION\n\nThe xmessage program displays a window containing a message from the command line, a file, or\nstandard input.  Along the lower edge of the message is row of  buttons;  clicking  the  left\nmouse  button  on any of these buttons will cause xmessage to exit.  Which button was pressed\nis returned in the exit status and, optionally, by writing the label of the button  to  stan‐\ndard output.\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **OPTIONS** (7 subsections)\n- **WIDGET HIERARCHY**\n- **RESOURCES** (3 subsections)\n- **ACTIONS** (1 subsections)\n- **EXIT STATUS**\n- **SEE ALSO**\n- **AUTHORS**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "XMESSAGE",
        "section": "",
        "mode": "man",
        "summary": "xmessage - display a message or query in a window (X-based /bin/echo)",
        "synopsis": "xmessage [ -buttons label1[:value1],label2[:value2], ...  ] [ options ] -file filename\nxmessage [ -buttons label1[:value1],label2[:value2], ...  ] [ options ] message ...",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "This option will cause xmessage to create one button for each comma-separated button argument. The corresponding resource is buttons. Each button consists of a label optionally followed by a colon and an exit value. The label is the name of the Com‐ mand button widget created and will be the default text displayed to the user. Since this is the name of the widget it may be used to change any of the resources associ‐ ated with that button. The exit value will be returned by xmessage if that button is selected. The default exit value is 100 plus the button number. Buttons are num‐ bered from the left starting with one. The default string if no -buttons option is given is okay:0."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "Defines the button with a matching label to be the default. If not specified there is no default. The corresponding resource is defaultButton. Pressing Return any‐ where in the xmessage window will activate the default button. The default button has a wider border than the others."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "File to display. The corresponding resource is file. A filename of `-' reads from standard input. If this option is not supplied, xmessage will display all non-option arguments in the style of echo. Either -file or a message on the command line should be provided, but not both."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "put. Equivalent to setting the printValue resource to TRUE. This is one way to get feedback as to which button was pressed."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "source to TRUE."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "Pop up the window near the mouse cursor. Equivalent to setting the nearMouse re‐ source to TRUE."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "Exit with status 0 after secs seconds if the user has not clicked on a button yet. The corresponding resource is timeout."
            }
        ],
        "examples": [],
        "see_also": [
            {
                "name": "X",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/X/7/json"
            },
            {
                "name": "echo",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/echo/1/json"
            },
            {
                "name": "cat",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/cat/1/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 12,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 3,
                "subsections": [
                    {
                        "name": "-buttons",
                        "lines": 10
                    },
                    {
                        "name": "-default",
                        "lines": 5
                    },
                    {
                        "name": "-file",
                        "lines": 5
                    },
                    {
                        "name": "-print",
                        "lines": 3
                    },
                    {
                        "name": "-center",
                        "lines": 2
                    },
                    {
                        "name": "-nearmouse",
                        "lines": 3
                    },
                    {
                        "name": "-timeout",
                        "lines": 3
                    }
                ]
            },
            {
                "name": "WIDGET HIERARCHY",
                "lines": 12,
                "subsections": []
            },
            {
                "name": "RESOURCES",
                "lines": 7,
                "subsections": [
                    {
                        "name": "defaultButton",
                        "lines": 2
                    },
                    {
                        "name": "printValue",
                        "lines": 6
                    },
                    {
                        "name": "nearMouse",
                        "lines": 16
                    }
                ]
            },
            {
                "name": "ACTIONS",
                "lines": 4,
                "subsections": [
                    {
                        "name": "default-exit()",
                        "lines": 3
                    }
                ]
            },
            {
                "name": "EXIT STATUS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "AUTHORS",
                "lines": 6,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "xmessage - display a message or query in a window (X-based /bin/echo)\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "xmessage [ -buttons label1[:value1],label2[:value2], ...  ] [ options ] -file filename\nxmessage [ -buttons label1[:value1],label2[:value2], ...  ] [ options ] message ...\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "The xmessage program displays a window containing a message from the command line, a file, or\nstandard input.  Along the lower edge of the message is row of  buttons;  clicking  the  left\nmouse  button  on any of these buttons will cause xmessage to exit.  Which button was pressed\nis returned in the exit status and, optionally, by writing the label of the button  to  stan‐\ndard output.\n\nThe  program  is typically used by shell scripts to display information to the user or to ask\nthe user to make a choice.\n\nUnless a size is specified, xmessage sizes itself to fit the message, up to a  maximum  size.\nIf the message is too big for the window, xmessage will display scroll bars.\n",
                "subsections": []
            },
            "OPTIONS": {
                "content": "These  are  the  command  line options that xmessage understands, in addition to the standard\nones listed in X(7).\n",
                "subsections": [
                    {
                        "name": "-buttons",
                        "content": "This option will cause xmessage to create one button for each comma-separated  button\nargument.   The  corresponding  resource is buttons.  Each button consists of a label\noptionally followed by a colon and an exit value.  The label is the name of the  Com‐\nmand button widget created and will be the default text displayed to the user.  Since\nthis is the name of the widget it may be used to change any of the resources  associ‐\nated with that button.  The exit value will be returned by xmessage if that button is\nselected.  The default exit value is 100 plus the button number.   Buttons  are  num‐\nbered  from  the left starting with one.  The default string if no -buttons option is\ngiven is okay:0.\n"
                    },
                    {
                        "name": "-default",
                        "content": "Defines the button with a matching label to be the default.  If not  specified  there\nis  no  default.   The corresponding resource is defaultButton.  Pressing Return any‐\nwhere in the xmessage window will activate the default button.   The  default  button\nhas a wider border than the others.\n"
                    },
                    {
                        "name": "-file",
                        "content": "File  to  display.  The corresponding resource is file.  A filename of `-' reads from\nstandard input.  If this option is not supplied, xmessage will display all non-option\narguments in the style of echo.  Either -file or a message on the command line should\nbe provided, but not both.\n"
                    },
                    {
                        "name": "-print",
                        "content": "put.   Equivalent to setting the printValue resource to TRUE.  This is one way to get\nfeedback as to which button was pressed.\n"
                    },
                    {
                        "name": "-center",
                        "content": "source to TRUE.\n"
                    },
                    {
                        "name": "-nearmouse",
                        "content": "Pop  up  the  window  near the mouse cursor.  Equivalent to setting the nearMouse re‐\nsource to TRUE.\n"
                    },
                    {
                        "name": "-timeout",
                        "content": "Exit with status 0 after secs seconds if the user has not clicked on  a  button  yet.\nThe corresponding resource is timeout.\n"
                    }
                ]
            },
            "WIDGET HIERARCHY": {
                "content": "Knowing  the  name and position in the hierarchy of each widget is useful when specifying re‐\nsources for them.  In the following chart, the class and name of each widget is given.\n\nXmessage (xmessage)\nForm form\nText message\nCommand (label1)\nCommand (label2)\n.\n.\n.\n",
                "subsections": []
            },
            "RESOURCES": {
                "content": "The program has a few top-level application resources that allow customizations that are spe‐\ncific to xmessage.\n\nfile    A String specifying the file to display.\n\nbuttons A String specifying the buttons to display.  See the -buttons command-line option.\n",
                "subsections": [
                    {
                        "name": "defaultButton",
                        "content": "A String specifying a default button by label.\n"
                    },
                    {
                        "name": "printValue",
                        "content": "A  Boolean  value specifying whether the label of the button pressed to exit the pro‐\ngram is written to standard output.  The default is FALSE.\n\ncenter  A Boolean value specifying whether to pop up the window at the center of the  screen.\nThe default is FALSE.\n"
                    },
                    {
                        "name": "nearMouse",
                        "content": "A  Boolean  value specifying whether to pop up the window near the mouse cursor.  The\ndefault is FALSE.\n\ntimeout The number of seconds after which to exit with status 0.  The  default  is  0,  which\nmeans never time out.\n\nmaxHeight (class Maximum)\nThe  maximum  height  of  the  text part of the window in pixels, used if no size was\nspecified in the geometry.  The default is 0, which means use 70% of  the  height  of\nthe screen.\n\nmaxWidth (class Maximum)\nThe maximum width of the text part of the window in pixels, used if no size was spec‐\nified in the geometry.  The default is 0, which means use 70% of  the  width  of  the\nscreen.\n"
                    }
                ]
            },
            "ACTIONS": {
                "content": "exit(value)\nexit  immediately  with an exit status of value (default 0).  This action can be used\nwith translations to provide alternate ways of exiting xmessage.\n",
                "subsections": [
                    {
                        "name": "default-exit()",
                        "content": "exit immediately with the exit status specified by the default button.  If  there  is\nno default button, this action has no effect.\n"
                    }
                ]
            },
            "EXIT STATUS": {
                "content": "If it detects an error, xmessage returns 1, so this value should not be used with a button.\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "X(7), echo(1), cat(1)\n",
                "subsections": []
            },
            "AUTHORS": {
                "content": "Chris Peterson, MIT Project Athena\nStephen Gildea, X Consortium\n\n\n\nX Version 11                               xmessage 1.0.5                                XMESSAGE(1)",
                "subsections": []
            }
        }
    }
}