# st

Unnamed repository; edit this file 'description' to name the repository.

| Log | Files | Refs | README | LICENSE

    commit bd5fdbe64c8abfb624ad59939ed9b221c8b04eef
    parent 504a165277c13797840c42c64807b59cd4e5f3a5
    Author: Quentin Rameau <quinq@fifth.space>
    Date:   Fri, 29 Jan 2016 22:02:40 +0100

    Reformat usage and separate version from it

    Signed-off-by: Christoph Lohmann <20h@r-36.net>

    Diffstat:
    Mst.1 | 38+++++++++++++++++---------------------
    Mst.c | 24++++++++++++++++--------

    2 files changed, 33 insertions(+), 29 deletions(-)
    diff --git a/st.1 b/st.1
    @@ -3,47 +3,43 @@
     st \- simple terminal
     .SH SYNOPSIS
     .B st
    -.RB [ \-a ]
    +.RB [ \-aiv ]
     .RB [ \-c
     .IR class ]
     .RB [ \-f
     .IR font ]
     .RB [ \-g
     .IR geometry ]
    -.RB [ \-i ]
     .RB [ \-o
    -.IR file ]
    -.RB [ \-t
    -.IR title ]
    +.IR iofile ]
     .RB [ \-T
     .IR title ]
    +.RB [ \-t
    +.IR title ]
     .RB [ \-l
     .IR line ]
    -.RB [ \-w
    +.RB [ \-w
     .IR windowid ]
    -.RB [ \-v ]
    -.RB [ \-e
    -.IR command ...]
    -.RI [ commands ...]
    +.RB [[ \-e ]
    +.IR command
    +.RI [ arguments ...]]
     .PP
     .B st
    -.RB [ \-a ]
    +.RB [ \-aiv ]
     .RB [ \-c
     .IR class ]
     .RB [ \-f
     .IR font ]
     .RB [ \-g
     .IR geometry ]
    -.RB [ \-i ]
     .RB [ \-o
    -.IR file ]
    -.RB [ \-t
    -.IR title ]
    +.IR iofile ]
     .RB [ \-T
     .IR title ]
    +.RB [ \-t
    +.IR title ]
     .RB [ \-w
     .IR windowid ]
    -.RB [ \-v ]
     .RB \-l
     .IR line
     .RI [ stty_args ...]
    @@ -78,14 +74,14 @@ writes all the I/O to
     This feature is useful when recording st sessions. A value of "-" means
     standard output.
     .TP
    -.BI \-t " title"
    +.BI \-T " title"
     defines the window title (default 'st').
     .TP
    -.BI \-T " title"
    +.BI \-t " title"
     defines the window title (default 'st').
     .TP
     .BI \-w " windowid"
    -embeds st within the window identified by
    +embeds st within the window identified by
     .I windowid
     .TP
     .BI \-l " line"
    @@ -111,9 +107,9 @@ for more arguments and cases.
     .B \-v
     prints version information to stderr, then exits.
     .TP
    -.BI \-e " program " [ " arguments " "... ]"
    +.BI \-e " command " [ " arguments " "... ]"
     st executes
    -.I program
    +.I command
     instead of the shell.  If this is used it
     .B must be the last option
     on the command line, as in xterm / rxvt.
    diff --git a/st.c b/st.c
    @@ -486,6 +486,7 @@ static void *xrealloc(void *, size_t);
     static char *xstrdup(char *);

     static void usage(void);
    +static void version(void);

     static void (*handler[LASTEvent])(XEvent *) = {
     	[KeyPress] = kpress,
    @@ -4331,14 +4332,19 @@ run(void)
     void
     usage(void)
     {
    -	die("%s " VERSION " (c) 2010-2016 st engineers\n"
    -	"usage: st [-a] [-v] [-c class] [-f font] [-g geometry] [-o file]\n"
    -	"          [-i] [-t title] [-T title] [-w windowid] [-e command ...]"
    -	" [command ...]\n"
    -	"       st [-a] [-v] [-c class] [-f font] [-g geometry] [-o file]\n"
    -	"          [-i] [-t title] [-T title] [-w windowid] -l line"
    -	" [stty_args ...]\n",
    -	argv0);
    +	die("usage: %s [-aiv] [-c class] [-f font] [-g geometry]"
    +	" [-o file] [-T title]\n"
    +	"          [-t title] [-w windowid] [[-e] command [args ...]]\n"
    +	"       %s [-aiv] [-c class] [-f font] [-g geometry]"
    +	" [-o file] [-T title]\n"
    +	"          [-t title] [-w windowid] -l line [stty_args ...]\n",
    +	argv0, argv0);
    +}
    +
    +void
    +version(void)
    +{
    +	die("%s " VERSION " (c) 2010-2016 st engineers\n", argv0);
     }

     int
    @@ -4385,6 +4391,8 @@ main(int argc, char *argv[])
     		opt_embed = EARGF(usage());
     		break;
     	case 'v':
    +		version();
    +		break;
     	default:
     		usage();
     	} ARGEND;