Added print_command to run
This commit is contained in:
parent
15d48b377d
commit
09efb27a78
@ -42,6 +42,9 @@ If true spaces will not be treated as part of the executable name but rather as
|
||||
.TP
|
||||
.B show_all=\fIBOOL\fR
|
||||
If true shows all the entries in path, this will show entries that have the same executable name, for example /bin/bash and /usr/bin/bash will be shown separately as bash instead of having one bash entry for the first one encountered, default is true.
|
||||
.TP
|
||||
.B print_command=\fIBOOL\fR
|
||||
If true the executable that would be run will be printed to stdout instead of executing it, default is false.
|
||||
|
||||
.SH DRUN CONFIG OPTIONS
|
||||
.TP
|
||||
|
@ -28,10 +28,11 @@
|
||||
#include <config.h>
|
||||
#include <wofi_api.h>
|
||||
|
||||
static const char* arg_names[] = {"always_parse_args", "show_all"};
|
||||
static const char* arg_names[] = {"always_parse_args", "show_all", "print_command"};
|
||||
|
||||
static bool always_parse_args;
|
||||
static bool show_all;
|
||||
static bool print_command;
|
||||
static struct mode* mode;
|
||||
static const char* arg_str = "__args";
|
||||
|
||||
@ -46,6 +47,7 @@ void wofi_run_init(struct mode* this, struct map* config) {
|
||||
mode = this;
|
||||
always_parse_args = strcmp(config_get(config, arg_names[0], "false"), "true") == 0;
|
||||
show_all = strcmp(config_get(config, arg_names[1], "true"), "true") == 0;
|
||||
print_command = strcmp(config_get(config, arg_names[2], "false"), "true") == 0;
|
||||
|
||||
wl_list_init(&widgets);
|
||||
|
||||
@ -188,6 +190,10 @@ void wofi_run_exec(const char* cmd) {
|
||||
wofi_write_cache(mode, cmd);
|
||||
wofi_term_run(cmd);
|
||||
}
|
||||
if(print_command) {
|
||||
printf("%s\n", cmd);
|
||||
exit(0);
|
||||
}
|
||||
if(arg_run) {
|
||||
size_t space_count = 2;
|
||||
char* tmp = parse_args(cmd, &space_count);
|
||||
|
Loading…
Reference in New Issue
Block a user