aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--ChangeLog.ja6
-rw-r--r--src/addr_compl.c10
3 files changed, 16 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index e6928705..83151c05 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2008-03-13
+
+ * src/addr_compl.c: get_completion_address(): added characters to be
+ quoted.
+ get_address_from_edit(): treat other characters than ',' and space
+ as valid ones.
+
2008-02-29
* src/quick_search.c: added missing #include <gtk/gtkentry.h>.
diff --git a/ChangeLog.ja b/ChangeLog.ja
index a84d1342..d90d9bd1 100644
--- a/ChangeLog.ja
+++ b/ChangeLog.ja
@@ -1,3 +1,9 @@
+2008-03-13
+
+ * src/addr_compl.c: get_completion_address(): 引用すべき文字を追加。
+ get_address_from_edit(): ',' と空白以外の文字を有効として扱う
+ ようにした。
+
2008-02-29
* src/quick_search.c: #include <gtk/gtkentry.h> が足りなかったので
diff --git a/src/addr_compl.c b/src/addr_compl.c
index 908b338e..94a18b33 100644
--- a/src/addr_compl.c
+++ b/src/addr_compl.c
@@ -276,15 +276,11 @@ gchar *get_address_from_edit(GtkEntry *entry, gint *start_pos)
if (g_utf8_strlen(p, -1) == 0)
return NULL;
-#define IS_VALID_CHAR(x) \
- (g_ascii_isalnum(x) || (x) == '"' || (x) == '<' || ((guchar)(x) > 0x7f))
-
/* now scan back until we hit a valid character */
- for (; *p && !IS_VALID_CHAR(*p); p = g_utf8_next_char(p))
+ for (; *p && (*p == ',' || g_ascii_isspace(*p));
+ p = g_utf8_next_char(p))
;
-#undef IS_VALID_CHAR
-
if (g_utf8_strlen(p, -1) == 0)
return NULL;
@@ -412,7 +408,7 @@ gchar *get_complete_address(gint index)
if (!p->name || p->name[0] == '\0')
address = g_strdup(p->address);
else if (p->name[0] != '"' &&
- strpbrk(p->name, ",.[]<>") != NULL)
+ strpbrk(p->name, "(),.:;<>@[]") != NULL)
address = g_strdup_printf
("\"%s\" <%s>", p->name, p->address);
else