This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFA] Completion of add-inferior


I'm a completion junkie, so this pisses me off:

  (gdb) add-inferior -exec oo/i TAB
  Display all 355 possibilities? (y or n) n
  (gdb) add-inferior -exec TAB
  Display all 25806 possibilities? (y or n) n
  (gdb) add-inferior -exec d:/gnu TAB TAB
  gnutls_alert_description_t
  gnutls_alloc_function
  gnutls_anon_client_credentials_t
  gnutls_certificate_client_credentials
  ...

(it completes on symbols).

OK to commit the following?

2012-05-11  Eli Zaretskii  <eliz@gnu.org>

	* inferior.c: Include completer.h
	(initialize_inferiors): Set completer of add-inferior to
	filename_completer.

--- gdb/inferior.c~0	2012-01-06 06:43:16.000000000 +0200
+++ gdb/inferior.c	2012-05-11 20:44:23.218048400 +0300
@@ -22,6 +22,7 @@
 #include "inferior.h"
 #include "target.h"
 #include "command.h"
+#include "completer.h"
 #include "gdbcmd.h"
 #include "gdbthread.h"
 #include "ui-out.h"
@@ -1065,6 +1066,8 @@ inferior_data (struct inferior *inf, con
 void
 initialize_inferiors (void)
 {
+  struct cmd_list_element *c = NULL;
+
   /* There's always one inferior.  Note that this function isn't an
      automatic _initialize_foo function, since other _initialize_foo
      routines may need to install their per-inferior data keys.  We
@@ -1078,12 +1081,13 @@ initialize_inferiors (void)
   add_info ("inferiors", info_inferiors_command, 
 	    _("IDs of specified inferiors (all inferiors if no argument)."));
 
-  add_com ("add-inferior", no_class, add_inferior_command, _("\
+  c = add_com ("add-inferior", no_class, add_inferior_command, _("\
 Add a new inferior.\n\
 Usage: add-inferior [-copies <N>] [-exec <FILENAME>]\n\
 N is the optional number of inferiors to add, default is 1.\n\
 FILENAME is the file name of the executable to use\n\
 as main program."));
+  set_cmd_completer (c, filename_completer);
 
   add_com ("remove-inferiors", no_class, remove_inferior_command, _("\
 Remove inferior ID (or list of IDs).\n\


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]