The (ever increasingly misnamed) ascii driver supports unicode box characters, which are must nicer than the ascii #==--- etc. It would be good if more people knew about it. Accordingly, I propose the following patch.
It causes the terminal user interface to start as if -O box=unicode had been given iff 1. No explicit "box" option was specified; AND 2. The encoding of the locale is UTF-8 condition 2 is not absolutely robust. It doesn't guarantee that the terminal is capable of displaying UTF8, but it should work under most environments. Any objections? diff --git a/src/ui/terminal/terminal-opts.c b/src/ui/terminal/terminal-opts.c index 121d89d..95007a0 100644 --- a/src/ui/terminal/terminal-opts.c +++ b/src/ui/terminal/terminal-opts.c @@ -20,6 +20,8 @@ #include <stdbool.h> #include <stdlib.h> +#include <string.h> + #include "data/settings.h" #include "data/file-name.h" @@ -39,6 +41,7 @@ #include "output/msglog.h" #include "gl/error.h" +#include "gl/localcharset.h" #include "gl/progname.h" #include "gl/version-etc.h" #include "gl/xmemdup0.h" @@ -302,6 +305,8 @@ terminal_opts_init (struct argv_parser *ap, void terminal_opts_done (struct terminal_opts *to, int argc, char *argv[]) { + if (0 == strcmp (locale_charset (), "UTF-8")) + string_map_insert (&to->options, "box", "unicode"); register_output_driver (to); -- PGP Public key ID: 1024D/2DE827B3 fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3 See http://keys.gnupg.net or any PGP keyserver for public key.
signature.asc
Description: Digital signature
_______________________________________________ pspp-dev mailing list pspp-dev@gnu.org https://lists.gnu.org/mailman/listinfo/pspp-dev