[gnome-builder] snippets: add stripsuffix filter function.



commit 8888cc1e73c620e4aeab9bcd5e61219889a80b6e
Author: Christian Hergert <christian hergert me>
Date:   Mon Sep 8 22:27:34 2014 -0700

    snippets: add stripsuffix filter function.

 src/editor/gb-source-snippet-context.c |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)
---
diff --git a/src/editor/gb-source-snippet-context.c b/src/editor/gb-source-snippet-context.c
index 997c2d6..87f1f9e 100644
--- a/src/editor/gb-source-snippet-context.c
+++ b/src/editor/gb-source-snippet-context.c
@@ -344,6 +344,20 @@ filter_space (const gchar *input)
 }
 
 static gchar *
+filter_stripsuffix (const gchar *input)
+{
+  const gchar *endpos;
+
+  g_return_val_if_fail (input, NULL);
+
+  endpos = strrchr (input, '.');
+  if (endpos)
+    return g_strndup (input, (endpos - input));
+
+  return g_strdup (input);
+}
+
+static gchar *
 apply_filter (gchar       *input,
               const gchar *filter)
 {
@@ -580,6 +594,7 @@ gb_source_snippet_context_class_init (GbSourceSnippetContextClass *klass)
   g_hash_table_insert (gFilters, (gpointer) "namespace", filter_namespace);
   g_hash_table_insert (gFilters, (gpointer) "class", filter_class);
   g_hash_table_insert (gFilters, (gpointer) "space", filter_space);
+  g_hash_table_insert (gFilters, (gpointer) "stripsuffix", filter_stripsuffix);
 }
 
 static void


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