[gimp] app: stop canonicalizing procedure names



commit 11ce199cea9fb091855621670f39b5da892f19f4
Author: Michael Natterer <mitch gimp org>
Date:   Sun Aug 18 01:55:47 2019 +0200

    app: stop canonicalizing procedure names
    
    on behalf of plug-in authors who have no style or can't type.
    
    Instead, simply reject non-canonical procedure names and remove all
    code that keeps aroud the original non-canonical shit just to pass it
    back to the plug-in.

 app/actions/gimpgeglprocedure.c      |  28 +++---
 app/actions/gimpgeglprocedure.h      |   2 +
 app/file-data/file-data.c            |   7 --
 app/main.c                           |   2 +-
 app/pdb/brush-cmds.c                 |  22 -----
 app/pdb/brush-select-cmds.c          |   3 -
 app/pdb/brushes-cmds.c               |   2 -
 app/pdb/buffer-cmds.c                |   7 --
 app/pdb/channel-cmds.c               |  10 --
 app/pdb/context-cmds.c               | 113 ----------------------
 app/pdb/debug-cmds.c                 |   2 -
 app/pdb/display-cmds.c               |   6 --
 app/pdb/drawable-cmds.c              |  24 -----
 app/pdb/drawable-color-cmds.c        |  14 ---
 app/pdb/drawable-edit-cmds.c         |   6 --
 app/pdb/dynamics-cmds.c              |   2 -
 app/pdb/edit-cmds.c                  |  10 --
 app/pdb/fileops-cmds.c               |  99 +++++++------------
 app/pdb/floating-sel-cmds.c          |   4 -
 app/pdb/font-select-cmds.c           |   3 -
 app/pdb/fonts-cmds.c                 |   2 -
 app/pdb/gimp-cmds.c                  |   8 --
 app/pdb/gimppdb-utils.c              |  19 ++++
 app/pdb/gimppdb-utils.h              |   3 +
 app/pdb/gimpprocedure.c              |  61 +++++-------
 app/pdb/gimpprocedure.h              |   4 -
 app/pdb/gimprc-cmds.c                |   7 --
 app/pdb/gradient-cmds.c              |  31 ------
 app/pdb/gradient-select-cmds.c       |   3 -
 app/pdb/gradients-cmds.c             |   2 -
 app/pdb/help-cmds.c                  |   1 -
 app/pdb/image-cmds.c                 |  82 ----------------
 app/pdb/image-color-profile-cmds.c   |   6 --
 app/pdb/image-convert-cmds.c         |   5 -
 app/pdb/image-grid-cmds.c            |  10 --
 app/pdb/image-guides-cmds.c          |   6 --
 app/pdb/image-sample-points-cmds.c   |   4 -
 app/pdb/image-select-cmds.c          |   7 --
 app/pdb/image-transform-cmds.c       |   6 --
 app/pdb/image-undo-cmds.c            |   7 --
 app/pdb/item-cmds.c                  |  33 -------
 app/pdb/item-transform-cmds.c        |  10 --
 app/pdb/layer-cmds.c                 |  35 -------
 app/pdb/message-cmds.c               |   3 -
 app/pdb/paint-tools-cmds.c           |  17 ----
 app/pdb/palette-cmds.c               |  15 ---
 app/pdb/palette-select-cmds.c        |   3 -
 app/pdb/palettes-cmds.c              |   2 -
 app/pdb/pattern-cmds.c               |   2 -
 app/pdb/pattern-select-cmds.c        |   3 -
 app/pdb/patterns-cmds.c              |   2 -
 app/pdb/pdb-cmds.c                   | 178 +++++++++++++++++------------------
 app/pdb/plug-in-cmds.c               |  55 +++--------
 app/pdb/plug-in-compat-cmds.c        |  79 ----------------
 app/pdb/progress-cmds.c              |   9 --
 app/pdb/selection-cmds.c             |  15 ---
 app/pdb/text-layer-cmds.c            |  29 ------
 app/pdb/text-tool-cmds.c             |   2 -
 app/pdb/unit-cmds.c                  |  12 ---
 app/pdb/vectors-cmds.c               |  25 -----
 app/plug-in/gimpplugin-message.c     |  50 ++++++----
 app/plug-in/gimppluginmanager-call.c |   4 +-
 app/plug-in/plug-in-rc.c             |   7 +-
 app/xcf/xcf.c                        |   2 -
 pdb/app.pl                           |   1 -
 pdb/groups/fileops.pdb               |  85 +++++++----------
 pdb/groups/pdb.pdb                   | 168 +++++++++++++++++----------------
 pdb/groups/plug_in.pdb               |  49 ++++------
 68 files changed, 373 insertions(+), 1162 deletions(-)
---
diff --git a/app/actions/gimpgeglprocedure.c b/app/actions/gimpgeglprocedure.c
index 93bb49c944..0f1b1887b7 100644
--- a/app/actions/gimpgeglprocedure.c
+++ b/app/actions/gimpgeglprocedure.c
@@ -124,6 +124,7 @@ gimp_gegl_procedure_finalize (GObject *object)
 
   g_clear_object (&proc->default_settings);
 
+  g_clear_pointer (&proc->operation,  g_free);
   g_clear_pointer (&proc->menu_label, g_free);
   g_clear_pointer (&proc->label,      g_free);
   g_clear_pointer (&proc->help_id,    g_free);
@@ -138,6 +139,7 @@ gimp_gegl_procedure_get_memsize (GimpObject *object,
   GimpGeglProcedure *proc    = GIMP_GEGL_PROCEDURE (object);
   gint64             memsize = 0;
 
+  memsize += gimp_string_get_memsize (proc->operation);
   memsize += gimp_string_get_memsize (proc->menu_label);
   memsize += gimp_string_get_memsize (proc->label);
 
@@ -245,7 +247,8 @@ gimp_gegl_procedure_execute (GimpProcedure   *procedure,
   config   = g_value_get_object      (gimp_value_array_index (args, 3));
 
   node = gegl_node_new_child (NULL,
-                              "operation", procedure->original_name,
+                              "operation",
+                              GIMP_GEGL_PROCEDURE (procedure)->operation,
                               NULL);
   if (config)
     gimp_operation_config_sync_node (config, node);
@@ -268,10 +271,11 @@ gimp_gegl_procedure_execute_async (GimpProcedure  *procedure,
                                    GimpValueArray *args,
                                    GimpObject     *display)
 {
-  GimpRunMode  run_mode;
-  GimpObject  *settings;
-  GimpTool    *active_tool;
-  const gchar *tool_name;
+  GimpGeglProcedure *gegl_procedure = GIMP_GEGL_PROCEDURE (procedure);
+  GimpRunMode        run_mode;
+  GimpObject        *settings;
+  GimpTool          *active_tool;
+  const gchar       *tool_name;
 
   run_mode = g_value_get_enum   (gimp_value_array_index (args, 0));
   settings = g_value_get_object (gimp_value_array_index (args, 3));
@@ -323,23 +327,23 @@ gimp_gegl_procedure_execute_async (GimpProcedure  *procedure,
                     gimp_procedure_get_label (procedure));
     }
 
-  if (! strcmp (procedure->original_name, "gimp:brightness-contrast"))
+  if (! strcmp (gegl_procedure->operation, "gimp:brightness-contrast"))
     {
       tool_name = "gimp-brightness-contrast-tool";
     }
-  else if (! strcmp (procedure->original_name, "gimp:curves"))
+  else if (! strcmp (gegl_procedure->operation, "gimp:curves"))
     {
       tool_name = "gimp-curves-tool";
     }
-  else if (! strcmp (procedure->original_name, "gimp:levels"))
+  else if (! strcmp (gegl_procedure->operation, "gimp:levels"))
     {
       tool_name = "gimp-levels-tool";
     }
-  else if (! strcmp (procedure->original_name, "gimp:threshold"))
+  else if (! strcmp (gegl_procedure->operation, "gimp:threshold"))
     {
       tool_name = "gimp-threshold-tool";
     }
-  else if (! strcmp (procedure->original_name, "gimp:offset"))
+  else if (! strcmp (gegl_procedure->operation, "gimp:offset"))
     {
       tool_name = "gimp-offset-tool";
     }
@@ -384,7 +388,7 @@ gimp_gegl_procedure_execute_async (GimpProcedure  *procedure,
       if (! strcmp (tool_name, "gimp-operation-tool"))
         {
           gimp_operation_tool_set_operation (GIMP_OPERATION_TOOL (active_tool),
-                                             procedure->original_name,
+                                             gegl_procedure->operation,
                                              gimp_procedure_get_label (procedure),
                                              gimp_procedure_get_label (procedure),
                                              gimp_procedure_get_label (procedure),
@@ -430,6 +434,7 @@ gimp_gegl_procedure_new (Gimp        *gimp,
 
   gegl_procedure = GIMP_GEGL_PROCEDURE (procedure);
 
+  gegl_procedure->operation        = g_strdup (operation);
   gegl_procedure->default_run_mode = default_run_mode;
   gegl_procedure->menu_label       = g_strdup (menu_label);
   gegl_procedure->help_id          = g_strdup (help_id);
@@ -440,7 +445,6 @@ gimp_gegl_procedure_new (Gimp        *gimp,
   gimp_object_set_name (GIMP_OBJECT (procedure), name);
   gimp_viewable_set_icon_name (GIMP_VIEWABLE (procedure), icon_name);
   gimp_procedure_set_strings (procedure,
-                              operation,
                               tooltip,
                               tooltip,
                               "author", "copyright", "date",
diff --git a/app/actions/gimpgeglprocedure.h b/app/actions/gimpgeglprocedure.h
index 07fc24c2ad..8a7a27e0df 100644
--- a/app/actions/gimpgeglprocedure.h
+++ b/app/actions/gimpgeglprocedure.h
@@ -40,6 +40,8 @@ struct _GimpGeglProcedure
 {
   GimpProcedure  parent_instance;
 
+  gchar         *operation;
+
   GimpRunMode    default_run_mode;
   GimpObject    *default_settings;
 
diff --git a/app/file-data/file-data.c b/app/file-data/file-data.c
index b6577ec143..3b48185657 100644
--- a/app/file-data/file-data.c
+++ b/app/file-data/file-data.c
@@ -69,7 +69,6 @@ file_data_init (Gimp *gimp)
 
   gimp_object_set_static_name (GIMP_OBJECT (procedure), "file-gbr-load");
   gimp_procedure_set_static_strings (procedure,
-                                     "file-gbr-load",
                                      "Loads GIMP brushes",
                                      "Loads GIMP brushes (1 or 4 bpp "
                                      "and old .gpb format)",
@@ -139,7 +138,6 @@ file_data_init (Gimp *gimp)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "file-gbr-save-internal");
   gimp_procedure_set_static_strings (procedure,
-                                     "file-gbr-save-internal",
                                      "Exports Gimp brush file (.GBR)",
                                      "Exports Gimp brush file (.GBR)",
                                      "Tim Newsome, Michael Natterer",
@@ -221,7 +219,6 @@ file_data_init (Gimp *gimp)
 
   gimp_object_set_static_name (GIMP_OBJECT (procedure), "file-gih-load");
   gimp_procedure_set_static_strings (procedure,
-                                     "file-gih-load",
                                      "Loads GIMP animated brushes",
                                      "This procedure loads a GIMP brush "
                                      "pipe as an image.",
@@ -289,7 +286,6 @@ file_data_init (Gimp *gimp)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "file-gih-save-internal");
   gimp_procedure_set_static_strings (procedure,
-                                     "file-gih-save-internal",
                                      "Exports Gimp animated brush file (.gih)",
                                      "Exports Gimp animated brush file (.gih)",
                                      "Tor Lillqvist, Michael Natterer",
@@ -379,7 +375,6 @@ file_data_init (Gimp *gimp)
 
   gimp_object_set_static_name (GIMP_OBJECT (procedure), "file-pat-load");
   gimp_procedure_set_static_strings (procedure,
-                                     "file-pat-load",
                                      "Loads GIMP patterns",
                                      "Loads GIMP patterns",
                                      "Tim Newsome, Michael Natterer",
@@ -445,7 +440,6 @@ file_data_init (Gimp *gimp)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "file-pat-save-internal");
   gimp_procedure_set_static_strings (procedure,
-                                     "file-pat-save-internal",
                                      "Exports Gimp pattern file (.PAT)",
                                      "Exports Gimp pattern file (.PAT)",
                                      "Tim Newsome, Michael Natterer",
@@ -523,7 +517,6 @@ file_data_init (Gimp *gimp)
 
   gimp_object_set_static_name (GIMP_OBJECT (procedure), "file-gex-load");
   gimp_procedure_set_static_strings (procedure,
-                                     "file-gex-load",
                                      "Loads GIMP extension",
                                      "Loads GIMP extension",
                                      "Jehan", "Jehan", "2019",
diff --git a/app/main.c b/app/main.c
index d743999edb..3bc75cadf7 100644
--- a/app/main.c
+++ b/app/main.c
@@ -743,7 +743,7 @@ gimp_option_dump_pdb_procedures_deprecated (const gchar  *option_name,
     {
       GimpProcedure *procedure = GIMP_PROCEDURE (iter->data);
 
-      g_print ("%s\n", procedure->original_name);
+      g_print ("%s\n", gimp_object_get_name (procedure));
     }
 
   g_list_free (deprecated_procs);
diff --git a/app/pdb/brush-cmds.c b/app/pdb/brush-cmds.c
index 29de5b653d..c28dd491f9 100644
--- a/app/pdb/brush-cmds.c
+++ b/app/pdb/brush-cmds.c
@@ -921,7 +921,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-new",
                                      "Creates a new brush.",
                                      "This procedure creates a new, uninitialized brush.",
                                      "Michael Natterer <mitch gimp org>",
@@ -952,7 +951,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-duplicate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-duplicate",
                                      "Duplicates a brush.",
                                      "This procedure creates an identical brush by a different name.",
                                      "Michael Natterer <mitch gimp org>",
@@ -983,7 +981,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-is-generated");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-is-generated",
                                      "Tests if brush is generated.",
                                      "Returns TRUE if this brush is parametric, FALSE for other types.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1013,7 +1010,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-rename");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-rename",
                                      "Renames a brush.",
                                      "This procedure renames a brush.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1051,7 +1047,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-delete");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-delete",
                                      "Deletes a brush.",
                                      "This procedure deletes a brush.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1075,7 +1070,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-is-editable");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-is-editable",
                                      "Tests if brush can be edited.",
                                      "Returns TRUE if you have permission to change the brush.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1105,7 +1099,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-info");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-info",
                                      "Retrieves information about the specified brush.",
                                      "This procedure retrieves information about the specified brush: brush 
extents (width and height), color depth and mask depth.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1153,7 +1146,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-pixels");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-pixels",
                                      "Retrieves information about the specified brush.",
                                      "This procedure retrieves information about the specified brush. This 
includes the brush extents (width and height) and its pixels data.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1223,7 +1215,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-spacing",
                                      "Gets the brush spacing.",
                                      "This procedure returns the spacing setting for the specified brush. 
The return value is an integer between 0 and 1000 which represents percentage of the maximum of the width and 
height of the mask.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1253,7 +1244,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-set-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-set-spacing",
                                      "Sets the brush spacing.",
                                      "This procedure modifies the spacing setting for the specified brush. 
The value should be a integer between 0 and 1000.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1283,7 +1273,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-shape");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-shape",
                                      "Gets the shape of a generated brush.",
                                      "This procedure gets the shape value for a generated brush. If called 
for any other type of brush, it does not succeed. The current possibilities are Circle 
(GIMP_BRUSH_GENERATED_CIRCLE), Square (GIMP_BRUSH_GENERATED_SQUARE), and Diamond 
(GIMP_BRUSH_GENERATED_DIAMOND). Other shapes are likely to be added in the future.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1314,7 +1303,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-set-shape");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-set-shape",
                                      "Sets the shape of a generated brush.",
                                      "This procedure sets the shape value for a generated brush. If called 
for any other type of brush, it does not succeed. The current possibilities are Circle 
(GIMP_BRUSH_GENERATED_CIRCLE), Square (GIMP_BRUSH_GENERATED_SQUARE), and Diamond 
(GIMP_BRUSH_GENERATED_DIAMOND). Other shapes are likely to be added in the future.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1352,7 +1340,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-radius");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-radius",
                                      "Gets the radius of a generated brush.",
                                      "This procedure gets the radius value for a generated brush. If called 
for any other type of brush, it does not succeed.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1382,7 +1369,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-set-radius");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-set-radius",
                                      "Sets the radius of a generated brush.",
                                      "This procedure sets the radius for a generated brush. If called for 
any other type of brush, it does not succeed.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1418,7 +1404,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-spikes");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-spikes",
                                      "Gets the number of spikes for a generated brush.",
                                      "This procedure gets the number of spikes for a generated brush. If 
called for any other type of brush, it does not succeed.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1448,7 +1433,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-set-spikes");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-set-spikes",
                                      "Sets the number of spikes for a generated brush.",
                                      "This procedure sets the number of spikes for a generated brush. If 
called for any other type of brush, it does not succeed.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1484,7 +1468,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-hardness");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-hardness",
                                      "Gets the hardness of a generated brush.",
                                      "This procedure gets the hardness of a generated brush. The hardness of 
a brush is the amount its intensity fades at the outside edge, as a float between 0.0 and 1.0. If called for 
any other type of brush, the function does not succeed.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1514,7 +1497,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-set-hardness");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-set-hardness",
                                      "Sets the hardness of a generated brush.",
                                      "This procedure sets the hardness for a generated brush. If called for 
any other type of brush, it does not succeed. The value should be a float between 0.0 and 1.0.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1550,7 +1532,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-aspect-ratio");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-aspect-ratio",
                                      "Gets the aspect ratio of a generated brush.",
                                      "This procedure gets the aspect ratio of a generated brush. If called 
for any other type of brush, it does not succeed. The return value is a float between 0.0 and 1000.0.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1580,7 +1561,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-set-aspect-ratio");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-set-aspect-ratio",
                                      "Sets the aspect ratio of a generated brush.",
                                      "This procedure sets the aspect ratio for a generated brush. If called 
for any other type of brush, it does not succeed. The value should be a float between 0.0 and 1000.0.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1616,7 +1596,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-get-angle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-get-angle",
                                      "Gets the rotation angle of a generated brush.",
                                      "This procedure gets the angle of rotation for a generated brush. If 
called for any other type of brush, it does not succeed.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1646,7 +1625,6 @@ register_brush_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brush-set-angle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brush-set-angle",
                                      "Sets the rotation angle of a generated brush.",
                                      "This procedure sets the rotation angle for a generated brush. If 
called for any other type of brush, it does not succeed.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
diff --git a/app/pdb/brush-select-cmds.c b/app/pdb/brush-select-cmds.c
index 219216353a..811863b4ca 100644
--- a/app/pdb/brush-select-cmds.c
+++ b/app/pdb/brush-select-cmds.c
@@ -159,7 +159,6 @@ register_brush_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brushes-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brushes-popup",
                                      "Invokes the Gimp brush selection.",
                                      "This procedure opens the brush selection dialog.",
                                      "Andy Thomas",
@@ -216,7 +215,6 @@ register_brush_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brushes-close-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brushes-close-popup",
                                      "Close the brush selection dialog.",
                                      "This procedure closes an opened brush selection dialog.",
                                      "Andy Thomas",
@@ -240,7 +238,6 @@ register_brush_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brushes-set-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brushes-set-popup",
                                      "Sets the current brush in a brush selection dialog.",
                                      "Sets the current brush in a brush selection dialog.",
                                      "Andy Thomas",
diff --git a/app/pdb/brushes-cmds.c b/app/pdb/brushes-cmds.c
index a72dd6d02d..4811472112 100644
--- a/app/pdb/brushes-cmds.c
+++ b/app/pdb/brushes-cmds.c
@@ -102,7 +102,6 @@ register_brushes_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brushes-refresh");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brushes-refresh",
                                      "Refresh current brushes. This function always succeeds.",
                                      "This procedure retrieves all brushes currently in the user's brush 
path and updates the brush dialogs accordingly.",
                                      "Seth Burgess",
@@ -119,7 +118,6 @@ register_brushes_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-brushes-get-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-brushes-get-list",
                                      "Retrieve a complete listing of the available brushes.",
                                      "This procedure returns a complete listing of available GIMP brushes. 
Each name returned can be used as input to the 'gimp-context-set-brush' procedure.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/buffer-cmds.c b/app/pdb/buffer-cmds.c
index 1c6af467c9..3e59d2d31f 100644
--- a/app/pdb/buffer-cmds.c
+++ b/app/pdb/buffer-cmds.c
@@ -294,7 +294,6 @@ register_buffer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-buffers-get-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-buffers-get-list",
                                      "Retrieve a complete listing of the available buffers.",
                                      "This procedure returns a complete listing of available named buffers.",
                                      "Michael Natterer <mitch gimp org>",
@@ -329,7 +328,6 @@ register_buffer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-buffer-rename");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-buffer-rename",
                                      "Renames a named buffer.",
                                      "This procedure renames a named buffer.",
                                      "Michael Natterer <mitch gimp org>",
@@ -367,7 +365,6 @@ register_buffer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-buffer-delete");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-buffer-delete",
                                      "Deletes a named buffer.",
                                      "This procedure deletes a named buffer.",
                                      "David Gowers <neota softhome net>",
@@ -391,7 +388,6 @@ register_buffer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-buffer-get-width");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-buffer-get-width",
                                      "Retrieves the specified buffer's width.",
                                      "This procedure retrieves the specified named buffer's width.",
                                      "Michael Natterer <mitch gimp org>",
@@ -421,7 +417,6 @@ register_buffer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-buffer-get-height");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-buffer-get-height",
                                      "Retrieves the specified buffer's height.",
                                      "This procedure retrieves the specified named buffer's height.",
                                      "Michael Natterer <mitch gimp org>",
@@ -451,7 +446,6 @@ register_buffer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-buffer-get-bytes");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-buffer-get-bytes",
                                      "Retrieves the specified buffer's bytes.",
                                      "This procedure retrieves the specified named buffer's bytes.",
                                      "Michael Natterer <mitch gimp org>",
@@ -481,7 +475,6 @@ register_buffer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-buffer-get-image-type");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-buffer-get-image-type",
                                      "Retrieves the specified buffer's image type.",
                                      "This procedure retrieves the specified named buffer's image type.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/channel-cmds.c b/app/pdb/channel-cmds.c
index 90ea5b15f1..edeb3e7dc0 100644
--- a/app/pdb/channel-cmds.c
+++ b/app/pdb/channel-cmds.c
@@ -380,7 +380,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-new",
                                      "Create a new channel.",
                                      "This procedure creates a new channel with the specified width, height, 
name, opacity and color.\n"
                                      "The new channel still needs to be added to the image, as this is not 
automatic. Add the new channel with 'gimp-image-insert-channel'. Other attributes, such as channel 
visibility, should be set with explicit procedure calls.\n"
@@ -443,7 +442,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-new-from-component");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-new-from-component",
                                      "Create a new channel from a color component",
                                      "This procedure creates a new channel from a color component.\n"
                                      "The new channel still needs to be added to the image, as this is not 
automatic. Add the new channel with 'gimp-image-insert-channel'. Other attributes, such as channel 
visibility, should be set with explicit procedure calls.",
@@ -487,7 +485,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-copy");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-copy",
                                      "Copy a channel.",
                                      "This procedure copies the specified channel and returns the copy.\n"
                                      "The new channel still needs to be added to the image, as this is not 
automatic. Add the new channel with 'gimp-image-insert-channel'.",
@@ -517,7 +514,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-combine-masks");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-combine-masks",
                                      "Combine two channel masks.",
                                      "This procedure combines two channel masks. The result is stored in the 
first channel.",
                                      "Spencer Kimball & Peter Mattis",
@@ -565,7 +561,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-get-show-masked");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-get-show-masked",
                                      "Get the composite method of the specified channel.",
                                      "This procedure returns the specified channel's composite method. If it 
is TRUE, then the channel is composited with the image so that masked regions are shown. Otherwise, selected 
regions are shown.",
                                      "Spencer Kimball & Peter Mattis",
@@ -594,7 +589,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-set-show-masked");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-set-show-masked",
                                      "Set the composite method of the specified channel.",
                                      "This procedure sets the specified channel's composite method. If it is 
TRUE, then the channel is composited with the image so that masked regions are shown. Otherwise, selected 
regions are shown.",
                                      "Spencer Kimball & Peter Mattis",
@@ -623,7 +617,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-get-opacity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-get-opacity",
                                      "Get the opacity of the specified channel.",
                                      "This procedure returns the specified channel's opacity.",
                                      "Spencer Kimball & Peter Mattis",
@@ -652,7 +645,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-set-opacity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-set-opacity",
                                      "Set the opacity of the specified channel.",
                                      "This procedure sets the specified channel's opacity.",
                                      "Spencer Kimball & Peter Mattis",
@@ -681,7 +673,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-get-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-get-color",
                                      "Get the compositing color of the specified channel.",
                                      "This procedure returns the specified channel's compositing color.",
                                      "Spencer Kimball & Peter Mattis",
@@ -711,7 +702,6 @@ register_channel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-channel-set-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-channel-set-color",
                                      "Set the compositing color of the specified channel.",
                                      "This procedure sets the specified channel's compositing color.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/context-cmds.c b/app/pdb/context-cmds.c
index 3cfd6f2794..a204c4e334 100644
--- a/app/pdb/context-cmds.c
+++ b/app/pdb/context-cmds.c
@@ -3033,7 +3033,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-push");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-push",
                                      "Pushes a context to the top of the plug-in's context stack.",
                                      "This procedure creates a new context by copying the current context. 
This copy becomes the new current context for the calling plug-in until it is popped again using 
'gimp-context-pop'.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3050,7 +3049,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-pop");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-pop",
                                      "Pops the topmost context from the plug-in's context stack.",
                                      "This procedure removes the topmost context from the plug-in's context 
stack. The context that was active before the corresponding call to 'gimp-context-push' becomes the new 
current context of the plug-in.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3067,7 +3065,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-defaults");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-defaults",
                                      "Reset context settings to their default values.",
                                      "This procedure resets context settings used by various procedures to 
their default value. This procedure will usually be called after a context push so that a script which calls 
procedures affected by context settings will not be affected by changes in the global context.",
                                      "Kevin Cozens <kcozens svn gnome org>",
@@ -3084,7 +3081,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-list-paint-methods");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-list-paint-methods",
                                      "Lists the available paint methods.",
                                      "This procedure lists the names of the available paint methods. Any of 
the results can be used for 'gimp-context-set-paint-method'.",
                                      "Simon Budig",
@@ -3112,7 +3108,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-paint-method");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-paint-method",
                                      "Retrieve the currently active paint method.",
                                      "This procedure returns the name of the currently active paint method.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3136,7 +3131,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-paint-method");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-paint-method",
                                      "Set the specified paint method as the active paint method.",
                                      "This procedure allows the active paint method to be set by specifying 
its name. The name is simply a string which corresponds to one of the names of the available paint methods. 
If there is no matching method found, this procedure will return an error. Otherwise, the specified method 
becomes active and will be used in all subsequent paint operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3160,7 +3154,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-stroke-method");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-stroke-method",
                                      "Retrieve the currently active stroke method.",
                                      "This procedure returns the currently active stroke method.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3184,7 +3177,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-stroke-method");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-stroke-method",
                                      "Set the specified stroke method as the active stroke method.",
                                      "This procedure set the specified stroke method as the active stroke 
method. The new method will be used in all subsequent stroke operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3208,7 +3200,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-foreground");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-foreground",
                                      "Get the current GIMP foreground color.",
                                      "This procedure returns the current GIMP foreground color. The 
foreground color is used in a variety of tools such as paint tools, blending, and bucket fill.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3232,7 +3223,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-foreground");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-foreground",
                                      "Set the current GIMP foreground color.",
                                      "This procedure sets the current GIMP foreground color. After this is 
set, operations which use foreground such as paint tools, blending, and bucket fill will use the new value.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3256,7 +3246,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-background");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-background",
                                      "Get the current GIMP background color.",
                                      "This procedure returns the current GIMP background color. The 
background color is used in a variety of tools such as blending, erasing (with non-alpha images), and image 
filling.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3280,7 +3269,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-background");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-background",
                                      "Set the current GIMP background color.",
                                      "This procedure sets the current GIMP background color. After this is 
set, operations which use background such as blending, filling images, clearing, and erasing (in non-alpha 
images) will use the new value.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3304,7 +3292,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-default-colors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-default-colors",
                                      "Set the current GIMP foreground and background colors to black and 
white.",
                                      "This procedure sets the current GIMP foreground and background colors 
to their initial default values, black and white.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3321,7 +3308,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-swap-colors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-swap-colors",
                                      "Swap the current GIMP foreground and background colors.",
                                      "This procedure swaps the current GIMP foreground and background 
colors, so that the new foreground color becomes the old background color and vice versa.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3338,7 +3324,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-opacity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-opacity",
                                      "Get the opacity.",
                                      "This procedure returns the opacity setting. The return value is a 
floating point number between 0 and 100.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3361,7 +3346,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-opacity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-opacity",
                                      "Set the opacity.",
                                      "This procedure modifies the opacity setting. The value should be a 
floating point number between 0 and 100.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3384,7 +3368,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-paint-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-paint-mode",
                                      "Get the paint mode.",
                                      "This procedure returns the paint-mode setting. The return value is an 
integer which corresponds to the values listed in the argument description.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3408,7 +3391,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-paint-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-paint-mode",
                                      "Set the paint mode.",
                                      "This procedure modifies the paint_mode setting.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3432,7 +3414,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-line-width");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-line-width",
                                      "Get the line width setting.",
                                      "This procedure returns the line width setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3455,7 +3436,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-line-width");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-line-width",
                                      "Set the line width setting.",
                                      "This procedure modifies the line width setting for stroking lines.\n"
                                      "\n"
@@ -3480,7 +3460,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-line-width-unit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-line-width-unit",
                                      "Get the line width unit setting.",
                                      "This procedure returns the line width unit setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3505,7 +3484,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-line-width-unit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-line-width-unit",
                                      "Set the line width unit setting.",
                                      "This procedure modifies the line width unit setting for stroking 
lines.\n"
                                      "\n"
@@ -3532,7 +3510,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-line-cap-style");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-line-cap-style",
                                      "Get the line cap style setting.",
                                      "This procedure returns the line cap style setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3556,7 +3533,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-line-cap-style");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-line-cap-style",
                                      "Set the line cap style setting.",
                                      "This procedure modifies the line cap style setting for stroking 
lines.\n"
                                      "\n"
@@ -3582,7 +3558,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-line-join-style");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-line-join-style",
                                      "Get the line join style setting.",
                                      "This procedure returns the line join style setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3606,7 +3581,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-line-join-style");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-line-join-style",
                                      "Set the line join style setting.",
                                      "This procedure modifies the line join style setting for stroking 
lines.\n"
                                      "\n"
@@ -3632,7 +3606,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-line-miter-limit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-line-miter-limit",
                                      "Get the line miter limit setting.",
                                      "This procedure returns the line miter limit setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3655,7 +3628,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-line-miter-limit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-line-miter-limit",
                                      "Set the line miter limit setting.",
                                      "This procedure modifies the line miter limit setting for stroking 
lines.\n"
                                      "A mitered join is converted to a bevelled join if the miter would 
extend to a distance of more than (miter-limit * line-width) from the actual join point.\n"
@@ -3681,7 +3653,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-line-dash-offset");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-line-dash-offset",
                                      "Get the line dash offset setting.",
                                      "This procedure returns the line dash offset setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3704,7 +3675,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-line-dash-offset");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-line-dash-offset",
                                      "Set the line dash offset setting.",
                                      "This procedure modifies the line dash offset setting for stroking 
lines.\n"
                                      "\n"
@@ -3729,7 +3699,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-line-dash-pattern");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-line-dash-pattern",
                                      "Get the line dash pattern setting.",
                                      "This procedure returns the line dash pattern setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3757,7 +3726,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-line-dash-pattern");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-line-dash-pattern",
                                      "Set the line dash pattern setting.",
                                      "This procedure modifies the line dash pattern setting for stroking 
lines.\n"
                                      "\n"
@@ -3789,7 +3757,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-brush");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-brush",
                                      "Retrieve the currently active brush.",
                                      "This procedure returns the name of the currently active brush. All 
paint operations and stroke operations use this brush to control the application of paint to the image.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3813,7 +3780,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush",
                                      "Set the specified brush as the active brush.",
                                      "This procedure allows the active brush to be set by specifying its 
name. The name is simply a string which corresponds to one of the names of the installed brushes. If there is 
no matching brush found, this procedure will return an error. Otherwise, the specified brush becomes active 
and will be used in all subsequent paint operations.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -3837,7 +3803,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-brush-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-brush-size",
                                      "Get brush size in pixels.",
                                      "Get the brush size in pixels for brush based paint tools.",
                                      "Ed Swartz",
@@ -3860,7 +3825,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-size",
                                      "Set brush size in pixels.",
                                      "Set the brush size in pixels for brush based paint tools.",
                                      "Ed Swartz",
@@ -3883,7 +3847,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-default-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-default-size",
                                      "Set brush size to its default.",
                                      "Set the brush size to the default (max of width and height) for 
paintbrush, airbrush, or pencil tools.",
                                      "Ed Swartz",
@@ -3900,7 +3863,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-brush-aspect-ratio");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-brush-aspect-ratio",
                                      "Get brush aspect ratio.",
                                      "Set the aspect ratio for brush based paint tools.",
                                      "Ed Swartz",
@@ -3923,7 +3885,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-aspect-ratio");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-aspect-ratio",
                                      "Set brush aspect ratio.",
                                      "Set the aspect ratio for brush based paint tools.",
                                      "Ed Swartz",
@@ -3946,7 +3907,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-brush-angle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-brush-angle",
                                      "Get brush angle in degrees.",
                                      "Set the angle in degrees for brush based paint tools.",
                                      "Ed Swartz",
@@ -3969,7 +3929,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-angle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-angle",
                                      "Set brush angle in degrees.",
                                      "Set the angle in degrees for brush based paint tools.",
                                      "Ed Swartz",
@@ -3992,7 +3951,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-brush-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-brush-spacing",
                                      "Get brush spacing as percent of size.",
                                      "Get the brush spacing as percent of size for brush based paint tools.",
                                      "Alexia Death",
@@ -4015,7 +3973,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-spacing",
                                      "Set brush spacing as percent of size.",
                                      "Set the brush spacing as percent of size for brush based paint tools.",
                                      "Alexia Death",
@@ -4038,7 +3995,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-default-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-default-spacing",
                                      "Set brush spacing to its default.",
                                      "Set the brush spacing to the default for paintbrush, airbrush, or 
pencil tools.",
                                      "Alexia Death",
@@ -4055,7 +4011,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-brush-hardness");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-brush-hardness",
                                      "Get brush hardness in paint options.",
                                      "Get the brush hardness for brush based paint tools.",
                                      "Alexia Death",
@@ -4078,7 +4033,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-hardness");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-hardness",
                                      "Set brush hardness.",
                                      "Set the brush hardness for brush based paint tools.",
                                      "Alexia Death",
@@ -4101,7 +4055,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-default-hardness");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-default-hardness",
                                      "Set brush spacing to its default.",
                                      "Set the brush spacing to the default for paintbrush, airbrush, or 
pencil tools.",
                                      "Alexia Death",
@@ -4118,7 +4071,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-brush-force");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-brush-force",
                                      "Get brush force in paint options.",
                                      "Get the brush application force for brush based paint tools.",
                                      "Alexia Death",
@@ -4141,7 +4093,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-brush-force");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-brush-force",
                                      "Set brush application force.",
                                      "Set the brush application force for brush based paint tools.",
                                      "Alexia Death",
@@ -4164,7 +4115,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-dynamics");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-dynamics",
                                      "Retrieve the currently active paint dynamics.",
                                      "This procedure returns the name of the currently active paint 
dynamics. All paint operations and stroke operations use this paint dynamics to control the application of 
paint to the image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4188,7 +4138,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-dynamics");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-dynamics",
                                      "Set the specified paint dynamics as the active paint dynamics.",
                                      "This procedure allows the active paint dynamics to be set by 
specifying its name. The name is simply a string which corresponds to one of the names of the installed paint 
dynamics. If there is no matching paint dynamics found, this procedure will return an error. Otherwise, the 
specified paint dynamics becomes active and will be used in all subsequent paint operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4212,7 +4161,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-mypaint-brush");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-mypaint-brush",
                                      "Retrieve the currently active MyPaint brush.",
                                      "This procedure returns the name of the currently active MyPaint 
brush.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4236,7 +4184,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-mypaint-brush");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-mypaint-brush",
                                      "Set the specified MyPaint brush as the active MyPaint brush.",
                                      "This procedure allows the active MyPaint brush to be set by specifying 
its name. The name is simply a string which corresponds to one of the names of the installed MyPaint brushes. 
If there is no matching MyPaint brush found, this procedure will return an error. Otherwise, the specified 
MyPaint brush becomes active and will be used in all subsequent MyPaint paint operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4260,7 +4207,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-pattern");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-pattern",
                                      "Retrieve the currently active pattern.",
                                      "This procedure returns name of the the currently active pattern. All 
clone and bucket-fill operations with patterns will use this pattern to control the application of paint to 
the image.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -4284,7 +4230,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-pattern");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-pattern",
                                      "Set the specified pattern as the active pattern.",
                                      "This procedure allows the active pattern to be set by specifying its 
name. The name is simply a string which corresponds to one of the names of the installed patterns. If there 
is no matching pattern found, this procedure will return an error. Otherwise, the specified pattern becomes 
active and will be used in all subsequent paint operations.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -4308,7 +4253,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-gradient");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-gradient",
                                      "Retrieve the currently active gradient.",
                                      "This procedure returns the name of the currently active gradient.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -4332,7 +4276,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-gradient");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-gradient",
                                      "Sets the specified gradient as the active gradient.",
                                      "This procedure lets you set the specified gradient as the active or 
\"current\" one. The name is simply a string which corresponds to one of the loaded gradients. If no matching 
gradient is found, this procedure will return an error. Otherwise, the specified gradient will become active 
and will be used for subsequent custom gradient operations.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -4356,7 +4299,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-gradient-fg-bg-rgb");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-gradient-fg-bg-rgb",
                                      "Sets the built-in FG-BG RGB gradient as the active gradient.",
                                      "This procedure sets the built-in FG-BG RGB gradient as the active 
gradient. The gradient will be used for subsequent gradient operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4373,7 +4315,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-gradient-fg-bg-hsv-cw");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-gradient-fg-bg-hsv-cw",
                                      "Sets the built-in FG-BG HSV (cw) gradient as the active gradient.",
                                      "This procedure sets the built-in FG-BG HSV (cw) gradient as the active 
gradient. The gradient will be used for subsequent gradient operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4390,7 +4331,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-gradient-fg-bg-hsv-ccw");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-gradient-fg-bg-hsv-ccw",
                                      "Sets the built-in FG-BG HSV (ccw) gradient as the active gradient.",
                                      "This procedure sets the built-in FG-BG HSV (ccw) gradient as the 
active gradient. The gradient will be used for subsequent gradient operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4407,7 +4347,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-gradient-fg-transparent");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-gradient-fg-transparent",
                                      "Sets the built-in FG-Transparent gradient as the active gradient.",
                                      "This procedure sets the built-in FG-Transparent gradient as the active 
gradient. The gradient will be used for subsequent gradient operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4424,7 +4363,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-gradient-blend-color-space");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-gradient-blend-color-space",
                                      "Get the gradient blend color space.",
                                      "Get the gradient blend color space for paint tools and the gradient 
tool.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4448,7 +4386,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-gradient-blend-color-space");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-gradient-blend-color-space",
                                      "Set the gradient blend color space.",
                                      "Set the gradient blend color space for paint tools and the gradient 
tool.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4472,7 +4409,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-gradient-repeat-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-gradient-repeat-mode",
                                      "Get the gradient repeat mode.",
                                      "Get the gradient repeat mode for paint tools and the gradient tool.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4496,7 +4432,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-gradient-repeat-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-gradient-repeat-mode",
                                      "Set the gradient repeat mode.",
                                      "Set the gradient repeat mode for paint tools and the gradient tool.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4520,7 +4455,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-gradient-reverse");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-gradient-reverse",
                                      "Get the gradient reverse setting.",
                                      "Get the gradient reverse setting for paint tools and the gradient 
tool.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4543,7 +4477,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-gradient-reverse");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-gradient-reverse",
                                      "Set the gradient reverse setting.",
                                      "Set the gradient reverse setting for paint tools and the gradient 
tool.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4566,7 +4499,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-palette");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-palette",
                                      "Retrieve the currently active palette.",
                                      "This procedure returns the name of the the currently active palette.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -4590,7 +4522,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-palette");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-palette",
                                      "Set the specified palette as the active palette.",
                                      "This procedure allows the active palette to be set by specifying its 
name. The name is simply a string which corresponds to one of the names of the installed palettes. If no 
matching palette is found, this procedure will return an error. Otherwise, the specified palette becomes 
active and will be used in all subsequent palette operations.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -4614,7 +4545,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-font");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-font",
                                      "Retrieve the currently active font.",
                                      "This procedure returns the name of the currently active font.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -4638,7 +4568,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-font");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-font",
                                      "Set the specified font as the active font.",
                                      "This procedure allows the active font to be set by specifying its 
name. The name is simply a string which corresponds to one of the names of the installed fonts. If no 
matching font is found, this procedure will return an error. Otherwise, the specified font becomes active and 
will be used in all subsequent font operations.",
                                      "Michael Natterer <mitch gimp org> & Sven Neumann <sven gimp org>",
@@ -4662,7 +4591,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-antialias");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-antialias",
                                      "Get the antialias setting.",
                                      "This procedure returns the antialias setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4685,7 +4613,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-antialias");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-antialias",
                                      "Set the antialias setting.",
                                      "This procedure modifies the antialias setting. If antialiasing is 
turned on, the edges of selected region will contain intermediate values which give the appearance of a 
sharper, less pixelized edge. This should be set as TRUE most of the time unless a binary-only selection is 
wanted.\n"
                                      "\n"
@@ -4710,7 +4637,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-feather");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-feather",
                                      "Get the feather setting.",
                                      "This procedure returns the feather setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4733,7 +4659,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-feather");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-feather",
                                      "Set the feather setting.",
                                      "This procedure modifies the feather setting. If the feather option is 
enabled, selections will be blurred before combining. The blur is a gaussian blur; its radii can be 
controlled using 'gimp-context-set-feather-radius'.\n"
                                      "\n"
@@ -4758,7 +4683,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-feather-radius");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-feather-radius",
                                      "Get the feather radius setting.",
                                      "This procedure returns the feather radius setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4787,7 +4711,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-feather-radius");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-feather-radius",
                                      "Set the feather radius setting.",
                                      "This procedure modifies the feather radius setting.\n"
                                      "\n"
@@ -4818,7 +4741,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-sample-merged");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-sample-merged",
                                      "Get the sample merged setting.",
                                      "This procedure returns the sample merged setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4841,7 +4763,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-sample-merged");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-sample-merged",
                                      "Set the sample merged setting.",
                                      "This procedure modifies the sample merged setting. If an operation 
depends on the colors of the pixels present in a drawable, like when doing a seed fill, this setting controls 
whether the pixel data from the specified drawable is used ('sample-merged' is FALSE), or the pixel data from 
the composite image ('sample-merged' is TRUE. This is equivalent to sampling for colors after merging all 
visible layers).\n"
                                      "\n"
@@ -4866,7 +4787,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-sample-criterion");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-sample-criterion",
                                      "Get the sample criterion setting.",
                                      "This procedure returns the sample criterion setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4890,7 +4810,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-sample-criterion");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-sample-criterion",
                                      "Set the sample criterion setting.",
                                      "This procedure modifies the sample criterion setting. If an operation 
depends on the colors of the pixels present in a drawable, like when doing a seed fill, this setting controls 
how color similarity is determined. SELECT_CRITERION_COMPOSITE is the default value.\n"
                                      "\n"
@@ -4916,7 +4835,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-sample-threshold");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-sample-threshold",
                                      "Get the sample threshold setting.",
                                      "This procedure returns the sample threshold setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4939,7 +4857,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-sample-threshold");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-sample-threshold",
                                      "Set the sample threshold setting.",
                                      "This procedure modifies the sample threshold setting. If an operation 
depends on the colors of the pixels present in a drawable, like when doing a seed fill, this setting controls 
what is \"sufficiently close\" to be considered a similar color. If the sample threshold has not been set 
explicitly, the default threshold set in gimprc will be used.\n"
                                      "\n"
@@ -4964,7 +4881,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-sample-threshold-int");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-sample-threshold-int",
                                      "Get the sample threshold setting as an integer value.",
                                      "This procedure returns the sample threshold setting as an integer 
value. See 'gimp-context-get-sample-threshold'.",
                                      "Michael Natterer <mitch gimp org>",
@@ -4987,7 +4903,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-sample-threshold-int");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-sample-threshold-int",
                                      "Set the sample threshold setting as an integer value.",
                                      "This procedure modifies the sample threshold setting as an integer 
value. See 'gimp-context-set-sample-threshold'.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5010,7 +4925,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-sample-transparent");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-sample-transparent",
                                      "Get the sample transparent setting.",
                                      "This procedure returns the sample transparent setting.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5033,7 +4947,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-sample-transparent");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-sample-transparent",
                                      "Set the sample transparent setting.",
                                      "This procedure modifies the sample transparent setting. If an 
operation depends on the colors of the pixels present in a drawable, like when doing a seed fill, this 
setting controls whether transparency is considered to be a unique selectable color. When this setting is 
TRUE, transparent areas can be selected or filled.\n"
                                      "\n"
@@ -5058,7 +4971,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-diagonal-neighbors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-diagonal-neighbors",
                                      "Get the diagonal neighbors setting.",
                                      "This procedure returns the diagonal neighbors setting.",
                                      "Ell",
@@ -5081,7 +4993,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-diagonal-neighbors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-diagonal-neighbors",
                                      "Set the diagonal neighbors setting.",
                                      "This procedure modifies the diagonal neighbors setting. If the 
affected region of an operation is based on a seed point, like when doing a seed fill, then, when this 
setting is TRUE, all eight neighbors of each pixel are considered when calculating the affected region; in 
contrast, when this setting is FALSE, only the four orthogonal neighbors of each pixel are considered.\n"
                                      "\n"
@@ -5106,7 +5017,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-distance-metric");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-distance-metric",
                                      "Get the distance metric used in some computations.",
                                      "This procedure returns the distance metric in the current context. See 
'gimp-context-set-distance-metric' to know more about its usage.",
                                      "Jehan",
@@ -5130,7 +5040,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-distance-metric");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-distance-metric",
                                      "Set the distance metric used in some computations.",
                                      "This procedure modifies the distance metric used in some computations, 
such as 'gimp-drawable-edit-gradient-fill'. In particular, it does not change the metric used in generic 
distance computation on canvas, as in the Measure tool.\n"
                                      "\n"
@@ -5156,7 +5065,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-interpolation");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-interpolation",
                                      "Get the interpolation type.",
                                      "This procedure returns the interpolation setting. The return value is 
an integer which corresponds to the values listed in the argument description. If the interpolation has not 
been set explicitly by 'gimp-context-set-interpolation', the default interpolation set in gimprc will be 
used.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5180,7 +5088,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-interpolation");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-interpolation",
                                      "Set the interpolation type.",
                                      "This procedure modifies the interpolation setting.\n"
                                      "\n"
@@ -5206,7 +5113,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-transform-direction");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-transform-direction",
                                      "Get the transform direction.",
                                      "This procedure returns the transform direction. The return value is an 
integer which corresponds to the values listed in the argument description.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5230,7 +5136,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-transform-direction");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-transform-direction",
                                      "Set the transform direction.",
                                      "This procedure modifies the transform direction setting.\n"
                                      "\n"
@@ -5256,7 +5161,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-transform-resize");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-transform-resize",
                                      "Get the transform resize type.",
                                      "This procedure returns the transform resize setting. The return value 
is an integer which corresponds to the values listed in the argument description.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5280,7 +5184,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-transform-resize");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-transform-resize",
                                      "Set the transform resize type.",
                                      "This procedure modifies the transform resize setting. When 
transforming pixels, if the result of a transform operation has a different size than the original area, this 
setting determines how the resulting area is sized.\n"
                                      "\n"
@@ -5306,7 +5209,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-ink-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-ink-size",
                                      "Get ink blob size in pixels.",
                                      "Get the ink blob size in pixels for ink tool.",
                                      "Ed Swartz",
@@ -5329,7 +5231,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-ink-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-ink-size",
                                      "Set ink blob size in pixels.",
                                      "Set the ink blob size in pixels for ink tool.",
                                      "Ed Swartz",
@@ -5352,7 +5253,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-ink-angle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-ink-angle",
                                      "Get ink angle in degrees.",
                                      "Get the ink angle in degrees for ink tool.",
                                      "Ed Swartz",
@@ -5375,7 +5275,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-ink-angle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-ink-angle",
                                      "Set ink angle in degrees.",
                                      "Set the ink angle in degrees for ink tool.",
                                      "Ed Swartz",
@@ -5398,7 +5297,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-ink-size-sensitivity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-ink-size-sensitivity",
                                      "Get ink size sensitivity.",
                                      "Get the ink size sensitivity for ink tool.",
                                      "Ed Swartz",
@@ -5421,7 +5319,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-ink-size-sensitivity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-ink-size-sensitivity",
                                      "Set ink size sensitivity.",
                                      "Set the ink size sensitivity for ink tool.",
                                      "Ed Swartz",
@@ -5444,7 +5341,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-ink-tilt-sensitivity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-ink-tilt-sensitivity",
                                      "Get ink tilt sensitivity.",
                                      "Get the ink tilt sensitivity for ink tool.",
                                      "Ed Swartz",
@@ -5467,7 +5363,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-ink-tilt-sensitivity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-ink-tilt-sensitivity",
                                      "Set ink tilt sensitivity.",
                                      "Set the ink tilt sensitivity for ink tool.",
                                      "Ed Swartz",
@@ -5490,7 +5385,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-ink-speed-sensitivity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-ink-speed-sensitivity",
                                      "Get ink speed sensitivity.",
                                      "Get the ink speed sensitivity for ink tool.",
                                      "Ed Swartz",
@@ -5513,7 +5407,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-ink-speed-sensitivity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-ink-speed-sensitivity",
                                      "Set ink speed sensitivity.",
                                      "Set the ink speed sensitivity for ink tool.",
                                      "Ed Swartz",
@@ -5536,7 +5429,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-ink-blob-type");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-ink-blob-type",
                                      "Get ink blob type.",
                                      "Get the ink blob type for ink tool.",
                                      "Ed Swartz",
@@ -5560,7 +5452,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-ink-blob-type");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-ink-blob-type",
                                      "Set ink blob type.",
                                      "Set the ink blob type for ink tool.",
                                      "Ed Swartz",
@@ -5584,7 +5475,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-ink-blob-aspect-ratio");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-ink-blob-aspect-ratio",
                                      "Get ink blob aspect ratio.",
                                      "Get the ink blob aspect ratio for ink tool.",
                                      "Ed Swartz",
@@ -5607,7 +5497,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-ink-blob-aspect-ratio");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-ink-blob-aspect-ratio",
                                      "Set ink blob aspect ratio.",
                                      "Set the ink blob aspect ratio for ink tool.",
                                      "Ed Swartz",
@@ -5630,7 +5519,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-get-ink-blob-angle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-get-ink-blob-angle",
                                      "Get ink blob angle in degrees.",
                                      "Get the ink blob angle in degrees for ink tool.",
                                      "Ed Swartz",
@@ -5653,7 +5541,6 @@ register_context_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-context-set-ink-blob-angle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-context-set-ink-blob-angle",
                                      "Set ink blob angle in degrees.",
                                      "Set the ink blob angle in degrees for ink tool.",
                                      "Ed Swartz",
diff --git a/app/pdb/debug-cmds.c b/app/pdb/debug-cmds.c
index bf72795460..2ba54861a5 100644
--- a/app/pdb/debug-cmds.c
+++ b/app/pdb/debug-cmds.c
@@ -99,7 +99,6 @@ register_debug_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-debug-timer-start");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-debug-timer-start",
                                      "Starts measuring elapsed time.",
                                      "This procedure starts a timer, measuring the elapsed time since the 
call. Each call to this procedure should be matched by a call to 'gimp-debug-timer-end', which returns the 
elapsed time.\n"
                                      "If there is already an active timer, it is not affected by the call, 
however, a matching 'gimp-debug-timer-end' call is still required.\n"
@@ -119,7 +118,6 @@ register_debug_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-debug-timer-end");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-debug-timer-end",
                                      "Finishes measuring elapsed time.",
                                      "This procedure stops the timer started by a previous 
'gimp-debug-timer-start' call, and prints and returns the elapsed time.\n"
                                      "If there was already an active timer at the time of corresponding call 
to 'gimp-debug-timer-start', a dummy value is returned.\n"
diff --git a/app/pdb/display-cmds.c b/app/pdb/display-cmds.c
index 3600a45ad4..f9ead97dd2 100644
--- a/app/pdb/display-cmds.c
+++ b/app/pdb/display-cmds.c
@@ -212,7 +212,6 @@ register_display_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-display-is-valid");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-display-is-valid",
                                      "Returns TRUE if the display is valid.",
                                      "This procedure checks if the given display ID is valid and refers to 
an existing display.",
                                      "Sven Neumann <sven gimp org>",
@@ -241,7 +240,6 @@ register_display_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-display-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-display-new",
                                      "Create a new display for the specified image.",
                                      "Creates a new display for the specified image. If the image already 
has a display, another is added. Multiple displays are handled transparently by GIMP. The newly created 
display is returned and can be subsequently destroyed with a call to 'gimp-display-delete'. This procedure 
only makes sense for use with the GIMP UI, and will result in an execution error if called when GIMP has no 
UI.",
                                      "Spencer Kimball & Peter Mattis",
@@ -270,7 +268,6 @@ register_display_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-display-delete");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-display-delete",
                                      "Delete the specified display.",
                                      "This procedure removes the specified display. If this is the last 
remaining display for the underlying image, then the image is deleted also. Note that the display is closed 
no matter if the image is dirty or not. Better save the image before calling this procedure.",
                                      "Spencer Kimball & Peter Mattis",
@@ -293,7 +290,6 @@ register_display_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-display-get-window-handle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-display-get-window-handle",
                                      "Get a handle to the native window for an image display.",
                                      "This procedure returns a handle to the native window for a given image 
display. For example in the X backend of GDK, a native window handle is an Xlib XID. A value of 0 is returned 
for an invalid display or if this function is unimplemented for the windowing system that is being used.",
                                      "Sven Neumann <sven gimp org>",
@@ -322,7 +318,6 @@ register_display_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-displays-flush");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-displays-flush",
                                      "Flush all internal changes to the user interface",
                                      "This procedure takes no arguments and returns nothing except a success 
status. Its purpose is to flush all pending updates of image manipulations to the user interface. It should 
be called whenever appropriate.",
                                      "Spencer Kimball & Peter Mattis",
@@ -339,7 +334,6 @@ register_display_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-displays-reconnect");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-displays-reconnect",
                                      "Reconnect displays from one image to another image.",
                                      "This procedure connects all displays of the old_image to the 
new_image. If the old_image has no display or new_image already has a display the reconnect is not performed 
and the procedure returns without success. You should rarely need to use this function.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/drawable-cmds.c b/app/pdb/drawable-cmds.c
index 149f7554a0..26eaf7e966 100644
--- a/app/pdb/drawable-cmds.c
+++ b/app/pdb/drawable-cmds.c
@@ -979,7 +979,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-get-format");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-get-format",
                                      "Returns the drawable's Babl format",
                                      "This procedure returns the drawable's Babl format.\n"
                                      "Note that the actual PDB procedure only transfers the format's 
encoding. In order to get to the real format, the libbgimp C wrapper must be used.",
@@ -1010,7 +1009,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-get-thumbnail-format");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-get-thumbnail-format",
                                      "Returns the drawable's thumbnail Babl format",
                                      "This procedure returns the drawable's thumbnail Babl format.\n"
                                      "Thumbnails are always 8-bit images, see 'gimp-drawable-thumbnail' and 
'gimp-drawable-sub-thmbnail'.",
@@ -1041,7 +1039,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-type");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-type",
                                      "Returns the drawable's type.",
                                      "This procedure returns the drawable's type.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1071,7 +1068,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-type-with-alpha");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-type-with-alpha",
                                      "Returns the drawable's type with alpha.",
                                      "This procedure returns the drawable's type as if had an alpha channel. 
If the type is currently Gray, for instance, the returned type would be GrayA. If the drawable already has an 
alpha channel, the drawable's type is simply returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1107,7 +1103,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-has-alpha");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-has-alpha",
                                      "Returns TRUE if the drawable has an alpha channel.",
                                      "This procedure returns whether the specified drawable has an alpha 
channel. This can only be true for layers, and the associated type will be one of: { RGBA , GRAYA, INDEXEDA 
}.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1136,7 +1131,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-is-rgb");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-is-rgb",
                                      "Returns whether the drawable is an RGB type.",
                                      "This procedure returns TRUE if the specified drawable is of type { 
RGB, RGBA }.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1165,7 +1159,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-is-gray");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-is-gray",
                                      "Returns whether the drawable is a grayscale type.",
                                      "This procedure returns TRUE if the specified drawable is of type { 
Gray, GrayA }.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1194,7 +1187,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-is-indexed");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-is-indexed",
                                      "Returns whether the drawable is an indexed type.",
                                      "This procedure returns TRUE if the specified drawable is of type { 
Indexed, IndexedA }.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1223,7 +1215,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-bpp");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-bpp",
                                      "Returns the bytes per pixel.",
                                      "This procedure returns the number of bytes per pixel.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1252,7 +1243,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-width");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-width",
                                      "Returns the width of the drawable.",
                                      "This procedure returns the specified drawable's width in pixels.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1281,7 +1271,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-height");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-height",
                                      "Returns the height of the drawable.",
                                      "This procedure returns the specified drawable's height in pixels.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1310,7 +1299,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-offsets");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-offsets",
                                      "Returns the offsets for the drawable.",
                                      "This procedure returns the specified drawable's offsets. This only 
makes sense if the drawable is a layer since channels are anchored. The offsets of a channel will be returned 
as 0.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1345,7 +1333,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-mask-bounds");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-mask-bounds",
                                      "Find the bounding box of the current selection in relation to the 
specified drawable.",
                                      "This procedure returns whether there is a selection. If there is one, 
the upper left and lower right-hand corners of its bounding box are returned. These coordinates are specified 
relative to the drawable's origin, and bounded by the drawable's extents. Please note that the pixel 
specified by the lower right-hand coordinate of the bounding box is not part of the selection. The selection 
ends at the upper left corner of this pixel. This means the width of the selection can be calculated as (x2 - 
x1), its height as (y2 - y1).\n"
                                      "Note that the returned boolean does NOT correspond with the returned 
region being empty or not, it always returns whether the selection is non_empty. See 
'gimp-drawable-mask-intersect' for a boolean return value which is more useful in most cases.",
@@ -1399,7 +1386,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-mask-intersect");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-mask-intersect",
                                      "Find the bounding box of the current selection in relation to the 
specified drawable.",
                                      "This procedure returns whether there is an intersection between the 
drawable and the selection. Unlike 'gimp-drawable-mask-bounds', the intersection's bounds are returned as x, 
y, width, height.\n"
                                      "If there is no selection this function returns TRUE and the returned 
bounds are the extents of the whole drawable.",
@@ -1453,7 +1439,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-merge-shadow");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-merge-shadow",
                                      "Merge the shadow buffer with the specified drawable.",
                                      "This procedure combines the contents of the drawable's shadow buffer 
(for temporary processing) with the specified drawable. The 'undo' parameter specifies whether to add an undo 
step for the operation. Requesting no undo is useful for such applications as 'auto-apply'.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1482,7 +1467,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-free-shadow");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-free-shadow",
                                      "Free the specified drawable's shadow data (if it exists).",
                                      "This procedure is intended as a memory saving device. If any shadow 
memory has been allocated, it will be freed automatically when the drawable is removed from the image, or 
when the plug-in procedure which allocated it returns.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1505,7 +1489,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-update");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-update",
                                      "Update the specified region of the drawable.",
                                      "This procedure updates the specified region of the drawable. The (x, 
y) coordinate pair is relative to the drawable's origin, not to the image origin. Therefore, the entire 
drawable can be updated using (0, 0, width, height).",
                                      "Spencer Kimball & Peter Mattis",
@@ -1552,7 +1535,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-get-pixel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-get-pixel",
                                      "Gets the value of the pixel at the specified coordinates.",
                                      "This procedure gets the pixel value at the specified coordinates. The 
'num_channels' argument must always be equal to the bytes-per-pixel value for the specified drawable.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1598,7 +1580,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-set-pixel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-set-pixel",
                                      "Sets the value of the pixel at the specified coordinates.",
                                      "This procedure sets the pixel value at the specified coordinates. The 
'num_channels' argument must always be equal to the bytes-per-pixel value for the specified drawable. Note 
that this function is not undoable, you should use it only on drawables you just created yourself.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1644,7 +1625,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-fill");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-fill",
                                      "Fill the drawable with the specified fill mode.",
                                      "This procedure fills the drawable. If the fill mode is foreground the 
current foreground color is used. If the fill mode is background, the current background color is used. If 
the fill type is white, then white is used. Transparent fill only affects layers with an alpha channel, in 
which case the alpha channel is set to transparent. If the drawable has no alpha channel, it is filled to 
white. No fill leaves the drawable's contents undefined.\n"
                                      "This procedure is unlike 'gimp-edit-fill' or the bucket fill tool 
because it fills regardless of a selection. Its main purpose is to fill a newly created drawable before 
adding it to the image. This operation cannot be undone.",
@@ -1675,7 +1655,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-offset");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-offset",
                                      "Offset the drawable by the specified amounts in the X and Y 
directions",
                                      "This procedure offsets the specified drawable by the amounts specified 
by 'offset_x' and 'offset_y'. If 'wrap_around' is set to TRUE, then portions of the drawable which are offset 
out of bounds are wrapped around. Alternatively, the undefined regions of the drawable can be filled with 
transparency or the background color, as specified by the 'fill-type' parameter.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1723,7 +1702,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-thumbnail");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-thumbnail",
                                      "Get a thumbnail of a drawable.",
                                      "This function gets data from which a thumbnail of a drawable preview 
can be created. Maximum x or y dimension is 1024 pixels. The pixels are returned in RGB[A] or GRAY[A] format. 
The bpp return value gives the number of bytes in the image.",
                                      "Andy Thomas",
@@ -1787,7 +1765,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-sub-thumbnail");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-sub-thumbnail",
                                      "Get a thumbnail of a sub-area of a drawable drawable.",
                                      "This function gets data from which a thumbnail of a drawable preview 
can be created. Maximum x or y dimension is 1024 pixels. The pixels are returned in RGB[A] or GRAY[A] format. 
The bpp return value gives the number of bytes in the image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1875,7 +1852,6 @@ register_drawable_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-foreground-extract");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-foreground-extract",
                                      "Extract the foreground of a drawable using a given trimap.",
                                      "Image Segmentation by Uniform Color Clustering, see 
https://www.inf.fu-berlin.de/inst/pubs/tr-b-05-07.pdf";,
                                      "Gerald Friedland <fland inf fu-berlin de>, Kristian Jantz <jantz inf 
fu-berlin de>, Sven Neumann <sven gimp org>",
diff --git a/app/pdb/drawable-color-cmds.c b/app/pdb/drawable-color-cmds.c
index e170686a42..5a2df2d951 100644
--- a/app/pdb/drawable-color-cmds.c
+++ b/app/pdb/drawable-color-cmds.c
@@ -737,7 +737,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-brightness-contrast");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-brightness-contrast",
                                      "Modify brightness/contrast in the specified drawable.",
                                      "This procedures allows the brightness and contrast of the specified 
drawable to be modified. Both 'brightness' and 'contrast' parameters are defined between -0.5 and 0.5.",
                                      "Spencer Kimball & Peter Mattis",
@@ -772,7 +771,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-color-balance");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-color-balance",
                                      "Modify the color balance of the specified drawable.",
                                      "Modify the color balance of the specified drawable. There are three 
axis which can be modified: cyan-red, magenta-green, and yellow-blue. Negative values increase the amount of 
the former, positive values increase the amount of the latter. Color balance can be controlled with the 
'transfer_mode' setting, which allows shadows, mid-tones, and highlights in an image to be affected 
differently. The 'preserve-lum' parameter, if TRUE, ensures that the luminosity of each pixel remains fixed.",
                                      "Spencer Kimball & Peter Mattis",
@@ -826,7 +824,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-colorize-hsl");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-colorize-hsl",
                                      "Render the drawable as a grayscale image seen through a colored 
glass.",
                                      "Desaturates the drawable, then tints it with the specified color. This 
tool is only valid on RGB color images. It will not operate on grayscale drawables.",
                                      "Sven Neumann <sven gimp org>",
@@ -867,7 +864,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-curves-explicit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-curves-explicit",
                                      "Modifies the intensity curve(s) for specified drawable.",
                                      "Modifies the intensity mapping for one channel in the specified 
drawable. The channel can be either an intensity component, or the value. The 'values' parameter is an array 
of doubles which explicitly defines how each pixel value in the drawable will be modified. Use the 
'gimp-curves-spline' function to modify intensity levels with Catmull Rom splines.",
                                      "Spencer Kimball & Peter Mattis",
@@ -908,7 +904,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-curves-spline");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-curves-spline",
                                      "Modifies the intensity curve(s) for specified drawable.",
                                      "Modifies the intensity mapping for one channel in the specified 
drawable. The channel can be either an intensity component, or the value. The 'points' parameter is an array 
of doubles which define a set of control points which describe a Catmull Rom spline which yields the final 
intensity curve. Use the 'gimp-curves-explicit' function to explicitly modify intensity levels.",
                                      "Spencer Kimball & Peter Mattis",
@@ -949,7 +944,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-desaturate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-desaturate",
                                      "Desaturate the contents of the specified drawable, with the specified 
formula.",
                                      "This procedure desaturates the contents of the specified drawable, 
with the specified formula. This procedure only works on drawables of type RGB color.",
                                      "Karine Delvare",
@@ -979,7 +973,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-equalize");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-equalize",
                                      "Equalize the contents of the specified drawable.",
                                      "This procedure equalizes the contents of the specified drawable. Each 
intensity channel is equalized independently. The equalized intensity is given as inten' = (255 - inten). The 
'mask_only' option specifies whether to adjust only the area of the image within the selection bounds, or the 
entire image based on the histogram of the selected area. If there is no selection, the entire image is 
adjusted based on the histogram for the entire image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1008,7 +1001,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-histogram");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-histogram",
                                      "Returns information on the intensity histogram for the specified 
drawable.",
                                      "This tool makes it possible to gather information about the intensity 
histogram of a drawable. A channel to examine is first specified. This can be either value, red, green, or 
blue, depending on whether the drawable is of type color or grayscale. Second, a range of intensities are 
specified. The 'gimp-drawable-histogram' function returns statistics based on the pixels in the drawable that 
fall under this range of values. Mean, standard deviation, median, number of pixels, and percentile are all 
returned. Additionally, the total count of pixels in the image is returned. Counts of pixels are weighted by 
any associated alpha values and by the current selection mask. That is, pixels that lie outside an active 
selection mask will not be counted. Similarly, pixels with transparent alpha values will not be counted. The 
returned mean, std_dev and median are in the range (0..255) for 8-bit images or if the plug-in is not 
precision-aware, and in 
 the rang
 e (0.0..1.0) otherwise.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1086,7 +1078,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-hue-saturation");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-hue-saturation",
                                      "Modify hue, lightness, and saturation in the specified drawable.",
                                      "This procedure allows the hue, lightness, and saturation in the 
specified drawable to be modified. The 'hue-range' parameter provides the capability to limit range of 
affected hues. The 'overlap' parameter provides blending into neighboring hue channels when rendering.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1140,7 +1131,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-invert");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-invert",
                                      "Invert the contents of the specified drawable.",
                                      "This procedure inverts the contents of the specified drawable. Each 
intensity channel is inverted independently. The inverted intensity is given as inten' = (255 - inten). If 
'linear' is TRUE, the drawable is inverted in linear space.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1169,7 +1159,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-levels");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-levels",
                                      "Modifies intensity levels in the specified drawable.",
                                      "This tool allows intensity levels in the specified drawable to be 
remapped according to a set of parameters. The low/high input levels specify an initial mapping from the 
source intensities. The gamma value determines how intensities between the low and high input intensities are 
interpolated. A gamma value of 1.0 results in a linear interpolation. Higher gamma values result in more 
high-level intensities. Lower gamma values result in more low-level intensities. The low/high output levels 
constrain the final intensity mapping--that is, no final intensity will be lower than the low output level 
and no final intensity will be higher than the high output level. This tool is only valid on RGB color and 
grayscale images.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1241,7 +1230,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-levels-stretch");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-levels-stretch",
                                      "Automatically modifies intensity levels in the specified drawable.",
                                      "This procedure allows intensity levels in the specified drawable to be 
remapped according to a set of guessed parameters. It is equivalent to clicking the \"Auto\" button in the 
Levels tool.",
                                      "Joao S.O. Bueno, Shawn Willden",
@@ -1264,7 +1252,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-posterize");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-posterize",
                                      "Posterize the specified drawable.",
                                      "This procedures reduces the number of shades allows in each intensity 
channel to the specified 'levels' parameter.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1293,7 +1280,6 @@ register_drawable_color_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-threshold");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-threshold",
                                      "Threshold the specified drawable.",
                                      "This procedures generates a threshold map of the specified drawable. 
All pixels between the values of 'low_threshold' and 'high_threshold', on the scale of 'channel' are replaced 
with white, and all other pixels with black.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/drawable-edit-cmds.c b/app/pdb/drawable-edit-cmds.c
index 578c5360d0..bff8e3a962 100644
--- a/app/pdb/drawable-edit-cmds.c
+++ b/app/pdb/drawable-edit-cmds.c
@@ -381,7 +381,6 @@ register_drawable_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-edit-clear");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-edit-clear",
                                      "Clear selected area of drawable.",
                                      "This procedure clears the specified drawable. If the drawable has an 
alpha channel, the cleared pixels will become transparent. If the drawable does not have an alpha channel, 
cleared pixels will be set to the background color. This procedure only affects regions within a selection if 
there is a selection active.\n"
                                      "\n"
@@ -406,7 +405,6 @@ register_drawable_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-edit-fill");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-edit-fill",
                                      "Fill selected area of drawable.",
                                      "This procedure fills the specified drawable according to fill mode. 
This procedure only affects regions within a selection if there is a selection active. If you want to fill 
the whole drawable, regardless of the selection, use 'gimp-drawable-fill'.\n"
                                      "\n"
@@ -438,7 +436,6 @@ register_drawable_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-edit-bucket-fill");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-edit-bucket-fill",
                                      "Fill the area by a seed fill starting at the specified coordinates.",
                                      "This procedure does a seed fill at the specified coordinates, using 
various parameters from the current context.\n"
                                      "In the case of merged sampling, the x and y coordinates are relative 
to the image's origin; otherwise, they are relative to the drawable's origin.\n"
@@ -483,7 +480,6 @@ register_drawable_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-edit-gradient-fill");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-edit-gradient-fill",
                                      "Draw a gradient between the starting and ending coordinates with the 
specified gradient type.",
                                      "This tool requires information on the gradient type. It creates the 
specified variety of gradient using the starting and ending coordinates as defined for each gradient type. 
For shapeburst gradient types, the context's distance metric is also relevant and can be updated with 
'gimp-context-set-distance-metric'.\n"
                                      "\n"
@@ -569,7 +565,6 @@ register_drawable_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-edit-stroke-selection");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-edit-stroke-selection",
                                      "Stroke the current selection",
                                      "This procedure strokes the current selection, painting along the 
selection boundary with the active paint method and brush, or using a plain line with configurable 
properties. The paint is applied to the specified drawable regardless of the active selection.\n"
                                      "\n"
@@ -594,7 +589,6 @@ register_drawable_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-drawable-edit-stroke-item");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-drawable-edit-stroke-item",
                                      "Stroke the specified item",
                                      "This procedure strokes the specified item, painting along its outline 
(e.g. along a path, or along a channel's boundary), with the active paint method and brush, or using a plain 
line with configurable properties.\n"
                                      "\n"
diff --git a/app/pdb/dynamics-cmds.c b/app/pdb/dynamics-cmds.c
index d0d49cb4bb..7e5755bd61 100644
--- a/app/pdb/dynamics-cmds.c
+++ b/app/pdb/dynamics-cmds.c
@@ -97,7 +97,6 @@ register_dynamics_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-dynamics-refresh");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-dynamics-refresh",
                                      "Refresh current paint dynamics. This function always succeeds.",
                                      "This procedure retrieves all paint dynamics currently in the user's 
paint dynamics path and updates the paint dynamics dialogs accordingly.",
                                      "Michael Natterer <mitch gimp org>",
@@ -114,7 +113,6 @@ register_dynamics_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-dynamics-get-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-dynamics-get-list",
                                      "Retrieve the list of loaded paint dynamics.",
                                      "This procedure returns a list of the paint dynamics that are currently 
available.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/edit-cmds.c b/app/pdb/edit-cmds.c
index f2b225ffa1..6f3fe9c05d 100644
--- a/app/pdb/edit-cmds.c
+++ b/app/pdb/edit-cmds.c
@@ -512,7 +512,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-cut");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-cut",
                                      "Cut from the specified drawable.",
                                      "If there is a selection in the image, then the area specified by the 
selection is cut from the specified drawable and placed in an internal GIMP edit buffer. It can subsequently 
be retrieved using the 'gimp-edit-paste' command. If there is no selection, then the specified drawable will 
be removed and its contents stored in the internal GIMP edit buffer. This procedure will fail if the selected 
area lies completely outside the bounds of the current drawable and there is nothing to copy from.",
                                      "Spencer Kimball & Peter Mattis",
@@ -541,7 +540,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-copy");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-copy",
                                      "Copy from the specified drawable.",
                                      "If there is a selection in the image, then the area specified by the 
selection is copied from the specified drawable and placed in an internal GIMP edit buffer. It can 
subsequently be retrieved using the 'gimp-edit-paste' command. If there is no selection, then the specified 
drawable's contents will be stored in the internal GIMP edit buffer. This procedure will fail if the selected 
area lies completely outside the bounds of the current drawable and there is nothing to copy from.",
                                      "Spencer Kimball & Peter Mattis",
@@ -570,7 +568,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-copy-visible");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-copy-visible",
                                      "Copy from the projection.",
                                      "If there is a selection in the image, then the area specified by the 
selection is copied from the projection and placed in an internal GIMP edit buffer. It can subsequently be 
retrieved using the 'gimp-edit-paste' command. If there is no selection, then the projection's contents will 
be stored in the internal GIMP edit buffer.",
                                      "Michael Natterer <mitch gimp org>",
@@ -599,7 +596,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-paste");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-paste",
                                      "Paste buffer to the specified drawable.",
                                      "This procedure pastes a copy of the internal GIMP edit buffer to the 
specified drawable. The GIMP edit buffer will be empty unless a call was previously made to either 
'gimp-edit-cut' or 'gimp-edit-copy'. The \"paste_into\" option specifies whether to clear the current image 
selection, or to paste the buffer \"behind\" the selection. This allows the selection to act as a mask for 
the pasted buffer. Anywhere that the selection mask is non-zero, the pasted buffer will show through. The 
pasted buffer will be a new layer in the image which is designated as the image floating selection. If the 
image has a floating selection at the time of pasting, the old floating selection will be anchored to its 
drawable before the new floating selection is added. This procedure returns the new floating layer. The 
resulting floating selection will already be attached to the specified drawable, and a subsequent call to 
floating_sel_attach is not needed.",
                                      "Spencer Kimball & Peter Mattis",
@@ -634,7 +630,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-paste-as-new-image");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-paste-as-new-image",
                                      "Paste buffer to a new image.",
                                      "This procedure pastes a copy of the internal GIMP edit buffer to a new 
image. The GIMP edit buffer will be empty unless a call was previously made to either 'gimp-edit-cut' or 
'gimp-edit-copy'. This procedure returns the new image or -1 if the edit buffer was empty.",
                                      "Michael Natterer <mitch gimp org>",
@@ -657,7 +652,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-named-cut");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-named-cut",
                                      "Cut into a named buffer.",
                                      "This procedure works like 'gimp-edit-cut', but additionally stores the 
cut buffer into a named buffer that will stay available for later pasting, regardless of any intermediate 
copy or cut operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -694,7 +688,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-named-copy");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-named-copy",
                                      "Copy into a named buffer.",
                                      "This procedure works like 'gimp-edit-copy', but additionally stores 
the copied buffer into a named buffer that will stay available for later pasting, regardless of any 
intermediate copy or cut operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -731,7 +724,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-named-copy-visible");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-named-copy-visible",
                                      "Copy from the projection into a named buffer.",
                                      "This procedure works like 'gimp-edit-copy-visible', but additionally 
stores the copied buffer into a named buffer that will stay available for later pasting, regardless of any 
intermediate copy or cut operations.",
                                      "Michael Natterer <mitch gimp org>",
@@ -768,7 +760,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-named-paste");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-named-paste",
                                      "Paste named buffer to the specified drawable.",
                                      "This procedure works like 'gimp-edit-paste' but pastes a named buffer 
instead of the global buffer.",
                                      "Michael Natterer <mitch gimp org>",
@@ -810,7 +801,6 @@ register_edit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-edit-named-paste-as-new-image");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-edit-named-paste-as-new-image",
                                      "Paste named buffer to a new image.",
                                      "This procedure works like 'gimp-edit-paste-as-new-image' but pastes a 
named buffer instead of the global buffer.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/fileops-cmds.c b/app/pdb/fileops-cmds.c
index 6c10dc113a..6e219dce84 100644
--- a/app/pdb/fileops-cmds.c
+++ b/app/pdb/fileops-cmds.c
@@ -44,6 +44,7 @@
 #include "plug-in/gimppluginprocedure.h"
 
 #include "gimppdb.h"
+#include "gimppdb-utils.h"
 #include "gimpprocedure.h"
 #include "internal-procs.h"
 
@@ -428,13 +429,11 @@ register_magic_load_handler_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-      success = gimp_plug_in_manager_register_load_handler (gimp->plug_in_manager,
-                                                            canonical,
-                                                            extensions, prefixes, magics);
-
-      g_free (canonical);
+      success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+                 gimp_plug_in_manager_register_load_handler (gimp->plug_in_manager,
+                                                             procedure_name,
+                                                             extensions, prefixes,
+                                                             magics));
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -460,13 +459,11 @@ register_load_handler_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-      success = gimp_plug_in_manager_register_load_handler (gimp->plug_in_manager,
-                                                            canonical,
-                                                            extensions, prefixes, NULL);
-
-      g_free (canonical);
+      success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+                 gimp_plug_in_manager_register_load_handler (gimp->plug_in_manager,
+                                                             procedure_name,
+                                                             extensions, prefixes,
+                                                             NULL));
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -492,13 +489,10 @@ register_save_handler_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-      success = gimp_plug_in_manager_register_save_handler (gimp->plug_in_manager,
-                                                            canonical,
-                                                            extensions, prefixes);
-
-      g_free (canonical);
+      success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+                 gimp_plug_in_manager_register_save_handler (gimp->plug_in_manager,
+                                                             procedure_name,
+                                                             extensions, prefixes));
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -522,12 +516,9 @@ register_file_handler_priority_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-      success = gimp_plug_in_manager_register_priority (gimp->plug_in_manager,
-                                                        canonical, priority);
-
-      g_free (canonical);
+      success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+                 gimp_plug_in_manager_register_priority (gimp->plug_in_manager,
+                                                         procedure_name, priority));
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -551,12 +542,10 @@ register_file_handler_mime_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-      success = gimp_plug_in_manager_register_mime_types (gimp->plug_in_manager,
-                                                          canonical, mime_types);
-
-      g_free (canonical);
+      success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+                 gimp_plug_in_manager_register_mime_types (gimp->plug_in_manager,
+                                                           procedure_name,
+                                                           mime_types));
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -578,12 +567,9 @@ register_file_handler_uri_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-      success = gimp_plug_in_manager_register_handles_uri (gimp->plug_in_manager,
-                                                           canonical);
-
-      g_free (canonical);
+      success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+                 gimp_plug_in_manager_register_handles_uri (gimp->plug_in_manager,
+                                                            procedure_name));
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -605,12 +591,9 @@ register_file_handler_raw_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-      success = gimp_plug_in_manager_register_handles_raw (gimp->plug_in_manager,
-                                                           canonical);
-
-      g_free (canonical);
+      success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+                 gimp_plug_in_manager_register_handles_raw (gimp->plug_in_manager,
+                                                            procedure_name));
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -634,14 +617,10 @@ register_thumbnail_loader_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical   = gimp_canonicalize_identifier (load_proc);
-      gchar *canon_thumb = gimp_canonicalize_identifier (thumb_proc);
-
-      success = gimp_plug_in_manager_register_thumb_loader (gimp->plug_in_manager,
-                                                            canonical, canon_thumb);
-
-      g_free (canonical);
-      g_free (canon_thumb);
+      success = (gimp_pdb_is_canonical_procedure (load_proc, error) &&
+                 gimp_pdb_is_canonical_procedure (thumb_proc, error) &&
+                 gimp_plug_in_manager_register_thumb_loader (gimp->plug_in_manager,
+                                                             load_proc, thumb_proc));
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -660,7 +639,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-file-load");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-file-load",
                                      "Loads an image file by invoking the right load handler.",
                                      "This procedure invokes the correct file load handler using magic if 
possible, and falling back on the file's extension and/or prefix if not. The name of the file to load is 
typically a full pathname, and the name entered is what the user actually typed before prepending a directory 
path. The reason for this is that if the user types https://www.gimp.org/foo.png he wants to fetch a URL, and 
the full pathname will not look like a URL.",
                                      "Josh MacDonald",
@@ -706,7 +684,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-file-load-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-file-load-layer",
                                      "Loads an image file as a layer for an existing image.",
                                      "This procedure behaves like the file-load procedure but opens the 
specified image as a layer for an existing image. The returned layer needs to be added to the existing image 
with 'gimp-image-insert-layer'.",
                                      "Sven Neumann <sven gimp org>",
@@ -751,7 +728,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-file-load-layers");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-file-load-layers",
                                      "Loads an image file as layers for an existing image.",
                                      "This procedure behaves like the file-load procedure but opens the 
specified image as layers for an existing image. The returned layers needs to be added to the existing image 
with 'gimp-image-insert-layer'.",
                                      "Michael Natterer <mitch gimp org>",
@@ -801,7 +777,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-file-save");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-file-save",
                                      "Saves a file by extension.",
                                      "This procedure invokes the correct file save handler according to the 
file's extension and/or prefix. The name of the file to save is typically a full pathname, and the name 
entered is what the user actually typed before prepending a directory path. The reason for this is that if 
the user types https://www.gimp.org/foo.png she wants to fetch a URL, and the full pathname will not look 
like a URL.",
                                      "Josh MacDonald",
@@ -851,7 +826,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-file-load-thumbnail");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-file-load-thumbnail",
                                      "Loads the thumbnail for a file.",
                                      "This procedure tries to load a thumbnail that belongs to the file with 
the given filename. This name is a full pathname. The returned data is an array of colordepth 3 (RGB), 
regardless of the image type. Width and height of the thumbnail are also returned. Don't use this function if 
you need a thumbnail of an already opened image, use 'gimp-image-thumbnail' instead.",
                                      "Adam D. Moss, Sven Neumann",
@@ -898,7 +872,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-file-save-thumbnail");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-file-save-thumbnail",
                                      "Saves a thumbnail for the given image",
                                      "This procedure saves a thumbnail for the given image according to the 
Free Desktop Thumbnail Managing Standard. The thumbnail is saved so that it belongs to the file with the 
given filename. This means you have to save the image under this name first, otherwise this procedure will 
fail. This procedure may become useful if you want to explicitly save a thumbnail with a file.",
                                      "Josh MacDonald",
@@ -928,7 +901,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-register-magic-load-handler");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-register-magic-load-handler",
                                      "Registers a file load handler procedure.",
                                      "Registers a procedural database procedure to be called to load files 
of a particular file format using magic file information.",
                                      "Spencer Kimball & Peter Mattis",
@@ -973,7 +945,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-register-load-handler");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-register-load-handler",
                                      "Registers a file load handler procedure.",
                                      "Registers a procedural database procedure to be called to load files 
of a particular file format.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1011,7 +982,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-register-save-handler");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-register-save-handler",
                                      "Registers a file save handler procedure.",
                                      "Registers a procedural database procedure to be called to save files 
in a particular file format.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1049,7 +1019,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-register-file-handler-priority");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-register-file-handler-priority",
                                      "Sets the priority of a file handler procedure.",
                                      "Sets the priority of a file handler procedure. When more than one 
procedure matches a given file, the procedure with the lowest priority is used; if more than one procedure 
has the lowest priority, it is unspecified which one of them is used. The default priority for file handler 
procedures is 0.",
                                      "Ell",
@@ -1079,7 +1048,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-register-file-handler-mime");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-register-file-handler-mime",
                                      "Associates MIME types with a file handler procedure.",
                                      "Registers MIME types for a file handler procedure. This allows GIMP to 
determine the MIME type of the file opened or saved using this procedure. It is recommended that only one 
MIME type is registered per file procedure; when registering more than one MIME type, GIMP will associate the 
first one with files opened or saved with this procedure.",
                                      "Sven Neumann <sven gimp org>",
@@ -1110,7 +1078,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-register-file-handler-uri");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-register-file-handler-uri",
                                      "Registers a file handler procedure as capable of handling URIs.",
                                      "Registers a file handler procedure as capable of handling URIs. This 
allows GIMP to call the procedure directly for all kinds of URIs, and the 'filename' traditionally passed to 
file procedures turns into an URI.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1134,7 +1101,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-register-file-handler-raw");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-register-file-handler-raw",
                                      "Registers a file handler procedure as capable of handling raw camera 
files.",
                                      "Registers a file handler procedure as capable of handling raw digital 
camera files. Use this procedure only to register raw load handlers, calling it on a save handler will 
generate an error.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1158,7 +1124,6 @@ register_fileops_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-register-thumbnail-loader");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-register-thumbnail-loader",
                                      "Associates a thumbnail loader with a file load procedure.",
                                      "Some file formats allow for embedded thumbnails, other file formats 
contain a scalable image or provide the image data in different resolutions. A file plug-in for such a format 
may register a special procedure that allows GIMP to load a thumbnail preview of the image. This procedure is 
then associated with the standard load procedure using this function.",
                                      "Sven Neumann <sven gimp org>",
diff --git a/app/pdb/floating-sel-cmds.c b/app/pdb/floating-sel-cmds.c
index 54bc434d26..a28f6105d6 100644
--- a/app/pdb/floating-sel-cmds.c
+++ b/app/pdb/floating-sel-cmds.c
@@ -190,7 +190,6 @@ register_floating_sel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-floating-sel-remove");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-floating-sel-remove",
                                      "Remove the specified floating selection from its associated drawable.",
                                      "This procedure removes the floating selection completely, without any 
side effects. The associated drawable is then set to active.",
                                      "Spencer Kimball & Peter Mattis",
@@ -213,7 +212,6 @@ register_floating_sel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-floating-sel-anchor");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-floating-sel-anchor",
                                      "Anchor the specified floating selection to its associated drawable.",
                                      "This procedure anchors the floating selection to its associated 
drawable. This is similar to merging with a merge type of ClipToBottomLayer. The floating selection layer is 
no longer valid after this operation.",
                                      "Spencer Kimball & Peter Mattis",
@@ -236,7 +234,6 @@ register_floating_sel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-floating-sel-to-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-floating-sel-to-layer",
                                      "Transforms the specified floating selection into a layer.",
                                      "This procedure transforms the specified floating selection into a 
layer with the same offsets and extents. The composited image will look precisely the same, but the floating 
selection layer will no longer be clipped to the extents of the drawable it was attached to. The floating 
selection will become the active layer. This procedure will not work if the floating selection has a 
different base type from the underlying image. This might be the case if the floating selection is above an 
auxiliary channel or a layer mask.",
                                      "Spencer Kimball & Peter Mattis",
@@ -259,7 +256,6 @@ register_floating_sel_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-floating-sel-attach");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-floating-sel-attach",
                                      "Attach the specified layer as floating to the specified drawable.",
                                      "This procedure attaches the layer as floating selection to the 
drawable.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/font-select-cmds.c b/app/pdb/font-select-cmds.c
index dc04469fec..79993e4d01 100644
--- a/app/pdb/font-select-cmds.c
+++ b/app/pdb/font-select-cmds.c
@@ -139,7 +139,6 @@ register_font_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-fonts-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-fonts-popup",
                                      "Invokes the Gimp font selection.",
                                      "This procedure opens the font selection dialog.",
                                      "Sven Neumann <sven gimp org>",
@@ -177,7 +176,6 @@ register_font_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-fonts-close-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-fonts-close-popup",
                                      "Close the font selection dialog.",
                                      "This procedure closes an opened font selection dialog.",
                                      "Sven Neumann <sven gimp org>",
@@ -201,7 +199,6 @@ register_font_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-fonts-set-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-fonts-set-popup",
                                      "Sets the current font in a font selection dialog.",
                                      "Sets the current font in a font selection dialog.",
                                      "Sven Neumann <sven gimp org>",
diff --git a/app/pdb/fonts-cmds.c b/app/pdb/fonts-cmds.c
index 47845eb207..2d63de8cfb 100644
--- a/app/pdb/fonts-cmds.c
+++ b/app/pdb/fonts-cmds.c
@@ -104,7 +104,6 @@ register_fonts_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-fonts-refresh");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-fonts-refresh",
                                      "Refresh current fonts. This function always succeeds.",
                                      "This procedure retrieves all fonts currently in the user's font path 
and updates the font dialogs accordingly. Depending on the amount of fonts on the system, this can take 
considerable time.",
                                      "Sven Neumann <sven gimp org>",
@@ -121,7 +120,6 @@ register_fonts_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-fonts-get-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-fonts-get-list",
                                      "Retrieve the list of loaded fonts.",
                                      "This procedure returns a list of the fonts that are currently 
available.",
                                      "Sven Neumann <sven gimp org>",
diff --git a/app/pdb/gimp-cmds.c b/app/pdb/gimp-cmds.c
index e5802b299e..9874f24aeb 100644
--- a/app/pdb/gimp-cmds.c
+++ b/app/pdb/gimp-cmds.c
@@ -245,7 +245,6 @@ register_gimp_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-version");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-version",
                                      "Returns the host GIMP version.",
                                      "This procedure returns the version number of the currently running 
GIMP.",
                                      "Manish Singh",
@@ -269,7 +268,6 @@ register_gimp_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-getpid");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-getpid",
                                      "Returns the PID of the host GIMP process.",
                                      "This procedure returns the process ID of the currently running GIMP.",
                                      "Michael Natterer <mitch gimp org>",
@@ -292,7 +290,6 @@ register_gimp_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-quit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-quit",
                                      "Causes GIMP to exit gracefully.",
                                      "If there are unsaved images in an interactive GIMP session, the user 
will be asked for confirmation. If force is TRUE, the application is quit without querying the user to save 
any dirty images.",
                                      "Spencer Kimball & Peter Mattis",
@@ -315,7 +312,6 @@ register_gimp_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-attach-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-attach-parasite",
                                      "Add a global parasite.",
                                      "This procedure attaches a global parasite. It has no return values.",
                                      "Jay Cox",
@@ -337,7 +333,6 @@ register_gimp_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-detach-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-detach-parasite",
                                      "Removes a global parasite.",
                                      "This procedure detaches a global parasite from. It has no return 
values.",
                                      "Jay Cox",
@@ -361,7 +356,6 @@ register_gimp_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-get-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-get-parasite",
                                      "Look up a global parasite.",
                                      "Finds and returns the global parasite that was previously attached.",
                                      "Jay Cox",
@@ -390,7 +384,6 @@ register_gimp_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-get-parasite-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-get-parasite-list",
                                      "List all parasites.",
                                      "Returns a list of all currently attached global parasites.",
                                      "Marc Lehmann",
@@ -418,7 +411,6 @@ register_gimp_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-temp-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-temp-name",
                                      "Generates a unique filename.",
                                      "Generates a unique filename using the temp path supplied in the user's 
gimprc.",
                                      "Josh MacDonald",
diff --git a/app/pdb/gimppdb-utils.c b/app/pdb/gimppdb-utils.c
index b5d2eda4ff..7afede7847 100644
--- a/app/pdb/gimppdb-utils.c
+++ b/app/pdb/gimppdb-utils.c
@@ -22,6 +22,8 @@
 #include <gdk-pixbuf/gdk-pixbuf.h>
 #include <gegl.h>
 
+#include "libgimpbase/gimpbase.h"
+
 #include "pdb-types.h"
 
 #include "core/gimp.h"
@@ -844,3 +846,20 @@ gimp_pdb_get_vectors_stroke (GimpVectors        *vectors,
 
   return stroke;
 }
+
+gboolean
+gimp_pdb_is_canonical_procedure (const gchar  *procedure_name,
+                                 GError      **error)
+{
+  g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
+
+  if (! gimp_is_canonical_identifier (procedure_name))
+    {
+      g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_ERROR_INVALID_ARGUMENT,
+                   _("Procedure name '%s' is not a canonical identifier"),
+                   procedure_name);
+      return FALSE;
+    }
+
+  return TRUE;
+}
diff --git a/app/pdb/gimppdb-utils.h b/app/pdb/gimppdb-utils.h
index 83b51c04ab..0e66664f05 100644
--- a/app/pdb/gimppdb-utils.h
+++ b/app/pdb/gimppdb-utils.h
@@ -113,5 +113,8 @@ GimpStroke    * gimp_pdb_get_vectors_stroke     (GimpVectors        *vectors,
                                                  GimpPDBItemModify   modify,
                                                  GError            **error);
 
+gboolean        gimp_pdb_is_canonical_procedure (const gchar        *procedure_name,
+                                                 GError            **error);
+
 
 #endif /* __GIMP_PDB_UTILS_H__ */
diff --git a/app/pdb/gimpprocedure.c b/app/pdb/gimpprocedure.c
index e72d54963a..ebb00d72e7 100644
--- a/app/pdb/gimpprocedure.c
+++ b/app/pdb/gimpprocedure.c
@@ -144,7 +144,6 @@ gimp_procedure_get_memsize (GimpObject *object,
 
   if (! procedure->static_strings)
     {
-      memsize += gimp_string_get_memsize (procedure->original_name);
       memsize += gimp_string_get_memsize (procedure->blurb);
       memsize += gimp_string_get_memsize (procedure->help);
       memsize += gimp_string_get_memsize (procedure->authors);
@@ -264,7 +263,6 @@ gimp_procedure_new (GimpMarshalFunc marshal_func)
 
 void
 gimp_procedure_set_strings (GimpProcedure *procedure,
-                            const gchar   *original_name,
                             const gchar   *blurb,
                             const gchar   *help,
                             const gchar   *authors,
@@ -276,20 +274,18 @@ gimp_procedure_set_strings (GimpProcedure *procedure,
 
   gimp_procedure_free_strings (procedure);
 
-  procedure->original_name = g_strdup (original_name);
-  procedure->blurb         = g_strdup (blurb);
-  procedure->help          = g_strdup (help);
-  procedure->authors       = g_strdup (authors);
-  procedure->copyright     = g_strdup (copyright);
-  procedure->date          = g_strdup (date);
-  procedure->deprecated    = g_strdup (deprecated);
+  procedure->blurb      = g_strdup (blurb);
+  procedure->help       = g_strdup (help);
+  procedure->authors    = g_strdup (authors);
+  procedure->copyright  = g_strdup (copyright);
+  procedure->date       = g_strdup (date);
+  procedure->deprecated = g_strdup (deprecated);
 
   procedure->static_strings = FALSE;
 }
 
 void
 gimp_procedure_set_static_strings (GimpProcedure *procedure,
-                                   const gchar   *original_name,
                                    const gchar   *blurb,
                                    const gchar   *help,
                                    const gchar   *authors,
@@ -301,20 +297,18 @@ gimp_procedure_set_static_strings (GimpProcedure *procedure,
 
   gimp_procedure_free_strings (procedure);
 
-  procedure->original_name = (gchar *) original_name;
-  procedure->blurb         = (gchar *) blurb;
-  procedure->help          = (gchar *) help;
-  procedure->authors       = (gchar *) authors;
-  procedure->copyright     = (gchar *) copyright;
-  procedure->date          = (gchar *) date;
-  procedure->deprecated    = (gchar *) deprecated;
+  procedure->blurb      = (gchar *) blurb;
+  procedure->help       = (gchar *) help;
+  procedure->authors    = (gchar *) authors;
+  procedure->copyright  = (gchar *) copyright;
+  procedure->date       = (gchar *) date;
+  procedure->deprecated = (gchar *) deprecated;
 
   procedure->static_strings = TRUE;
 }
 
 void
 gimp_procedure_take_strings (GimpProcedure *procedure,
-                             gchar         *original_name,
                              gchar         *blurb,
                              gchar         *help,
                              gchar         *authors,
@@ -326,13 +320,12 @@ gimp_procedure_take_strings (GimpProcedure *procedure,
 
   gimp_procedure_free_strings (procedure);
 
-  procedure->original_name = original_name;
-  procedure->blurb         = blurb;
-  procedure->help          = help;
-  procedure->authors       = authors;
-  procedure->copyright     = copyright;
-  procedure->date          = date;
-  procedure->deprecated    = deprecated;
+  procedure->blurb      = blurb;
+  procedure->help       = help;
+  procedure->authors    = authors;
+  procedure->copyright  = copyright;
+  procedure->date       = date;
+  procedure->deprecated = deprecated;
 
   procedure->static_strings = FALSE;
 }
@@ -698,8 +691,8 @@ gimp_procedure_name_compare (GimpProcedure *proc1,
                              GimpProcedure *proc2)
 {
   /* Assume there always is a name, don't bother with NULL checks */
-  return strcmp (proc1->original_name,
-                 proc2->original_name);
+  return strcmp (gimp_object_get_name (proc1),
+                 gimp_object_get_name (proc2));
 }
 
 /*  private functions  */
@@ -709,7 +702,6 @@ gimp_procedure_free_strings (GimpProcedure *procedure)
 {
   if (! procedure->static_strings)
     {
-      g_free (procedure->original_name);
       g_free (procedure->blurb);
       g_free (procedure->help);
       g_free (procedure->authors);
@@ -718,13 +710,12 @@ gimp_procedure_free_strings (GimpProcedure *procedure)
       g_free (procedure->deprecated);
     }
 
-  procedure->original_name = NULL;
-  procedure->blurb         = NULL;
-  procedure->help          = NULL;
-  procedure->authors       = NULL;
-  procedure->copyright     = NULL;
-  procedure->date          = NULL;
-  procedure->deprecated    = NULL;
+  procedure->blurb      = NULL;
+  procedure->help       = NULL;
+  procedure->authors    = NULL;
+  procedure->copyright  = NULL;
+  procedure->date       = NULL;
+  procedure->deprecated = NULL;
 
   procedure->static_strings = FALSE;
 }
diff --git a/app/pdb/gimpprocedure.h b/app/pdb/gimpprocedure.h
index 36ec3bc670..5fcd222abd 100644
--- a/app/pdb/gimpprocedure.h
+++ b/app/pdb/gimpprocedure.h
@@ -48,7 +48,6 @@ struct _GimpProcedure
 
   gboolean          static_strings; /* Are the strings allocated?     */
 
-  gchar            *original_name;  /* Uncanonicalized procedure name */
   gchar            *blurb;          /* Short procedure description    */
   gchar            *help;           /* Detailed help instructions     */
   gchar            *authors;        /* Authors field                  */
@@ -97,7 +96,6 @@ GType            gimp_procedure_get_type           (void) G_GNUC_CONST;
 GimpProcedure  * gimp_procedure_new                (GimpMarshalFunc   marshal_func);
 
 void             gimp_procedure_set_strings        (GimpProcedure    *procedure,
-                                                    const gchar      *original_name,
                                                     const gchar      *blurb,
                                                     const gchar      *help,
                                                     const gchar      *authors,
@@ -105,7 +103,6 @@ void             gimp_procedure_set_strings        (GimpProcedure    *procedure,
                                                     const gchar      *date,
                                                     const gchar      *deprecated);
 void             gimp_procedure_set_static_strings (GimpProcedure    *procedure,
-                                                    const gchar      *original_name,
                                                     const gchar      *blurb,
                                                     const gchar      *help,
                                                     const gchar      *authors,
@@ -113,7 +110,6 @@ void             gimp_procedure_set_static_strings (GimpProcedure    *procedure,
                                                     const gchar      *date,
                                                     const gchar      *deprecated);
 void             gimp_procedure_take_strings       (GimpProcedure    *procedure,
-                                                    gchar            *original_name,
                                                     gchar            *blurb,
                                                     gchar            *help,
                                                     gchar            *authors,
diff --git a/app/pdb/gimprc-cmds.c b/app/pdb/gimprc-cmds.c
index 951b5d9655..820a3572e5 100644
--- a/app/pdb/gimprc-cmds.c
+++ b/app/pdb/gimprc-cmds.c
@@ -223,7 +223,6 @@ register_gimprc_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gimprc-query");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gimprc-query",
                                      "Queries the gimprc file parser for information on a specified token.",
                                      "This procedure is used to locate additional information contained in 
the gimprc file considered extraneous to the operation of GIMP. Plug-ins that need configuration information 
can expect it will be stored in the user gimprc file and can use this procedure to retrieve it. This query 
procedure will return the value associated with the specified token. This corresponds _only_ to entries with 
the format: (<token> <value>). The value must be a string. Entries not corresponding to this format will 
cause warnings to be issued on gimprc parsing and will not be queryable.",
                                      "Spencer Kimball & Peter Mattis",
@@ -254,7 +253,6 @@ register_gimprc_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gimprc-set");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gimprc-set",
                                      "Sets a gimprc token to a value and saves it in the gimprc.",
                                      "This procedure is used to add or change additional information in the 
gimprc file that is considered extraneous to the operation of GIMP. Plug-ins that need configuration 
information can use this function to store it, and 'gimp-gimprc-query' to retrieve it. This will accept 
_only_ string values in UTF-8 encoding.",
                                      "Seth Burgess",
@@ -285,7 +283,6 @@ register_gimprc_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-get-default-comment");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-get-default-comment",
                                      "Get the default image comment as specified in the Preferences.",
                                      "Returns a copy of the default image comment.",
                                      "Spencer Kimball & Peter Mattis",
@@ -309,7 +306,6 @@ register_gimprc_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-get-default-unit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-get-default-unit",
                                      "Get the default unit (taken from the user's locale).",
                                      "Returns the default unit's integer ID.",
                                      "Spencer Kimball & Peter Mattis",
@@ -334,7 +330,6 @@ register_gimprc_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-get-monitor-resolution");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-get-monitor-resolution",
                                      "Get the monitor resolution as specified in the Preferences.",
                                      "Returns the resolution of the monitor in pixels/inch. This value is 
taken from the Preferences (or the windowing system if this is set in the Preferences) and there's no 
guarantee for the value to be reasonable.",
                                      "Spencer Kimball & Peter Mattis",
@@ -363,7 +358,6 @@ register_gimprc_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-get-color-configuration");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-get-color-configuration",
                                      "Get a serialized version of the color management configuration.",
                                      "Returns a string that can be deserialized into a GimpColorConfig 
object representing the current color management configuration.",
                                      "Sven Neumann <sven gimp org>",
@@ -387,7 +381,6 @@ register_gimprc_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-get-module-load-inhibit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-get-module-load-inhibit",
                                      "Get the list of modules which should not be loaded.",
                                      "Returns a copy of the list of modules which should not be loaded.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/gradient-cmds.c b/app/pdb/gradient-cmds.c
index 2c51a8600a..e204ca958f 100644
--- a/app/pdb/gradient-cmds.c
+++ b/app/pdb/gradient-cmds.c
@@ -1457,7 +1457,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-new",
                                      "Creates a new gradient",
                                      "This procedure creates a new, uninitialized gradient",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1488,7 +1487,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-duplicate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-duplicate",
                                      "Duplicates a gradient",
                                      "This procedure creates an identical gradient by a different name",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1519,7 +1517,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-is-editable");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-is-editable",
                                      "Tests if gradient can be edited",
                                      "Returns TRUE if you have permission to change the gradient",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -1549,7 +1546,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-rename");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-rename",
                                      "Rename a gradient",
                                      "This procedure renames a gradient",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1587,7 +1583,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-delete");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-delete",
                                      "Deletes a gradient",
                                      "This procedure deletes a gradient",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1611,7 +1606,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-get-number-of-segments");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-get-number-of-segments",
                                      "Returns the number of segments of the specified gradient",
                                      "This procedure returns the number of segments of the specified 
gradient.",
                                      "Lars-Peter Clausen <lars metafoo de>",
@@ -1641,7 +1635,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-get-uniform-samples");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-get-uniform-samples",
                                      "Sample the specified in uniform parts.",
                                      "This procedure samples the active gradient in the specified number of 
uniform parts. It returns a list of floating-point values which correspond to the RGBA values for each 
sample. The minimum number of samples to take is 2, in which case the returned colors will correspond to the 
{ 0.0, 1.0 } positions in the gradient. For example, if the number of samples is 3, the procedure will return 
the colors at positions { 0.0, 0.5, 1.0 }.",
                                      "Federico Mena Quintero",
@@ -1688,7 +1681,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-get-custom-samples");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-get-custom-samples",
                                      "Sample the specified gradient in custom positions.",
                                      "This procedure samples the active gradient in the specified number of 
points. The procedure will sample the gradient in the specified positions from the list. The left endpoint of 
the gradient corresponds to position 0.0, and the right endpoint corresponds to 1.0. The procedure returns a 
list of floating-point values which correspond to the RGBA values for each sample.",
                                      "Federico Mena Quintero",
@@ -1740,7 +1732,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-get-left-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-get-left-color",
                                      "Retrieves the left endpoint color of the specified segment",
                                      "This procedure retrieves the left endpoint color of the specified 
segment of the specified gradient.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1783,7 +1774,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-set-left-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-set-left-color",
                                      "Sets the left endpoint color of the specified segment",
                                      "This procedure sets the left endpoint color of the specified segment 
of the specified gradient.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1826,7 +1816,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-get-right-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-get-right-color",
                                      "Retrieves the right endpoint color of the specified segment",
                                      "This procedure retrieves the right endpoint color of the specified 
segment of the specified gradient.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1869,7 +1858,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-set-right-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-set-right-color",
                                      "Sets the right endpoint color of the specified segment",
                                      "This procedure sets the right endpoint color of the specified segment 
of the specified gradient.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1912,7 +1900,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-get-left-pos");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-get-left-pos",
                                      "Retrieves the left endpoint position of the specified segment",
                                      "This procedure retrieves the left endpoint position of the specified 
segment of the specified gradient.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -1948,7 +1935,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-set-left-pos");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-set-left-pos",
                                      "Sets the left endpoint position of the specified segment",
                                      "This procedure sets the left endpoint position of the specified 
segment of the specified gradient. The final position will be between the position of the middle point to the 
left to the middle point of the current segment.\n"
                                      "This procedure returns the final position.",
@@ -1991,7 +1977,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-get-middle-pos");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-get-middle-pos",
                                      "Retrieves the middle point position of the specified segment",
                                      "This procedure retrieves the middle point position of the specified 
segment of the specified gradient.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2027,7 +2012,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-set-middle-pos");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-set-middle-pos",
                                      "Sets the middle point position of the specified segment",
                                      "This procedure sets the middle point position of the specified segment 
of the specified gradient. The final position will be between the two endpoints of the segment.\n"
                                      "This procedure returns the final position.",
@@ -2070,7 +2054,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-get-right-pos");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-get-right-pos",
                                      "Retrieves the right endpoint position of the specified segment",
                                      "This procedure retrieves the right endpoint position of the specified 
segment of the specified gradient.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2106,7 +2089,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-set-right-pos");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-set-right-pos",
                                      "Sets the right endpoint position of the specified segment",
                                      "This procedure sets the right endpoint position of the specified 
segment of the specified gradient. The final position will be between the position of the middle point of the 
current segment and the middle point of the segment to the right.\n"
                                      "This procedure returns the final position.",
@@ -2149,7 +2131,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-get-blending-function");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-get-blending-function",
                                      "Retrieves the gradient segment's blending function",
                                      "This procedure retrieves the blending function of the segment at the 
specified gradient name and segment index.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2186,7 +2167,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-get-coloring-type");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-get-coloring-type",
                                      "Retrieves the gradient segment's coloring type",
                                      "This procedure retrieves the coloring type of the segment at the 
specified gradient name and segment index.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2223,7 +2203,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-set-blending-function");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-set-blending-function",
                                      "Change the blending function of a segments range",
                                      "This function changes the blending function of a segment range to the 
specified blending function.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2266,7 +2245,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-set-coloring-type");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-set-coloring-type",
                                      "Change the coloring type of a segments range",
                                      "This function changes the coloring type of a segment range to the 
specified coloring type.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2309,7 +2287,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-flip");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-flip",
                                      "Flip the segment range",
                                      "This function flips a segment range.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2345,7 +2322,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-replicate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-replicate",
                                      "Replicate the segment range",
                                      "This function replicates a segment range a given number of times. 
Instead of the original segment range, several smaller scaled copies of it will appear in equal widths.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2387,7 +2363,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-split-midpoint");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-split-midpoint",
                                      "Splits each segment in the segment range at midpoint",
                                      "This function splits each segment in the segment range at its 
midpoint.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2423,7 +2398,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-split-uniform");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-split-uniform",
                                      "Splits each segment in the segment range uniformly",
                                      "This function splits each segment in the segment range uniformly 
according to the number of times specified by the parameter.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2465,7 +2439,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-delete");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-delete",
                                      "Delete the segment range",
                                      "This function deletes a segment range.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2501,7 +2474,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-redistribute-handles");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-redistribute-handles",
                                      "Uniformly redistribute the segment range's handles",
                                      "This function redistributes the handles of the specified segment range 
of the specified gradient, so they'll be evenly spaced.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2537,7 +2509,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-blend-colors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-blend-colors",
                                      "Blend the colors of the segment range.",
                                      "This function blends the colors (but not the opacity) of the segments' 
range of the gradient. Using it, the colors' transition will be uniform across the range.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2573,7 +2544,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-blend-opacity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-blend-opacity",
                                      "Blend the opacity of the segment range.",
                                      "This function blends the opacity (but not the colors) of the segments' 
range of the gradient. Using it, the opacity's transition will be uniform across the range.",
                                      "Shlomi Fish <shlomif iglu org il>",
@@ -2609,7 +2579,6 @@ register_gradient_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradient-segment-range-move");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradient-segment-range-move",
                                      "Move the position of an entire segment range by a delta.",
                                      "This function moves the position of an entire segment range by a 
delta. The actual delta (which is returned) will be limited by the control points of the neighboring 
segments.",
                                      "Shlomi Fish <shlomif iglu org il>",
diff --git a/app/pdb/gradient-select-cmds.c b/app/pdb/gradient-select-cmds.c
index 8a35cd48c2..ca19862006 100644
--- a/app/pdb/gradient-select-cmds.c
+++ b/app/pdb/gradient-select-cmds.c
@@ -142,7 +142,6 @@ register_gradient_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradients-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradients-popup",
                                      "Invokes the Gimp gradients selection.",
                                      "This procedure opens the gradient selection dialog.",
                                      "Andy Thomas",
@@ -186,7 +185,6 @@ register_gradient_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradients-close-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradients-close-popup",
                                      "Close the gradient selection dialog.",
                                      "This procedure closes an opened gradient selection dialog.",
                                      "Andy Thomas",
@@ -210,7 +208,6 @@ register_gradient_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradients-set-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradients-set-popup",
                                      "Sets the current gradient in a gradient selection dialog.",
                                      "Sets the current gradient in a gradient selection dialog.",
                                      "Andy Thomas",
diff --git a/app/pdb/gradients-cmds.c b/app/pdb/gradients-cmds.c
index 37af4129c2..62bf11ab19 100644
--- a/app/pdb/gradients-cmds.c
+++ b/app/pdb/gradients-cmds.c
@@ -101,7 +101,6 @@ register_gradients_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradients-refresh");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradients-refresh",
                                      "Refresh current gradients. This function always succeeds.",
                                      "This procedure retrieves all gradients currently in the user's 
gradient path and updates the gradient dialogs accordingly.",
                                      "Michael Natterer <mitch gimp org>",
@@ -118,7 +117,6 @@ register_gradients_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-gradients-get-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-gradients-get-list",
                                      "Retrieve the list of loaded gradients.",
                                      "This procedure returns a list of the gradients that are currently 
loaded. You can later use the 'gimp-context-set-gradient' function to set the active gradient.",
                                      "Federico Mena Quintero",
diff --git a/app/pdb/help-cmds.c b/app/pdb/help-cmds.c
index 66aa82509b..c97d9c29be 100644
--- a/app/pdb/help-cmds.c
+++ b/app/pdb/help-cmds.c
@@ -82,7 +82,6 @@ register_help_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-help");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-help",
                                      "Load a help page.",
                                      "This procedure loads the specified help page into the helpbrowser or 
what ever is configured as help viewer. The help page is identified by its domain and ID: if help_domain is 
NULL, we use the help_domain which was registered using the 'gimp-plugin-help-register' procedure. If 
help_domain is NULL and no help domain was registered, the help domain of the main GIMP installation is 
used.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/image-cmds.c b/app/pdb/image-cmds.c
index ddaaf05e5c..9d568c25da 100644
--- a/app/pdb/image-cmds.c
+++ b/app/pdb/image-cmds.c
@@ -2770,7 +2770,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-is-valid");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-is-valid",
                                      "Returns TRUE if the image is valid.",
                                      "This procedure checks if the given image ID is valid and refers to an 
existing image.",
                                      "Sven Neumann <sven gimp org>",
@@ -2799,7 +2798,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-list",
                                      "Returns the list of images currently open.",
                                      "This procedure returns the list of images currently open in GIMP.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2827,7 +2825,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-new",
                                      "Creates a new image with the specified width, height, and type.",
                                      "Creates a new image, undisplayed, with the specified extents and type. 
A layer should be created and added before this image is displayed, or subsequent calls to 'gimp-display-new' 
with this image as an argument will fail. Layers can be created using the 'gimp-layer-new' commands. They can 
be added to an image using the 'gimp-image-insert-layer' command.\n"
                                      "\n"
@@ -2871,7 +2868,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-new-with-precision");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-new-with-precision",
                                      "Creates a new image with the specified width, height, type and 
precision.",
                                      "Creates a new image, undisplayed with the specified extents, type and 
precision. Indexed images can only be created at GIMP_PRECISION_U8_NON_LINEAR precision. See 'gimp-image-new' 
for further details.",
                                      "Michael Natterer <mitch gimp org>",
@@ -2920,7 +2916,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-duplicate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-duplicate",
                                      "Duplicate the specified image",
                                      "This procedure duplicates the specified image, copying all layers, 
channels, and image information.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2949,7 +2944,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-delete");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-delete",
                                      "Delete the specified image.",
                                      "If there are no displays associated with this image it will be 
deleted. This means that you can not delete an image through the PDB that was created by the user. If the 
associated display was however created through the PDB and you know the display ID, you may delete the 
display. Removal of the last associated display will then delete the image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2972,7 +2966,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-base-type");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-base-type",
                                      "Get the base type of the image.",
                                      "This procedure returns the image's base type. Layers in the image must 
be of this subtype, but can have an optional alpha channel.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3002,7 +2995,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-precision");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-precision",
                                      "Get the precision of the image.",
                                      "This procedure returns the image's precision.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3032,7 +3024,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-default-new-layer-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-default-new-layer-mode",
                                      "Get the default mode for newly created layers of this image.",
                                      "Returns the default mode for newly created layers of this image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3062,7 +3053,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-width");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-width",
                                      "Return the width of the image",
                                      "This procedure returns the image's width. This value is independent of 
any of the layers in this image. This is the \"canvas\" width.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3091,7 +3081,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-height");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-height",
                                      "Return the height of the image",
                                      "This procedure returns the image's height. This value is independent 
of any of the layers in this image. This is the \"canvas\" height.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3120,7 +3109,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-layers");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-layers",
                                      "Returns the list of layers contained in the specified image.",
                                      "This procedure returns the list of layers contained in the specified 
image. The order of layers is from topmost to bottommost.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3154,7 +3142,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-channels");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-channels",
                                      "Returns the list of channels contained in the specified image.",
                                      "This procedure returns the list of channels contained in the specified 
image. This does not include the selection mask, or layer masks. The order is from topmost to bottommost. 
Note that \"channels\" are custom channels and do not include the image's color components.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3188,7 +3175,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-vectors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-vectors",
                                      "Returns the list of vectors contained in the specified image.",
                                      "This procedure returns the list of vectors contained in the specified 
image.",
                                      "Simon Budig",
@@ -3222,7 +3208,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-active-drawable");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-active-drawable",
                                      "Get the image's active drawable",
                                      "This procedure returns the ID of the image's active drawable. This can 
be either a layer, a channel, or a layer mask. The active drawable is specified by the active image channel. 
If that is -1, then by the active image layer. If the active image layer has a layer mask and the layer mask 
is in edit mode, then the layer mask is the active drawable.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3251,7 +3236,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-unset-active-channel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-unset-active-channel",
                                      "Unsets the active channel in the specified image.",
                                      "If an active channel exists, it is unset. There then exists no active 
channel, and if desired, one can be set through a call to 'Set Active Channel'. No error is returned in the 
case of no existing active channel.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3274,7 +3258,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-floating-sel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-floating-sel",
                                      "Return the floating selection of the image.",
                                      "This procedure returns the image's floating selection, if it exists. 
If it doesn't exist, -1 is returned as the layer ID.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3303,7 +3286,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-floating-sel-attached-to");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-floating-sel-attached-to",
                                      "Return the drawable the floating selection is attached to.",
                                      "This procedure returns the drawable the image's floating selection is 
attached to, if it exists. If it doesn't exist, -1 is returned as the drawable ID.",
                                      "Wolfgang Hofer",
@@ -3332,7 +3314,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-pick-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-pick-color",
                                      "Determine the color at the given drawable coordinates",
                                      "This tool determines the color at the specified coordinates. The 
returned color is an RGB triplet even for grayscale and indexed drawables. If the coordinates lie outside of 
the extents of the specified drawable, then an error is returned. If the drawable has an alpha channel, the 
algorithm examines the alpha value of the drawable at the coordinates. If the alpha value is completely 
transparent (0), then an error is returned. If the sample_merged parameter is TRUE, the data of the composite 
image will be used instead of that for the specified drawable. This is equivalent to sampling for colors 
after merging all visible layers. In the case of a merged sampling, the supplied drawable is ignored.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3398,7 +3379,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-pick-correlate-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-pick-correlate-layer",
                                      "Find the layer visible at the specified coordinates.",
                                      "This procedure finds the layer which is visible at the specified 
coordinates. Layers which do not qualify are those whose extents do not pass within the specified 
coordinates, or which are transparent at the specified coordinates. This procedure will return -1 if no layer 
is found.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3439,7 +3419,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-insert-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-insert-layer",
                                      "Add the specified layer to the image.",
                                      "This procedure adds the specified layer to the image at the given 
position. If the specified parent is a valid layer group (See 'gimp-item-is-group' and 
'gimp-layer-group-new') then the layer is added inside the group. If the parent is 0, the layer is added 
inside the main stack, outside of any group. The position argument specifies the location of the layer inside 
the stack (or the group, if a valid parent was supplied), starting from the top (0) and increasing. If the 
position is specified as -1 and the parent is specified as 0, then the layer is inserted above the active 
layer, or inside the group if the active layer is a layer group. The layer type must be compatible with the 
image base type.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3480,7 +3459,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-remove-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-remove-layer",
                                      "Remove the specified layer from the image.",
                                      "This procedure removes the specified layer from the image. If the 
layer doesn't exist, an error is returned. If there are no layers left in the image, this call will fail. If 
this layer is the last layer remaining, the image will become empty and have no active layer.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3509,7 +3487,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-freeze-layers");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-freeze-layers",
                                      "Freeze the image's layer list.",
                                      "This procedure freezes the layer list of the image, suppressing any 
updates to the Layers dialog in response to changes to the image's layers. This can significantly improve 
performance while applying changes affecting the layer list.\n"
                                      "\n"
@@ -3534,7 +3511,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-thaw-layers");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-thaw-layers",
                                      "Thaw the image's layer list.",
                                      "This procedure thaws the layer list of the image, re-enabling updates 
to the Layers dialog.\n"
                                      "\n"
@@ -3559,7 +3535,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-insert-channel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-insert-channel",
                                      "Add the specified channel to the image.",
                                      "This procedure adds the specified channel to the image at the given 
position. Since channel groups are not currently supported, the parent argument must always be 0. The 
position argument specifies the location of the channel inside the stack, starting from the top (0) and 
increasing. If the position is specified as -1, then the channel is inserted above the active channel.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3600,7 +3575,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-remove-channel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-remove-channel",
                                      "Remove the specified channel from the image.",
                                      "This procedure removes the specified channel from the image. If the 
channel doesn't exist, an error is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3629,7 +3603,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-freeze-channels");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-freeze-channels",
                                      "Freeze the image's channel list.",
                                      "This procedure freezes the channel list of the image, suppressing any 
updates to the Channels dialog in response to changes to the image's channels. This can significantly improve 
performance while applying changes affecting the channel list.\n"
                                      "\n"
@@ -3654,7 +3627,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-thaw-channels");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-thaw-channels",
                                      "Thaw the image's channel list.",
                                      "This procedure thaws the channel list of the image, re-enabling 
updates to the Channels dialog.\n"
                                      "\n"
@@ -3679,7 +3651,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-insert-vectors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-insert-vectors",
                                      "Add the specified vectors to the image.",
                                      "This procedure adds the specified vectors to the image at the given 
position. Since vectors groups are not currently supported, the parent argument must always be 0. The 
position argument specifies the location of the vectors inside the stack, starting from the top (0) and 
increasing. If the position is specified as -1, then the vectors is inserted above the active vectors.",
                                      "Spencer Kimball & Peter Mattis",
@@ -3720,7 +3691,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-remove-vectors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-remove-vectors",
                                      "Remove the specified path from the image.",
                                      "This procedure removes the specified path from the image. If the path 
doesn't exist, an error is returned.",
                                      "Simon Budig",
@@ -3749,7 +3719,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-freeze-vectors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-freeze-vectors",
                                      "Freeze the image's vectors list.",
                                      "This procedure freezes the vectors list of the image, suppressing any 
updates to the Paths dialog in response to changes to the image's vectors. This can significantly improve 
performance while applying changes affecting the vectors list.\n"
                                      "\n"
@@ -3774,7 +3743,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-thaw-vectors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-thaw-vectors",
                                      "Thaw the image's vectors list.",
                                      "This procedure thaws the vectors list of the image, re-enabling 
updates to the Paths dialog.\n"
                                      "\n"
@@ -3799,7 +3767,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-item-position");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-item-position",
                                      "Returns the position of the item in its level of its item tree.",
                                      "This procedure determines the position of the specified item in its 
level in its item tree in the image. If the item doesn't exist in the image, or the item is not part of an 
item tree, an error is returned.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3834,7 +3801,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-raise-item");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-raise-item",
                                      "Raise the specified item in its level in its item tree",
                                      "This procedure raises the specified item one step in the item tree. 
The procedure call will fail if there is no item above it.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3863,7 +3829,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-lower-item");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-lower-item",
                                      "Lower the specified item in its level in its item tree",
                                      "This procedure lowers the specified item one step in the item tree. 
The procedure call will fail if there is no item below it.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3892,7 +3857,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-raise-item-to-top");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-raise-item-to-top",
                                      "Raise the specified item to the top of its level in its item tree",
                                      "This procedure raises the specified item to top of its level in the 
item tree. It will not move the item if there is no item above it.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3921,7 +3885,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-lower-item-to-bottom");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-lower-item-to-bottom",
                                      "Lower the specified item to the bottom of its level in its item tree",
                                      "This procedure lowers the specified item to bottom of its level in the 
item tree. It will not move the layer if there is no layer below it.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3950,7 +3913,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-reorder-item");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-reorder-item",
                                      "Reorder the specified item within its item tree",
                                      "This procedure reorders the specified item within its item tree.",
                                      "Michael Natterer <mitch gimp org>",
@@ -3991,7 +3953,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-flatten");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-flatten",
                                      "Flatten all visible layers into a single layer. Discard all invisible 
layers.",
                                      "This procedure combines the visible layers in a manner analogous to 
merging with the CLIP_TO_IMAGE merge type. Non-visible layers are discarded, and the resulting image is 
stripped of its alpha channel.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4020,7 +3981,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-merge-visible-layers");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-merge-visible-layers",
                                      "Merge the visible image layers into one.",
                                      "This procedure combines the visible layers into a single layer using 
the specified merge type. A merge type of EXPAND_AS_NECESSARY expands the final layer to encompass the areas 
of the visible layers. A merge type of CLIP_TO_IMAGE clips the final layer to the extents of the image. A 
merge type of CLIP_TO_BOTTOM_LAYER clips the final layer to the size of the bottommost layer.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4058,7 +4018,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-merge-down");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-merge-down",
                                      "Merge the layer passed and the first visible layer below.",
                                      "This procedure combines the passed layer and the first visible layer 
below it using the specified merge type. A merge type of EXPAND_AS_NECESSARY expands the final layer to 
encompass the areas of the visible layers. A merge type of CLIP_TO_IMAGE clips the final layer to the extents 
of the image. A merge type of CLIP_TO_BOTTOM_LAYER clips the final layer to the size of the bottommost 
layer.",
                                      "Larry Ewing",
@@ -4102,7 +4061,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-colormap");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-colormap",
                                      "Returns the image's colormap",
                                      "This procedure returns an actual pointer to the image's colormap, as 
well as the number of bytes contained in the colormap. The actual number of colors in the transmitted 
colormap will be 'num-bytes' / 3. If the image is not in Indexed color mode, no colormap is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4136,7 +4094,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-colormap");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-colormap",
                                      "Sets the entries in the image's colormap.",
                                      "This procedure sets the entries in the specified image's colormap. The 
number of entries is specified by the 'num-bytes' parameter and corresponds to the number of INT8 triples 
that must be contained in the 'colormap' array. The actual number of colors in the transmitted colormap is 
'num-bytes' / 3.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4170,7 +4127,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-metadata");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-metadata",
                                      "Returns the image's metadata.",
                                      "Returns exif/iptc/xmp metadata from the image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4200,7 +4156,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-metadata");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-metadata",
                                      "Set the image's metadata.",
                                      "Sets exif/iptc/xmp metadata on the image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4230,7 +4185,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-clean-all");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-clean-all",
                                      "Set the image dirty count to 0.",
                                      "This procedure sets the specified image's dirty count to 0, allowing 
operations to occur without having a 'dirtied' image. This is especially useful for creating and loading 
images which should not initially be considered dirty, even though layers must be created, filled, and 
installed in the image. Note that save plug-ins must NOT call this function themselves after saving the 
image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4253,7 +4207,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-is-dirty");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-is-dirty",
                                      "Checks if the image has unsaved changes.",
                                      "This procedure checks the specified image's dirty count to see if it 
needs to be saved. Note that saving the image does not automatically set the dirty count to 0, you need to 
call 'gimp-image-clean-all' after calling a save procedure to make the image clean.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4282,7 +4235,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-thumbnail");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-thumbnail",
                                      "Get a thumbnail of an image.",
                                      "This function gets data from which a thumbnail of an image preview can 
be created. Maximum x or y dimension is 1024 pixels. The pixels are returned in RGB[A] or GRAY[A] format. The 
bpp return value gives the number of bits per pixel in the image.",
                                      "Andy Thomas",
@@ -4346,7 +4298,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-active-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-active-layer",
                                      "Returns the specified image's active layer.",
                                      "If there is an active layer, its ID will be returned, otherwise, -1. 
If a channel is currently active, then no layer will be. If a layer mask is active, then this will return the 
associated layer.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4375,7 +4326,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-active-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-active-layer",
                                      "Sets the specified image's active layer.",
                                      "If the layer exists, it is set as the active layer in the image. Any 
previous active layer or channel is set to inactive. An exception is a previously existing floating 
selection, in which case this procedure will return an execution error.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4404,7 +4354,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-active-channel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-active-channel",
                                      "Returns the specified image's active channel.",
                                      "If there is an active channel, this will return the channel ID, 
otherwise, -1.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4433,7 +4382,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-active-channel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-active-channel",
                                      "Sets the specified image's active channel.",
                                      "If the channel exists, it is set as the active channel in the image. 
Any previous active channel or layer is set to inactive. An exception is a previously existing floating 
selection, in which case this procedure will return an execution error.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4462,7 +4410,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-active-vectors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-active-vectors",
                                      "Returns the specified image's active vectors.",
                                      "If there is an active path, its ID will be returned, otherwise, -1.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4491,7 +4438,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-active-vectors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-active-vectors",
                                      "Sets the specified image's active vectors.",
                                      "If the path exists, it is set as the active path in the image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4520,7 +4466,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-selection");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-selection",
                                      "Returns the specified image's selection.",
                                      "This will always return a valid ID for a selection -- which is 
represented as a channel internally.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4549,7 +4494,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-component-active");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-component-active",
                                      "Returns if the specified image's image component is active.",
                                      "This procedure returns if the specified image's image component (i.e. 
Red, Green, Blue intensity channels in an RGB image) is active or inactive -- whether or not it can be 
modified. If the specified component is not valid for the image type, an error is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4585,7 +4529,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-component-active");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-component-active",
                                      "Sets if the specified image's image component is active.",
                                      "This procedure sets if the specified image's image component (i.e. 
Red, Green, Blue intensity channels in an RGB image) is active or inactive -- whether or not it can be 
modified. If the specified component is not valid for the image type, an error is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4621,7 +4564,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-component-visible");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-component-visible",
                                      "Returns if the specified image's image component is visible.",
                                      "This procedure returns if the specified image's image component (i.e. 
Red, Green, Blue intensity channels in an RGB image) is visible or invisible -- whether or not it can be 
seen. If the specified component is not valid for the image type, an error is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4657,7 +4599,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-component-visible");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-component-visible",
                                      "Sets if the specified image's image component is visible.",
                                      "This procedure sets if the specified image's image component (i.e. 
Red, Green, Blue intensity channels in an RGB image) is visible or invisible -- whether or not it can be 
seen. If the specified component is not valid for the image type, an error is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4693,7 +4634,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-filename");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-filename",
                                      "Returns the specified image's filename.",
                                      "This procedure returns the specified image's filename in the 
filesystem encoding. The image has a filename only if it was loaded or imported from a file or has since been 
saved or exported. Otherwise, this function returns %NULL. See also 'gimp-image-get-uri'.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4723,7 +4663,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-filename");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-filename",
                                      "Sets the specified image's filename.",
                                      "This procedure sets the specified image's filename. The filename 
should be in the filesystem encoding.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4753,7 +4692,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-uri");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-uri",
                                      "Returns the URI for the specified image.",
                                      "This procedure returns the URI associated with the specified image. 
The image has an URI only if it was loaded or imported from a file or has since been saved or exported. 
Otherwise, this function returns %NULL. See also gimp-image-get-imported-uri to get the URI of the current 
file if it was imported from a non-GIMP file format and not yet saved, or gimp-image-get-exported-uri if the 
image has been exported to a non-GIMP file format.",
                                      "Sven Neumann <sven gimp org>",
@@ -4783,7 +4721,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-xcf-uri");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-xcf-uri",
                                      "Returns the XCF URI for the specified image.",
                                      "This procedure returns the XCF URI associated with the image. If there 
is no such URI, this procedure returns %NULL.",
                                      "Eric Grivel <gimp lumenssolutions com>",
@@ -4813,7 +4750,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-imported-uri");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-imported-uri",
                                      "Returns the imported URI for the specified image.",
                                      "This procedure returns the URI associated with the specified image if 
the image was imported from a non-native Gimp format. If the image was not imported, or has since been saved 
in the native Gimp format, this procedure returns %NULL.",
                                      "Eric Grivel <gimp lumenssolutions com>",
@@ -4843,7 +4779,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-exported-uri");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-exported-uri",
                                      "Returns the exported URI for the specified image.",
                                      "This procedure returns the URI associated with the specified image if 
the image was exported a non-native GIMP format. If the image was not exported, this procedure returns 
%NULL.",
                                      "Eric Grivel <gimp lumenssolutions com>",
@@ -4873,7 +4808,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-name",
                                      "Returns the specified image's name.",
                                      "This procedure returns the image's name. If the image has a filename 
or an URI, then the returned name contains the filename's or URI's base name (the last component of the 
path). Otherwise it is the translated string \"Untitled\". The returned name is formatted like the image name 
in the image window title, it may contain '[]', '(imported)' etc. and should only be used to label user 
interface elements. Never use it to construct filenames.",
                                      "Spencer Kimball & Peter Mattis",
@@ -4903,7 +4837,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-resolution");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-resolution",
                                      "Returns the specified image's resolution.",
                                      "This procedure returns the specified image's resolution in dots per 
inch. This value is independent of any of the layers in this image.",
                                      "Austin Donnelly",
@@ -4938,7 +4871,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-resolution");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-resolution",
                                      "Sets the specified image's resolution.",
                                      "This procedure sets the specified image's resolution in dots per inch. 
This value is independent of any of the layers in this image. No scaling or resizing is performed.",
                                      "Austin Donnelly",
@@ -4973,7 +4905,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-unit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-unit",
                                      "Returns the specified image's unit.",
                                      "This procedure returns the specified image's unit. This value is 
independent of any of the layers in this image. See the gimp_unit_*() procedure definitions for the valid 
range of unit IDs and a description of the unit system.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5004,7 +4935,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-unit");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-unit",
                                      "Sets the specified image's unit.",
                                      "This procedure sets the specified image's unit. No scaling or resizing 
is performed. This value is independent of any of the layers in this image. See the gimp_unit_*() procedure 
definitions for the valid range of unit IDs and a description of the unit system.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5035,7 +4965,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-tattoo-state");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-tattoo-state",
                                      "Returns the tattoo state associated with the image.",
                                      "This procedure returns the tattoo state of the image. Use only by 
save/load plug-ins that wish to preserve an images tattoo state. Using this function at other times will 
produce unexpected results.",
                                      "Andy Thomas",
@@ -5064,7 +4993,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-tattoo-state");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-tattoo-state",
                                      "Set the tattoo state associated with the image.",
                                      "This procedure sets the tattoo state of the image. Use only by 
save/load plug-ins that wish to preserve an images tattoo state. Using this function at other times will 
produce unexpected results. A full check of uniqueness of states in layers, channels and paths will be 
performed by this procedure and a execution failure will be returned if this fails. A failure will also be 
returned if the new tattoo state value is less than the maximum tattoo value from all of the tattoos from the 
paths, layers and channels. After the image data has been loaded and all the tattoos have been set then this 
is the last procedure that should be called. If effectively does a status check on the tattoo values that 
have been set to make sure that all is OK.",
                                      "Andy Thomas",
@@ -5093,7 +5021,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-layer-by-tattoo");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-layer-by-tattoo",
                                      "Find a layer with a given tattoo in an image.",
                                      "This procedure returns the layer with the given tattoo in the 
specified image.",
                                      "Jay Cox",
@@ -5128,7 +5055,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-channel-by-tattoo");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-channel-by-tattoo",
                                      "Find a channel with a given tattoo in an image.",
                                      "This procedure returns the channel with the given tattoo in the 
specified image.",
                                      "Jay Cox",
@@ -5163,7 +5089,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-vectors-by-tattoo");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-vectors-by-tattoo",
                                      "Find a vectors with a given tattoo in an image.",
                                      "This procedure returns the vectors with the given tattoo in the 
specified image.",
                                      "Simon Budig",
@@ -5198,7 +5123,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-layer-by-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-layer-by-name",
                                      "Find a layer with a given name in an image.",
                                      "This procedure returns the layer with the given name in the specified 
image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5234,7 +5158,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-channel-by-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-channel-by-name",
                                      "Find a channel with a given name in an image.",
                                      "This procedure returns the channel with the given name in the 
specified image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5270,7 +5193,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-vectors-by-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-vectors-by-name",
                                      "Find a vectors with a given name in an image.",
                                      "This procedure returns the vectors with the given name in the 
specified image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -5306,7 +5228,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-attach-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-attach-parasite",
                                      "Add a parasite to an image.",
                                      "This procedure attaches a parasite to an image. It has no return 
values.",
                                      "Jay Cox",
@@ -5334,7 +5255,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-detach-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-detach-parasite",
                                      "Removes a parasite from an image.",
                                      "This procedure detaches a parasite from an image. It has no return 
values.",
                                      "Jay Cox",
@@ -5364,7 +5284,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-parasite",
                                      "Look up a parasite in an image",
                                      "Finds and returns the parasite that was previously attached to an 
image.",
                                      "Jay Cox",
@@ -5399,7 +5318,6 @@ register_image_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-parasite-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-parasite-list",
                                      "List all parasites.",
                                      "Returns a list of all currently attached parasites.",
                                      "Marc Lehmann",
diff --git a/app/pdb/image-color-profile-cmds.c b/app/pdb/image-color-profile-cmds.c
index 1c53d3d3df..dab663b27f 100644
--- a/app/pdb/image-color-profile-cmds.c
+++ b/app/pdb/image-color-profile-cmds.c
@@ -336,7 +336,6 @@ register_image_color_profile_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-color-profile");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-color-profile",
                                      "Returns the image's color profile",
                                      "This procedure returns the image's color profile, or NULL if the image 
has no color profile assigned.",
                                      "Michael Natterer <mitch gimp org>",
@@ -370,7 +369,6 @@ register_image_color_profile_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-effective-color-profile");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-effective-color-profile",
                                      "Returns the color profile that is used for the image",
                                      "This procedure returns the color profile that is actually used for 
this image, which is the profile returned by 'gimp-image-get-color-profile' if the image has a profile 
assigned, or a generated default RGB or grayscale profile, according to the image's type.",
                                      "Michael Natterer <mitch gimp org>",
@@ -404,7 +402,6 @@ register_image_color_profile_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-color-profile");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-color-profile",
                                      "Sets the image's color profile",
                                      "This procedure sets the image's color profile, or unsets it if NULL is 
passed as 'color_profile'. This procedure does no color conversion. However, it will change the pixel format 
of all layers to contain the babl space matching the profile. You must call this procedure before adding 
layers to the image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -438,7 +435,6 @@ register_image_color_profile_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-set-color-profile-from-file");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-set-color-profile-from-file",
                                      "Sets the image's color profile from an ICC file",
                                      "This procedure sets the image's color profile from a file containing 
an ICC profile, or unsets it if NULL is passed as 'uri'. This procedure does no color conversion. However, it 
will change the pixel format of all layers to contain the babl space matching the profile. You must call this 
procedure before adding layers to the image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -468,7 +464,6 @@ register_image_color_profile_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-convert-color-profile");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-convert-color-profile",
                                      "Convert the image's layers to a color profile",
                                      "This procedure converts from the image's color profile (or the default 
RGB or grayscale profile if none is set) to the given color profile. Only RGB and grayscale color profiles 
are accepted, according to the image's type.",
                                      "Michael Natterer <mitch gimp org>",
@@ -515,7 +510,6 @@ register_image_color_profile_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-convert-color-profile-from-file");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-convert-color-profile-from-file",
                                      "Convert the image's layers to a color profile",
                                      "This procedure converts from the image's color profile (or the default 
RGB or grayscale profile if none is set) to an ICC profile specified by 'uri'. Only RGB and grayscale color 
profiles are accepted, according to the image's type.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/image-convert-cmds.c b/app/pdb/image-convert-cmds.c
index 4f679b2b08..d5a9911eb0 100644
--- a/app/pdb/image-convert-cmds.c
+++ b/app/pdb/image-convert-cmds.c
@@ -272,7 +272,6 @@ register_image_convert_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-convert-rgb");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-convert-rgb",
                                      "Convert specified image to RGB color",
                                      "This procedure converts the specified image to RGB color. This process 
requires an image in Grayscale or Indexed color mode. No image content is lost in this process aside from the 
colormap for an indexed image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -295,7 +294,6 @@ register_image_convert_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-convert-grayscale");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-convert-grayscale",
                                      "Convert specified image to grayscale",
                                      "This procedure converts the specified image to grayscale. This process 
requires an image in RGB or Indexed color mode.",
                                      "Spencer Kimball & Peter Mattis",
@@ -318,7 +316,6 @@ register_image_convert_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-convert-indexed");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-convert-indexed",
                                      "Convert specified image to and Indexed image",
                                      "This procedure converts the specified image to 'indexed' color. This 
process requires an image in RGB or Grayscale mode. The 'palette_type' specifies what kind of palette to use, 
A type of '0' means to use an optimal palette of 'num_cols' generated from the colors in the image. A type of 
'1' means to re-use the previous palette (not currently implemented). A type of '2' means to use the 
so-called WWW-optimized palette. Type '3' means to use only black and white colors. A type of '4' means to 
use a palette from the gimp palettes directories. The 'dither type' specifies what kind of dithering to use. 
'0' means no dithering, '1' means standard Floyd-Steinberg error diffusion, '2' means Floyd-Steinberg error 
diffusion with reduced bleeding, '3' means dithering based on pixel location ('Fixed' dithering).",
                                      "Spencer Kimball & Peter Mattis",
@@ -380,7 +377,6 @@ register_image_convert_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-convert-set-dither-matrix");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-convert-set-dither-matrix",
                                      "Set dither matrix for conversion to indexed",
                                      "This procedure sets the dither matrix used when converting images to 
INDEXED mode with positional dithering.",
                                      "David Gowers",
@@ -420,7 +416,6 @@ register_image_convert_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-convert-precision");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-convert-precision",
                                      "Convert the image to the specified precision",
                                      "This procedure converts the image to the specified precision. Note 
that indexed images cannot be converted and are always in GIMP_PRECISION_U8.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/image-grid-cmds.c b/app/pdb/image-grid-cmds.c
index adbcdf0986..5831d16053 100644
--- a/app/pdb/image-grid-cmds.c
+++ b/app/pdb/image-grid-cmds.c
@@ -393,7 +393,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-get-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-get-spacing",
                                      "Gets the spacing of an image's grid.",
                                      "This procedure retrieves the horizontal and vertical spacing of an 
image's grid. It takes the image as parameter.",
                                      "Sylvain Foret",
@@ -428,7 +427,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-set-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-set-spacing",
                                      "Sets the spacing of an image's grid.",
                                      "This procedure sets the horizontal and vertical spacing of an image's 
grid.",
                                      "Sylvain Foret",
@@ -463,7 +461,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-get-offset");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-get-offset",
                                      "Gets the offset of an image's grid.",
                                      "This procedure retrieves the horizontal and vertical offset of an 
image's grid. It takes the image as parameter.",
                                      "Sylvain Foret",
@@ -498,7 +495,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-set-offset");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-set-offset",
                                      "Sets the offset of an image's grid.",
                                      "This procedure sets the horizontal and vertical offset of an image's 
grid.",
                                      "Sylvain Foret",
@@ -533,7 +529,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-get-foreground-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-get-foreground-color",
                                      "Sets the foreground color of an image's grid.",
                                      "This procedure gets the foreground color of an image's grid.",
                                      "Sylvain Foret",
@@ -563,7 +558,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-set-foreground-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-set-foreground-color",
                                      "Gets the foreground color of an image's grid.",
                                      "This procedure sets the foreground color of an image's grid.",
                                      "Sylvain Foret",
@@ -593,7 +587,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-get-background-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-get-background-color",
                                      "Sets the background color of an image's grid.",
                                      "This procedure gets the background color of an image's grid.",
                                      "Sylvain Foret",
@@ -623,7 +616,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-set-background-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-set-background-color",
                                      "Gets the background color of an image's grid.",
                                      "This procedure sets the background color of an image's grid.",
                                      "Sylvain Foret",
@@ -653,7 +645,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-get-style");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-get-style",
                                      "Gets the style of an image's grid.",
                                      "This procedure retrieves the style of an image's grid.",
                                      "Sylvain Foret",
@@ -683,7 +674,6 @@ register_image_grid_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-grid-set-style");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-grid-set-style",
                                      "Sets the style unit of an image's grid.",
                                      "This procedure sets the style of an image's grid. It takes the image 
and the new style as parameters.",
                                      "Sylvain Foret",
diff --git a/app/pdb/image-guides-cmds.c b/app/pdb/image-guides-cmds.c
index 6eb5d27348..4427607889 100644
--- a/app/pdb/image-guides-cmds.c
+++ b/app/pdb/image-guides-cmds.c
@@ -275,7 +275,6 @@ register_image_guides_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-add-hguide");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-add-hguide",
                                      "Add a horizontal guide to an image.",
                                      "This procedure adds a horizontal guide to an image. It takes the input 
image and the y-position of the new guide as parameters. It returns the guide ID of the new guide.",
                                      "Adam D. Moss",
@@ -310,7 +309,6 @@ register_image_guides_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-add-vguide");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-add-vguide",
                                      "Add a vertical guide to an image.",
                                      "This procedure adds a vertical guide to an image. It takes the input 
image and the x-position of the new guide as parameters. It returns the guide ID of the new guide.",
                                      "Adam D. Moss",
@@ -345,7 +343,6 @@ register_image_guides_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-delete-guide");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-delete-guide",
                                      "Deletes a guide from an image.",
                                      "This procedure takes an image and a guide ID as input and removes the 
specified guide from the specified image.",
                                      "Adam D. Moss",
@@ -374,7 +371,6 @@ register_image_guides_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-find-next-guide");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-find-next-guide",
                                      "Find next guide on an image.",
                                      "This procedure takes an image and a guide ID as input and finds the 
guide ID of the successor of the given guide ID in the image's guide list. If the supplied guide ID is 0, the 
procedure will return the first Guide. The procedure will return 0 if given the final guide ID as an argument 
or the image has no guides.",
                                      "Adam D. Moss",
@@ -409,7 +405,6 @@ register_image_guides_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-guide-orientation");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-guide-orientation",
                                      "Get orientation of a guide on an image.",
                                      "This procedure takes an image and a guide ID as input and returns the 
orientations of the guide.",
                                      "Adam D. Moss",
@@ -447,7 +442,6 @@ register_image_guides_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-guide-position");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-guide-position",
                                      "Get position of a guide on an image.",
                                      "This procedure takes an image and a guide ID as input and returns the 
position of the guide relative to the top or left of the image.",
                                      "Adam D. Moss",
diff --git a/app/pdb/image-sample-points-cmds.c b/app/pdb/image-sample-points-cmds.c
index 5d172aa2b2..6dd1ef2015 100644
--- a/app/pdb/image-sample-points-cmds.c
+++ b/app/pdb/image-sample-points-cmds.c
@@ -209,7 +209,6 @@ register_image_sample_points_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-add-sample-point");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-add-sample-point",
                                      "Add a sample point to an image.",
                                      "This procedure adds a sample point to an image. It takes the input 
image and the position of the new sample points as parameters. It returns the sample point ID of the new 
sample point.",
                                      "Michael Natterer <mitch gimp org>",
@@ -250,7 +249,6 @@ register_image_sample_points_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-delete-sample-point");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-delete-sample-point",
                                      "Deletes a sample point from an image.",
                                      "This procedure takes an image and a sample point ID as input and 
removes the specified sample point from the specified image.",
                                      "Michael Natterer <mitch gimp org>",
@@ -279,7 +277,6 @@ register_image_sample_points_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-find-next-sample-point");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-find-next-sample-point",
                                      "Find next sample point on an image.",
                                      "This procedure takes an image and a sample point ID as input and finds 
the sample point ID of the successor of the given sample point ID in the image's sample point list. If the 
supplied sample point ID is 0, the procedure will return the first sample point. The procedure will return 0 
if given the final sample point ID as an argument or the image has no sample points.",
                                      "Michael Natterer <mitch gimp org>",
@@ -314,7 +311,6 @@ register_image_sample_points_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-get-sample-point-position");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-get-sample-point-position",
                                      "Get position of a sample point on an image.",
                                      "This procedure takes an image and a sample point ID as input and 
returns the position of the sample point relative to the top and left of the image.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/image-select-cmds.c b/app/pdb/image-select-cmds.c
index ca91fe9896..2ba0624fdc 100644
--- a/app/pdb/image-select-cmds.c
+++ b/app/pdb/image-select-cmds.c
@@ -363,7 +363,6 @@ register_image_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-select-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-select-color",
                                      "Create a selection by selecting all pixels (in the specified drawable) 
with the same (or similar) color to that specified.",
                                      "This tool creates a selection over the specified image. A by-color 
selection is determined by the supplied color under the constraints of the current context settings. 
Essentially, all pixels (in the drawable) that have color sufficiently close to the specified color (as 
determined by the threshold and criterion context values) are included in the selection. To select 
transparent regions, the color specified must also have minimum alpha.\n"
                                      "\n"
@@ -410,7 +409,6 @@ register_image_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-select-contiguous-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-select-contiguous-color",
                                      "Create a selection by selecting all pixels around specified 
coordinates with the same (or similar) color to that at the coordinates.",
                                      "This tool creates a contiguous selection over the specified image. A 
contiguous color selection is determined by a seed fill under the constraints of the current context 
settings. Essentially, the color at the specified coordinates (in the drawable) is measured and the selection 
expands outwards from that point to any adjacent pixels which are not significantly different (as determined 
by the threshold and criterion context settings). This process continues until no more expansion is possible. 
If antialiasing is turned on, the final selection mask will contain intermediate values based on close misses 
to the threshold bar at pixels along the seed fill boundary.\n"
                                      "\n"
@@ -462,7 +460,6 @@ register_image_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-select-rectangle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-select-rectangle",
                                      "Create a rectangular selection over the specified image;",
                                      "This tool creates a rectangular selection over the specified image. 
The rectangular region can be either added to, subtracted from, or replace the contents of the previous 
selection mask.\n"
                                      "\n"
@@ -518,7 +515,6 @@ register_image_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-select-round-rectangle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-select-round-rectangle",
                                      "Create a rectangular selection with round corners over the specified 
image;",
                                      "This tool creates a rectangular selection with round corners over the 
specified image. The rectangular region can be either added to, subtracted from, or replace the contents of 
the previous selection mask.\n"
                                      "\n"
@@ -586,7 +582,6 @@ register_image_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-select-ellipse");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-select-ellipse",
                                      "Create an elliptical selection over the specified image.",
                                      "This tool creates an elliptical selection over the specified image. 
The elliptical region can be either added to, subtracted from, or replace the contents of the previous 
selection mask.\n"
                                      "\n"
@@ -642,7 +637,6 @@ register_image_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-select-polygon");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-select-polygon",
                                      "Create a polygonal selection over the specified image.",
                                      "This tool creates a polygonal selection over the specified image. The 
polygonal region can be either added to, subtracted from, or replace the contents of the previous selection 
mask. The polygon is specified through an array of floating point numbers and its length. The length of array 
must be 2n, where n is the number of points. Each point is defined by 2 floating point values which 
correspond to the x and y coordinates. If the final point does not connect to the starting point, a 
connecting segment is automatically added.\n"
                                      "\n"
@@ -685,7 +679,6 @@ register_image_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-select-item");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-select-item",
                                      "Transforms the specified item into a selection",
                                      "This procedure renders the item's outline into the current selection 
of the image the item belongs to. What exactly the item's outline is depends on the item type: for layers, 
it's the layer's alpha channel, for vectors the vector's shape.\n"
                                      "\n"
diff --git a/app/pdb/image-transform-cmds.c b/app/pdb/image-transform-cmds.c
index 91bec06bdc..b3629f5ce1 100644
--- a/app/pdb/image-transform-cmds.c
+++ b/app/pdb/image-transform-cmds.c
@@ -237,7 +237,6 @@ register_image_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-resize");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-resize",
                                      "Resize the image to the specified extents.",
                                      "This procedure resizes the image so that it's new width and height are 
equal to the supplied parameters. Offsets are also provided which describe the position of the previous 
image's content. All channels within the image are resized according to the specified parameters; this 
includes the image selection mask. All layers within the image are repositioned according to the specified 
offsets.",
                                      "Spencer Kimball & Peter Mattis",
@@ -284,7 +283,6 @@ register_image_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-resize-to-layers");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-resize-to-layers",
                                      "Resize the image to fit all layers.",
                                      "This procedure resizes the image to the bounding box of all layers of 
the image. All channels within the image are resized to the new size; this includes the image selection mask. 
All layers within the image are repositioned to the new image area.",
                                      "Simon Budig",
@@ -307,7 +305,6 @@ register_image_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-scale");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-scale",
                                      "Scale the image using the default interpolation method.",
                                      "This procedure scales the image so that its new width and height are 
equal to the supplied parameters. All layers and channels within the image are scaled according to the 
specified parameters; this includes the image selection mask. The interpolation method used can be set with 
'gimp-context-set-interpolation'.",
                                      "Spencer Kimball & Peter Mattis",
@@ -342,7 +339,6 @@ register_image_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-crop");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-crop",
                                      "Crop the image to the specified extents.",
                                      "This procedure crops the image so that it's new width and height are 
equal to the supplied parameters. Offsets are also provided which describe the position of the previous 
image's content. All channels and layers within the image are cropped to the new image extents; this includes 
the image selection mask. If any parameters are out of range, an error is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -389,7 +385,6 @@ register_image_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-flip");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-flip",
                                      "Flips the image horizontally or vertically.",
                                      "This procedure flips (mirrors) the image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -421,7 +416,6 @@ register_image_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-rotate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-rotate",
                                      "Rotates the image by the specified degrees.",
                                      "This procedure rotates the image.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/image-undo-cmds.c b/app/pdb/image-undo-cmds.c
index 1a5dfe5a2f..b991ff5974 100644
--- a/app/pdb/image-undo-cmds.c
+++ b/app/pdb/image-undo-cmds.c
@@ -291,7 +291,6 @@ register_image_undo_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-undo-group-start");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-undo-group-start",
                                      "Starts a group undo.",
                                      "This function is used to start a group undo--necessary for logically 
combining two or more undo operations into a single operation. This call must be used in conjunction with a 
'gimp-image-undo-group-end' call.",
                                      "Spencer Kimball & Peter Mattis",
@@ -314,7 +313,6 @@ register_image_undo_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-undo-group-end");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-undo-group-end",
                                      "Finish a group undo.",
                                      "This function must be called once for each 
'gimp-image-undo-group-start' call that is made.",
                                      "Spencer Kimball & Peter Mattis",
@@ -337,7 +335,6 @@ register_image_undo_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-undo-is-enabled");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-undo-is-enabled",
                                      "Check if the image's undo stack is enabled.",
                                      "This procedure checks if the image's undo stack is currently enabled 
or disabled. This is useful when several plug-ins or scripts call each other and want to check if their 
caller has already used 'gimp-image-undo-disable' or 'gimp-image-undo-freeze'.",
                                      "Rapha\xc3\xabl Quinet <raphael gimp org>",
@@ -366,7 +363,6 @@ register_image_undo_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-undo-disable");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-undo-disable",
                                      "Disable the image's undo stack.",
                                      "This procedure disables the image's undo stack, allowing subsequent 
operations to ignore their undo steps. This is generally called in conjunction with 'gimp-image-undo-enable' 
to temporarily disable an image undo stack. This is advantageous because saving undo steps can be time and 
memory intensive.",
                                      "Spencer Kimball & Peter Mattis",
@@ -395,7 +391,6 @@ register_image_undo_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-undo-enable");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-undo-enable",
                                      "Enable the image's undo stack.",
                                      "This procedure enables the image's undo stack, allowing subsequent 
operations to store their undo steps. This is generally called in conjunction with 'gimp-image-undo-disable' 
to temporarily disable an image undo stack.",
                                      "Spencer Kimball & Peter Mattis",
@@ -424,7 +419,6 @@ register_image_undo_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-undo-freeze");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-undo-freeze",
                                      "Freeze the image's undo stack.",
                                      "This procedure freezes the image's undo stack, allowing subsequent 
operations to ignore their undo steps. This is generally called in conjunction with 'gimp-image-undo-thaw' to 
temporarily disable an image undo stack. This is advantageous because saving undo steps can be time and 
memory intensive. 'gimp-image-undo-freeze' / 'gimp-image-undo-thaw' and 'gimp-image-undo-disable' / 
'gimp-image-undo-enable' differ in that the former does not free up all undo steps when undo is thawed, so is 
more suited to interactive in-situ previews. It is important in this case that the image is back to the same 
state it was frozen in before thawing, else 'undo' behaviour is undefined.",
                                      "Adam D. Moss",
@@ -453,7 +447,6 @@ register_image_undo_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-image-undo-thaw");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-image-undo-thaw",
                                      "Thaw the image's undo stack.",
                                      "This procedure thaws the image's undo stack, allowing subsequent 
operations to store their undo steps. This is generally called in conjunction with 'gimp-image-undo-freeze' 
to temporarily freeze an image undo stack. 'gimp-image-undo-thaw' does NOT free the undo stack as 
'gimp-image-undo-enable' does, so is suited for situations where one wishes to leave the undo stack in the 
same state in which one found it despite non-destructively playing with the image in the meantime. An example 
would be in-situ plug-in previews. Balancing freezes and thaws and ensuring image consistency is the 
responsibility of the caller.",
                                      "Adam D. Moss",
diff --git a/app/pdb/item-cmds.c b/app/pdb/item-cmds.c
index c2b4a5f878..68854bbf60 100644
--- a/app/pdb/item-cmds.c
+++ b/app/pdb/item-cmds.c
@@ -1004,7 +1004,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-valid");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-valid",
                                      "Returns TRUE if the item is valid.",
                                      "This procedure checks if the given item ID is valid and refers to an 
existing item.",
                                      "Sven Neumann <sven gimp org>",
@@ -1033,7 +1032,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-image");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-image",
                                      "Returns the item's image.",
                                      "This procedure returns the item's image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1062,7 +1060,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-delete");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-delete",
                                      "Delete a item.",
                                      "This procedure deletes the specified item. This must not be done if 
the image containing this item was already deleted or if the item was already removed from the image. The 
only case in which this procedure is useful is if you want to get rid of a item which has not yet been added 
to an image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1085,7 +1082,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-drawable");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-drawable",
                                      "Returns whether the item is a drawable.",
                                      "This procedure returns TRUE if the specified item is a drawable.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1114,7 +1110,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-layer",
                                      "Returns whether the item is a layer.",
                                      "This procedure returns TRUE if the specified item is a layer.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1143,7 +1138,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-text-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-text-layer",
                                      "Returns whether the item is a text layer.",
                                      "This procedure returns TRUE if the specified item is a text layer.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1172,7 +1166,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-channel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-channel",
                                      "Returns whether the item is a channel.",
                                      "This procedure returns TRUE if the specified item is a channel.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1201,7 +1194,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-layer-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-layer-mask",
                                      "Returns whether the item is a layer mask.",
                                      "This procedure returns TRUE if the specified item is a layer mask.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1230,7 +1222,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-selection");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-selection",
                                      "Returns whether the item is a selection.",
                                      "This procedure returns TRUE if the specified item is a selection.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1259,7 +1250,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-vectors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-vectors",
                                      "Returns whether the item is a vectors.",
                                      "This procedure returns TRUE if the specified item is a vectors.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1288,7 +1278,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-is-group");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-is-group",
                                      "Returns whether the item is a group item.",
                                      "This procedure returns TRUE if the specified item is a group item 
which can have children.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1317,7 +1306,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-parent");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-parent",
                                      "Returns the item's parent item.",
                                      "This procedure returns the item's parent item, if any.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1346,7 +1334,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-children");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-children",
                                      "Returns the item's list of children.",
                                      "This procedure returns the list of items which are children of the 
specified item. The order is topmost to bottommost.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1380,7 +1367,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-expanded");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-expanded",
                                      "Returns whether the item is expanded.",
                                      "This procedure returns TRUE if the specified item is expanded.",
                                      "Ell",
@@ -1409,7 +1395,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-set-expanded");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-set-expanded",
                                      "Sets the expanded state of the item.",
                                      "This procedure expands or collapses the item.",
                                      "Ell",
@@ -1438,7 +1423,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-name",
                                      "Get the name of the specified item.",
                                      "This procedure returns the specified item's name.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1468,7 +1452,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-set-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-set-name",
                                      "Set the name of the specified item.",
                                      "This procedure sets the specified item's name.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1498,7 +1481,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-visible");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-visible",
                                      "Get the visibility of the specified item.",
                                      "This procedure returns the specified item's visibility.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1527,7 +1509,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-set-visible");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-set-visible",
                                      "Set the visibility of the specified item.",
                                      "This procedure sets the specified item's visibility.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1556,7 +1537,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-linked");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-linked",
                                      "Get the linked state of the specified item.",
                                      "This procedure returns the specified item's linked state.",
                                      "Wolfgang Hofer",
@@ -1585,7 +1565,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-set-linked");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-set-linked",
                                      "Set the linked state of the specified item.",
                                      "This procedure sets the specified item's linked state.",
                                      "Wolfgang Hofer",
@@ -1614,7 +1593,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-lock-content");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-lock-content",
                                      "Get the 'lock content' state of the specified item.",
                                      "This procedure returns the specified item's lock content state.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1643,7 +1621,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-set-lock-content");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-set-lock-content",
                                      "Set the 'lock content' state of the specified item.",
                                      "This procedure sets the specified item's lock content state.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1672,7 +1649,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-lock-position");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-lock-position",
                                      "Get the 'lock position' state of the specified item.",
                                      "This procedure returns the specified item's lock position state.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1701,7 +1677,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-set-lock-position");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-set-lock-position",
                                      "Set the 'lock position' state of the specified item.",
                                      "This procedure sets the specified item's lock position state.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1730,7 +1705,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-color-tag");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-color-tag",
                                      "Get the color tag of the specified item.",
                                      "This procedure returns the specified item's color tag.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1760,7 +1734,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-set-color-tag");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-set-color-tag",
                                      "Set the color tag of the specified item.",
                                      "This procedure sets the specified item's color tag.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1790,7 +1763,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-tattoo");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-tattoo",
                                      "Get the tattoo of the specified item.",
                                      "This procedure returns the specified item's tattoo. A tattoo is a 
unique and permanent identifier attached to a item that can be used to uniquely identify a item within an 
image even between sessions.",
                                      "Jay Cox",
@@ -1819,7 +1791,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-set-tattoo");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-set-tattoo",
                                      "Set the tattoo of the specified item.",
                                      "This procedure sets the specified item's tattoo. A tattoo is a unique 
and permanent identifier attached to a item that can be used to uniquely identify a item within an image even 
between sessions.",
                                      "Jay Cox",
@@ -1848,7 +1819,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-attach-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-attach-parasite",
                                      "Add a parasite to an item.",
                                      "This procedure attaches a parasite to an item. It has no return 
values.",
                                      "Jay Cox",
@@ -1876,7 +1846,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-detach-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-detach-parasite",
                                      "Removes a parasite from an item.",
                                      "This procedure detaches a parasite from an item. It has no return 
values.",
                                      "Jay Cox",
@@ -1906,7 +1875,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-parasite");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-parasite",
                                      "Look up a parasite in an item",
                                      "Finds and returns the parasite that is attached to an item.",
                                      "Jay Cox",
@@ -1941,7 +1909,6 @@ register_item_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-get-parasite-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-get-parasite-list",
                                      "List all parasites.",
                                      "Returns a list of all parasites currently attached the an item.",
                                      "Marc Lehmann",
diff --git a/app/pdb/item-transform-cmds.c b/app/pdb/item-transform-cmds.c
index c57d3e0ef8..425417f347 100644
--- a/app/pdb/item-transform-cmds.c
+++ b/app/pdb/item-transform-cmds.c
@@ -1029,7 +1029,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-translate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-translate",
                                      "Translate the item by the specified offsets.",
                                      "This procedure translates the item by the amounts specified in the 
off_x and off_y arguments. These can be negative, and are considered offsets from the current position. The 
offsets will be rounded to the nearest pixel unless the item is a path.\n"
                                      "\n"
@@ -1072,7 +1071,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-flip-simple");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-flip-simple",
                                      "Flip the specified item either vertically or horizontally.",
                                      "This procedure flips the specified item.\n"
                                      "\n"
@@ -1128,7 +1126,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-flip");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-flip",
                                      "Flip the specified item around a given line.",
                                      "This procedure flips the specified item.\n"
                                      "\n"
@@ -1187,7 +1184,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-perspective");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-perspective",
                                      "Perform a possibly non-affine transformation on the specified item.",
                                      "This procedure performs a possibly non-affine transformation on the 
specified item by allowing the corners of the original bounding box to be arbitrarily remapped to any 
values.\n"
                                      "\n"
@@ -1272,7 +1268,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-rotate-simple");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-rotate-simple",
                                      "Rotate the specified item about given coordinates through the 
specified angle.",
                                      "This function rotates the specified item.\n"
                                      "\n"
@@ -1332,7 +1327,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-rotate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-rotate",
                                      "Rotate the specified item about given coordinates through the 
specified angle.",
                                      "This function rotates the specified item.\n"
                                      "\n"
@@ -1391,7 +1385,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-scale");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-scale",
                                      "Scale the specified item.",
                                      "This procedure scales the specified item.\n"
                                      "\n"
@@ -1452,7 +1445,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-shear");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-shear",
                                      "Shear the specified item about its center by the specified magnitude.",
                                      "This procedure shears the specified item.\n"
                                      "\n"
@@ -1504,7 +1496,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-2d");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-2d",
                                      "Transform the specified item in 2d.",
                                      "This procedure transforms the specified item.\n"
                                      "\n"
@@ -1583,7 +1574,6 @@ register_item_transform_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-item-transform-matrix");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-item-transform-matrix",
                                      "Transform the specified item in 2d.",
                                      "This procedure transforms the specified item.\n"
                                      "\n"
diff --git a/app/pdb/layer-cmds.c b/app/pdb/layer-cmds.c
index 2b81d6e81d..c0bfa8513a 100644
--- a/app/pdb/layer-cmds.c
+++ b/app/pdb/layer-cmds.c
@@ -1258,7 +1258,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-new",
                                      "Create a new layer.",
                                      "This procedure creates a new layer with the specified width, height, 
and type. Name, opacity, and mode are also supplied parameters. The new layer still needs to be added to the 
image, as this is not automatic. Add the new layer with the 'gimp-image-insert-layer' command. Other 
attributes such as layer mask modes, and offsets should be set with explicit procedure calls.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1326,7 +1325,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-new-from-visible");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-new-from-visible",
                                      "Create a new layer from what is visible in an image.",
                                      "This procedure creates a new layer from what is visible in the given 
image. The new layer still needs to be added to the destination image, as this is not automatic. Add the new 
layer with the 'gimp-image-insert-layer' command. Other attributes such as layer mask modes, and offsets 
should be set with explicit procedure calls.",
                                      "Sven Neumann <sven gimp org>",
@@ -1368,7 +1366,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-new-from-drawable");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-new-from-drawable",
                                      "Create a new layer by copying an existing drawable.",
                                      "This procedure creates a new layer as a copy of the specified 
drawable. The new layer still needs to be added to the image, as this is not automatic. Add the new layer 
with the 'gimp-image-insert-layer' command. Other attributes such as layer mask modes, and offsets should be 
set with explicit procedure calls.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1403,7 +1400,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-group-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-group-new",
                                      "Create a new layer group.",
                                      "This procedure creates a new layer group. Attributes such as layer 
mode and opacity should be set with explicit procedure calls. Add the new layer group (which is a kind of 
layer) with the 'gimp-image-insert-layer' command.\n"
                                      "Other procedures useful with layer groups: 'gimp-image-reorder-item', 
'gimp-item-get-parent', 'gimp-item-get-children', 'gimp-item-is-group'.",
@@ -1433,7 +1429,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-copy");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-copy",
                                      "Copy a layer.",
                                      "This procedure copies the specified layer and returns the copy. The 
newly copied layer is for use within the original layer's image. It should not be subsequently added to any 
other image. The copied layer can optionally have an added alpha channel. This is useful if the background 
layer in an image is being copied and added to the same image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1468,7 +1463,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-add-alpha");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-add-alpha",
                                      "Add an alpha channel to the layer if it doesn't already have one.",
                                      "This procedure adds an additional component to the specified layer if 
it does not already possess an alpha channel. An alpha channel makes it possible to clear and erase to 
transparency, instead of the background color. This transforms layers of type RGB to RGBA, GRAY to GRAYA, and 
INDEXED to INDEXEDA.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1491,7 +1485,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-flatten");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-flatten",
                                      "Remove the alpha channel from the layer if it has one.",
                                      "This procedure removes the alpha channel from a layer, blending all 
(partially) transparent pixels in the layer against the background color. This transforms layers of type RGBA 
to RGB, GRAYA to GRAY, and INDEXEDA to INDEXED.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1514,7 +1507,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-scale");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-scale",
                                      "Scale the layer using the default interpolation method.",
                                      "This procedure scales the layer so that its new width and height are 
equal to the supplied parameters. The 'local-origin' parameter specifies whether to scale from the center of 
the layer, or from the image origin. This operation only works if the layer has been added to an image. The 
interpolation method used can be set with 'gimp-context-set-interpolation'.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1555,7 +1547,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-resize");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-resize",
                                      "Resize the layer to the specified extents.",
                                      "This procedure resizes the layer so that its new width and height are 
equal to the supplied parameters. Offsets are also provided which describe the position of the previous 
layer's content. This operation only works if the layer has been added to an image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1602,7 +1593,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-resize-to-image-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-resize-to-image-size",
                                      "Resize a layer to the image size.",
                                      "This procedure resizes the layer so that it's new width and height are 
equal to the width and height of its image container.",
                                      "Manish Singh",
@@ -1625,7 +1615,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-offsets");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-offsets",
                                      "Set the layer offsets.",
                                      "This procedure sets the offsets for the specified layer. The offsets 
are relative to the image origin and can be any values. This operation is valid only on layers which have 
been added to an image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1660,7 +1649,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-create-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-create-mask",
                                      "Create a layer mask for the specified layer.",
                                      "This procedure creates a layer mask for the specified layer.\n"
                                      "Layer masks serve as an additional alpha channel for a layer. 
Different types of masks are allowed for initialisation:\n"
@@ -1707,7 +1695,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-mask",
                                      "Get the specified layer's mask if it exists.",
                                      "This procedure returns the specified layer's mask, or -1 if none 
exists.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1736,7 +1723,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-from-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-from-mask",
                                      "Get the specified mask's layer.",
                                      "This procedure returns the specified mask's layer , or -1 if none 
exists.",
                                      "Geert Jordaens",
@@ -1765,7 +1751,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-add-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-add-mask",
                                      "Add a layer mask to the specified layer.",
                                      "This procedure adds a layer mask to the specified layer. Layer masks 
serve as an additional alpha channel for a layer. This procedure will fail if a number of prerequisites 
aren't met. The layer cannot already have a layer mask. The specified mask must exist and have the same 
dimensions as the layer. The layer must have been created for use with the specified image and the mask must 
have been created with the procedure 'gimp-layer-create-mask'.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1794,7 +1779,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-remove-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-remove-mask",
                                      "Remove the specified layer mask from the layer.",
                                      "This procedure removes the specified layer mask from the layer. If the 
mask doesn't exist, an error is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1824,7 +1808,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-is-floating-sel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-is-floating-sel",
                                      "Is the specified layer a floating selection?",
                                      "This procedure returns whether the layer is a floating selection. 
Floating selections are special cases of layers which are attached to a specific drawable.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1853,7 +1836,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-lock-alpha");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-lock-alpha",
                                      "Get the lock alpha channel setting of the specified layer.",
                                      "This procedure returns the specified layer's lock alpha channel 
setting.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1882,7 +1864,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-lock-alpha");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-lock-alpha",
                                      "Set the lock alpha channel setting of the specified layer.",
                                      "This procedure sets the specified layer's lock alpha channel setting.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1911,7 +1892,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-apply-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-apply-mask",
                                      "Get the apply mask setting of the specified layer.",
                                      "This procedure returns the specified layer's apply mask setting. If 
the value is TRUE, then the layer mask for this layer is currently being composited with the layer's alpha 
channel.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1940,7 +1920,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-apply-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-apply-mask",
                                      "Set the apply mask setting of the specified layer.",
                                      "This procedure sets the specified layer's apply mask setting. This 
controls whether the layer's mask is currently affecting the alpha channel. If there is no layer mask, this 
function will return an error.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1969,7 +1948,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-show-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-show-mask",
                                      "Get the show mask setting of the specified layer.",
                                      "This procedure returns the specified layer's show mask setting. This 
controls whether the layer or its mask is visible. TRUE indicates that the mask should be visible. If the 
layer has no mask, then this function returns an error.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1998,7 +1976,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-show-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-show-mask",
                                      "Set the show mask setting of the specified layer.",
                                      "This procedure sets the specified layer's show mask setting. This 
controls whether the layer or its mask is visible. TRUE indicates that the mask should be visible. If there 
is no layer mask, this function will return an error.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2027,7 +2004,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-edit-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-edit-mask",
                                      "Get the edit mask setting of the specified layer.",
                                      "This procedure returns the specified layer's edit mask setting. If the 
value is TRUE, then the layer mask for this layer is currently active, and not the layer.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2056,7 +2032,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-edit-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-edit-mask",
                                      "Set the edit mask setting of the specified layer.",
                                      "This procedure sets the specified layer's edit mask setting. This 
controls whether the layer or it's mask is currently active for editing. If the specified layer has no layer 
mask, then this procedure will return an error.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2085,7 +2060,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-opacity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-opacity",
                                      "Get the opacity of the specified layer.",
                                      "This procedure returns the specified layer's opacity.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2114,7 +2088,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-opacity");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-opacity",
                                      "Set the opacity of the specified layer.",
                                      "This procedure sets the specified layer's opacity.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2143,7 +2116,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-mode",
                                      "Get the combination mode of the specified layer.",
                                      "This procedure returns the specified layer's combination mode.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2173,7 +2145,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-mode",
                                      "Set the combination mode of the specified layer.",
                                      "This procedure sets the specified layer's combination mode.",
                                      "Spencer Kimball & Peter Mattis",
@@ -2203,7 +2174,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-blend-space");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-blend-space",
                                      "Get the blend space of the specified layer.",
                                      "This procedure returns the specified layer's blend space.",
                                      "Ell",
@@ -2233,7 +2203,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-blend-space");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-blend-space",
                                      "Set the blend space of the specified layer.",
                                      "This procedure sets the specified layer's blend space.",
                                      "Ell",
@@ -2263,7 +2232,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-composite-space");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-composite-space",
                                      "Get the composite space of the specified layer.",
                                      "This procedure returns the specified layer's composite space.",
                                      "Ell",
@@ -2293,7 +2261,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-composite-space");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-composite-space",
                                      "Set the composite space of the specified layer.",
                                      "This procedure sets the specified layer's composite space.",
                                      "Ell",
@@ -2323,7 +2290,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-get-composite-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-get-composite-mode",
                                      "Get the composite mode of the specified layer.",
                                      "This procedure returns the specified layer's composite mode.",
                                      "Ell",
@@ -2353,7 +2319,6 @@ register_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-layer-set-composite-mode");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-layer-set-composite-mode",
                                      "Set the composite mode of the specified layer.",
                                      "This procedure sets the specified layer's composite mode.",
                                      "Ell",
diff --git a/app/pdb/message-cmds.c b/app/pdb/message-cmds.c
index 39518afea5..249050a17b 100644
--- a/app/pdb/message-cmds.c
+++ b/app/pdb/message-cmds.c
@@ -121,7 +121,6 @@ register_message_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-message");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-message",
                                      "Displays a dialog box with a message.",
                                      "Displays a dialog box with a message. Useful for status or error 
reporting. The message must be in UTF-8 encoding.",
                                      "Manish Singh",
@@ -145,7 +144,6 @@ register_message_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-message-get-handler");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-message-get-handler",
                                      "Returns the current state of where warning messages are displayed.",
                                      "This procedure returns the way g_message warnings are displayed. They 
can be shown in a dialog box or printed on the console where gimp was started.",
                                      "Manish Singh",
@@ -169,7 +167,6 @@ register_message_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-message-set-handler");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-message-set-handler",
                                      "Controls where warning messages are displayed.",
                                      "This procedure controls how g_message warnings are displayed. They can 
be shown in a dialog box or printed on the console where gimp was started.",
                                      "Manish Singh",
diff --git a/app/pdb/paint-tools-cmds.c b/app/pdb/paint-tools-cmds.c
index 71ba08e641..7dc9d1461b 100644
--- a/app/pdb/paint-tools-cmds.c
+++ b/app/pdb/paint-tools-cmds.c
@@ -951,7 +951,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-airbrush");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-airbrush",
                                      "Paint in the current brush with varying pressure. Paint application is 
time-dependent.",
                                      "This tool simulates the use of an airbrush. Paint pressure represents 
the relative intensity of the paint application. High pressure results in a thicker layer of paint while low 
pressure results in a thinner layer.",
                                      "Spencer Kimball & Peter Mattis",
@@ -991,7 +990,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-airbrush-default");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-airbrush-default",
                                      "Paint in the current brush with varying pressure. Paint application is 
time-dependent.",
                                      "This tool simulates the use of an airbrush. It is similar to 
'gimp-airbrush' except that the pressure is derived from the airbrush tools options box. It the option has 
not been set the default for the option will be used.",
                                      "Andy Thomas",
@@ -1025,7 +1023,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-clone");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-clone",
                                      "Clone from the source to the dest drawable using the current brush",
                                      "This tool clones (copies) from the source drawable starting at the 
specified source coordinates to the dest drawable. If the \"clone_type\" argument is set to PATTERN-CLONE, 
then the current pattern is used as the source and the \"src_drawable\" argument is ignored. Pattern cloning 
assumes a tileable pattern and mods the sum of the src coordinates and subsequent stroke offsets with the 
width and height of the pattern. For image cloning, if the sum of the src coordinates and subsequent stroke 
offsets exceeds the extents of the src drawable, then no paint is transferred. The clone tool is capable of 
transforming between any image types including RGB->Indexed--although converting from any type to indexed is 
significantly slower.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1084,7 +1081,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-clone-default");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-clone-default",
                                      "Clone from the source to the dest drawable using the current brush",
                                      "This tool clones (copies) from the source drawable starting at the 
specified source coordinates to the dest drawable. This function performs exactly the same as the 
'gimp-clone' function except that the tools arguments are obtained from the clones option dialog. It this 
dialog has not been activated then the dialogs default values will be used.",
                                      "Andy Thomas",
@@ -1118,7 +1114,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-convolve");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-convolve",
                                      "Convolve (Blur, Sharpen) using the current brush.",
                                      "This tool convolves the specified drawable with either a sharpening or 
blurring kernel. The pressure parameter controls the magnitude of the operation. Like the paintbrush, this 
tool linearly interpolates between the specified stroke coordinates.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1165,7 +1160,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-convolve-default");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-convolve-default",
                                      "Convolve (Blur, Sharpen) using the current brush.",
                                      "This tool convolves the specified drawable with either a sharpening or 
blurring kernel. This function performs exactly the same as the 'gimp-convolve' function except that the 
tools arguments are obtained from the convolve option dialog. It this dialog has not been activated then the 
dialogs default values will be used.",
                                      "Andy Thomas",
@@ -1199,7 +1193,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-dodgeburn");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-dodgeburn",
                                      "Dodgeburn image with varying exposure.",
                                      "Dodgeburn. More details here later.",
                                      "Andy Thomas",
@@ -1253,7 +1246,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-dodgeburn-default");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-dodgeburn-default",
                                      "Dodgeburn image with varying exposure. This is the same as the 
gimp_dodgeburn() function except that the exposure, type and mode are taken from the tools option dialog. If 
the dialog has not been activated then the defaults as used by the dialog will be used.",
                                      "Dodgeburn. More details here later.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1287,7 +1279,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-eraser");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-eraser",
                                      "Erase using the current brush.",
                                      "This tool erases using the current brush mask. If the specified 
drawable contains an alpha channel, then the erased pixels will become transparent. Otherwise, the eraser 
tool replaces the contents of the drawable with the background color. Like paintbrush, this tool linearly 
interpolates between the specified stroke coordinates.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1335,7 +1326,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-eraser-default");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-eraser-default",
                                      "Erase using the current brush.",
                                      "This tool erases using the current brush mask. This function performs 
exactly the same as the 'gimp-eraser' function except that the tools arguments are obtained from the eraser 
option dialog. It this dialog has not been activated then the dialogs default values will be used.",
                                      "Andy Thomas",
@@ -1369,7 +1359,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-heal");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-heal",
                                      "Heal from the source to the dest drawable using the current brush",
                                      "This tool heals the source drawable starting at the specified source 
coordinates to the dest drawable. For image healing, if the sum of the src coordinates and subsequent stroke 
offsets exceeds the extents of the src drawable, then no paint is transferred. The healing tool is capable of 
transforming between any image types except RGB->Indexed.",
                                      "Kevin Sookocheff",
@@ -1421,7 +1410,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-heal-default");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-heal-default",
                                      "Heal from the source to the dest drawable using the current brush",
                                      "This tool heals from the source drawable starting at the specified 
source coordinates to the dest drawable. This function performs exactly the same as the 'gimp-heal' function 
except that the tools arguments are obtained from the healing option dialog. It this dialog has not been 
activated then the dialogs default values will be used.",
                                      "Kevin Sookocheff",
@@ -1455,7 +1443,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-paintbrush");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-paintbrush",
                                      "Paint in the current brush with optional fade out parameter and pull 
colors from a gradient.",
                                      "This tool is the standard paintbrush. It draws linearly interpolated 
lines through the specified stroke coordinates. It operates on the specified drawable in the foreground color 
with the active brush. The 'fade-out' parameter is measured in pixels and allows the brush stroke to linearly 
fall off. The pressure is set to the maximum at the beginning of the stroke. As the distance of the stroke 
nears the fade-out value, the pressure will approach zero. The gradient-length is the distance to spread the 
gradient over. It is measured in pixels. If the gradient-length is 0, no gradient is used.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1508,7 +1495,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-paintbrush-default");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-paintbrush-default",
                                      "Paint in the current brush. The fade out parameter and pull colors 
from a gradient parameter are set from the paintbrush options dialog. If this dialog has not been activated 
then the dialog defaults will be used.",
                                      "This tool is similar to the standard paintbrush. It draws linearly 
interpolated lines through the specified stroke coordinates. It operates on the specified drawable in the 
foreground color with the active brush. The 'fade-out' parameter is measured in pixels and allows the brush 
stroke to linearly fall off (value obtained from the option dialog). The pressure is set to the maximum at 
the beginning of the stroke. As the distance of the stroke nears the fade-out value, the pressure will 
approach zero. The gradient-length (value obtained from the option dialog) is the distance to spread the 
gradient over. It is measured in pixels. If the gradient-length is 0, no gradient is used.",
                                      "Andy Thomas",
@@ -1542,7 +1528,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pencil");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pencil",
                                      "Paint in the current brush without sub-pixel sampling.",
                                      "This tool is the standard pencil. It draws linearly interpolated lines 
through the specified stroke coordinates. It operates on the specified drawable in the foreground color with 
the active brush. The brush mask is treated as though it contains only black and white values. Any value 
below half is treated as black; any above half, as white.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1576,7 +1561,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-smudge");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-smudge",
                                      "Smudge image with varying pressure.",
                                      "This tool simulates a smudge using the current brush. High pressure 
results in a greater smudge of paint while low pressure results in a lesser smudge.",
                                      "Spencer Kimball & Peter Mattis",
@@ -1616,7 +1600,6 @@ register_paint_tools_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-smudge-default");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-smudge-default",
                                      "Smudge image with varying pressure.",
                                      "This tool simulates a smudge using the current brush. It behaves 
exactly the same as 'gimp-smudge' except that the pressure value is taken from the smudge tool options or the 
options default if the tools option dialog has not been activated.",
                                      "Andy Thomas",
diff --git a/app/pdb/palette-cmds.c b/app/pdb/palette-cmds.c
index 2431dcb2d7..97003327e5 100644
--- a/app/pdb/palette-cmds.c
+++ b/app/pdb/palette-cmds.c
@@ -611,7 +611,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-new",
                                      "Creates a new palette",
                                      "This procedure creates a new, uninitialized palette",
                                      "Michael Natterer <mitch gimp org>",
@@ -642,7 +641,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-duplicate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-duplicate",
                                      "Duplicates a palette",
                                      "This procedure creates an identical palette by a different name",
                                      "Michael Natterer <mitch gimp org>",
@@ -673,7 +671,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-rename");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-rename",
                                      "Rename a palette",
                                      "This procedure renames a palette",
                                      "Michael Natterer <mitch gimp org>",
@@ -711,7 +708,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-delete");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-delete",
                                      "Deletes a palette",
                                      "This procedure deletes a palette",
                                      "Michael Natterer <mitch gimp org>",
@@ -735,7 +731,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-is-editable");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-is-editable",
                                      "Tests if palette can be edited",
                                      "Returns TRUE if you have permission to change the palette",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -765,7 +760,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-get-info");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-get-info",
                                      "Retrieve information about the specified palette.",
                                      "This procedure retrieves information about the specified palette. This 
includes the name, and the number of colors.",
                                      "Michael Natterer <mitch gimp org>",
@@ -795,7 +789,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-get-colors");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-get-colors",
                                      "Gets all colors from the specified palette.",
                                      "This procedure retrieves all color entries of the specified palette.",
                                      "Sven Neumann <sven gimp org>",
@@ -830,7 +823,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-get-columns");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-get-columns",
                                      "Retrieves the number of columns to use to display this palette",
                                      "This procedures retrieves the preferred number of columns to use when 
the palette is being displayed.",
                                      "Sven Neumann <sven gimp org>",
@@ -860,7 +852,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-set-columns");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-set-columns",
                                      "Sets the number of columns to use when displaying the palette",
                                      "This procedures controls how many colors are shown per row when the 
palette is being displayed. This value can only be changed if the palette is writable. The maximum allowed 
value is 64.",
                                      "Sven Neumann <sven gimp org>",
@@ -890,7 +881,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-add-entry");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-add-entry",
                                      "Adds a palette entry to the specified palette.",
                                      "This procedure adds an entry to the specified palette. It returns an 
error if the entry palette does not exist.",
                                      "Michael Natterer <mitch gimp org>",
@@ -934,7 +924,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-delete-entry");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-delete-entry",
                                      "Deletes a palette entry from the specified palette.",
                                      "This procedure deletes an entry from the specified palette. It returns 
an error if the entry palette does not exist.",
                                      "Michael Natterer <mitch gimp org>",
@@ -964,7 +953,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-entry-get-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-entry-get-color",
                                      "Gets the specified palette entry from the specified palette.",
                                      "This procedure retrieves the color of the zero-based entry specified 
for the specified palette. It returns an error if the entry does not exist.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1001,7 +989,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-entry-set-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-entry-set-color",
                                      "Sets the specified palette entry in the specified palette.",
                                      "This procedure sets the color of the zero-based entry specified for 
the specified palette. It returns an error if the entry does not exist.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1038,7 +1025,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-entry-get-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-entry-get-name",
                                      "Gets the specified palette entry from the specified palette.",
                                      "This procedure retrieves the name of the zero-based entry specified 
for the specified palette. It returns an error if the entry does not exist.",
                                      "Michael Natterer <mitch gimp org>",
@@ -1075,7 +1061,6 @@ register_palette_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palette-entry-set-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palette-entry-set-name",
                                      "Sets the specified palette entry in the specified palette.",
                                      "This procedure sets the name of the zero-based entry specified for the 
specified palette. It returns an error if the entry does not exist.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/palette-select-cmds.c b/app/pdb/palette-select-cmds.c
index e99e9df10a..6e0e814844 100644
--- a/app/pdb/palette-select-cmds.c
+++ b/app/pdb/palette-select-cmds.c
@@ -135,7 +135,6 @@ register_palette_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palettes-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palettes-popup",
                                      "Invokes the Gimp palette selection.",
                                      "This procedure opens the palette selection dialog.",
                                      "Michael Natterer <mitch gimp org>",
@@ -173,7 +172,6 @@ register_palette_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palettes-close-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palettes-close-popup",
                                      "Close the palette selection dialog.",
                                      "This procedure closes an opened palette selection dialog.",
                                      "Michael Natterer <mitch gimp org>",
@@ -197,7 +195,6 @@ register_palette_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palettes-set-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palettes-set-popup",
                                      "Sets the current palette in a palette selection dialog.",
                                      "Sets the current palette in a palette selection dialog.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/palettes-cmds.c b/app/pdb/palettes-cmds.c
index 639e183e82..1c77d92c66 100644
--- a/app/pdb/palettes-cmds.c
+++ b/app/pdb/palettes-cmds.c
@@ -101,7 +101,6 @@ register_palettes_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palettes-refresh");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palettes-refresh",
                                      "Refreshes current palettes. This function always succeeds.",
                                      "This procedure retrieves all palettes currently in the user's palette 
path and updates the palette dialogs accordingly.",
                                      "Adrian Likins <adrian gimp org>",
@@ -118,7 +117,6 @@ register_palettes_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-palettes-get-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-palettes-get-list",
                                      "Retrieves a list of all of the available palettes",
                                      "This procedure returns a complete listing of available palettes. Each 
name returned can be used as input to the command 'gimp-context-set-palette'.",
                                      "Nathan Summers <rock gimp org>",
diff --git a/app/pdb/pattern-cmds.c b/app/pdb/pattern-cmds.c
index 8713faa2ec..5a6b34eaa5 100644
--- a/app/pdb/pattern-cmds.c
+++ b/app/pdb/pattern-cmds.c
@@ -162,7 +162,6 @@ register_pattern_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pattern-get-info");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pattern-get-info",
                                      "Retrieve information about the specified pattern.",
                                      "This procedure retrieves information about the specified pattern. This 
includes the pattern extents (width and height).",
                                      "Michael Natterer <mitch gimp org>",
@@ -204,7 +203,6 @@ register_pattern_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pattern-get-pixels");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pattern-get-pixels",
                                      "Retrieve information about the specified pattern (including pixels).",
                                      "This procedure retrieves information about the specified. This 
includes the pattern extents (width and height), its bpp and its pixel data.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/pattern-select-cmds.c b/app/pdb/pattern-select-cmds.c
index 657dea66b2..bf667e32fe 100644
--- a/app/pdb/pattern-select-cmds.c
+++ b/app/pdb/pattern-select-cmds.c
@@ -135,7 +135,6 @@ register_pattern_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-patterns-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-patterns-popup",
                                      "Invokes the Gimp pattern selection.",
                                      "This procedure opens the pattern selection dialog.",
                                      "Andy Thomas",
@@ -173,7 +172,6 @@ register_pattern_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-patterns-close-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-patterns-close-popup",
                                      "Close the pattern selection dialog.",
                                      "This procedure closes an opened pattern selection dialog.",
                                      "Andy Thomas",
@@ -197,7 +195,6 @@ register_pattern_select_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-patterns-set-popup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-patterns-set-popup",
                                      "Sets the current pattern in a pattern selection dialog.",
                                      "Sets the current pattern in a pattern selection dialog.",
                                      "Andy Thomas",
diff --git a/app/pdb/patterns-cmds.c b/app/pdb/patterns-cmds.c
index 884b0ab5e6..3b2b1da0c7 100644
--- a/app/pdb/patterns-cmds.c
+++ b/app/pdb/patterns-cmds.c
@@ -102,7 +102,6 @@ register_patterns_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-patterns-refresh");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-patterns-refresh",
                                      "Refresh current patterns. This function always succeeds.",
                                      "This procedure retrieves all patterns currently in the user's pattern 
path and updates all pattern dialogs accordingly.",
                                      "Michael Natterer <mitch gimp org>",
@@ -119,7 +118,6 @@ register_patterns_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-patterns-get-list");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-patterns-get-list",
                                      "Retrieve a complete listing of the available patterns.",
                                      "This procedure returns a complete listing of available GIMP patterns. 
Each name returned can be used as input to the 'gimp-context-set-pattern'.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/pdb-cmds.c b/app/pdb/pdb-cmds.c
index 9e47e648ce..a133bb8eed 100644
--- a/app/pdb/pdb-cmds.c
+++ b/app/pdb/pdb-cmds.c
@@ -37,6 +37,7 @@
 #include "plug-in/gimppluginmanager-data.h"
 
 #include "gimppdb.h"
+#include "gimppdb-utils.h"
 #include "gimpprocedure.h"
 #include "internal-procs.h"
 
@@ -154,24 +155,25 @@ pdb_proc_exists_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      GimpProcedure *procedure;
-      gchar         *canonical;
+      if (gimp_pdb_is_canonical_procedure (procedure_name, error))
+        {
+          GimpProcedure *procedure;
 
-      canonical = gimp_canonicalize_identifier (procedure_name);
+          procedure = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
 
-      procedure = gimp_pdb_lookup_procedure (gimp->pdb, canonical);
+          if (! procedure)
+            {
+              procedure_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb,
+                                                                 procedure_name);
 
-      if (! procedure)
-        {
-          procedure_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb, canonical);
+              if (procedure_name)
+                procedure = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
+            }
 
-          if (procedure_name)
-            procedure = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
+          exists = (procedure != NULL);
         }
-
-      g_free (canonical);
-
-      exists = (procedure != NULL);
+      else
+        success = FALSE;
     }
 
   return_vals = gimp_procedure_get_return_values (procedure, success,
@@ -207,19 +209,19 @@ pdb_proc_info_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      GimpPDBProcType  ptype;
-      gchar           *canonical;
-
-      canonical = gimp_canonicalize_identifier (procedure_name);
-
-      success = gimp_pdb_proc_info (gimp->pdb, canonical,
-                                    &blurb, &help, &authors,
-                                    &copyright, &date, &ptype,
-                                    &num_args, &num_values,
-                                    error);
-      proc_type = ptype;
-
-      g_free (canonical);
+      if (gimp_pdb_is_canonical_procedure (procedure_name, error))
+        {
+          GimpPDBProcType  ptype;
+
+          success = gimp_pdb_proc_info (gimp->pdb, procedure_name,
+                                        &blurb, &help, &authors,
+                                        &copyright, &date, &ptype,
+                                        &num_args, &num_values,
+                                        error);
+          proc_type = ptype;
+        }
+      else
+        success = FALSE;
     }
 
   return_vals = gimp_procedure_get_return_values (procedure, success,
@@ -259,28 +261,29 @@ pdb_proc_argument_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      GimpProcedure *proc;
-      gchar         *canonical;
-
-      canonical = gimp_canonicalize_identifier (procedure_name);
-
-      proc = gimp_pdb_lookup_procedure (gimp->pdb, canonical);
-
-      if (! proc)
+      if (gimp_pdb_is_canonical_procedure (procedure_name, error))
         {
-          const gchar *compat_name;
+          GimpProcedure *proc;
 
-          compat_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb, canonical);
+          proc = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
 
-          if (compat_name)
-            proc = gimp_pdb_lookup_procedure (gimp->pdb, compat_name);
-        }
+          if (! proc)
+            {
+              const gchar *compat_name;
 
-      g_free (canonical);
+              compat_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb,
+                                                              procedure_name);
 
-      if (proc && (arg_num >= 0 && arg_num < proc->num_args))
-        {
-          param_spec = g_param_spec_ref (proc->args[arg_num]);
+              if (compat_name)
+                proc = gimp_pdb_lookup_procedure (gimp->pdb, compat_name);
+            }
+
+          if (proc && (arg_num >= 0 && arg_num < proc->num_args))
+            {
+              param_spec = g_param_spec_ref (proc->args[arg_num]);
+            }
+          else
+            success = FALSE;
         }
       else
         success = FALSE;
@@ -314,28 +317,29 @@ pdb_proc_return_value_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      GimpProcedure *proc;
-      gchar         *canonical;
-
-      canonical = gimp_canonicalize_identifier (procedure_name);
-
-      proc = gimp_pdb_lookup_procedure (gimp->pdb, canonical);
-
-      if (! proc)
+      if (gimp_pdb_is_canonical_procedure (procedure_name, error))
         {
-          const gchar *compat_name;
+          GimpProcedure *proc;
 
-          compat_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb, canonical);
+          proc = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
 
-          if (compat_name)
-            proc = gimp_pdb_lookup_procedure (gimp->pdb, compat_name);
-        }
+          if (! proc)
+            {
+              const gchar *compat_name;
 
-      g_free (canonical);
+              compat_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb,
+                                                              procedure_name);
 
-      if (proc && (val_num >= 0 && val_num < proc->num_values))
-        {
-          param_spec = g_param_spec_ref (proc->values[val_num]);
+              if (compat_name)
+                proc = gimp_pdb_lookup_procedure (gimp->pdb, compat_name);
+            }
+
+          if (proc && (val_num >= 0 && val_num < proc->num_values))
+            {
+              param_spec = g_param_spec_ref (proc->values[val_num]);
+            }
+          else
+            success = FALSE;
         }
       else
         success = FALSE;
@@ -368,16 +372,18 @@ pdb_get_data_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar        *canonical = gimp_canonicalize_identifier (identifier);
-      const guint8 *orig_data;
-
-      orig_data = gimp_plug_in_manager_get_data (gimp->plug_in_manager,
-                                                 canonical, &bytes);
+      if (gimp_pdb_is_canonical_procedure (identifier, error))
+        {
+          const guint8 *orig_data;
 
-      g_free (canonical);
+          orig_data = gimp_plug_in_manager_get_data (gimp->plug_in_manager,
+                                                     identifier, &bytes);
 
-      if (orig_data)
-        data = g_memdup (orig_data, bytes);
+          if (orig_data)
+            data = g_memdup (orig_data, bytes);
+          else
+            success = FALSE;
+        }
       else
         success = FALSE;
     }
@@ -411,13 +417,14 @@ pdb_get_data_size_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (identifier);
-
-      if (! gimp_plug_in_manager_get_data (gimp->plug_in_manager,
-                                           canonical, &bytes))
+      if (gimp_pdb_is_canonical_procedure (identifier, error))
+        {
+          if (! gimp_plug_in_manager_get_data (gimp->plug_in_manager,
+                                               identifier, &bytes))
+            success = FALSE;
+        }
+      else
         success = FALSE;
-
-      g_free (canonical);
     }
 
   return_vals = gimp_procedure_get_return_values (procedure, success,
@@ -448,12 +455,13 @@ pdb_set_data_invoker (GimpProcedure         *procedure,
 
   if (success)
     {
-      gchar *canonical = gimp_canonicalize_identifier (identifier);
-
-      gimp_plug_in_manager_set_data (gimp->plug_in_manager,
-                                     canonical, bytes, data);
-
-      g_free (canonical);
+      if (gimp_pdb_is_canonical_procedure (identifier, error))
+        {
+          gimp_plug_in_manager_set_data (gimp->plug_in_manager,
+                                         identifier, bytes, data);
+        }
+      else
+        success = FALSE;
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -472,7 +480,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-temp-name");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-temp-name",
                                      "Generates a unique temporary PDB name.",
                                      "This procedure generates a temporary PDB entry name that is guaranteed 
to be unique.",
                                      "Andy Thomas",
@@ -496,7 +503,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-dump");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-dump",
                                      "Dumps the current contents of the procedural database",
                                      "This procedure dumps the contents of the procedural database to the 
specified file. The file will contain all of the information provided for each registered procedure.",
                                      "Spencer Kimball & Josh MacDonald",
@@ -520,7 +526,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-query");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-query",
                                      "Queries the procedural database for its contents using regular 
expression matching.",
                                      "This procedure queries the contents of the procedural database. It is 
supplied with seven arguments matching procedures on { name, blurb, help, authors, copyright, date, procedure 
type}. This is accomplished using regular expression matching. For instance, to find all procedures with 
\"jpeg\" listed in the blurb, all seven arguments can be supplied as \".*\", except for the second, which can 
be supplied as \".*jpeg.*\". There are two return arguments for this procedure. The first is the number of 
procedures matching the query. The second is a concatenated list of procedure names corresponding to those 
matching the query. If no matching entries are found, then the returned string is NULL and the number of 
entries is 0.",
                                      "Spencer Kimball & Peter Mattis",
@@ -597,7 +602,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-proc-exists");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-proc-exists",
                                      "Checks if the specified procedure exists in the procedural database",
                                      "This procedure checks if the specified procedure is registered in the 
procedural database.",
                                      "Sven Neumann <sven gimp org>",
@@ -627,7 +631,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-proc-info");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-proc-info",
                                      "Queries the procedural database for information on the specified 
procedure.",
                                      "This procedure returns information on the specified procedure. A short 
blurb, detailed help, authors, copyright information, procedure type, number of input, and number of return 
values are returned. For specific information on each input argument and return value, use the 
'gimp-pdb-db-proc-argument' and 'gimp-pdb-db-proc-return-value' procedures.",
                                      "Spencer Kimball & Peter Mattis",
@@ -705,7 +708,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-proc-argument");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-proc-argument",
                                      "Queries the procedural database for information on the specified 
procedure's argument.",
                                      "This procedure returns the #GParamSpec of procedure_name's argument.",
                                      "Michael Natterer <mitch gimp org>",
@@ -741,7 +743,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-proc-return-value");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-proc-return-value",
                                      "Queries the procedural database for information on the specified 
procedure's return value.",
                                      "This procedure returns the #GParamSpec of procedure_name's return 
value.",
                                      "Michael Natterer <mitch gimp org>",
@@ -777,7 +778,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-get-data");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-get-data",
                                      "Returns data associated with the specified identifier.",
                                      "This procedure returns any data which may have been associated with 
the specified identifier. The data is a variable length array of bytes. If no data has been associated with 
the identifier, an error is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -812,7 +812,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-get-data-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-get-data-size",
                                      "Returns size of data associated with the specified identifier.",
                                      "This procedure returns the size of any data which may have been 
associated with the specified identifier. If no data has been associated with the identifier, an error is 
returned.",
                                      "Nick Lamb",
@@ -842,7 +841,6 @@ register_pdb_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-pdb-set-data");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-pdb-set-data",
                                      "Associates the specified identifier with the supplied data.",
                                      "This procedure associates the supplied data with the provided 
identifier. The data may be subsequently retrieved by a call to 'procedural-db-get-data'.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/plug-in-cmds.c b/app/pdb/plug-in-cmds.c
index 199a6c177f..3d6d1290bd 100644
--- a/app/pdb/plug-in-cmds.c
+++ b/app/pdb/plug-in-cmds.c
@@ -42,6 +42,7 @@
 #include "plug-in/gimppluginprocedure.h"
 
 #include "gimppdb.h"
+#include "gimppdb-utils.h"
 #include "gimpprocedure.h"
 #include "internal-procs.h"
 
@@ -118,9 +119,7 @@ plugin_domain_register_invoker (GimpProcedure         *procedure,
                                               domain_name, domain_path);
         }
       else
-        {
-          success = FALSE;
-        }
+        success = FALSE;
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -152,9 +151,7 @@ plugin_help_register_invoker (GimpProcedure         *procedure,
                                             domain_name, domain_uri);
         }
       else
-        {
-          success = FALSE;
-        }
+        success = FALSE;
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -186,9 +183,7 @@ plugin_menu_branch_register_invoker (GimpProcedure         *procedure,
                                                 plug_in->file, menu_path, menu_name);
         }
       else
-        {
-          success = FALSE;
-        }
+        success = FALSE;
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -214,16 +209,13 @@ plugin_menu_register_invoker (GimpProcedure         *procedure,
     {
       GimpPlugIn *plug_in = gimp->plug_in_manager->current_plug_in;
 
-      if (plug_in)
+      if (plug_in &&
+          gimp_pdb_is_canonical_procedure (procedure_name, error))
         {
-          gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-          success = gimp_plug_in_menu_register (plug_in, canonical, menu_path);
-          g_free (canonical);
+          success = gimp_plug_in_menu_register (plug_in, procedure_name, menu_path);
         }
       else
-        {
-          success = FALSE;
-        }
+        success = FALSE;
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -253,17 +245,14 @@ plugin_icon_register_invoker (GimpProcedure         *procedure,
     {
       GimpPlugIn *plug_in = gimp->plug_in_manager->current_plug_in;
 
-      if (plug_in && plug_in->call_mode == GIMP_PLUG_IN_CALL_QUERY)
+      if (plug_in &&
+          plug_in->call_mode == GIMP_PLUG_IN_CALL_QUERY &&
+          gimp_pdb_is_canonical_procedure (procedure_name, error))
         {
           GimpPlugInProcedure *proc;
-          gchar               *canonical;
-
-          canonical = gimp_canonicalize_identifier (procedure_name);
 
           proc = gimp_plug_in_procedure_find (plug_in->plug_in_def->procedures,
-                                              canonical);
-
-          g_free (canonical);
+                                              procedure_name);
 
           if (proc)
             gimp_plug_in_procedure_set_icon (proc, icon_type,
@@ -272,9 +261,7 @@ plugin_icon_register_invoker (GimpProcedure         *procedure,
             success = FALSE;
         }
       else
-        {
-          success = FALSE;
-        }
+        success = FALSE;
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -303,9 +290,7 @@ plugin_set_pdb_error_handler_invoker (GimpProcedure         *procedure,
           gimp_plug_in_set_error_handler (plug_in, handler);
         }
       else
-        {
-          success = FALSE;
-        }
+        success = FALSE;
     }
 
   return gimp_procedure_get_return_values (procedure, success,
@@ -331,9 +316,7 @@ plugin_get_pdb_error_handler_invoker (GimpProcedure         *procedure,
       handler = gimp_plug_in_get_error_handler (plug_in);
     }
   else
-    {
-      success = FALSE;
-    }
+    success = FALSE;
 
   return_vals = gimp_procedure_get_return_values (procedure, success,
                                                   error ? *error : NULL);
@@ -356,7 +339,6 @@ register_plug_in_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-plugins-query");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-plugins-query",
                                      "Queries the plug-in database for its contents.",
                                      "This procedure queries the contents of the plug-in database.",
                                      "Andy Thomas",
@@ -446,7 +428,6 @@ register_plug_in_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-plugin-domain-register");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-plugin-domain-register",
                                      "Registers a textdomain for localisation.",
                                      "This procedure adds a textdomain to the list of domains Gimp searches 
for strings when translating its menu entries. There is no need to call this function for plug-ins that have 
their strings included in the 'gimp-std-plugins' domain as that is used by default. If the compiled message 
catalog is not in the standard location, you may specify an absolute path to another location. This procedure 
can only be called in the query function of a plug-in and it has to be called before any procedure is 
installed.",
                                      "Sven Neumann <sven gimp org>",
@@ -477,7 +458,6 @@ register_plug_in_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-plugin-help-register");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-plugin-help-register",
                                      "Register a help path for a plug-in.",
                                      "This procedure registers user documentation for the calling plug-in 
with the GIMP help system. The domain_uri parameter points to the root directory where the plug-in help is 
installed. For each supported language there should be a file called 'gimp-help.xml' that maps the help IDs 
to the actual help files.",
                                      "Michael Natterer <mitch gimp org>",
@@ -508,7 +488,6 @@ register_plug_in_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-plugin-menu-branch-register");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-plugin-menu-branch-register",
                                      "Register a sub-menu.",
                                      "This procedure installs a sub-menu which does not belong to any 
procedure. The menu-name should be the untranslated menu label. GIMP will look up the translation in the 
textdomain registered for the plug-in.",
                                      "Michael Natterer <mitch gimp org>",
@@ -539,7 +518,6 @@ register_plug_in_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-plugin-menu-register");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-plugin-menu-register",
                                      "Register an additional menu path for a plug-in procedure.",
                                      "This procedure installs an additional menu entry for the given 
procedure.",
                                      "Michael Natterer <mitch gimp org>",
@@ -570,7 +548,6 @@ register_plug_in_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-plugin-icon-register");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-plugin-icon-register",
                                      "Register an icon for a plug-in procedure.",
                                      "This procedure installs an icon for the given procedure.",
                                      "Michael Natterer <mitch gimp org>",
@@ -612,7 +589,6 @@ register_plug_in_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-plugin-set-pdb-error-handler");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-plugin-set-pdb-error-handler",
                                      "Sets an error handler for procedure calls.",
                                      "This procedure changes the way that errors in procedure calls are 
handled. By default GIMP will raise an error dialog if a procedure call made by a plug-in fails. Using this 
procedure the plug-in can change this behavior. If the error handler is set to 
%GIMP_PDB_ERROR_HANDLER_PLUGIN, then the plug-in is responsible for calling 'gimp-get-pdb-error' and handling 
the error whenever one if its procedure calls fails. It can do this by displaying the error message or by 
forwarding it in its own return values.",
                                      "Sven Neumann <sven gimp org>",
@@ -636,7 +612,6 @@ register_plug_in_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-plugin-get-pdb-error-handler");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-plugin-get-pdb-error-handler",
                                      "Retrieves the active error handler for procedure calls.",
                                      "This procedure retrieves the currently active error handler for 
procedure calls made by the calling plug-in. See 'gimp-plugin-set-pdb-error-handler' for details.",
                                      "Sven Neumann <sven gimp org>",
diff --git a/app/pdb/plug-in-compat-cmds.c b/app/pdb/plug-in-compat-cmds.c
index 51be1c06f6..500b445145 100644
--- a/app/pdb/plug-in-compat-cmds.c
+++ b/app/pdb/plug-in-compat-cmds.c
@@ -4788,7 +4788,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-alienmap2");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-alienmap2",
                                      "Alter colors in various psychedelic ways",
                                      "No help yet. Just try it and you'll see!",
                                      "Compatibility procedure. Please see 'gegl:alien-map' for credits.",
@@ -4884,7 +4883,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-antialias");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-antialias",
                                      "Antialias using the Scale3X edge-extrapolation algorithm",
                                      "No more help.",
                                      "Compatibility procedure. Please see 'gegl:antialias' for credits.",
@@ -4920,7 +4918,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-apply-canvas");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-apply-canvas",
                                      "Add a canvas texture to the image",
                                      "This function applies a canvas texture map to the drawable.",
                                      "Compatibility procedure. Please see 'gegl:texturize-canvas' for 
credits.",
@@ -4968,7 +4965,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-applylens");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-applylens",
                                      "Simulate an elliptical lens over the image",
                                      "This plug-in uses Snell's law to draw an ellipsoid lens over the 
image.",
                                      "Compatibility procedure. Please see 'gegl:apply-lens' for credits.",
@@ -5028,7 +5024,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-autocrop");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-autocrop",
                                      "Remove empty borders from the image",
                                      "Remove empty borders from the image.",
                                      "Spencer Kimball & Peter Mattis",
@@ -5064,7 +5059,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-autocrop-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-autocrop-layer",
                                      "Crop the active layer based on empty borders of the input drawable",
                                      "Crop the active layer of the input \"image\" based on empty borders of 
the input \"drawable\". \n\nThe input drawable serves as a base for detecting cropping extents (transparency 
or background color), and is not necessarily the cropped layer (the current active layer).",
                                      "Spencer Kimball & Peter Mattis",
@@ -5100,7 +5094,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-autostretch-hsv");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-autostretch-hsv",
                                      "Stretch contrast to cover the maximum possible range",
                                      "This simple plug-in does an automatic contrast stretch. For each 
channel in the image, it finds the minimum and maximum values... it uses those values to stretch the 
individual histograms to the full contrast range. For some images it may do just what you want; for others it 
may be total crap :). This version differs from Contrast Autostretch in that it works in HSV space, and 
preserves hue.",
                                      "Compatibility procedure. Please see 'gegl:stretch-contrast-hsv' for 
credits.",
@@ -5136,7 +5129,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-bump-map");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-bump-map",
                                      "Create an embossing effect using a bump map",
                                      "This plug-in uses the algorithm described by John Schlag, \"Fast 
Embossing Effects on Raster Image Data\" in Graphics GEMS IV (ISBN 0-12-336155-9). It takes a drawable to be 
applied as a bump map to another image and produces a nice embossing effect.",
                                      "Compatibility procedure. Please see 'gegl:bump-map' for credits.",
@@ -5238,7 +5230,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-bump-map-tiled");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-bump-map-tiled",
                                      "Create an embossing effect using a tiled image as a bump map",
                                      "This plug-in uses the algorithm described by John Schlag, \"Fast 
Embossing Effects on Raster Image Data\" in Graphics GEMS IV (ISBN 0-12-336155-9). It takes a drawable to be 
tiled and applied as a bump map to another image and produces a nice embossing effect.",
                                      "Compatibility procedure. Please see 'gegl:bump-map' for credits.",
@@ -5340,7 +5331,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-c-astretch");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-c-astretch",
                                      "Stretch contrast to cover the maximum possible range",
                                      "This simple plug-in does an automatic contrast stretch. For each 
channel in the image, it finds the minimum and maximum values... it uses those values to stretch the 
individual histograms to the full contrast range. For some images it may do just what you want; for others it 
may not work that well.",
                                      "Compatibility procedure. Please see 'gegl:stretch-contrast' for 
credits.",
@@ -5376,7 +5366,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-cartoon");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-cartoon",
                                      "Simulate a cartoon by enhancing edges",
                                      "Propagates dark values in an image based on each pixel's relative 
darkness to a neighboring average. The idea behind this filter is to give the look of a black felt pen 
drawing subsequently shaded with color. This is achieved by darkening areas of the image which are measured 
to be darker than a neighborhood average. In this way, sufficiently large shifts in intensity are darkened to 
black. The rate at which they are darkened to black is determined by the second pct_black parameter. The 
mask_radius parameter controls the size of the pixel neighborhood over which the average intensity is 
computed and then compared to each pixel in the neighborhood to decide whether or not to darken it to black. 
Large values for mask_radius result in very thick black areas bordering the shaded regions of color and much 
less detail for black areas everywhere including inside regions of color. Small values result in more subtle 
pen strokes and detail everywh
 ere. Sma
 ll values for the pct_black make the\n"
                                      "blend from the color regions to the black border lines smoother and 
the lines themselves thinner and less noticeable; larger values achieve the opposite effect.",
@@ -5425,7 +5414,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-colors-channel-mixer");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-colors-channel-mixer",
                                      "Alter colors by mixing RGB Channels",
                                      "This plug-in mixes the RGB channels.",
                                      "Compatibility procedure. Please see 'gegl:channel-mixer' for credits.",
@@ -5521,7 +5509,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-colortoalpha");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-colortoalpha",
                                      "Convert a specified color to transparency",
                                      "This replaces as much of a given color as possible in each pixel with 
a corresponding amount of alpha, then readjusts the color accordingly.",
                                      "Spencer Kimball & Peter Mattis",
@@ -5564,7 +5551,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-convmatrix");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-convmatrix",
                                      "Apply a generic 5x5 convolution matrix",
                                      "Apply a generic 5x5 convolution matrix.",
                                      "Compatibility procedure. Please see 'gegl:convolution-matrix' for 
credits.",
@@ -5646,7 +5632,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-cubism");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-cubism",
                                      "Convert the image into randomly rotated square blobs",
                                      "Convert the image into randomly rotated square blobs.",
                                      "Compatibility procedure. Please see 'gegl:cubism' for credits.",
@@ -5700,7 +5685,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-deinterlace");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-deinterlace",
                                      "Fix images where every other row is missing",
                                      "Deinterlace is useful for processing images from video capture cards. 
When only the odd or even fields get captured, deinterlace can be used to interpolate between the existing 
fields to correct this.",
                                      "Compatibility procedure. Please see 'gegl:deinterlace' for credits.",
@@ -5742,7 +5726,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-diffraction");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-diffraction",
                                      "Generate diffraction patterns",
                                      "Help? What help?",
                                      "Compatibility procedure. Please see 'gegl:diffraction-patterns' for 
credits.",
@@ -5850,7 +5833,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-displace");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-displace",
                                      "Displace pixels as indicated by displacement maps",
                                      "Displaces the contents of the specified drawable by the amounts 
specified by 'amount-x' and 'amount-y' multiplied by the luminance of corresponding pixels in the 
'displace-map' drawables.",
                                      "Compatibility procedure. Please see 'gegl:displace' for credits.",
@@ -5928,7 +5910,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-displace-polar");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-displace-polar",
                                      "Displace pixels as indicated by displacement maps",
                                      "Just like plug-in-displace but working in polar coordinates. The 
drawable is whirled and pinched according to the map.",
                                      "Compatibility procedure. Please see 'gegl:displace' for credits.",
@@ -6006,7 +5987,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-dog");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-dog",
                                      "Edge detection with control of edge thickness",
                                      "Applies two Gaussian blurs to the drawable, and subtracts the results. 
This is robust and widely used method for detecting edges.",
                                      "Compatibility procedure. Please see 'gegl:difference-of-gaussians' for 
credits.",
@@ -6066,7 +6046,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-edge");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-edge",
                                      "Several simple methods for detecting edges",
                                      "Perform edge detection on the contents of the specified drawable. 
AMOUNT is an arbitrary constant, WRAPMODE is like displace plug-in (useful for tileable image). EDGEMODE sets 
the kind of matrix transform applied to the pixels, SOBEL was the method used in older versions.",
                                      "Compatibility procedure. Please see 'gegl:edge' for credits.",
@@ -6120,7 +6099,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-emboss");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-emboss",
                                      "Simulate an image created by embossing",
                                      "Emboss or Bumpmap the given drawable, specifying the angle and 
elevation for the light source.",
                                      "Compatibility procedure. Please see 'gegl:emboss' for credits.",
@@ -6180,7 +6158,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-engrave");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-engrave",
                                      "Simulate an antique engraving",
                                      "Creates a black-and-white 'engraved' version of an image as seen in 
old illustrations.",
                                      "Compatibility procedure. Please see 'gegl:engrave' for credits.",
@@ -6228,7 +6205,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-exchange");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-exchange",
                                      "Swap one color with another",
                                      "Exchange one color with another, optionally setting a threshold to 
convert from one shade to another.",
                                      "Compatibility procedure. Please see 'gegl:color-exchange' for 
credits.",
@@ -6318,7 +6294,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-flarefx");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-flarefx",
                                      "Add a lens flare effect",
                                      "Adds a lens flare effects. Makes your image look like it was snapped 
with a cheap camera with a lot of lens :)",
                                      "Compatibility procedure. Please see 'gegl:lens-flare' for credits.",
@@ -6366,7 +6341,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-fractal-trace");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-fractal-trace",
                                      "Transform image with the Mandelbrot Fractal",
                                      "Transform image with the Mandelbrot Fractal",
                                      "Compatibility procedure. Please see 'gegl:fractal-trace' for credits.",
@@ -6438,7 +6412,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-gauss");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-gauss",
                                      "Simplest, most commonly used way of blurring",
                                      "Applies a gaussian blur to the drawable, with specified radius of 
affect. The standard deviation of the normal distribution used to modify pixel values is calculated based on 
the supplied radius. Horizontal and vertical blurring can be independently invoked by specifying only one to 
run. The 'method' parameter is ignored.",
                                      "Compatibility procedure. Please see 'gegl:gaussian-blur' for credits.",
@@ -6492,7 +6465,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-gauss-iir");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-gauss-iir",
                                      "Apply a gaussian blur",
                                      "Applies a gaussian blur to the drawable, with specified radius of 
affect. The standard deviation of the normal distribution used to modify pixel values is calculated based on 
the supplied radius. Horizontal and vertical blurring can be independently invoked by specifying only one to 
run.",
                                      "Compatibility procedure. Please see 'gegl:gaussian-blur' for credits.",
@@ -6546,7 +6518,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-gauss-iir2");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-gauss-iir2",
                                      "Apply a gaussian blur",
                                      "Applies a gaussian blur to the drawable, with specified radius of 
affect. The standard deviation of the normal distribution used to modify pixel values is calculated based on 
the supplied radius. Horizontal and vertical blurring can be independently invoked by specifying only one to 
run.",
                                      "Compatibility procedure. Please see 'gegl:gaussian-blur' for credits.",
@@ -6594,7 +6565,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-gauss-rle");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-gauss-rle",
                                      "Apply a gaussian blur",
                                      "Applies a gaussian blur to the drawable, with specified radius of 
affect. The standard deviation of the normal distribution used to modify pixel values is calculated based on 
the supplied radius. Horizontal and vertical blurring can be independently invoked by specifying only one to 
run.",
                                      "Compatibility procedure. Please see 'gegl:gaussian-blur' for credits.",
@@ -6648,7 +6618,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-gauss-rle2");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-gauss-rle2",
                                      "Apply a gaussian blur",
                                      "Applies a gaussian blur to the drawable, with specified radius of 
affect. The standard deviation of the normal distribution used to modify pixel values is calculated based on 
the supplied radius. Horizontal and vertical blurring can be independently invoked by specifying only one to 
run.",
                                      "Compatibility procedure. Please see 'gegl:gaussian-blur' for credits.",
@@ -6696,7 +6665,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-glasstile");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-glasstile",
                                      "Simulate distortion caused by square glass tiles",
                                      "Divide the image into square glassblocks in which the image is 
refracted.",
                                      "Compatibility procedure. Please see 'gegl:tile-glass' for credits.",
@@ -6744,7 +6712,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-hsv-noise");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-hsv-noise",
                                      "Randomize hue, saturation and value independently",
                                      "Scattering pixel values in HSV space",
                                      "Compatibility procedure. Please see 'gegl:noise-hsv' for credits.",
@@ -6804,7 +6771,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-illusion");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-illusion",
                                      "Superimpose many altered copies of the image",
                                      "Produce illusion.",
                                      "Compatibility procedure. Please see 'gegl:illusion' for credits.",
@@ -6852,7 +6818,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-laplace");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-laplace",
                                      "High-resolution edge detection",
                                      "This plug-in creates one-pixel wide edges from the image, with the 
value proportional to the gradient. It uses the Laplace operator (a 3x3 kernel with -8 in the middle). The 
image has to be laplacered to get useful results, a gauss_iir with 1.5 - 5.0 depending on the noise in the 
image is best.",
                                      "Compatibility procedure. Please see 'gegl:edge-laplace' for credits.",
@@ -6888,7 +6853,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-lens-distortion");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-lens-distortion",
                                      "Corrects lens distortion",
                                      "Corrects barrel or pincushion lens distortion.",
                                      "Compatibility procedure. Please see 'gegl:lens-distortion' for 
credits.",
@@ -6960,7 +6924,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-make-seamless");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-make-seamless",
                                      "Alters edges to make the image seamlessly tileable",
                                      "This plug-in creates a seamless tileable from the input drawable.",
                                      "Compatibility procedure. Please see 'gegl:tile-seamless' for credits.",
@@ -6996,7 +6959,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-maze");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-maze",
                                      "Draw a labyrinth",
                                      "Generates a maze using either the depth-first search method or Prim's 
algorithm. Can make tileable mazes too.",
                                      "Compatibility procedure. Please see 'gegl:maze' for credits.",
@@ -7074,7 +7036,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-mblur");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-mblur",
                                      "Simulate movement using directional blur",
                                      "This plug-in simulates the effect seen when photographing a moving 
object at a slow shutter speed. Done by adding multiple displaced copies.",
                                      "Compatibility procedure. Please see 'gegl:motion-blur-linear, -zoom, 
-cirular' for credits.",
@@ -7140,7 +7101,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-mblur-inward");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-mblur-inward",
                                      "Simulate movement using directional blur",
                                      "This procedure is equivalent to plug-in-mblur but performs the zoom 
blur inward instead of outward.",
                                      "Compatibility procedure. Please see 'gegl:motion-blur-linear, -zoom, 
-cirular' for credits.",
@@ -7206,7 +7166,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-mosaic");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-mosaic",
                                      "Convert the image into irregular tiles",
                                      "Mosaic is a filter which transforms an image into what appears to be a 
mosaic, composed of small primitives, each of constant color and of an approximate size.",
                                      "Compatibility procedure. Please see 'gegl:mosaic' for credits.",
@@ -7314,7 +7273,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-neon");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-neon",
                                      "Simulate the glowing boundary of a neon light",
                                      "This filter works in a manner similar to the edge plug-in, but uses 
the first derivative of the gaussian operator to achieve resolution independence. The IIR method of 
calculating the effect is utilized to keep the processing time constant between large and small standard 
deviations.",
                                      "Compatibility procedure. Please see 'gegl:edge-neon' for credits.",
@@ -7362,7 +7320,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-newsprint");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-newsprint",
                                      "Halftone the image to give newspaper-like effect",
                                      "Halftone the image to give newspaper-like effect",
                                      "Compatibility procedure. Please see 'gegl:newsprint' for credits.",
@@ -7470,7 +7427,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-normalize");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-normalize",
                                      "Stretch brightness values to cover the full range",
                                      "This plug-in performs almost the same operation as the 'contrast 
autostretch' plug-in, except that it won't allow the color channels to normalize independently. This is 
actually what most people probably want instead of contrast-autostretch; use c-a only if you wish to remove 
an undesirable color-tint from a source image which is supposed to contain pure-white and pure-black.",
                                      "Compatibility procedure. Please see 'gegl:stretch-contrast' for 
credits.",
@@ -7506,7 +7462,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-nova");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-nova",
                                      "Add a starburst to the image",
                                      "This plug-in produces an effect like a supernova burst. The amount of 
the light effect is approximately in proportion to 1/r, where r is the distance from the center of the star.",
                                      "Compatibility procedure. Please see 'gegl:supernova' for credits.",
@@ -7579,7 +7534,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-oilify");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-oilify",
                                      "Smear colors to simulate an oil painting",
                                      "This function performs the well-known oil-paint effect on the 
specified drawable.",
                                      "Compatibility procedure. Please see 'gegl:oilify' for credits.",
@@ -7627,7 +7581,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-oilify-enhanced");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-oilify-enhanced",
                                      "Smear colors to simulate an oil painting",
                                      "This function performs the well-known oil-paint effect on the 
specified drawable.",
                                      "Compatibility procedure. Please see 'gegl:oilify' for credits.",
@@ -7693,7 +7646,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-papertile");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-papertile",
                                      "Cut image into paper tiles, and slide them",
                                      "This plug-in cuts an image into paper tiles and slides each paper 
tile.",
                                      "Compatibility procedure. Please see 'gegl:tile-paper' for credits.",
@@ -7778,7 +7730,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-photocopy");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-photocopy",
                                      "Simulate color distortion produced by a copy machine",
                                      "Propagates dark values in an image based on each pixel's relative 
darkness to a neighboring average. The idea behind this filter is to give the look of a photocopied version 
of the image, with toner transferred based on the relative darkness of a particular region. This is achieved 
by darkening areas of the image which are measured to be darker than a neighborhood average and setting other 
pixels to white. In this way, sufficiently large shifts in intensity are darkened to black. The rate at which 
they are darkened to black is determined by the second pct_black parameter. The mask_radius parameter 
controls the size of the pixel neighborhood over which the average intensity is computed and then compared to 
each pixel in the neighborhood to decide whether or not to darken it to black. Large values for mask_radius 
result in very thick black areas bordering the regions of white and much less detail for black areas 
everywhere including inside
  regions
  of color. Small values result in\n"
                                      "less toner overall and more detail everywhere. Small values for the 
pct_black make the blend from the white regions to the black border lines smoother and the toner regions 
themselves thinner and less noticeable; larger values achieve the opposite effect.",
@@ -7839,7 +7790,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-pixelize");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-pixelize",
                                      "Simplify image into an array of solid-colored squares",
                                      "Pixelize the contents of the specified drawable with specified 
pixelizing width.",
                                      "Spencer Kimball & Peter Mattis",
@@ -7881,7 +7831,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-pixelize2");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-pixelize2",
                                      "Simplify image into an array of solid-colored rectangles",
                                      "Pixelize the contents of the specified drawable with specified 
pixelizing width and height.",
                                      "Spencer Kimball & Peter Mattis",
@@ -7929,7 +7878,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-plasma");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-plasma",
                                      "Create a random plasma texture",
                                      "This plug-in produces plasma fractal images.",
                                      "Compatibility procedure. Please see 'gegl:plasma' for credits.",
@@ -7977,7 +7925,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-polar-coords");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-polar-coords",
                                      "Convert image to or from polar coordinates",
                                      "Remaps and image from rectangular coordinates to polar coordinates or 
vice versa.",
                                      "Spencer Kimball & Peter Mattis",
@@ -8043,7 +7990,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-red-eye-removal");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-red-eye-removal",
                                      "Remove the red eye effect caused by camera flashes",
                                      "This procedure removes the red eye effect caused by camera flashes by 
using a percentage based red color threshold. Make a selection containing the eyes, and apply the filter 
while adjusting the threshold to accurately remove the red eyes.",
                                      "Compatibility procedure. Please see 'gegl:red-eye-removal' for 
credits.",
@@ -8085,7 +8031,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-randomize-hurl");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-randomize-hurl",
                                      "Completely randomize a fraction of pixels",
                                      "This plug-in \"hurls\" randomly-valued pixels onto the selection or 
image. You may select the percentage of pixels to modify and the number of times to repeat the process.",
                                      "Compatibility procedure. Please see 'gegl:noise-hurl' for credits.",
@@ -8145,7 +8090,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-randomize-pick");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-randomize-pick",
                                      "Randomly interchange some pixels with neighbors",
                                      "This plug-in replaces a pixel with a random adjacent pixel. You may 
select the percentage of pixels to modify and the number of times to repeat the process.",
                                      "Compatibility procedure. Please see 'gegl:noise-pick' for credits.",
@@ -8205,7 +8149,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-randomize-slur");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-randomize-slur",
                                      "Randomly slide some pixels downward (similar to melting",
                                      "This plug-in \"slurs\" (melts like a bunch of icicles) an image. You 
may select the percentage of pixels to modify and the number of times to repeat the process.",
                                      "Compatibility procedure. Please see 'gegl:noise-slur' for credits.",
@@ -8265,7 +8208,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-rgb-noise");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-rgb-noise",
                                      "Distort colors by random amounts",
                                      "Add normally distributed (zero mean) random values to image channels. 
Noise may be additive (uncorrelated) or multiplicative (correlated - also known as speckle noise). For color 
images color channels may be treated together or independently.",
                                      "Compatibility procedure. Please see 'gegl:noise-rgb' for credits.",
@@ -8337,7 +8279,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-ripple");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-ripple",
                                      "Displace pixels in a ripple pattern",
                                      "Ripples the pixels of the specified drawable. Each row or column will 
be displaced a certain number of pixels coinciding with the given wave form.",
                                      "Compatibility procedure. Please see 'gegl:ripple' for credits.",
@@ -8415,7 +8356,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-rotate");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-rotate",
                                      "Rotates a layer or the whole image by 90, 180 or 270 degrees",
                                      "This plug-in does rotate the active layer or the whole image clockwise 
by multiples of 90 degrees. When the whole image is chosen, the image is resized if necessary.",
                                      "Sven Neumann <sven gimp org>",
@@ -8463,7 +8403,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-noisify");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-noisify",
                                      "Adds random noise to image channels",
                                      "Add normally distributed random values to image channels. For color 
images each color channel may be treated together or independently.",
                                      "Compatibility procedure. Please see 'gegl:noise-rgb' for credits.",
@@ -8529,7 +8468,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-sel-gauss");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-sel-gauss",
                                      "Blur neighboring pixels, but only in low-contrast areas",
                                      "This filter functions similar to the regular gaussian blur filter 
except that neighbouring pixels that differ more than the given maxdelta parameter will not be blended with. 
This way with the correct parameters, an image can be smoothed out without losing details. However, this 
filter can be rather slow.",
                                      "Compatibility procedure. Please see 'gegl:gaussian-blur-selective' for 
credits.",
@@ -8577,7 +8515,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-semiflatten");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-semiflatten",
                                      "Replace partial transparency with the current background color",
                                      "This plug-in flattens pixels in an RGBA image that aren't completely 
transparent against the current GIMP background color.",
                                      "Spencer Kimball & Peter Mattis",
@@ -8613,7 +8550,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-shift");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-shift",
                                      "Shift each row or column of pixels by a random amount",
                                      "Shifts the pixels of the specified drawable. Each row or column will 
be displaced a random value of pixels.",
                                      "Compatibility procedure. Please see 'gegl:shift' for credits.",
@@ -8661,7 +8597,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-sinus");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-sinus",
                                      "Generate complex sinusoidal textures",
                                      "FIXME: sinus help",
                                      "Compatibility procedure. Please see 'gegl:sinus' for credits.",
@@ -8777,7 +8712,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-sobel");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-sobel",
                                      "Specialized direction-dependent edge detection",
                                      "This plug-in calculates the gradient with a sobel operator. The user 
can specify which direction to use. When both directions are used, the result is the RMS of the two 
gradients; if only one direction is used, the result either the absolute value of the gradient, or 127 + 
gradient (if the 'keep sign' switch is on). This way, information about the direction of the gradient is 
preserved. Resulting images are not autoscaled.\"",
                                      "Compatibility procedure. Please see 'gegl:edge-sobel' for credits.",
@@ -8831,7 +8765,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-softglow");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-softglow",
                                      "Simulate glow by making highlights intense and fuzzy",
                                      "Gives an image a softglow effect by intensifying the highlights in the 
image. This is done by screening a modified version of the drawable with itself. The modified version is 
desaturated and then a sigmoidal transfer function is applied to force the distribution of intensities into 
very small and very large only. This desaturated version is then blurred to give it a fuzzy 
'vaseline-on-the-lens' effect. The glow radius parameter controls the sharpness of the glow effect. The 
brightness parameter controls the degree of intensification applied to image highlights. The sharpness 
parameter controls how defined or alternatively, diffuse, the glow effect should be.",
                                      "Compatibility procedure. Please see 'gegl:softglow' for credits.",
@@ -8885,7 +8818,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-solid-noise");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-solid-noise",
                                      "Create a random cloud-like texture",
                                      "Generates 2D textures using Perlin's classic solid noise function.",
                                      "Compatibility procedure. Please see 'gegl:noise-solid' for credits.",
@@ -8957,7 +8889,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-spread");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-spread",
                                      "Move pixels around randomly",
                                      "Spreads the pixels of the specified drawable. Pixels are randomly 
moved to another location whose distance varies from the original by the horizontal and vertical spread 
amounts.",
                                      "Compatibility procedure. Please see 'gegl:noise-spread' for credits.",
@@ -9005,7 +8936,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-threshold-alpha");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-threshold-alpha",
                                      "Make transparency all-or-nothing",
                                      "Make transparency all-or-nothing.",
                                      "Spencer Kimball & Peter Mattis",
@@ -9047,7 +8977,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-unsharp-mask");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-unsharp-mask",
                                      "The most widely useful method for sharpening an image",
                                      "The unsharp mask is a sharpening filter that works by comparing using 
the difference of the image and a blurred version of the image. It is commonly used on photographic images, 
and is provides a much more pleasing result than the standard sharpen filter.",
                                      "Compatibility procedure. Please see 'gegl:unsharp-mask' for credits.",
@@ -9101,7 +9030,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-video");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-video",
                                      "Simulate distortion produced by a fuzzy or low-res monitor",
                                      "This function simulates the degradation of being on an old 
low-dotpitch RGB video monitor to the specified drawable.",
                                      "Compatibility procedure. Please see 'gegl:video-degradation' for 
credits.",
@@ -9155,7 +9083,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-vinvert");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-vinvert",
                                      "Invert the brightness of each pixel",
                                      "This function takes an indexed/RGB image and inverts its 'value' in 
HSV space. The upshot of this is that the color and saturation at any given point remains the same, but its 
brightness is effectively inverted. Quite strange. Sometimes produces unpleasant color artifacts on images 
from lossy sources (ie. JPEG).",
                                      "Spencer Kimball & Peter Mattis",
@@ -9191,7 +9118,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-vpropagate");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-vpropagate",
                                      "Propagate certain colors to neighboring pixels",
                                      "Propagate values of the layer.",
                                      "Compatibility procedure. Please see 'gegl:value-propagate' for 
credits.",
@@ -9263,7 +9189,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-dilate");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-dilate",
                                      "Grow lighter areas of the image",
                                      "Dilate image.",
                                      "Compatibility procedure. Please see 'gegl:value-propagate' for 
credits.",
@@ -9335,7 +9260,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-erode");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-erode",
                                      "Shrink lighter areas of the image",
                                      "Erode image.",
                                      "Compatibility procedure. Please see 'gegl:value-propagate' for 
credits.",
@@ -9407,7 +9331,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-waves");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-waves",
                                      "Distort the image with waves",
                                      "Distort the image with waves.",
                                      "Compatibility procedure. Please see 'gegl:waves' for credits.",
@@ -9473,7 +9396,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-whirl-pinch");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-whirl-pinch",
                                      "Distort an image by whirling and pinching",
                                      "Distorts the image by whirling and pinching, which are two common 
center-based, circular distortions. Whirling is like projecting the image onto the surface of water in a 
toilet and flushing. Pinching is similar to projecting the image onto an elastic surface and pressing or 
pulling on the center of the surface.",
                                      "Compatibility procedure. Please see 'gegl:whirl-pinch' for credits.",
@@ -9527,7 +9449,6 @@ register_plug_in_compat_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "plug-in-wind");
   gimp_procedure_set_static_strings (procedure,
-                                     "plug-in-wind",
                                      "Smear image to give windblown effect",
                                      "Renders a wind effect.",
                                      "Compatibility procedure. Please see 'gegl:wind' for credits.",
diff --git a/app/pdb/progress-cmds.c b/app/pdb/progress-cmds.c
index e61824e830..63eabfe05b 100644
--- a/app/pdb/progress-cmds.c
+++ b/app/pdb/progress-cmds.c
@@ -301,7 +301,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-init");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-init",
                                      "Initializes the progress bar for the current plug-in.",
                                      "Initializes the progress bar for the current plug-in. It is only valid 
to call this procedure from a plug-in.",
                                      "Spencer Kimball & Peter Mattis",
@@ -331,7 +330,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-update");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-update",
                                      "Updates the progress bar for the current plug-in.",
                                      "Updates the progress bar for the current plug-in. It is only valid to 
call this procedure from a plug-in.",
                                      "Spencer Kimball & Peter Mattis",
@@ -354,7 +352,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-pulse");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-pulse",
                                      "Pulses the progress bar for the current plug-in.",
                                      "Updates the progress bar for the current plug-in. It is only valid to 
call this procedure from a plug-in. Use this function instead of 'gimp-progress-update' if you cannot tell 
how much progress has been made. This usually causes the the progress bar to enter \"activity mode\", where a 
block bounces back and forth.",
                                      "Sven Neumann <sven gimp org>",
@@ -371,7 +368,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-set-text");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-set-text",
                                      "Changes the text in the progress bar for the current plug-in.",
                                      "This function changes the text in the progress bar for the current 
plug-in. Unlike 'gimp-progress-init' it does not change the displayed value.",
                                      "Sven Neumann <sven gimp org>",
@@ -395,7 +391,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-end");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-end",
                                      "Ends the progress bar for the current plug-in.",
                                      "Ends the progress display for the current plug-in. Most plug-ins don't 
need to call this, they just exit when the work is done. It is only valid to call this procedure from a 
plug-in.",
                                      "Sven Neumann <sven gimp org>",
@@ -412,7 +407,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-get-window-handle");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-get-window-handle",
                                      "Returns the native window ID of the toplevel window this plug-in's 
progress is displayed in.",
                                      "This function returns the native window ID of the toplevel window this 
plug-in\'s progress is displayed in.",
                                      "Michael Natterer <mitch gimp org>",
@@ -435,7 +429,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-install");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-install",
                                      "Installs a progress callback for the current plug-in.",
                                      "This function installs a temporary PDB procedure which will handle all 
progress calls made by this plug-in and any procedure it calls. Calling this function multiple times simply 
replaces the old progress callbacks.",
                                      "Michael Natterer <mitch gimp org>",
@@ -459,7 +452,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-uninstall");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-uninstall",
                                      "Uninstalls the progress callback for the current plug-in.",
                                      "This function uninstalls any progress callback installed with 
'gimp-progress-install' before.",
                                      "Michael Natterer <mitch gimp org>",
@@ -483,7 +475,6 @@ register_progress_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-progress-cancel");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-progress-cancel",
                                      "Cancels a running progress.",
                                      "This function cancels the currently running progress.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/selection-cmds.c b/app/pdb/selection-cmds.c
index d9ff516bef..5bc4d24823 100644
--- a/app/pdb/selection-cmds.c
+++ b/app/pdb/selection-cmds.c
@@ -499,7 +499,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-bounds");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-bounds",
                                      "Find the bounding box of the current selection.",
                                      "This procedure returns whether there is a selection for the specified 
image. If there is one, the upper left and lower right corners of the bounding box are returned. These 
coordinates are relative to the image. Please note that the pixel specified by the lower right coordinate of 
the bounding box is not part of the selection. The selection ends at the upper left corner of this pixel. 
This means the width of the selection can be calculated as (x2 - x1), its height as (y2 - y1).",
                                      "Spencer Kimball & Peter Mattis",
@@ -552,7 +551,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-value");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-value",
                                      "Find the value of the selection at the specified coordinates.",
                                      "This procedure returns the value of the selection at the specified 
coordinates. If the coordinates lie out of bounds, 0 is returned.",
                                      "Spencer Kimball & Peter Mattis",
@@ -593,7 +591,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-is-empty");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-is-empty",
                                      "Determine whether the selection is empty.",
                                      "This procedure returns TRUE if the selection for the specified image 
is empty.",
                                      "Spencer Kimball & Peter Mattis",
@@ -622,7 +619,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-translate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-translate",
                                      "Translate the selection by the specified offsets.",
                                      "This procedure actually translates the selection for the specified 
image by the specified offsets. Regions that are translated from beyond the bounds of the image are set to 
empty. Valid regions of the selection which are translated beyond the bounds of the image because of this 
call are lost.",
                                      "Spencer Kimball & Peter Mattis",
@@ -657,7 +653,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-float");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-float",
                                      "Float the selection from the specified drawable with initial offsets 
as specified.",
                                      "This procedure determines the region of the specified drawable that 
lies beneath the current selection. The region is then cut from the drawable and the resulting data is made 
into a new layer which is instantiated as a floating selection. The offsets allow initial positioning of the 
new floating selection.",
                                      "Spencer Kimball & Peter Mattis",
@@ -698,7 +693,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-invert");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-invert",
                                      "Invert the selection mask.",
                                      "This procedure inverts the selection mask. For every pixel in the 
selection channel, its new value is calculated as (255 - old-value).",
                                      "Spencer Kimball & Peter Mattis",
@@ -721,7 +715,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-sharpen");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-sharpen",
                                      "Sharpen the selection mask.",
                                      "This procedure sharpens the selection mask. For every pixel in the 
selection channel, if the value is > 127, the new pixel is assigned a value of 255. This removes any 
\"anti-aliasing\" that might exist in the selection mask's boundary.",
                                      "Spencer Kimball & Peter Mattis",
@@ -744,7 +737,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-all");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-all",
                                      "Select all of the image.",
                                      "This procedure sets the selection mask to completely encompass the 
image. Every pixel in the selection channel is set to 255.",
                                      "Spencer Kimball & Peter Mattis",
@@ -767,7 +759,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-none");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-none",
                                      "Deselect the entire image.",
                                      "This procedure deselects the entire image. Every pixel in the 
selection channel is set to 0.",
                                      "Spencer Kimball & Peter Mattis",
@@ -790,7 +781,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-feather");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-feather",
                                      "Feather the image's selection",
                                      "This procedure feathers the selection. Feathering is implemented using 
a gaussian blur.",
                                      "Spencer Kimball & Peter Mattis",
@@ -819,7 +809,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-border");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-border",
                                      "Border the image's selection",
                                      "This procedure borders the selection. Bordering creates a new 
selection which is defined along the boundary of the previous selection at every point within the specified 
radius.",
                                      "Spencer Kimball & Peter Mattis",
@@ -848,7 +837,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-grow");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-grow",
                                      "Grow the image's selection",
                                      "This procedure grows the selection. Growing involves expanding the 
boundary in all directions by the specified pixel amount.",
                                      "Spencer Kimball & Peter Mattis",
@@ -877,7 +865,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-shrink");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-shrink",
                                      "Shrink the image's selection",
                                      "This procedure shrinks the selection. Shrinking involves trimming the 
existing selection boundary on all sides by the specified number of pixels.",
                                      "Spencer Kimball & Peter Mattis",
@@ -906,7 +893,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-flood");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-flood",
                                      "Remove holes from the image's selection",
                                      "This procedure removes holes from the selection, that can come from 
selecting a patchy area with the Fuzzy Select Tool. In technical terms this procedure floods the selection. 
See the Algorithms page in the developer wiki for details.",
                                      "Ell",
@@ -929,7 +915,6 @@ register_selection_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-selection-save");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-selection-save",
                                      "Copy the selection mask to a new channel.",
                                      "This procedure copies the selection mask and stores the content in a 
new channel. The new channel is automatically inserted into the image's list of channels.",
                                      "Spencer Kimball & Peter Mattis",
diff --git a/app/pdb/text-layer-cmds.c b/app/pdb/text-layer-cmds.c
index 81bb35fc1e..09d239b9b1 100644
--- a/app/pdb/text-layer-cmds.c
+++ b/app/pdb/text-layer-cmds.c
@@ -1147,7 +1147,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-new",
                                      "Creates a new text layer.",
                                      "This procedure creates a new text layer. The arguments are kept as 
simple as necessary for the normal case. All text attributes, however, can be modified with the appropriate 
gimp_text_layer_set_*() procedures. The new layer still needs to be added to the image, as this is not 
automatic. Add the new layer using 'gimp-image-insert-layer'.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1204,7 +1203,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-text");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-text",
                                      "Get the text from a text layer as string.",
                                      "This procedure returns the text from a text layer as a string.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1234,7 +1232,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-text");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-text",
                                      "Set the text of a text layer.",
                                      "This procedure changes the text of a text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1264,7 +1261,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-markup");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-markup",
                                      "Get the markup from a text layer as string.",
                                      "This procedure returns the markup of the styles from a text layer. The 
markup will be in the form of Pango's markup - See https://www.pango.org/ for more information about Pango 
and its markup. Note: Setting the markup of a text layer using Pango's markup is not supported for now.",
                                      "Barak Itkin <lightningismyname gmail com>",
@@ -1294,7 +1290,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-font");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-font",
                                      "Get the font from a text layer as string.",
                                      "This procedure returns the name of the font from a text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1324,7 +1319,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-font");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-font",
                                      "Set the font of a text layer.",
                                      "This procedure modifies the font used in the specified text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1354,7 +1348,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-font-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-font-size",
                                      "Get the font size from a text layer.",
                                      "This procedure returns the size of the font which is used in a text 
layer. You will receive the size as a float 'font-size' in 'unit' units.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1391,7 +1384,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-font-size");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-font-size",
                                      "Set the font size.",
                                      "This procedure changes the font size of a text layer. The size of your 
font will be a double 'font-size' of 'unit' units.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1428,7 +1420,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-antialias");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-antialias",
                                      "Check if antialiasing is used in the text layer.",
                                      "This procedure checks if antialiasing is enabled in the specified text 
layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1457,7 +1448,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-antialias");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-antialias",
                                      "Enable/disable anti-aliasing in a text layer.",
                                      "This procedure enables or disables anti-aliasing of the text in a text 
layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1486,7 +1476,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-hint-style");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-hint-style",
                                      "Get information about hinting in the specified text layer.",
                                      "This procedure provides information about the hinting that is being 
used in a text layer. Hinting can be optimized for fidelity or contrast or it can be turned entirely off.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1516,7 +1505,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-hint-style");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-hint-style",
                                      "Control how font outlines are hinted in a text layer.",
                                      "This procedure sets the hint style for font outlines in a text layer. 
This controls whether to fit font outlines to the pixel grid, and if so, whether to optimize for fidelity or 
contrast.",
                                      "Sven Neumann <sven gimp org>",
@@ -1546,7 +1534,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-kerning");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-kerning",
                                      "Check if kerning is used in the text layer.",
                                      "This procedure checks if kerning is enabled in the specified text 
layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1575,7 +1562,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-kerning");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-kerning",
                                      "Enable/disable kerning in a text layer.",
                                      "This procedure enables or disables kerning in a text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1604,7 +1590,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-language");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-language",
                                      "Get the language used in the text layer.",
                                      "This procedure returns the language string which is set for the text 
in the text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1634,7 +1619,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-language");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-language",
                                      "Set the language of the text layer.",
                                      "This procedure sets the language of the text in text layer. For some 
scripts the language has an influence of how the text is rendered.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1664,7 +1648,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-base-direction");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-base-direction",
                                      "Get the base direction used for rendering the text layer.",
                                      "This procedure returns the base direction used for rendering the text 
in the text layer",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1694,7 +1677,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-base-direction");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-base-direction",
                                      "Set the base direction in the text layer.",
                                      "This procedure sets the base direction used in applying the Unicode 
bidirectional algorithm when rendering the text.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1724,7 +1706,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-justification");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-justification",
                                      "Get the text justification information of the text layer.",
                                      "This procedure returns the alignment of the lines in the text layer 
relative to each other.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1754,7 +1735,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-justification");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-justification",
                                      "Set the justification of the text in a text layer.",
                                      "This procedure sets the alignment of the lines in the text layer 
relative to each other.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1784,7 +1764,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-color",
                                      "Get the color of the text in a text layer.",
                                      "This procedure returns the color of the text in a text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1814,7 +1793,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-color");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-color",
                                      "Set the color of the text in the text layer.",
                                      "This procedure sets the text color in the text layer 'layer'.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1844,7 +1822,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-indent");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-indent",
                                      "Get the line indentation of text layer.",
                                      "This procedure returns the indentation of the first line in a text 
layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1873,7 +1850,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-indent");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-indent",
                                      "Set the indentation of the first line in a text layer.",
                                      "This procedure sets the indentation of the first line in the text 
layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1902,7 +1878,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-line-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-line-spacing",
                                      "Get the spacing between lines of text.",
                                      "This procedure returns the line-spacing between lines of text in a 
text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1931,7 +1906,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-line-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-line-spacing",
                                      "Adjust the line spacing in a text layer.",
                                      "This procedure sets the additional spacing used between lines a text 
layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1960,7 +1934,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-get-letter-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-get-letter-spacing",
                                      "Get the letter spacing used in a text layer.",
                                      "This procedure returns the additional spacing between the single 
glyphs in a text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1989,7 +1962,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-set-letter-spacing");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-set-letter-spacing",
                                      "Adjust the letter spacing in a text layer.",
                                      "This procedure sets the additional spacing between the single glyphs 
in a text layer.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -2018,7 +1990,6 @@ register_text_layer_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-layer-resize");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-layer-resize",
                                      "Resize the box of a text layer.",
                                      "This procedure changes the width and height of a text layer while 
keeping it as a text layer and not converting it to a bitmap like 'gimp-layer-resize' would do.",
                                      "Barak Itkin <lightningismyname gmail com>",
diff --git a/app/pdb/text-tool-cmds.c b/app/pdb/text-tool-cmds.c
index 09a2fa7c92..ce2d8f9426 100644
--- a/app/pdb/text-tool-cmds.c
+++ b/app/pdb/text-tool-cmds.c
@@ -161,7 +161,6 @@ register_text_tool_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-fontname");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-fontname",
                                      "Add text at the specified location as a floating selection or a new 
layer.",
                                      "This tool requires a fontname matching an installed PangoFT2 font. You 
can specify the fontsize in units of pixels or points, and the appropriate metric is specified using the 
size_type argument. The x and y parameters together control the placement of the new text by specifying the 
upper left corner of the text bounding box. If the specified drawable parameter is valid, the text will be 
created as a floating selection attached to the drawable. If the drawable parameter is not valid (-1), the 
text will appear as a new layer. Finally, a border can be specified around the final rendered text. The 
border is measured in pixels. Parameter size-type is not used and is currently ignored. If you need to 
display a font in points, divide the size in points by 72.0 and multiply it by the image's vertical 
resolution.",
                                      "Martin Edlman & Sven Neumann",
@@ -247,7 +246,6 @@ register_text_tool_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-text-get-extents-fontname");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-text-get-extents-fontname",
                                      "Get extents of the bounding box for the specified text.",
                                      "This tool returns the width and height of a bounding box for the 
specified text string with the specified font information. Ascent and descent for the specified font are 
returned as well. Parameter size-type is not used and is currently ignored. If you need to display a font in 
points, divide the size in points by 72.0 and multiply it by the vertical resolution of the image you are 
taking into account.",
                                      "Martin Edlman & Sven Neumann",
diff --git a/app/pdb/unit-cmds.c b/app/pdb/unit-cmds.c
index e1d5edb089..2006793e39 100644
--- a/app/pdb/unit-cmds.c
+++ b/app/pdb/unit-cmds.c
@@ -385,7 +385,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-number-of-units");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-number-of-units",
                                      "Returns the number of units.",
                                      "This procedure returns the number of defined units.",
                                      "Michael Natterer <mitch gimp org>",
@@ -408,7 +407,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-number-of-built-in-units");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-number-of-built-in-units",
                                      "Returns the number of built-in units.",
                                      "This procedure returns the number of defined units built-in to GIMP.",
                                      "Michael Natterer <mitch gimp org>",
@@ -431,7 +429,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-new",
                                      "Creates a new unit and returns it's integer ID.",
                                      "This procedure creates a new unit and returns it's integer ID. Note 
that the new unit will have it's deletion flag set to TRUE, so you will have to set it to FALSE with 
'gimp-unit-set-deletion-flag' to make it persistent.",
                                      "Michael Natterer <mitch gimp org>",
@@ -503,7 +500,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-deletion-flag");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-deletion-flag",
                                      "Returns the deletion flag of the unit.",
                                      "This procedure returns the deletion flag of the unit. If this value is 
TRUE the unit's definition will not be saved in the user's unitrc file on gimp exit.",
                                      "Michael Natterer <mitch gimp org>",
@@ -534,7 +530,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-set-deletion-flag");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-set-deletion-flag",
                                      "Sets the deletion flag of a unit.",
                                      "This procedure sets the unit's deletion flag. If the deletion flag of 
a unit is TRUE on gimp exit, this unit's definition will not be saved in the user's unitrc.",
                                      "Michael Natterer <mitch gimp org>",
@@ -565,7 +560,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-identifier");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-identifier",
                                      "Returns the textual identifier of the unit.",
                                      "This procedure returns the textual identifier of the unit. For 
built-in units it will be the english singular form of the unit's name. For user-defined units this should 
equal to the singular form.",
                                      "Michael Natterer <mitch gimp org>",
@@ -597,7 +591,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-factor");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-factor",
                                      "Returns the factor of the unit.",
                                      "This procedure returns the unit's factor which indicates how many 
units make up an inch. Note that asking for the factor of \"pixels\" will produce an error.",
                                      "Michael Natterer <mitch gimp org>",
@@ -628,7 +621,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-digits");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-digits",
                                      "Returns the number of digits of the unit.",
                                      "This procedure returns the number of digits you should provide in 
input or output functions to get approximately the same accuracy as with two digits and inches. Note that 
asking for the digits of \"pixels\" will produce an error.",
                                      "Michael Natterer <mitch gimp org>",
@@ -659,7 +651,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-symbol");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-symbol",
                                      "Returns the symbol of the unit.",
                                      "This procedure returns the symbol of the unit (\"''\" for inches).",
                                      "Michael Natterer <mitch gimp org>",
@@ -691,7 +682,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-abbreviation");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-abbreviation",
                                      "Returns the abbreviation of the unit.",
                                      "This procedure returns the abbreviation of the unit (\"in\" for 
inches).",
                                      "Michael Natterer <mitch gimp org>",
@@ -723,7 +713,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-singular");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-singular",
                                      "Returns the singular form of the unit.",
                                      "This procedure returns the singular form of the unit.",
                                      "Michael Natterer <mitch gimp org>",
@@ -755,7 +744,6 @@ register_unit_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-unit-get-plural");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-unit-get-plural",
                                      "Returns the plural form of the unit.",
                                      "This procedure returns the plural form of the unit.",
                                      "Michael Natterer <mitch gimp org>",
diff --git a/app/pdb/vectors-cmds.c b/app/pdb/vectors-cmds.c
index 1ad4aecda2..bea6b5f460 100644
--- a/app/pdb/vectors-cmds.c
+++ b/app/pdb/vectors-cmds.c
@@ -1304,7 +1304,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-new");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-new",
                                      "Creates a new empty vectors object.",
                                      "Creates a new empty vectors object. The vectors object needs to be 
added to the image using 'gimp-image-insert-vectors'.",
                                      "Simon Budig",
@@ -1340,7 +1339,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-new-from-text-layer");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-new-from-text-layer",
                                      "Creates a new vectors object from a text layer.",
                                      "Creates a new vectors object from a text layer. The vectors object 
needs to be added to the image using 'gimp-image-insert-vectors'.",
                                      "Marcus Heese <heese cip ifi lmu de>",
@@ -1375,7 +1373,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-copy");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-copy",
                                      "Copy a vectors object.",
                                      "This procedure copies the specified vectors object and returns the 
copy.",
                                      "Barak Itkin <lightningismyname gmail com>",
@@ -1404,7 +1401,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-get-strokes");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-get-strokes",
                                      "List the strokes associated with the passed path.",
                                      "Returns an Array with the stroke-IDs associated with the passed path.",
                                      "Simon Budig",
@@ -1438,7 +1434,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-get-length");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-get-length",
                                      "Measure the length of the given stroke.",
                                      "Measure the length of the given stroke.",
                                      "Simon Budig",
@@ -1479,7 +1474,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-get-point-at-dist");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-get-point-at-dist",
                                      "Get point at a specified distance along the stroke.",
                                      "This will return the x,y position of a point at a given distance along 
the stroke. The distance will be obtained by first digitizing the curve internally and then walking along the 
curve. For a closed stroke the start of the path is the first point on the path that was created. This might 
not be obvious. If the stroke is not long enough, a \"valid\" flag will be FALSE.",
                                      "Simon Budig",
@@ -1544,7 +1538,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-remove-stroke");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-remove-stroke",
                                      "remove the stroke from a vectors object.",
                                      "Remove the stroke from a vectors object.",
                                      "Simon Budig",
@@ -1573,7 +1566,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-close");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-close",
                                      "closes the specified stroke.",
                                      "Closes the specified stroke.",
                                      "Simon Budig",
@@ -1602,7 +1594,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-translate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-translate",
                                      "translate the given stroke.",
                                      "Translate the given stroke.",
                                      "Simon Budig",
@@ -1643,7 +1634,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-scale");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-scale",
                                      "scales the given stroke.",
                                      "Scale the given stroke.",
                                      "Simon Budig",
@@ -1684,7 +1674,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-rotate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-rotate",
                                      "rotates the given stroke.",
                                      "Rotates the given stroke around given center by angle (in degrees).",
                                      "Jo\xc3\xa3o S. O. Bueno",
@@ -1731,7 +1720,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-flip");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-flip",
                                      "flips the given stroke.",
                                      "Rotates the given stroke around given center by angle (in degrees).",
                                      "Jo\xc3\xa3o S. O. Bueno",
@@ -1775,7 +1763,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-flip-free");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-flip-free",
                                      "flips the given stroke about an arbitrary axis.",
                                      "Flips the given stroke about an arbitrary axis. Axis is defined by two 
coordinates in the image (in pixels), through which the flipping axis passes.",
                                      "Jo\xc3\xa3o S. O. Bueno",
@@ -1828,7 +1815,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-get-points");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-get-points",
                                      "returns the control points of a stroke.",
                                      "returns the control points of a stroke. The interpretation of the 
coordinates returned depends on the type of the stroke. For Gimp 2.4 this is always a bezier stroke, where 
the coordinates are the control points.",
                                      "Simon Budig",
@@ -1881,7 +1867,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-new-from-points");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-new-from-points",
                                      "Adds a stroke of a given type to the vectors object.",
                                      "Adds a stroke of a given type to the vectors object. The coordinates 
of the control points can be specified. For now only strokes of the type GIMP_VECTORS_STROKE_TYPE_BEZIER are 
supported. The control points are specified as a pair of float values for the x- and y-coordinate. The Bezier 
stroke type needs a multiple of three control points. Each Bezier segment endpoint (anchor, A) has two 
additional control points (C) associated. They are specified in the order CACCACCAC...",
                                      "Simon Budig",
@@ -1934,7 +1919,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-stroke-interpolate");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-stroke-interpolate",
                                      "returns polygonal approximation of the stroke.",
                                      "returns polygonal approximation of the stroke.",
                                      "Simon Budig",
@@ -1986,7 +1970,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-bezier-stroke-new-moveto");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-bezier-stroke-new-moveto",
                                      "Adds a bezier stroke with a single moveto to the vectors object.",
                                      "Adds a bezier stroke with a single moveto to the vectors object.",
                                      "Simon Budig",
@@ -2027,7 +2010,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-bezier-stroke-lineto");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-bezier-stroke-lineto",
                                      "Extends a bezier stroke with a lineto.",
                                      "Extends a bezier stroke with a lineto.",
                                      "Simon Budig",
@@ -2068,7 +2050,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-bezier-stroke-conicto");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-bezier-stroke-conicto",
                                      "Extends a bezier stroke with a conic bezier spline.",
                                      "Extends a bezier stroke with a conic bezier spline. Actually a cubic 
bezier spline gets added that realizes the shape of a conic bezier spline.",
                                      "Simon Budig",
@@ -2121,7 +2102,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-bezier-stroke-cubicto");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-bezier-stroke-cubicto",
                                      "Extends a bezier stroke with a cubic bezier spline.",
                                      "Extends a bezier stroke with a cubic bezier spline.",
                                      "Simon Budig",
@@ -2186,7 +2166,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-bezier-stroke-new-ellipse");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-bezier-stroke-new-ellipse",
                                      "Adds a bezier stroke describing an ellipse the vectors object.",
                                      "Adds a bezier stroke describing an ellipse the vectors object.",
                                      "Simon Budig",
@@ -2245,7 +2224,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-import-from-file");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-import-from-file",
                                      "Import paths from an SVG file.",
                                      "This procedure imports paths from an SVG file. SVG elements other than 
paths and basic shapes are ignored.",
                                      "Simon Budig",
@@ -2298,7 +2276,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-import-from-string");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-import-from-string",
                                      "Import paths from an SVG string.",
                                      "This procedure works like 'gimp-vectors-import-from-file' but takes a 
string rather than reading the SVG from a file. This allows you to write scripts that generate SVG and feed 
it to GIMP.",
                                      "Simon Budig",
@@ -2357,7 +2334,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-export-to-file");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-export-to-file",
                                      "save a path as an SVG file.",
                                      "This procedure creates an SVG file to save a Vectors object, that is, 
a path. The resulting file can be edited using a vector graphics application, or later reloaded into GIMP. If 
you pass 0 as the 'vectors' argument, then all paths in the image will be exported.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
@@ -2393,7 +2369,6 @@ register_vectors_procs (GimpPDB *pdb)
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "gimp-vectors-export-to-string");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-vectors-export-to-string",
                                      "Save a path as an SVG string.",
                                      "This procedure works like 'gimp-vectors-export-to-file' but creates a 
string rather than a file. The contents are a NUL-terminated string that holds a complete XML document. If 
you pass 0 as the 'vectors' argument, then all paths in the image will be exported.",
                                      "Bill Skaggs <weskaggs primate ucdavis edu>",
diff --git a/app/plug-in/gimpplugin-message.c b/app/plug-in/gimpplugin-message.c
index 6aecb72d84..7040a6322b 100644
--- a/app/plug-in/gimpplugin-message.c
+++ b/app/plug-in/gimpplugin-message.c
@@ -701,7 +701,6 @@ gimp_plug_in_handle_proc_install (GimpPlugIn    *plug_in,
 {
   GimpPlugInProcedure *proc       = NULL;
   GimpProcedure       *procedure  = NULL;
-  gchar               *canonical;
   gboolean             null_name  = FALSE;
   gboolean             valid_utf8 = FALSE;
   gint                 i;
@@ -709,7 +708,17 @@ gimp_plug_in_handle_proc_install (GimpPlugIn    *plug_in,
   g_return_if_fail (proc_install != NULL);
   g_return_if_fail (proc_install->name != NULL);
 
-  canonical = gimp_canonicalize_identifier (proc_install->name);
+  if (! gimp_is_canonical_identifier (proc_install->name))
+    {
+      gimp_message (plug_in->manager->gimp, NULL, GIMP_MESSAGE_ERROR,
+                    "Plug-in \"%s\"\n(%s)\n\n"
+                    "attempted to install procedure \"%s\" with a "
+                    "non-canonical name.",
+                    gimp_object_get_name (plug_in),
+                    gimp_file_get_utf8_name (plug_in->file),
+                    proc_install->name);
+      return;
+    }
 
   /*  Sanity check for array arguments  */
 
@@ -734,8 +743,7 @@ gimp_plug_in_handle_proc_install (GimpPlugIn    *plug_in,
                         "passing standard.  Argument %d is noncompliant.",
                         gimp_object_get_name (plug_in),
                         gimp_file_get_utf8_name (plug_in->file),
-                        canonical, i);
-          g_free (canonical);
+                        proc_install->name, i);
           return;
         }
     }
@@ -745,8 +753,8 @@ gimp_plug_in_handle_proc_install (GimpPlugIn    *plug_in,
 #define VALIDATE(str)         (g_utf8_validate ((str), -1, NULL))
 #define VALIDATE_OR_NULL(str) ((str) == NULL || g_utf8_validate ((str), -1, NULL))
 
-  if (VALIDATE_OR_NULL (proc_install->menu_label) &&
-      VALIDATE         (canonical)                &&
+  if (VALIDATE         (proc_install->name)       &&
+      VALIDATE_OR_NULL (proc_install->menu_label) &&
       VALIDATE_OR_NULL (proc_install->blurb)      &&
       VALIDATE_OR_NULL (proc_install->help)       &&
       VALIDATE_OR_NULL (proc_install->help_id)    &&
@@ -797,8 +805,7 @@ gimp_plug_in_handle_proc_install (GimpPlugIn    *plug_in,
                     "NULL parameter name.",
                     gimp_object_get_name (plug_in),
                     gimp_file_get_utf8_name (plug_in->file),
-                    canonical);
-      g_free (canonical);
+                    proc_install->name);
       return;
     }
 
@@ -810,8 +817,7 @@ gimp_plug_in_handle_proc_install (GimpPlugIn    *plug_in,
                     "invalid UTF-8 strings.",
                     gimp_object_get_name (plug_in),
                     gimp_file_get_utf8_name (plug_in->file),
-                    canonical);
-      g_free (canonical);
+                    proc_install->name);
       return;
     }
 
@@ -825,9 +831,8 @@ gimp_plug_in_handle_proc_install (GimpPlugIn    *plug_in,
                     "any longer.",
                     gimp_object_get_name (plug_in),
                     gimp_file_get_utf8_name (plug_in->file),
-                    canonical,
+                    proc_install->name,
                     proc_install->menu_label);
-      g_free (canonical);
       return;
     }
 
@@ -851,9 +856,8 @@ gimp_plug_in_handle_proc_install (GimpPlugIn    *plug_in,
   proc->mtime                 = time (NULL);
   proc->installed_during_init = (plug_in->call_mode == GIMP_PLUG_IN_CALL_INIT);
 
-  gimp_object_take_name (GIMP_OBJECT (procedure), canonical);
+  gimp_object_set_name (GIMP_OBJECT (procedure), proc_install->name);
   gimp_procedure_set_strings (procedure,
-                              proc_install->name,
                               proc_install->blurb,
                               proc_install->help,
                               proc_install->authors,
@@ -932,19 +936,27 @@ gimp_plug_in_handle_proc_uninstall (GimpPlugIn      *plug_in,
                                     GPProcUninstall *proc_uninstall)
 {
   GimpPlugInProcedure *proc;
-  gchar               *canonical;
 
   g_return_if_fail (proc_uninstall != NULL);
   g_return_if_fail (proc_uninstall->name != NULL);
 
-  canonical = gimp_canonicalize_identifier (proc_uninstall->name);
+  if (! gimp_is_canonical_identifier (proc_uninstall->name))
+    {
+      gimp_message (plug_in->manager->gimp, NULL, GIMP_MESSAGE_ERROR,
+                    "Plug-in \"%s\"\n(%s)\n\n"
+                    "attempted to uninstall procedure \"%s\" with a "
+                    "non-canonical name.",
+                    gimp_object_get_name (plug_in),
+                    gimp_file_get_utf8_name (plug_in->file),
+                    proc_uninstall->name);
+      return;
+    }
 
-  proc = gimp_plug_in_procedure_find (plug_in->temp_procedures, canonical);
+  proc = gimp_plug_in_procedure_find (plug_in->temp_procedures,
+                                      proc_uninstall->name);
 
   if (proc)
     gimp_plug_in_remove_temp_proc (plug_in, GIMP_TEMPORARY_PROCEDURE (proc));
-
-  g_free (canonical);
 }
 
 static void
diff --git a/app/plug-in/gimppluginmanager-call.c b/app/plug-in/gimppluginmanager-call.c
index 616c8a6a9f..f3d51dee12 100644
--- a/app/plug-in/gimppluginmanager-call.c
+++ b/app/plug-in/gimppluginmanager-call.c
@@ -227,7 +227,7 @@ gimp_plug_in_manager_call_run (GimpPlugInManager   *manager,
       config.swap_path        = gegl_config->swap_path;
       config.num_processors   = gegl_config->num_processors;
 
-      proc_run.name    = GIMP_PROCEDURE (procedure)->original_name;
+      proc_run.name    = (gchar *) gimp_object_get_name (procedure);
       proc_run.nparams = gimp_value_array_length (args);
       proc_run.params  = _gimp_value_array_to_gp_params (args, FALSE);
 
@@ -322,7 +322,7 @@ gimp_plug_in_manager_call_run_temp (GimpPlugInManager      *manager,
       proc_frame = gimp_plug_in_proc_frame_push (plug_in, context, progress,
                                                  procedure);
 
-      proc_run.name    = GIMP_PROCEDURE (procedure)->original_name;
+      proc_run.name    = (gchar *) gimp_object_get_name (procedure);
       proc_run.nparams = gimp_value_array_length (args);
       proc_run.params  = _gimp_value_array_to_gp_params (args, FALSE);
 
diff --git a/app/plug-in/plug-in-rc.c b/app/plug-in/plug-in-rc.c
index d9f52cadeb..4b0e0bde87 100644
--- a/app/plug-in/plug-in-rc.c
+++ b/app/plug-in/plug-in-rc.c
@@ -419,10 +419,7 @@ plug_in_procedure_deserialize (GScanner             *scanner,
 
   *proc = GIMP_PLUG_IN_PROCEDURE (procedure);
 
-  gimp_object_take_name (GIMP_OBJECT (procedure),
-                         gimp_canonicalize_identifier (str));
-
-  procedure->original_name = str;
+  gimp_object_take_name (GIMP_OBJECT (procedure), str);
 
   if (! gimp_scanner_parse_string (scanner, &procedure->blurb))
     return G_TOKEN_STRING;
@@ -1164,7 +1161,7 @@ plug_in_rc_write (GSList  *plug_in_defs,
 
               gimp_config_writer_open (writer, "proc-def");
               gimp_config_writer_printf (writer, "\"%s\" %d",
-                                         procedure->original_name,
+                                         gimp_object_get_name (procedure),
                                          procedure->proc_type);
               gimp_config_writer_linefeed (writer);
               gimp_config_writer_string (writer, procedure->blurb);
diff --git a/app/xcf/xcf.c b/app/xcf/xcf.c
index de7a2f6279..d774f01df8 100644
--- a/app/xcf/xcf.c
+++ b/app/xcf/xcf.c
@@ -122,7 +122,6 @@ xcf_init (Gimp *gimp)
 
   gimp_object_set_static_name (GIMP_OBJECT (procedure), "gimp-xcf-save");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-xcf-save",
                                      "Saves file in the .xcf file format",
                                      "The XCF file format has been designed "
                                      "specifically for loading and saving "
@@ -195,7 +194,6 @@ xcf_init (Gimp *gimp)
 
   gimp_object_set_static_name (GIMP_OBJECT (procedure), "gimp-xcf-load");
   gimp_procedure_set_static_strings (procedure,
-                                     "gimp-xcf-load",
                                      "Loads file saved in the .xcf file format",
                                      "The XCF file format has been designed "
                                      "specifically for loading and saving "
diff --git a/pdb/app.pl b/pdb/app.pl
index 8861392e8d..870b5bbf3e 100644
--- a/pdb/app.pl
+++ b/pdb/app.pl
@@ -641,7 +641,6 @@ sub generate {
   gimp_object_set_static_name (GIMP_OBJECT (procedure),
                                "$procedure_name");
   gimp_procedure_set_static_strings (procedure,
-                                     "$procedure_name",
                                      @{[ &quotewrap($blurb, 2, 37) ]},
                                      @{[ &quotewrap($help,  2, 37) ]},
                                      "$proc->{author}",
diff --git a/pdb/groups/fileops.pdb b/pdb/groups/fileops.pdb
index 75e205644e..d9c80e390c 100644
--- a/pdb/groups/fileops.pdb
+++ b/pdb/groups/fileops.pdb
@@ -472,13 +472,11 @@ HELP
     %invoke = (
         code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-  success = gimp_plug_in_manager_register_load_handler (gimp->plug_in_manager,
-                                                        canonical,
-                                                        extensions, prefixes, magics);
-
-  g_free (canonical);
+  success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+             gimp_plug_in_manager_register_load_handler (gimp->plug_in_manager,
+                                                         procedure_name,
+                                                         extensions, prefixes,
+                                                         magics));
 }
 CODE
     );
@@ -511,13 +509,11 @@ HELP
     %invoke = (
         code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-  success = gimp_plug_in_manager_register_load_handler (gimp->plug_in_manager,
-                                                        canonical,
-                                                        extensions, prefixes, NULL);
-
-  g_free (canonical);
+  success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+             gimp_plug_in_manager_register_load_handler (gimp->plug_in_manager,
+                                                         procedure_name,
+                                                         extensions, prefixes,
+                                                         NULL));
 }
 CODE
     );
@@ -549,13 +545,10 @@ HELP
     %invoke = (
         code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-  success = gimp_plug_in_manager_register_save_handler (gimp->plug_in_manager,
-                                                        canonical,
-                                                        extensions, prefixes);
-
-  g_free (canonical);
+  success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+             gimp_plug_in_manager_register_save_handler (gimp->plug_in_manager,
+                                                         procedure_name,
+                                                         extensions, prefixes));
 }
 CODE
     );
@@ -586,12 +579,9 @@ HELP
     %invoke = (
         code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-  success = gimp_plug_in_manager_register_priority (gimp->plug_in_manager,
-                                                    canonical, priority);
-
-  g_free (canonical);
+  success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+             gimp_plug_in_manager_register_priority (gimp->plug_in_manager,
+                                                     procedure_name, priority));
 }
 CODE
     );
@@ -619,12 +609,9 @@ HELP
     %invoke = (
         code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-  success = gimp_plug_in_manager_register_handles_uri (gimp->plug_in_manager,
-                                                       canonical);
-
-  g_free (canonical);
+  success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+             gimp_plug_in_manager_register_handles_uri (gimp->plug_in_manager,
+                                                        procedure_name));
 }
 CODE
     );
@@ -655,12 +642,10 @@ HELP
     %invoke = (
         code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-  success = gimp_plug_in_manager_register_mime_types (gimp->plug_in_manager,
-                                                      canonical, mime_types);
-
-  g_free (canonical);
+  success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+             gimp_plug_in_manager_register_mime_types (gimp->plug_in_manager,
+                                                       procedure_name,
+                                                       mime_types));
 }
 CODE
     );
@@ -687,12 +672,9 @@ HELP
     %invoke = (
         code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-
-  success = gimp_plug_in_manager_register_handles_raw (gimp->plug_in_manager,
-                                                       canonical);
-
-  g_free (canonical);
+  success = (gimp_pdb_is_canonical_procedure (procedure_name, error) &&
+             gimp_plug_in_manager_register_handles_raw (gimp->plug_in_manager,
+                                                        procedure_name));
 }
 CODE
     );
@@ -723,14 +705,10 @@ HELP
     %invoke = (
         code => <<'CODE'
 {
-  gchar *canonical   = gimp_canonicalize_identifier (load_proc);
-  gchar *canon_thumb = gimp_canonicalize_identifier (thumb_proc);
-
-  success = gimp_plug_in_manager_register_thumb_loader (gimp->plug_in_manager,
-                                                        canonical, canon_thumb);
-
-  g_free (canonical);
-  g_free (canon_thumb);
+  success = (gimp_pdb_is_canonical_procedure (load_proc, error) &&
+             gimp_pdb_is_canonical_procedure (thumb_proc, error) &&
+             gimp_plug_in_manager_register_thumb_loader (gimp->plug_in_manager,
+                                                         load_proc, thumb_proc));
 }
 CODE
     );
@@ -743,6 +721,7 @@ CODE
               "core/gimp-utils.h"
               "plug-in/gimppluginmanager-file.h"
               "plug-in/gimppluginprocedure.h"
+              "gimppdb-utils.h"
               "file/file-open.h"
               "file/file-save.h"
               "file/file-utils.h");
diff --git a/pdb/groups/pdb.pdb b/pdb/groups/pdb.pdb
index cdda1a1e24..b24417721d 100644
--- a/pdb/groups/pdb.pdb
+++ b/pdb/groups/pdb.pdb
@@ -167,24 +167,25 @@ HELP
     %invoke = (
        code => <<'CODE'
 {
-  GimpProcedure *procedure;
-  gchar         *canonical;
+  if (gimp_pdb_is_canonical_procedure (procedure_name, error))
+    {
+      GimpProcedure *procedure;
 
-  canonical = gimp_canonicalize_identifier (procedure_name);
+      procedure = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
 
-  procedure = gimp_pdb_lookup_procedure (gimp->pdb, canonical);
+      if (! procedure)
+        {
+          procedure_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb,
+                                                            procedure_name);
 
-  if (! procedure)
-    {
-      procedure_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb, canonical);
+          if (procedure_name)
+            procedure = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
+        }
 
-      if (procedure_name)
-        procedure = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
+      exists = (procedure != NULL);
     }
-
-  g_free (canonical);
-
-  exists = (procedure != NULL);
+  else
+    success = FALSE;
 }
 CODE
     );
@@ -236,19 +237,19 @@ HELP
     %invoke = (
        code => <<'CODE'
 {
-  GimpPDBProcType  ptype;
-  gchar           *canonical;
-
-  canonical = gimp_canonicalize_identifier (procedure_name);
-
-  success = gimp_pdb_proc_info (gimp->pdb, canonical,
-                                &blurb, &help, &authors,
-                                &copyright, &date, &ptype,
-                                &num_args, &num_values,
-                                error);
-  proc_type = ptype;
-
-  g_free (canonical);
+  if (gimp_pdb_is_canonical_procedure (procedure_name, error))
+    {
+      GimpPDBProcType  ptype;
+
+      success = gimp_pdb_proc_info (gimp->pdb, procedure_name,
+                                    &blurb, &help, &authors,
+                                    &copyright, &date, &ptype,
+                                    &num_args, &num_values,
+                                    error);
+      proc_type = ptype;
+    }
+  else
+    success = FALSE;
 }
 CODE
     );
@@ -285,28 +286,29 @@ HELP
    %invoke = (
        code => <<CODE
 {
-  GimpProcedure *proc;
-  gchar         *canonical;
-
-  canonical = gimp_canonicalize_identifier (procedure_name);
-
-  proc = gimp_pdb_lookup_procedure (gimp->pdb, canonical);
-
-  if (! proc)
+  if (gimp_pdb_is_canonical_procedure (procedure_name, error))
     {
-      const gchar *compat_name;
+      GimpProcedure *proc;
 
-      compat_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb, canonical);
+      proc = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
 
-      if (compat_name)
-        proc = gimp_pdb_lookup_procedure (gimp->pdb, compat_name);
-    }
+      if (! proc)
+        {
+          const gchar *compat_name;
 
-  g_free (canonical);
+          compat_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb,
+                                                         procedure_name);
 
-  if (proc && (arg_num >= 0 && arg_num < proc->num_args))
-    {
-      param_spec = g_param_spec_ref (proc->args[arg_num]);
+          if (compat_name)
+            proc = gimp_pdb_lookup_procedure (gimp->pdb, compat_name);
+        }
+
+      if (proc && (arg_num >= 0 && arg_num < proc->num_args))
+        {
+          param_spec = g_param_spec_ref (proc->args[arg_num]);
+        }
+      else
+        success = FALSE;
     }
   else
     success = FALSE;
@@ -346,28 +348,29 @@ HELP
    %invoke = (
        code => <<CODE
 {
-  GimpProcedure *proc;
-  gchar         *canonical;
-
-  canonical = gimp_canonicalize_identifier (procedure_name);
-
-  proc = gimp_pdb_lookup_procedure (gimp->pdb, canonical);
-
-  if (! proc)
+  if (gimp_pdb_is_canonical_procedure (procedure_name, error))
     {
-      const gchar *compat_name;
+      GimpProcedure *proc;
 
-      compat_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb, canonical);
+      proc = gimp_pdb_lookup_procedure (gimp->pdb, procedure_name);
 
-      if (compat_name)
-        proc = gimp_pdb_lookup_procedure (gimp->pdb, compat_name);
-    }
+      if (! proc)
+        {
+          const gchar *compat_name;
 
-  g_free (canonical);
+          compat_name = gimp_pdb_lookup_compat_proc_name (gimp->pdb,
+                                                         procedure_name);
 
-  if (proc && (val_num >= 0 && val_num < proc->num_values))
-    {
-      param_spec = g_param_spec_ref (proc->values[val_num]);
+          if (compat_name)
+            proc = gimp_pdb_lookup_procedure (gimp->pdb, compat_name);
+        }
+
+      if (proc && (val_num >= 0 && val_num < proc->num_values))
+        {
+          param_spec = g_param_spec_ref (proc->values[val_num]);
+        }
+      else
+        success = FALSE;
     }
   else
     success = FALSE;
@@ -405,16 +408,18 @@ HELP
     %invoke = (
        code => <<'CODE'
 {
-  gchar        *canonical = gimp_canonicalize_identifier (identifier);
-  const guint8 *orig_data;
-
-  orig_data = gimp_plug_in_manager_get_data (gimp->plug_in_manager,
-                                             canonical, &bytes);
+  if (gimp_pdb_is_canonical_procedure (identifier, error))
+    {
+      const guint8 *orig_data;
 
-  g_free (canonical);
+      orig_data = gimp_plug_in_manager_get_data (gimp->plug_in_manager,
+                                                 identifier, &bytes);
 
-  if (orig_data)
-    data = g_memdup (orig_data, bytes);
+      if (orig_data)
+        data = g_memdup (orig_data, bytes);
+      else
+        success = FALSE;
+    }
   else
     success = FALSE;
 }
@@ -448,13 +453,14 @@ HELP
     %invoke = (
        code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (identifier);
-
-  if (! gimp_plug_in_manager_get_data (gimp->plug_in_manager,
-                                       canonical, &bytes))
+  if (gimp_pdb_is_canonical_procedure (identifier, error))
+    {
+      if (! gimp_plug_in_manager_get_data (gimp->plug_in_manager,
+                                           identifier, &bytes))
+        success = FALSE;
+    }
+  else
     success = FALSE;
-
-  g_free (canonical);
 }
 CODE
     );
@@ -485,12 +491,13 @@ HELP
     %invoke = (
        code => <<'CODE'
 {
-  gchar *canonical = gimp_canonicalize_identifier (identifier);
-
-  gimp_plug_in_manager_set_data (gimp->plug_in_manager,
-                                 canonical, bytes, data);
-
-  g_free (canonical);
+  if (gimp_pdb_is_canonical_procedure (identifier, error))
+    {
+      gimp_plug_in_manager_set_data (gimp->plug_in_manager,
+                                     identifier, bytes, data);
+    }
+  else
+    success = FALSE;
 }
 CODE
     );
@@ -502,6 +509,7 @@ CODE
               "core/gimpparamspecs-desc.h"
               "plug-in/gimppluginmanager-data.h"
               "gimppdb-query.h"
+              "gimppdb-utils.h"
               "gimp-pdb-compat.h");
 
 @procs = qw(pdb_temp_name
diff --git a/pdb/groups/plug_in.pdb b/pdb/groups/plug_in.pdb
index ac33d39345..3d74996846 100644
--- a/pdb/groups/plug_in.pdb
+++ b/pdb/groups/plug_in.pdb
@@ -110,9 +110,7 @@ HELP
                                           domain_name, domain_path);
     }
   else
-    {
-      success = FALSE;
-    }
+    success = FALSE;
 }
 CODE
     );
@@ -152,9 +150,7 @@ HELP
                                         domain_name, domain_uri);
     }
   else
-    {
-      success = FALSE;
-    }
+    success = FALSE;
 }
 CODE
     );
@@ -183,16 +179,13 @@ HELP
 {
   GimpPlugIn *plug_in = gimp->plug_in_manager->current_plug_in;
 
-  if (plug_in)
+  if (plug_in &&
+      gimp_pdb_is_canonical_procedure (procedure_name, error))
     {
-      gchar *canonical = gimp_canonicalize_identifier (procedure_name);
-      success = gimp_plug_in_menu_register (plug_in, canonical, menu_path);
-      g_free (canonical);
+      success = gimp_plug_in_menu_register (plug_in, procedure_name, menu_path);
     }
   else
-    {
-      success = FALSE;
-    }
+    success = FALSE;
 }
 CODE
     );
@@ -229,9 +222,7 @@ HELP
                                             plug_in->file, menu_path, menu_name);
     }
   else
-    {
-      success = FALSE;
-    }
+    success = FALSE;
 }
 CODE
     );
@@ -265,17 +256,14 @@ HELP
 {
   GimpPlugIn *plug_in = gimp->plug_in_manager->current_plug_in;
 
-  if (plug_in && plug_in->call_mode == GIMP_PLUG_IN_CALL_QUERY)
+  if (plug_in &&
+      plug_in->call_mode == GIMP_PLUG_IN_CALL_QUERY &&
+      gimp_pdb_is_canonical_procedure (procedure_name, error))
     {
       GimpPlugInProcedure *proc;
-      gchar               *canonical;
-
-      canonical = gimp_canonicalize_identifier (procedure_name);
 
       proc = gimp_plug_in_procedure_find (plug_in->plug_in_def->procedures,
-                                          canonical);
-
-      g_free (canonical);
+                                          procedure_name);
 
       if (proc)
         gimp_plug_in_procedure_set_icon (proc, icon_type,
@@ -284,9 +272,7 @@ HELP
         success = FALSE;
     }
   else
-    {
-      success = FALSE;
-    }
+    success = FALSE;
 }
 CODE
     );
@@ -325,9 +311,7 @@ HELP
       gimp_plug_in_set_error_handler (plug_in, handler);
     }
   else
-    {
-      success = FALSE;
-    }
+    success = FALSE;
 }
 CODE
     );
@@ -361,9 +345,7 @@ HELP
       handler = gimp_plug_in_get_error_handler (plug_in);
     }
   else
-    {
-      success = FALSE;
-    }
+    success = FALSE;
 }
 CODE
     );
@@ -378,7 +360,8 @@ CODE
               "plug-in/gimppluginmanager.h"
               "plug-in/gimppluginmanager-menu-branch.h"
               "plug-in/gimppluginmanager-query.h"
-              "plug-in/gimppluginprocedure.h");
+              "plug-in/gimppluginprocedure.h"
+              "gimppdb-utils.h");
 
 @procs = qw(plugins_query
            plugin_domain_register



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]