mirror of https://github.com/djcb/mu.git
* mu-config.[ch]: do tty-checking here (for --color), add mu_config_param_num
(for param-checking)
This commit is contained in:
parent
a2907dc8e5
commit
c60e03a16d
|
@ -24,6 +24,8 @@
|
||||||
|
|
||||||
#include <glib.h>
|
#include <glib.h>
|
||||||
#include <string.h> /* memset */
|
#include <string.h> /* memset */
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
#include "mu-util.h"
|
#include "mu-util.h"
|
||||||
#include "mu-config.h"
|
#include "mu-config.h"
|
||||||
|
@ -43,8 +45,16 @@ set_group_mu_defaults (MuConfig *opts)
|
||||||
opts->muhome = exp;
|
opts->muhome = exp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* check for the MU_COLORS env var; but in any case don't use
|
||||||
|
* colors unless we're writing to a tty */
|
||||||
|
|
||||||
if (g_getenv (MU_COLORS) != NULL)
|
if (g_getenv (MU_COLORS) != NULL)
|
||||||
opts->color = TRUE;
|
opts->color = TRUE;
|
||||||
|
|
||||||
|
if (!isatty(fileno(stdout)))
|
||||||
|
opts->color = FALSE;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static GOptionGroup*
|
static GOptionGroup*
|
||||||
|
@ -363,7 +373,7 @@ parse_params (MuConfig *opts, int *argcp, char ***argvp)
|
||||||
|
|
||||||
add_context_group (context, opts);
|
add_context_group (context, opts);
|
||||||
|
|
||||||
rv = g_option_context_parse(context, argcp, argvp, &err);
|
rv = g_option_context_parse (context, argcp, argvp, &err);
|
||||||
g_option_context_free (context);
|
g_option_context_free (context);
|
||||||
if (!rv) {
|
if (!rv) {
|
||||||
g_printerr ("mu: error in options: %s\n", err->message);
|
g_printerr ("mu: error in options: %s\n", err->message);
|
||||||
|
@ -470,3 +480,15 @@ mu_config_execute (MuConfig *opts)
|
||||||
g_return_val_if_reached (MU_EXITCODE_ERROR);
|
g_return_val_if_reached (MU_EXITCODE_ERROR);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
guint
|
||||||
|
mu_config_param_num (MuConfig *conf)
|
||||||
|
{
|
||||||
|
guint u;
|
||||||
|
|
||||||
|
g_return_val_if_fail (conf, 0);
|
||||||
|
|
||||||
|
for (u = 0; conf->params[u]; ++u);
|
||||||
|
|
||||||
|
return u;
|
||||||
|
}
|
||||||
|
|
|
@ -150,6 +150,18 @@ void mu_config_destroy (MuConfig *opts);
|
||||||
*/
|
*/
|
||||||
MuExitCode mu_config_execute (MuConfig *opts);
|
MuExitCode mu_config_execute (MuConfig *opts);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* count the number of non-option parameters
|
||||||
|
*
|
||||||
|
* @param conf a MuConfig instance
|
||||||
|
*
|
||||||
|
* @return the number of non-option parameters, or 0 in case of error
|
||||||
|
*/
|
||||||
|
guint mu_config_param_num (MuConfig *conf);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
#endif /*__MU_CONFIG_H__*/
|
#endif /*__MU_CONFIG_H__*/
|
||||||
|
|
Loading…
Reference in New Issue