X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=fish%2Ffish.h;h=642c269a5c17a97801b82796b250ffe1e8975e4b;hp=09a9ef2703cc4fc3b9fbc72963670b601f844224;hb=7b2d9feb821376603bcbc0707e21edce36109f9a;hpb=4567839859befc5aa9e1eee942dc2ba0701516e2 diff --git a/fish/fish.h b/fish/fish.h index 09a9ef2..642c269 100644 --- a/fish/fish.h +++ b/fish/fish.h @@ -1,4 +1,4 @@ -/* libguestfs - the guestfsd daemon +/* libguestfs - guestfish shell * Copyright (C) 2009 Red Hat Inc. * * This program is free software; you can redistribute it and/or modify @@ -21,14 +21,95 @@ #include +#ifdef HAVE_GETTEXT +#include "gettext.h" +#define _(str) dgettext(PACKAGE, (str)) +#define N_(str) dgettext(PACKAGE, (str)) +#else +#define _(str) str +#define N_(str) str +#endif + /* in fish.c */ extern guestfs_h *g; -extern int g_launched; extern int quit; -extern void pod2text (const char *heading, const char *body); +extern int verbose; +extern int issue_command (const char *cmd, char *argv[], const char *pipe); +extern void pod2text (const char *name, const char *shortdesc, const char *body); +extern void list_builtin_commands (void); +extern void display_builtin_command (const char *cmd); +extern void free_strings (char **argv); +extern int count_strings (char *const *argv); +extern void print_strings (char *const *argv); +extern void print_table (char *const *argv); +extern int launch (guestfs_h *); +extern int is_true (const char *str); +extern char **parse_string_list (const char *str); +extern int xwrite (int fd, const void *buf, size_t len); /* in cmds.c (auto-generated) */ extern void list_commands (void); extern void display_command (const char *cmd); +extern int run_action (const char *cmd, int argc, char *argv[]); + +/* in completion.c (auto-generated) */ +extern char **do_completion (const char *text, int start, int end); + +/* in destpaths.c */ +extern int complete_dest_paths; +extern char *complete_dest_paths_generator (const char *text, int state); + +/* in alloc.c */ +extern int do_alloc (const char *cmd, int argc, char *argv[]); + +/* in echo.c */ +extern int do_echo (const char *cmd, int argc, char *argv[]); + +/* in edit.c */ +extern int do_edit (const char *cmd, int argc, char *argv[]); + +/* in lcd.c */ +extern int do_lcd (const char *cmd, int argc, char *argv[]); + +/* in glob.c */ +extern int do_glob (const char *cmd, int argc, char *argv[]); + +/* in more.c */ +extern int do_more (const char *cmd, int argc, char *argv[]); + +/* in rc.c (remote control) */ +extern void rc_listen (void) __attribute__((noreturn)); +extern int rc_remote (int pid, const char *cmd, int argc, char *argv[], + int exit_on_error); + +/* in reopen.c */ +extern int do_reopen (const char *cmd, int argc, char *argv[]); + +/* in time.c */ +extern int do_time (const char *cmd, int argc, char *argv[]); + +/* in tilde.c */ +extern char *try_tilde_expansion (char *path); + +/* This should just list all the built-in commands so they can + * be added to the generated auto-completion code. + */ +#define BUILTIN_COMMANDS_FOR_COMPLETION \ + "help", \ + "quit", "exit", "q", \ + "alloc", "allocate", \ + "echo", \ + "edit", "vi", "emacs", \ + "lcd", \ + "glob", \ + "more", "less", \ + "reopen", \ + "time" + +static inline char * +bad_cast (char const *s) +{ + return (char *) s; +} #endif /* FISH_H */