X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/0ce89525af77efe89d35cc4eb48945a57b9f08c0..c5e438ecf3f6d7b8caab10e43a452f3555149309:/unix/pterm.c diff --git a/unix/pterm.c b/unix/pterm.c index 4113e510..cc459625 100644 --- a/unix/pterm.c +++ b/unix/pterm.c @@ -16,10 +16,11 @@ #include #include #include -#include -#include #include #include +#include +#include +#include #define PUTTY_DO_GLOBALS /* actually _define_ globals */ #include "putty.h" @@ -68,6 +69,13 @@ struct draw_ctx { static int send_raw_mouse; +static char *app_name = "pterm"; + +char *x_get_default(char *key) +{ + return XGetDefault(GDK_DISPLAY(), app_name, key); +} + void ldisc_update(void *frontend, int echo, int edit) { /* @@ -1726,7 +1734,32 @@ char *get_x_display(void *frontend) return gdk_get_display(); } -char *app_name = "pterm"; +static void help(FILE *fp) { + if(fprintf(fp, +"pterm option summary:\n" +"\n" +" --display DISPLAY Specify X display to use (note '--')\n" +" -name PREFIX Prefix when looking up resources (default: pterm)\n" +" -fn FONT Normal text font\n" +" -fb FONT Bold text font\n" +" -geometry WIDTHxHEIGHT Size of terminal in characters\n" +" -sl LINES Number of lines of scrollback\n" +" -fg COLOUR, -bg COLOUR Foreground/background colour\n" +" -bfg COLOUR, -bbg COLOUR Foreground/background bold colour\n" +" -cfg COLOUR, -bfg COLOUR Foreground/background cursor colour\n" +" -T TITLE Window title\n" +" -ut, +ut Do(default) or do not update utmp\n" +" -ls, +ls Do(default) or do not make shell a login shell\n" +" -sb, +sb Do(default) or do not display a scrollbar\n" +" -log PATH Log all output to a file\n" +" -nethack Map numeric keypad to hjklyubn direction keys\n" +" -xrm RESOURCE-STRING Set an X resource\n" +" -e COMMAND [ARGS...] Execute command (consumes all remaining args)\n" + ) < 0 || fflush(fp) < 0) { + perror("output error"); + exit(1); + } +} int do_cmdline(int argc, char **argv, int do_everything) { @@ -1881,6 +1914,10 @@ int do_cmdline(int argc, char **argv, int do_everything) EXPECTS_ARG; provide_xrm_string(val); + } else if(!strcmp(p, "-help") || !strcmp(p, "--help")) { + help(stdout); + exit(0); + } else { err = 1; fprintf(stderr, "pterm: unrecognized option '%s'\n", p);