From: Alfons Hoogervorst Date: Sun, 6 May 2001 20:06:56 +0000 (+0000) Subject: sync with sylpheed 0.4.66cvs3-5 X-Git-Tag: VERSION_0_5_0_TEST~21 X-Git-Url: http://git.claws-mail.org/?p=claws.git;a=commitdiff_plain;h=a43e96fe3928e4b72bfed3856b17fdb261419ddb sync with sylpheed 0.4.66cvs3-5 --- diff --git a/COPYING b/COPYING index 8daa321ef..9a799a5f1 100644 --- a/COPYING +++ b/COPYING @@ -1,13 +1,10 @@ -The code in this distribution is Copyright 1999,2000 by Hiroyuki Yamamoto. +The code in this distribution is Copyright 1999-2001 by Hiroyuki Yamamoto. The portions applied from fetchmail is Copyright 1997 by Eric S. Raymond. Portions of those are also copyrighted by Carl Harris, 1993 and 1995. Copyright retained for the purpose of protecting free redistribution of source. -The MD5 support is copyright by RSA Data Security, Inc. See the header -comment of the md5.c module for license terms. - Kcc is copyright by Yasuhiro Tonooka (tonooka@msi.co.jp), and libkcc is copyright by takeshi@SoftAgency.co.jp. diff --git a/ChangeLog b/ChangeLog index d540e7b78..40a0086b1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,76 @@ +2001-05-06 + + * src/prefs_display_header.c: merged some changes from claws branch: + prefs_display_header_create(): allow reordering of headers by + dragging. + prefs_display_header_find_header(): new function. + prefs_display_header_clist_set_row(): don't allow duplicates. + * src/prefs_account.c: prefs_account_receive_create(): changed + the label of the check button. + +2001-05-05 + + * src/pop.c: pop3_getsize_list_recv(): if sscanf() failed, break + immediately. + * src/inc.h: removed cur_msg_bytes from Pop3State. + * src/inc.c: pop3_recv_func() + src/recv.[ch]: made the second arguments of RecvUIFunc current + total read bytes. + recv_write(): made it call UI func if elapsed time is greater + than 0.1 sec. + * src/recv.c: recv_write(): changed the interval to 300 usec. + * src/textview.c: textview_show_header(): if header is Subject, + unfold it. + * src/utils.[ch]: unfold_line(): new. + * src/procheader.[ch]: procheader_get_header_array(): new. + * src/prefs_display_header.c: updated defaults. + +2001-05-05 + + * some merge from the sylpheed-claws branch. + It allows user to specify displayed headers in message view. + (symbol names were also changed.) + * src/prefs_display_header.[ch] + src/displayheader.[ch]: new. + * src/prefs_display_header.c: + removed prefs_display_headers_other_headers_toggled(). + removed "(New)" row from the list. + * src/defs.h: added DISPLAY_HEADER_RC. + * src/prefs_common.c: prefs_message_create(): added a button for + opening the display header setting dialog. + * src/prefs_common.h: added show_other_header and disphdr_list + to PrefsCommon. + * src/procheader.[ch]: procheader_get_header_list_from_file(), + procheader_get_header_array_asis(): new. + procheader_get_header_list(): modified so that it takes FILE + pointer for its argument. + procheader_header_array_destroy(), procheader_header_free(): new. + * src/main.c: main(): made it call prefs_display_header_*_config(). + * src/textview.c: textview_scan_header(): modified so that it + sorts headers according to user setting. + src/textview_show_header(): made it call + textview_make_clickable_parts(). + textview_make_clickable_parts(): added GdkFont to its arguments, + and removed GtkText from them. + +2001-05-04 + + * implemented auto-checking of new mail based on the patch from + Pierric Descamps (thanks!). + * src/inc.c: added inc_autocheck_timer_init(), + inc_autocheck_timer_set(), inc_autocheck_timer_remove(), + inc_autocheck_func() for auto-checking of new mail. + * src/main.c: main(): call inc_autocheck_timer_init(). + * src/prefs_common.c: prefs_receive_create(): activated the + auto-checking UI. Added prefs_common_cancel(), and connected + some signals to that. + * src/prefs_common.c + src/prefs_account.c + src/prefs_filter.c + src/account.c: Disabled auto-checking while opening the dialog. + * src/headerview.c: headerview_show_xface(): fixed a bug that + showed a warning when header pane was hidden. + 2001-05-03 * src/inc.c diff --git a/ChangeLog.claws b/ChangeLog.claws index 624e998d4..24c6e21d9 100644 --- a/ChangeLog.claws +++ b/ChangeLog.claws @@ -1,3 +1,9 @@ +2001-05-06 [alfons] + + 0.4.66claws3 + + * sync with sylpheed 0.4.66cvs3-5 + 2001-05-06 [hoa] * src/utils.[ch] diff --git a/ChangeLog.jp b/ChangeLog.jp index 6078094fc..b9bda3762 100644 --- a/ChangeLog.jp +++ b/ChangeLog.jp @@ -1,3 +1,78 @@ +2001-05-06 + + * src/prefs_display_header.c: claws ¥Ö¥é¥ó¥Á¤«¤é¤¤¤¯¤Ä¤«¤ÎÊѹ¹¤ò + ¥Þ¡¼¥¸: + prefs_display_header_create(): ¥É¥é¥Ã¥°¤Ë¤è¤ë¥Ø¥Ã¥À¤ÎʤӴ¹¤¨¤¬ + ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£ + prefs_display_header_find_header(): ¿·µ¬´Ø¿ô¡£ + prefs_display_header_clist_set_row(): ½ÅÊ£¤òǧ¤á¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£ + * src/prefs_account.c: prefs_account_receive_create(): ¥Á¥§¥Ã¥¯ + ¥Ü¥¿¥ó¤Î¥é¥Ù¥ë¤òÊѹ¹¡£ + +2001-05-05 + + * src/pop.c: pop3_getsize_list_recv(): sscanf() ¤¬¼ºÇÔ¤·¤¿¤é¡¢ + ¤¹¤°¤Ë break ¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£ + * src/inc.h: Pop3State ¤«¤é cur_msg_bytes ¤òºï½ü¡£ + * src/inc.c: pop3_recv_func() + src/recv.[ch]: RecvUIFunc ¤ÎÂèÆó°ú¿ô¤ò¸½ºß¤Î¹ç·×¥Ð¥¤¥È¿ô¤Ë¤·¤¿¡£ + recv_write(): ·Ð²á»þ´Ö¤¬0.1Éäè¤êÂ礭¤±¤ì¤Ð UI ´Ø¿ô¤ò¸Æ¤Ö¤è¤¦¤Ë + ¤·¤¿¡£ + * src/recv.c: recv_write(): ´Ö³Ö¤ò300 usec ¤Ë¤·¤¿¡£ + * src/textview.c: textview_show_header(): ¥Ø¥Ã¥À¤¬ Subject ¤Î¾ì¹ç¡¢ + °ì¹Ô¤Ë¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£ + * src/utils.[ch]: unfold_line(): ¿·µ¬¡£ + * src/procheader.[ch]: procheader_get_header_array(): ¿·µ¬¡£ + * src/prefs_display_header.c: ¥Ç¥Õ¥©¥ë¥È¤ò¹¹¿·¡£ + +2001-05-05 + + * sylpheed-claws ¥Ö¥é¥ó¥Á¤«¤é¤¤¤¯¤Ä¤«¥Þ¡¼¥¸¡£ + ¥á¥Ã¥»¡¼¥¸¥Ó¥å¡¼¤Ëɽ¼¨¤µ¤ì¤ë¥Ø¥Ã¥À¤ò¥æ¡¼¥¶¤¬»ØÄê¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡£ + (¥·¥ó¥Ü¥ë̾¤ÏÊѹ¹¡£) + * src/prefs_display_header.[ch] + src/displayheader.[ch]: ¿·µ¬¡£ + * src/prefs_display_header.c: + prefs_display_headers_other_headers_toggled() ¤òºï½ü¡£ + ¥ê¥¹¥È¤«¤é "(¿·µ¬)" ¹Ô¤òºï½ü¡£ + * src/defs.h: DISPLAY_HEADER_RC ¤òÄɲᣠ+ * src/prefs_common.c: prefs_message_create(): ɽ¼¨¥Ø¥Ã¥À¤ÎÀßÄê + ¥À¥¤¥¢¥í¥°¤ò³«¤¯¥Ü¥¿¥ó¤òÄɲᣠ+ * src/prefs_common.h: PrefsCommon ¤Ë show_other_header ¤È + disphdr_list ¤òÄɲᣠ+ * src/procheader.[ch]: procheader_get_header_list_from_file(), + procheader_get_header_array_asis(): ¿·µ¬¡£ + procheader_get_header_list(): °ú¿ô¤Ë FILE ¥Ý¥¤¥ó¥¿¤ò¤È¤ë¤è¤¦¤Ë + ½¤Àµ¡£ + procheader_header_array_destroy(), procheader_header_free() ¿·µ¬¡£ + * src/main.c: main(): prefs_display_header_*_config() ¤ò¸Æ¤Ö¤è¤¦¤Ë + ¤·¤¿¡£ + * src/textview.c: textview_scan_header(): ¥æ¡¼¥¶¤ÎÀßÄê¤Ë¤è¤Ã¤Æ + ¥Ø¥Ã¥À¤òʤӴ¹¤¨¤ë¤è¤¦¤Ë½¤Àµ¡£ + src/textview_show_header(): textview_make_clickable_parts() ¤ò + ¸Æ¤Ö¤è¤¦¤Ë¤·¤¿¡£ + textview_make_clickable_parts(): °ú¿ô¤Ë GdkFont ¤ò¤È¤ë¤è¤¦¤Ë¤·¡¢ + °ú¿ô¤«¤é GtkText ¤ò½ü¤¤¤¿¡£ + +2001-05-04 + + * Pierric Descamps ¤µ¤ó¤Î¥Ñ¥Ã¥Á¤Ë´ð¤Å¤¤¤Æ¿·Ãå¥á¡¼¥ë¤Î¼«Æ°¥Á¥§¥Ã¥¯ + ¤ò¼ÂÁõ(thanks!)¡£ + * src/inc.c: inc_autocheck_timer_init(), inc_autocheck_timer_set(), + inc_autocheck_timer_remove(), inc_autocheck_func() ¤ò¿·Ãå¥á¡¼¥ë + ¤Î¼«Æ°¥Á¥§¥Ã¥¯¤Î¤¿¤á¤ËÄɲᣠ+ * src/main.c: main(): inc_autocheck_timer_init() ¤ò¸Æ¤Ö¤è¤¦¤Ë¤·¤¿¡£ + * src/prefs_common.c: prefs_receive_create(): ¼«Æ°¥Á¥§¥Ã¥¯¤Î UI + ¤ò¥¢¥¯¥Æ¥£¥Ö¤Ë¤·¤¿¡£ prefs_common_cancel() ¤òÄɲä·¡¢¤¤¤¯¤Ä¤«¤Î + ¥·¥°¥Ê¥ë¤ò¤½¤ì¤ËÀܳ¡£ + * src/prefs_common.c + src/prefs_account.c + src/prefs_filter.c + src/account.c: ¥À¥¤¥¢¥í¥°¤ò³«¤¤¤Æ¤¤¤ë¤È¤­¤Ï¼«Æ°¥Á¥§¥Ã¥¯¤ò̵¸ú¤Ë + ¤·¤¿¡£ + * src/headerview.c: headerview_show_xface(): ¥Ø¥Ã¥À¥Ú¥¤¥ó¤òÈóɽ¼¨ + ¤Ë¤·¤Æ¤¤¤ë¾ì¹ç¤Ë·Ù¹ð¤¬½Ð¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£ + 2001-05-03 * src/inc.c diff --git a/TODO b/TODO index 3662141b8..5f9e25c31 100644 --- a/TODO +++ b/TODO @@ -3,11 +3,9 @@ TODO (The upper item has the greater priority or feasibility... maybe :-) -o periodical check of newly arrived mails o POP before SMTP o list view of newsgroups and subscription of groups from there o full-text search of messages (plain, or hooking up with Namazu) -o progress display of time-consuming processes o original icons and logos o designate the displayed headers o user-defined headers @@ -44,6 +42,7 @@ Partially implemented features . IMAP4 support . PGP/GPG support . display of HTML messages (composition of HTML message is not scheduled :-P) +. progress display of time-consuming processes Implemented features ==================== @@ -64,3 +63,4 @@ Implemented features * posting to newsgroups * completion of mail address * prohibition of multiple execution (with Unix domain socket) +* periodical check of newly arrived mails diff --git a/TODO.jp b/TODO.jp index c48a75dc1..f762646bb 100644 --- a/TODO.jp +++ b/TODO.jp @@ -3,11 +3,9 @@ TODO (¾å¤Î¤â¤Î¤Û¤É½ÅÍ×ÅÙ¡¢¼Â¸½²ÄǽÀ­¤¬¹â¤¯¤Ê¤ë¡¢¤«¤â(^^;) -o ¿·Ãå¥á¡¼¥ë¤ÎÄê´üŪ¥Á¥§¥Ã¥¯ o POP before SMTP o ¥Ë¥å¡¼¥¹¥°¥ë¡¼¥×¤Î¥ê¥¹¥Èɽ¼¨¤È¤½¤³¤«¤é¤Î¹ØÆÉ¥°¥ë¡¼¥×Äɲà o ¥á¥Ã¥»¡¼¥¸¤ÎÁ´Ê¸¸¡º÷ (¥Ù¥¿¡¢ Namazu ¤È¤ÎÏ¢·È) -o »þ´Ö¤¬³Ý¤«¤ë½èÍý¤Î¿ÊĽ¾õ¶·É½¼¨ o ¥ª¥ê¥¸¥Ê¥ë¤Î¥¢¥¤¥³¥ó¤È¥í¥´ o ɽ¼¨¤µ¤ì¤ë¥Ø¥Ã¥À¤Î»ØÄê o ¥æ¡¼¥¶ÄêµÁ¤Î¥Ø¥Ã¥À @@ -44,6 +42,7 @@ o . IMAP4Âбþ . PGP/GPGÂбþ . HTML¥á¡¼¥ë¤Îɽ¼¨ (HTML¥á¡¼¥ë¤ÎºîÀ®¤ÏͽÄê¤Ê¤·:-P) +. »þ´Ö¤¬³Ý¤«¤ë½èÍý¤Î¿ÊĽ¾õ¶·É½¼¨ ¼ÂÁõºÑ¤Îµ¡Ç½ ============ @@ -65,3 +64,4 @@ o * ¥Ë¥å¡¼¥¹¥°¥ë¡¼¥×¤Ø¤ÎÅê¹Æ * ¥á¡¼¥ë¥¢¥É¥ì¥¹¤ÎÊä´° * Æó½Åµ¯Æ°ËÉ»ß (with Unix domain socket) +* ¿·Ãå¥á¡¼¥ë¤ÎÄê´üŪ¥Á¥§¥Ã¥¯ diff --git a/configure.in b/configure.in index cba48bfe1..288f5f508 100644 --- a/configure.in +++ b/configure.in @@ -8,7 +8,7 @@ MINOR_VERSION=4 MICRO_VERSION=66 INTERFACE_AGE=66 BINARY_AGE=66 -EXTRA_VERSION=claws2 +EXTRA_VERSION=claws3 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION dnl diff --git a/po/POTFILES.in b/po/POTFILES.in index 54ac40037..c0e726c5f 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -36,6 +36,7 @@ src/pop.c src/prefs.c src/prefs_account.c src/prefs_common.c +src/prefs_display_header.c src/prefs_filter.c src/procheader.c src/procmime.c diff --git a/po/ja.po b/po/ja.po index c673af3fb..8d4502fd8 100644 --- a/po/ja.po +++ b/po/ja.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: sylpheed\n" -"POT-Creation-Date: 2001-05-03 13:29+0900\n" +"POT-Creation-Date: 2001-05-06 14:28+0900\n" "PO-Revision-Date: 1999-10-12\n" "Last-Translator: Hiroyuki Yamamoto \n" "Language-Team: Japanese \n" @@ -89,23 +89,24 @@ msgstr "" #: src/about.c:234 src/addressbook.c:1293 src/alertpanel.c:209 #: src/compose.c:1460 src/compose.c:3071 src/export.c:184 src/foldersel.c:175 -#: src/import.c:188 src/inputdialog.c:155 src/main.c:314 src/main.c:322 +#: src/import.c:188 src/inputdialog.c:155 src/main.c:319 src/main.c:327 #: src/mainwindow.c:1655 src/mimeview.c:705 src/passphrase.c:115 -#: src/prefs.c:467 src/prefs_common.c:1772 src/prefs_common.c:1991 -#: src/prefs_common.c:2107 src/summaryview.c:2016 src/summaryview.c:2524 +#: src/prefs.c:467 src/prefs_common.c:1793 src/prefs_common.c:2012 +#: src/prefs_common.c:2128 src/prefs_display_header.c:188 +#: src/summaryview.c:2016 src/summaryview.c:2524 msgid "OK" msgstr "OK" -#: src/account.c:97 +#: src/account.c:98 msgid "Reading all config for each account...\n" msgstr "Á´¤Æ¤Î¥¢¥«¥¦¥ó¥ÈËè¤ÎÀßÄê¤òÆɤ߹þ¤ßÃæ...\n" -#: src/account.c:112 +#: src/account.c:113 #, c-format msgid "Found label: %s\n" msgstr "¥é¥Ù¥ëȯ¸«: %s\n" -#: src/account.c:202 +#: src/account.c:205 msgid "" "Some composing windows are open.\n" "Please close all the composing windows before editing the accounts." @@ -113,76 +114,77 @@ msgstr "" "¥á¥Ã¥»¡¼¥¸ºîÀ®¥¦¥£¥ó¥É¥¦¤¬³«¤¤¤Æ¤¤¤Þ¤¹¡£\n" "¥¢¥«¥¦¥ó¥È¤òÊÔ½¸¤¹¤ëÁ°¤ËÁ´¤Æ¤Î¥á¥Ã¥»¡¼¥¸ºîÀ®¥¦¥£¥ó¥É¥¦¤òÊĤ¸¤Æ¤¯¤À¤µ¤¤¡£" -#: src/account.c:207 +#: src/account.c:211 msgid "Opening account edit window...\n" msgstr "¥¢¥«¥¦¥ó¥ÈÊÔ½¸¥¦¥£¥ó¥É¥¦¤ò³«¤¤¤Æ¤¤¤Þ¤¹...\n" -#: src/account.c:347 +#: src/account.c:352 msgid "Creating account edit window...\n" msgstr "¥¢¥«¥¦¥ó¥ÈÊÔ½¸¥¦¥£¥ó¥É¥¦¤òºîÀ®Ãæ...\n" -#: src/account.c:352 +#: src/account.c:357 msgid "Edit accounts" msgstr "¥¢¥«¥¦¥ó¥È¤ÎÊÔ½¸" -#: src/account.c:380 src/addressbook.c:318 src/addressbook.c:1289 +#: src/account.c:385 src/addressbook.c:318 src/addressbook.c:1289 #: src/compose.c:2188 src/mimeview.c:135 src/select-keys.c:299 msgid "Name" msgstr "̾Á°" -#: src/account.c:381 src/prefs_account.c:616 +#: src/account.c:386 src/prefs_account.c:621 msgid "Protocol" msgstr "¥×¥í¥È¥³¥ë" -#: src/account.c:382 +#: src/account.c:387 msgid "Server" msgstr "¥µ¡¼¥Ð" -#: src/account.c:401 src/addressbook.c:439 +#: src/account.c:406 src/addressbook.c:439 src/prefs_display_header.c:265 +#: src/prefs_display_header.c:316 msgid "Add" msgstr "ÄɲÃ" -#: src/account.c:407 +#: src/account.c:412 msgid "Edit" msgstr "ÊÔ½¸" -#: src/account.c:413 +#: src/account.c:418 msgid " Delete " msgstr " ºï½ü " -#: src/account.c:419 src/prefs_filter.c:432 +#: src/account.c:424 src/prefs_display_header.c:284 src/prefs_filter.c:435 msgid "Down" msgstr " ¢­ " -#: src/account.c:425 src/prefs_filter.c:426 +#: src/account.c:430 src/prefs_display_header.c:278 src/prefs_filter.c:429 msgid "Up" msgstr " ¢¬ " -#: src/account.c:439 +#: src/account.c:444 msgid " Set as usually used account " msgstr " Ä̾ï»ÈÍѤ¹¤ë¥¢¥«¥¦¥ó¥È¤Ë»ØÄê " -#: src/account.c:445 src/prefs_filter.c:192 src/summary_search.c:192 +#: src/account.c:450 src/prefs_filter.c:195 src/summary_search.c:192 msgid "Close" msgstr "ÊĤ¸¤ë" -#: src/account.c:498 +#: src/account.c:504 msgid "Delete account" msgstr "¥¢¥«¥¦¥ó¥È¤Îºï½ü" -#: src/account.c:499 +#: src/account.c:505 msgid "Do you really want to delete this account?" msgstr "ËÜÅö¤Ë¤³¤Î¥¢¥«¥¦¥ó¥È¤òºï½ü¤·¤Æ¤â¤¤¤¤¤Ç¤¹¤«?" -#: src/account.c:500 src/addressbook.c:579 src/addressbook.c:1224 +#: src/account.c:506 src/addressbook.c:579 src/addressbook.c:1224 #: src/compose.c:3243 src/folderview.c:1273 src/folderview.c:1315 #: src/folderview.c:1404 src/folderview.c:1444 src/folderview.c:1543 -#: src/folderview.c:1576 src/mainwindow.c:944 src/prefs_filter.c:715 +#: src/folderview.c:1576 src/mainwindow.c:944 src/prefs_filter.c:718 #: src/summary_search.c:297 src/summaryview.c:573 src/summaryview.c:813 msgid "Yes" msgstr "¤Ï¤¤" -#: src/account.c:500 src/compose.c:3243 src/folderview.c:1273 +#: src/account.c:506 src/compose.c:3243 src/folderview.c:1273 #: src/folderview.c:1315 src/folderview.c:1404 src/folderview.c:1444 #: src/folderview.c:1543 src/folderview.c:1576 msgid "+No" @@ -275,7 +277,8 @@ msgid "Name:" msgstr "̾Á°:" #: src/addressbook.c:436 src/addressbook.c:1224 src/mainwindow.c:1398 -#: src/prefs_filter.c:392 +#: src/prefs_display_header.c:271 src/prefs_display_header.c:323 +#: src/prefs_filter.c:395 msgid "Delete" msgstr "ºï½ü" @@ -312,7 +315,7 @@ msgid "Really delete the address(es)?" msgstr "ËÜÅö¤Ë¤³¤Î¥¢¥É¥ì¥¹¤òºï½ü¤·¤Þ¤¹¤«?" #: src/addressbook.c:579 src/addressbook.c:1224 src/mainwindow.c:944 -#: src/prefs_filter.c:715 src/summary_search.c:297 src/summaryview.c:573 +#: src/prefs_filter.c:718 src/summary_search.c:297 src/summaryview.c:573 #: src/summaryview.c:813 msgid "No" msgstr "¤¤¤¤¤¨" @@ -377,10 +380,11 @@ msgstr " #: src/addressbook.c:1294 src/compose.c:1460 src/compose.c:3072 #: src/compose.c:3641 src/export.c:185 src/foldersel.c:176 src/import.c:189 -#: src/inputdialog.c:156 src/main.c:314 src/main.c:322 src/mainwindow.c:1655 +#: src/inputdialog.c:156 src/main.c:319 src/main.c:327 src/mainwindow.c:1655 #: src/mimeview.c:705 src/passphrase.c:119 src/prefs.c:468 -#: src/prefs_common.c:2108 src/progressdialog.c:75 src/select-keys.c:324 -#: src/summaryview.c:573 src/summaryview.c:2016 src/summaryview.c:2524 +#: src/prefs_common.c:2129 src/prefs_display_header.c:189 +#: src/progressdialog.c:75 src/select-keys.c:324 src/summaryview.c:573 +#: src/summaryview.c:2016 src/summaryview.c:2524 msgid "Cancel" msgstr "¥­¥ã¥ó¥»¥ë" @@ -410,7 +414,7 @@ msgstr " msgid "failed to write addressbook data.\n" msgstr "¥¢¥É¥ì¥¹Ä¢¤Î¥Ç¡¼¥¿¤Î½ñ¤­¹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£\n" -#: src/alertpanel.c:98 src/compose.c:3243 src/main.c:312 +#: src/alertpanel.c:98 src/compose.c:3243 src/main.c:317 msgid "Notice" msgstr "Ãí°Õ" @@ -418,7 +422,7 @@ msgstr " msgid "Warning" msgstr "·Ù¹ð" -#: src/alertpanel.c:124 src/inc.c:403 +#: src/alertpanel.c:124 src/inc.c:415 msgid "Error" msgstr "¥¨¥é¡¼" @@ -657,7 +661,7 @@ msgstr " msgid "Can't save the message to outbox." msgstr "¥á¥Ã¥»¡¼¥¸¤òÁ÷¿®¹µ¤ËÊݸ¤Ç¤­¤Þ¤»¤ó¡£" -#: src/compose.c:1500 src/compose.c:1621 src/compose.c:1707 src/utils.c:1477 +#: src/compose.c:1500 src/compose.c:1621 src/compose.c:1707 src/utils.c:1495 msgid "can't change file mode\n" msgstr "¥Õ¥¡¥¤¥ë¥â¡¼¥É¤òÊѹ¹¤Ç¤­¤Þ¤»¤ó\n" @@ -703,7 +707,7 @@ msgstr " msgid "MIME type" msgstr "MIME ¥¿¥¤¥×" -#: src/compose.c:2188 src/mimeview.c:135 src/prefs_common.c:2102 +#: src/compose.c:2188 src/mimeview.c:135 src/prefs_common.c:2123 #: src/select-keys.c:297 src/summaryview.c:361 msgid "Size" msgstr "¥µ¥¤¥º" @@ -716,8 +720,8 @@ msgstr " msgid "From:" msgstr "º¹½Ð¿Í:" -#: src/compose.c:2671 src/mainwindow.c:1352 src/prefs_account.c:486 -#: src/prefs_common.c:611 +#: src/compose.c:2671 src/mainwindow.c:1352 src/prefs_account.c:491 +#: src/prefs_common.c:618 msgid "Send" msgstr "Á÷¿®" @@ -757,7 +761,7 @@ msgstr "ź msgid "Attach file" msgstr "¥Õ¥¡¥¤¥ë¤òźÉÕ" -#: src/compose.c:2715 src/prefs_common.c:1012 +#: src/compose.c:2715 src/prefs_common.c:1017 msgid "Signature" msgstr "½ð̾" @@ -889,7 +893,7 @@ msgid "Exporting file:" msgstr "¥¨¥¯¥¹¥Ý¡¼¥È¥Õ¥¡¥¤¥ë:" #: src/export.c:171 src/export.c:177 src/import.c:175 src/import.c:181 -#: src/prefs_filter.c:343 +#: src/prefs_filter.c:346 msgid " Select... " msgstr " ÁªÂò... " @@ -941,7 +945,7 @@ msgstr " msgid "New" msgstr "¿·Ãå" -#: src/folderview.c:235 src/prefs_common.c:2099 +#: src/folderview.c:235 src/prefs_common.c:2120 msgid "Unread" msgstr "̤ÆÉ" @@ -975,7 +979,7 @@ msgstr " msgid "Updating all folders..." msgstr "Á´¥Õ¥©¥ë¥À¤ò¹¹¿·Ãæ..." -#: src/folderview.c:597 src/prefs_account.c:639 +#: src/folderview.c:597 src/prefs_account.c:644 msgid "Inbox" msgstr "¼õ¿®È¢" @@ -1268,111 +1272,111 @@ msgstr " msgid "Select importing file" msgstr "¥¤¥ó¥Ý¡¼¥È¤¹¤ë¥Õ¥¡¥¤¥ë¤òÁªÂò" -#: src/inc.c:183 src/inc.c:225 +#: src/inc.c:187 src/inc.c:236 msgid "Standby" msgstr "ÂÔµ¡Ãæ" -#: src/inc.c:243 +#: src/inc.c:255 msgid "Retrieving new messages" msgstr "¿·Ãå¥á¥Ã¥»¡¼¥¸¤ò¼õ¿®Ãæ" -#: src/inc.c:372 +#: src/inc.c:384 #, c-format msgid "Input password for %s on %s:" msgstr "%s (%s) ¤Î¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤:" -#: src/inc.c:376 +#: src/inc.c:388 msgid "Input password" msgstr "¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎÏ" -#: src/inc.c:393 +#: src/inc.c:405 msgid "Retrieving" msgstr "¼õ¿®Ãæ" -#: src/inc.c:400 +#: src/inc.c:412 msgid "Done" msgstr "´°Î»" -#: src/inc.c:409 +#: src/inc.c:421 #, c-format msgid "Authorization for %s on %s failed" msgstr "%s (%s) ¤Îǧ¾Ú¤Ë¼ºÇÔ¤·¤Þ¤·¤¿" -#: src/inc.c:475 +#: src/inc.c:487 #, c-format msgid "getting new messages of account %s...\n" msgstr "¥¢¥«¥¦¥ó¥È %s ¤Î¿·Ãå¥á¥Ã¥»¡¼¥¸¤ò¼è¤ê¹þ¤ó¤Ç¤¤¤Þ¤¹...\n" -#: src/inc.c:483 +#: src/inc.c:495 #, c-format msgid "%s: Retrieving new messages" msgstr "%s: ¿·Ãå¥á¥Ã¥»¡¼¥¸¤ò¼õ¿®Ãæ" -#: src/inc.c:504 +#: src/inc.c:516 #, c-format msgid "Connecting to POP3 server: %s ..." msgstr "POP3¥µ¡¼¥Ð: %s ¤ËÀܳÃæ..." -#: src/inc.c:515 src/inc.c:649 +#: src/inc.c:527 src/inc.c:661 #, c-format msgid "Can't connect to POP3 server: %s:%d\n" msgstr "POP3¥µ¡¼¥Ð: %s:%d ¤ËÀܳ¤Ç¤­¤Þ¤»¤ó\n" -#: src/inc.c:518 src/inc.c:652 +#: src/inc.c:530 src/inc.c:664 #, c-format msgid "Can't connect to POP3 server: %s:%d" msgstr "POP3¥µ¡¼¥Ð: %s:%d ¤ËÀܳ¤Ç¤­¤Þ¤»¤ó" -#: src/inc.c:683 src/inc.c:733 +#: src/inc.c:694 src/inc.c:744 #, c-format msgid "Retrieving message (%d / %d) (%d / %d bytes)" msgstr "¥á¥Ã¥»¡¼¥¸¤ò¼õ¿®Ãæ (%d / %d) (%d / %d bytes)" -#: src/inc.c:708 +#: src/inc.c:719 msgid "Authorizing..." msgstr "ǧ¾ÚÃæ..." -#: src/inc.c:713 +#: src/inc.c:724 msgid "Getting the number of new messages (STAT)..." msgstr "¿·Ãå¥á¥Ã¥»¡¼¥¸¤Î¿ô¤ò¼èÆÀÃæ (STAT)..." -#: src/inc.c:718 +#: src/inc.c:729 msgid "Getting the number of new messages (LAST)..." msgstr "¿·Ãå¥á¥Ã¥»¡¼¥¸¤Î¿ô¤ò¼èÆÀÃæ (LAST)..." -#: src/inc.c:723 +#: src/inc.c:734 msgid "Getting the number of new messages (UIDL)..." msgstr "¿·Ãå¥á¥Ã¥»¡¼¥¸¤Î¿ô¤ò¼èÆÀÃæ (UIDL)..." -#: src/inc.c:728 +#: src/inc.c:739 msgid "Getting the size of messages (LIST)..." msgstr "¥á¥Ã¥»¡¼¥¸¤Î¥µ¥¤¥º¤ò¼èÆÀÃæ (LIST)..." -#: src/inc.c:744 +#: src/inc.c:755 msgid "Deleting message" msgstr "¥á¥Ã¥»¡¼¥¸¤òºï½üÃæ" -#: src/inc.c:748 +#: src/inc.c:759 msgid "Quitting" msgstr "ÀÚÃÇÃæ" -#: src/inc.c:776 +#: src/inc.c:787 msgid "a message won't be received\n" msgstr "¥á¥Ã¥»¡¼¥¸¤Ï¼õ¿®¤µ¤ì¤Þ¤»¤ó\n" -#: src/inc.c:803 +#: src/inc.c:814 msgid "Error occurred while processing mail." msgstr "¥á¡¼¥ë¤Î½èÍýÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£" -#: src/inc.c:806 +#: src/inc.c:817 msgid "No disk space left." msgstr "¥Ç¥£¥¹¥¯¤Î¶õ¤­ÍÆÎ̤¬¤¢¤ê¤Þ¤»¤ó¡£" -#: src/inc.c:857 +#: src/inc.c:868 msgid "no messages in local mailbox.\n" msgstr "¥í¡¼¥«¥ë¤Î¥á¡¼¥ë¥Ü¥Ã¥¯¥¹¤Ë¤Ï¥á¥Ã¥»¡¼¥¸¤¬¤¢¤ê¤Þ¤»¤ó¡£\n" -#: src/inc.c:868 +#: src/inc.c:879 #, c-format msgid "Getting new messages from %s into %s...\n" msgstr "¿·¤·¤¤¥á¥Ã¥»¡¼¥¸¤ò %s ¤«¤é %s ¤Ë¼è¤ê¹þ¤ó¤Ç¤¤¤Þ¤¹...\n" @@ -1386,7 +1390,7 @@ msgid "Protocol log" msgstr "¥×¥í¥È¥³¥ë¥í¥°" #. for gettext -#: src/main.c:103 +#: src/main.c:104 #, c-format msgid "" "File `%s' already exists.\n" @@ -1395,11 +1399,11 @@ msgstr "" "¥Õ¥¡¥¤¥ë `%s' ¤¬¤¹¤Ç¤Ë¸ºß¤·¤Þ¤¹¡£\n" "¥Õ¥©¥ë¥À¤òºîÀ®¤Ç¤­¤Þ¤»¤ó¡£" -#: src/main.c:142 +#: src/main.c:143 msgid "g_thread is not supported by glib.\n" msgstr "g_thread ¤Ï glib ¤Ë¤è¤Ã¤Æ¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n" -#: src/main.c:206 +#: src/main.c:207 msgid "" "GnuPG is not installed properly.\n" "OpenPGP support disabled." @@ -1407,49 +1411,49 @@ msgstr "" "GnuPG ¤¬Àµ¤·¤¯¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n" "OpenPGP ¥µ¥Ý¡¼¥È¤Ï̵¸ú¤Ç¤¹¡£" -#: src/main.c:281 +#: src/main.c:286 #, c-format msgid "Usage: %s [OPTION]...\n" msgstr "»ÈÍÑË¡: %s [¥ª¥×¥·¥ç¥ó]...\n" -#: src/main.c:283 +#: src/main.c:288 msgid " --compose [address] open composition window" msgstr " --compose [address] ¥á¥Ã¥»¡¼¥¸ºîÀ®¥¦¥£¥ó¥É¥¦¤ò³«¤¯" -#: src/main.c:284 +#: src/main.c:289 msgid " --receive receive new messages" msgstr " --receive ¿·Ãå¥á¥Ã¥»¡¼¥¸¤ò¼õ¿®¤¹¤ë" -#: src/main.c:285 +#: src/main.c:290 msgid " --receive-all receive new messages of all accounts" msgstr " --receive-all Á´¥¢¥«¥¦¥ó¥È¤Î¿·Ãå¥á¥Ã¥»¡¼¥¸¤ò¼õ¿®¤¹¤ë" -#: src/main.c:286 +#: src/main.c:291 msgid " --debug debug mode" msgstr " --debug ¥Ç¥Ð¥Ã¥°¥â¡¼¥É" -#: src/main.c:287 +#: src/main.c:292 msgid " --help display this help and exit" msgstr " --help ¤³¤Î¥Ø¥ë¥×¤òɽ¼¨¤·¤Æ½ªÎ»¤¹¤ë" -#: src/main.c:288 +#: src/main.c:293 msgid " --version output version information and exit" msgstr " --version ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤ò½ÐÎϤ·¤Æ½ªÎ»¤¹¤ë" -#: src/main.c:313 +#: src/main.c:318 msgid "Composing message exists. Really quit?" msgstr "ºîÀ®Ãæ¤Î¥á¥Ã¥»¡¼¥¸¤¬Â¸ºß¤·¤Þ¤¹¡£ËÜÅö¤Ë½ªÎ»¤·¤Þ¤¹¤«?" -#: src/main.c:320 +#: src/main.c:325 msgid "Queued messages" msgstr "Á÷¿®ÂÔµ¡Ãæ¤Î¥á¥Ã¥»¡¼¥¸" -#: src/main.c:321 +#: src/main.c:326 msgid "Some unsent messages are queued. Exit now?" msgstr "Á÷¿®ÂÔµ¡Ãæ¤Î̤Á÷¿®¥á¥Ã¥»¡¼¥¸¤¬¤¢¤ê¤Þ¤¹¡£½ªÎ»¤·¤Þ¤¹¤«?" #. remote command mode -#: src/main.c:392 +#: src/main.c:397 msgid "another Sylpheed is already running.\n" msgstr "Ê̤ΠSylpheed ¤¬¤¹¤Ç¤Ëµ¯Æ°¤·¤Æ¤¤¤Þ¤¹¡£\n" @@ -1959,7 +1963,7 @@ msgstr " msgid "Send queued message(s)" msgstr "Á÷¿®ÂÔµ¡Ãæ¤Î¥á¥Ã¥»¡¼¥¸¤òÁ÷¿®¤¹¤ë" -#: src/mainwindow.c:1363 src/prefs_account.c:488 src/prefs_common.c:613 +#: src/mainwindow.c:1363 src/prefs_account.c:493 src/prefs_common.c:620 msgid "Compose" msgstr "ºîÀ®" @@ -2371,8 +2375,10 @@ msgstr "%s msgid "Finished reading configuration.\n" msgstr "ÀßÄê¤ÎÆɤ߹þ¤ß¤ò´°Î»¤·¤Þ¤·¤¿¡£\n" -#: src/prefs.c:168 src/prefs.c:213 src/prefs_account.c:353 -#: src/prefs_account.c:367 src/prefs_filter.c:512 src/prefs_filter.c:536 +#: src/prefs.c:168 src/prefs.c:213 src/prefs_account.c:354 +#: src/prefs_account.c:368 src/prefs_display_header.c:399 +#: src/prefs_display_header.c:424 src/prefs_filter.c:515 +#: src/prefs_filter.c:539 msgid "failed to write configuration to file\n" msgstr "ÀßÄê¤Î¥Õ¥¡¥¤¥ë¤Ø¤Î½ñ¤­¹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿\n" @@ -2384,312 +2390,312 @@ msgstr " msgid "Apply" msgstr "ŬÍÑ" -#: src/prefs_account.c:398 +#: src/prefs_account.c:399 msgid "Opening account preferences window...\n" msgstr "¥¢¥«¥¦¥ó¥È¥×¥ê¥Õ¥¡¥ì¥ó¥¹¥¦¥£¥ó¥É¥¦¤ò³«¤¤¤Æ¤¤¤Þ¤¹...\n" -#: src/prefs_account.c:423 +#: src/prefs_account.c:426 #, c-format msgid "Account%d" msgstr "Account%d" -#: src/prefs_account.c:436 +#: src/prefs_account.c:439 msgid "Preferences for new account" msgstr "¿·µ¬¥¢¥«¥¦¥ó¥È¤ÎÀßÄê" -#: src/prefs_account.c:441 +#: src/prefs_account.c:444 msgid "Preferences for each account" msgstr "¥¢¥«¥¦¥ó¥ÈËè¤ÎÀßÄê" -#: src/prefs_account.c:462 +#: src/prefs_account.c:467 msgid "Creating account preferences window...\n" msgstr "¥¢¥«¥¦¥ó¥È¥×¥ê¥Õ¥¡¥ì¥ó¥¹¥¦¥£¥ó¥É¥¦¤òºîÀ®Ãæ...\n" -#: src/prefs_account.c:482 +#: src/prefs_account.c:487 msgid "Basic" msgstr "´ðËÜ" -#: src/prefs_account.c:484 src/prefs_common.c:609 +#: src/prefs_account.c:489 src/prefs_common.c:616 msgid "Receive" msgstr "¼õ¿®" -#: src/prefs_account.c:491 src/prefs_common.c:620 +#: src/prefs_account.c:496 src/prefs_common.c:627 msgid "Privacy" msgstr "µ¡Ì©" -#: src/prefs_account.c:494 +#: src/prefs_account.c:499 msgid "Advanced" msgstr "¹âÅÙ¤ÊÀßÄê" -#: src/prefs_account.c:547 +#: src/prefs_account.c:552 msgid "Name of this account" msgstr "¤³¤Î¥¢¥«¥¦¥ó¥È¤Î̾¾Î" -#: src/prefs_account.c:556 +#: src/prefs_account.c:561 msgid "Usually used" msgstr "Ä̾ï»ÈÍÑ" -#: src/prefs_account.c:560 +#: src/prefs_account.c:565 msgid "Personal information" msgstr "¸Ä¿Í¾ðÊó" -#: src/prefs_account.c:569 +#: src/prefs_account.c:574 msgid "Full name" msgstr "̾Á°" -#: src/prefs_account.c:575 +#: src/prefs_account.c:580 msgid "Mail address" msgstr "¥á¡¼¥ë¥¢¥É¥ì¥¹" -#: src/prefs_account.c:581 +#: src/prefs_account.c:586 msgid "Organization" msgstr "ÁÈ¿¥" -#: src/prefs_account.c:605 +#: src/prefs_account.c:610 msgid "Server information" msgstr "¥µ¡¼¥Ð¾ðÊó" -#: src/prefs_account.c:626 +#: src/prefs_account.c:631 msgid "POP3 (normal)" msgstr "POP3 (ɸ½à)" -#: src/prefs_account.c:628 +#: src/prefs_account.c:633 msgid "POP3 (APOP auth)" msgstr "POP3 (APOPǧ¾Ú)" -#: src/prefs_account.c:630 +#: src/prefs_account.c:635 msgid "IMAP4" msgstr "IMAP4" -#: src/prefs_account.c:632 +#: src/prefs_account.c:637 msgid "News (NNTP)" msgstr "¥Ë¥å¡¼¥¹ (NNTP)" -#: src/prefs_account.c:634 +#: src/prefs_account.c:639 msgid "None (local)" msgstr "¤Ê¤· (¥í¡¼¥«¥ë)" -#: src/prefs_account.c:688 +#: src/prefs_account.c:693 msgid "News server" msgstr "¥Ë¥å¡¼¥¹¥µ¡¼¥Ð" -#: src/prefs_account.c:694 +#: src/prefs_account.c:699 msgid "Server for receiving" msgstr "¼õ¿®ÍÑ¥µ¡¼¥Ð" -#: src/prefs_account.c:700 +#: src/prefs_account.c:705 msgid "SMTP server (send)" msgstr "SMTP¥µ¡¼¥Ð (Á÷¿®)" -#: src/prefs_account.c:707 +#: src/prefs_account.c:712 msgid "User ID" msgstr "¥æ¡¼¥¶ID" -#: src/prefs_account.c:713 +#: src/prefs_account.c:718 msgid "Password" msgstr "¥Ñ¥¹¥ï¡¼¥É" -#: src/prefs_account.c:757 +#: src/prefs_account.c:762 msgid "POP3" msgstr "POP3" -#: src/prefs_account.c:765 +#: src/prefs_account.c:770 msgid "Remove messages on server when received" msgstr "¼õ¿®»þ¤Ë¥µ¡¼¥Ð¾å¤Î¥á¥Ã¥»¡¼¥¸¤òºï½ü¤¹¤ë" -#: src/prefs_account.c:767 +#: src/prefs_account.c:772 msgid "Receive all messages on server" msgstr "¥µ¡¼¥Ð¾å¤ÎÁ´¤Æ¤Î¥á¥Ã¥»¡¼¥¸¤ò¼õ¿®¤¹¤ë" -#: src/prefs_account.c:769 -msgid "Receive at getting from all accounts" -msgstr "¡ÖÁ´¥¢¥«¥¦¥ó¥È¤«¤é¼õ¿®¡×¤Ç¼õ¿®¤¹¤ë" +#: src/prefs_account.c:775 +msgid "`Receive all' checks for new mail on this account" +msgstr "¡ÖÁ´¼õ¿®¡×¤Ç¤³¤Î¥¢¥«¥¦¥ó¥È¤Î¿·Ãå¥á¡¼¥ë¤ò¥Á¥§¥Ã¥¯¤¹¤ë" -#: src/prefs_account.c:771 +#: src/prefs_account.c:777 msgid "Filter messages on receiving" msgstr "¼õ¿®»þ¤Ë¥á¥Ã¥»¡¼¥¸¤ò¿¶¤êʬ¤±¤ë" -#: src/prefs_account.c:808 src/prefs_filter.c:238 +#: src/prefs_account.c:814 src/prefs_filter.c:241 msgid "Header" msgstr "¥Ø¥Ã¥À" -#: src/prefs_account.c:815 +#: src/prefs_account.c:821 msgid "Add Date header field" msgstr "Date¥Ø¥Ã¥À¥Õ¥£¡¼¥ë¥É¤òÉÕ¤±¤ë" -#: src/prefs_account.c:816 +#: src/prefs_account.c:822 msgid "Generate Message-ID" msgstr "¥á¥Ã¥»¡¼¥¸ID¤òÀ¸À®¤¹¤ë" -#: src/prefs_account.c:825 +#: src/prefs_account.c:831 msgid "Add user-defined header" msgstr "¥æ¡¼¥¶ÄêµÁ¤Î¥Ø¥Ã¥À¤òÄɲ乤ë" -#: src/prefs_account.c:827 src/prefs_common.c:1259 +#: src/prefs_account.c:833 src/prefs_common.c:1265 src/prefs_common.c:1290 msgid " Edit... " msgstr " ÊÔ½¸... " -#: src/prefs_account.c:834 +#: src/prefs_account.c:840 msgid "Automatically set following addresses" msgstr "°Ê²¼¤Î¥¢¥É¥ì¥¹¤ò¼«Æ°»ØÄê" -#: src/prefs_account.c:843 +#: src/prefs_account.c:849 msgid "Cc" msgstr "Cc" -#: src/prefs_account.c:856 +#: src/prefs_account.c:862 msgid "Bcc" msgstr "Bcc" -#: src/prefs_account.c:869 +#: src/prefs_account.c:875 msgid "Reply-To" msgstr "Reply-To" -#: src/prefs_account.c:882 +#: src/prefs_account.c:888 msgid "Authentication" msgstr "ǧ¾Ú" -#: src/prefs_account.c:890 +#: src/prefs_account.c:896 msgid "SMTP Authentication (SMTP AUTH)" msgstr "SMTPǧ¾Ú (SMTP AUTH)" -#: src/prefs_account.c:892 +#: src/prefs_account.c:898 msgid "Authenticate with POP3 before sending" msgstr "Á÷¿®Á°¤ËPOP3ǧ¾Ú¤ò¹Ô¤¦" -#: src/prefs_account.c:926 +#: src/prefs_account.c:932 msgid "Signature file" msgstr "½ð̾¥Õ¥¡¥¤¥ë" -#: src/prefs_account.c:955 +#: src/prefs_account.c:961 msgid "Sign key" msgstr "½ð̾¸°" -#: src/prefs_account.c:963 +#: src/prefs_account.c:969 msgid "Use default GnuPG key" msgstr "ɸ½à¤ÎGnuPG¸°¤ò»ÈÍѤ¹¤ë" -#: src/prefs_account.c:972 +#: src/prefs_account.c:978 msgid "Select key by your email address" msgstr "¼«Ê¬¤ÎÅŻҥ᡼¥ë¥¢¥É¥ì¥¹¤Ç¸°¤òÁªÂò¤¹¤ë" -#: src/prefs_account.c:981 +#: src/prefs_account.c:987 msgid "Specify key manually" msgstr "¸°¤ò¼êÆ°¤Ç»ØÄꤹ¤ë" -#: src/prefs_account.c:997 +#: src/prefs_account.c:1003 msgid "User or key ID:" msgstr "¥æ¡¼¥¶¤Þ¤¿¤Ï¸°ID:" -#: src/prefs_account.c:1042 +#: src/prefs_account.c:1048 msgid "Specify SMTP port" msgstr "SMTP¥Ý¡¼¥È¤ò»ØÄê" -#: src/prefs_account.c:1054 +#: src/prefs_account.c:1060 msgid "Specify POP3 port" msgstr "POP3¥Ý¡¼¥È¤ò»ØÄê" -#: src/prefs_account.c:1066 +#: src/prefs_account.c:1072 msgid "Specify domain name" msgstr "¥É¥á¥¤¥ó̾¤ò»ØÄê" -#: src/prefs_account.c:1106 +#: src/prefs_account.c:1112 msgid "Mail address is not entered." msgstr "¥á¡¼¥ë¥¢¥É¥ì¥¹¤¬ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" -#: src/prefs_account.c:1111 +#: src/prefs_account.c:1117 msgid "SMTP server is not entered." msgstr "SMTP¥µ¡¼¥Ð¤¬ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" -#: src/prefs_account.c:1116 +#: src/prefs_account.c:1122 msgid "User ID is not entered." msgstr "¥æ¡¼¥¶ID¤¬ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" -#: src/prefs_account.c:1121 +#: src/prefs_account.c:1127 msgid "POP3 server is not entered." msgstr "POP3¥µ¡¼¥Ð¤¬ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" -#: src/prefs_account.c:1126 +#: src/prefs_account.c:1132 msgid "IMAP4 server is not entered." msgstr "IMAP4¥µ¡¼¥Ð¤¬ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" -#: src/prefs_account.c:1131 +#: src/prefs_account.c:1137 msgid "NNTP server is not entered." msgstr "NNTP¥µ¡¼¥Ð¤¬ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" -#: src/prefs_common.c:586 +#: src/prefs_common.c:594 msgid "Creating common preferences window...\n" msgstr "Á´ÈÌ¥×¥ê¥Õ¥¡¥ì¥ó¥¹¥¦¥£¥ó¥É¥¦¤òºîÀ®Ãæ...\n" -#: src/prefs_common.c:590 +#: src/prefs_common.c:598 msgid "Common Preferences" msgstr "Á´È̤ÎÀßÄê" -#: src/prefs_common.c:615 +#: src/prefs_common.c:622 msgid "Display" msgstr "ɽ¼¨" -#: src/prefs_common.c:617 +#: src/prefs_common.c:624 msgid "Message" msgstr "¥á¥Ã¥»¡¼¥¸" -#: src/prefs_common.c:623 +#: src/prefs_common.c:630 msgid "Interface" msgstr "¥¤¥ó¥¿¥Õ¥§¡¼¥¹" -#: src/prefs_common.c:625 src/select-keys.c:322 +#: src/prefs_common.c:632 src/select-keys.c:322 msgid "Other" msgstr "¤½¤Î¾" -#: src/prefs_common.c:665 src/prefs_common.c:825 +#: src/prefs_common.c:672 src/prefs_common.c:830 msgid "External program" msgstr "³°Éô¥×¥í¥°¥é¥à" -#: src/prefs_common.c:674 +#: src/prefs_common.c:681 msgid "Use external program for incorporation" msgstr "¥á¡¼¥ë¤Î¼õ¿®¤Ë³°Éô¥×¥í¥°¥é¥à¤ò»ÈÍѤ¹¤ë" -#: src/prefs_common.c:681 src/prefs_common.c:842 +#: src/prefs_common.c:688 src/prefs_common.c:847 msgid "Program path" msgstr "¥×¥í¥°¥é¥à¤Î¥Ñ¥¹" -#: src/prefs_common.c:693 +#: src/prefs_common.c:700 msgid "Local spool" msgstr "¥í¡¼¥«¥ë¥¹¥×¡¼¥ë" -#: src/prefs_common.c:704 +#: src/prefs_common.c:711 msgid "Incorporate from spool" msgstr "¥¹¥×¡¼¥ë¤«¤é¼è¤ê¹þ¤à" -#: src/prefs_common.c:706 +#: src/prefs_common.c:713 msgid "Filter on incorporation" msgstr "¼è¹þ»þ¤Ë¿¶¤êʬ¤±¤ë" -#: src/prefs_common.c:714 +#: src/prefs_common.c:721 msgid "Spool directory" msgstr "¥¹¥×¡¼¥ë¥Ç¥£¥ì¥¯¥È¥ê" -#: src/prefs_common.c:734 +#: src/prefs_common.c:739 msgid "Auto-check new mail" msgstr "¿·Ãå¥á¡¼¥ë¤ò¼«Æ°¥Á¥§¥Ã¥¯¤¹¤ë" -#: src/prefs_common.c:736 +#: src/prefs_common.c:741 msgid "each" msgstr " " -#: src/prefs_common.c:748 +#: src/prefs_common.c:753 msgid "minute(s)" msgstr "ʬ¤´¤È" -#: src/prefs_common.c:757 +#: src/prefs_common.c:762 msgid "Check new mail on startup" msgstr "µ¯Æ°»þ¤Ë¿·Ãå¥á¡¼¥ë¤ò¥Á¥§¥Ã¥¯¤¹¤ë" -#: src/prefs_common.c:759 +#: src/prefs_common.c:764 msgid "News" msgstr "¥Ë¥å¡¼¥¹" -#: src/prefs_common.c:767 +#: src/prefs_common.c:772 msgid "" "Maximum article number to download\n" "(unlimited if 0 is specified)" @@ -2697,184 +2703,184 @@ msgstr "" "¥À¥¦¥ó¥í¡¼¥É¤¹¤ëµ­»ö¿ô¤Î¾å¸Â\n" "(0¤Ç̵À©¸Â)" -#: src/prefs_common.c:835 +#: src/prefs_common.c:840 msgid "Use external program for sending" msgstr "¥á¡¼¥ë¤ÎÁ÷¿®¤Ë³°Éô¥×¥í¥°¥é¥à¤ò»ÈÍѤ¹¤ë" -#: src/prefs_common.c:859 +#: src/prefs_common.c:864 msgid "Save sent message to outbox" msgstr "Á÷¿®¤·¤¿¥á¥Ã¥»¡¼¥¸¤òÁ÷¿®¹µ¤ËÊݸ¤¹¤ë" -#: src/prefs_common.c:861 +#: src/prefs_common.c:866 msgid "Queue message that failed to send" msgstr "Á÷¿®¤Ë¼ºÇÔ¤·¤¿¥á¥Ã¥»¡¼¥¸¤òÁ÷¿®ÂÔ¤Á¤ËÆþ¤ì¤ë" -#: src/prefs_common.c:867 +#: src/prefs_common.c:872 msgid "Outgoing codeset" msgstr "Á÷¿®¥³¡¼¥É¥»¥Ã¥È" -#: src/prefs_common.c:882 +#: src/prefs_common.c:887 msgid "Automatic" msgstr "¼«Æ°ÀßÄê" -#: src/prefs_common.c:883 +#: src/prefs_common.c:888 msgid "7bit ascii (US-ASCII)" msgstr "7bit ascii (US-ASCII)" -#: src/prefs_common.c:885 +#: src/prefs_common.c:890 msgid "Unicode (UTF-8)" msgstr "Unicode (UTF-8)" -#: src/prefs_common.c:887 +#: src/prefs_common.c:892 msgid "Western European (ISO-8859-1)" msgstr "²¤ÊÆ (ISO-8859-1)" -#: src/prefs_common.c:889 +#: src/prefs_common.c:894 msgid "Central European (ISO-8859-2)" msgstr "Ã沤 (ISO-8859-2)" -#: src/prefs_common.c:890 +#: src/prefs_common.c:895 msgid "Baltic (ISO-8859-13)" msgstr "¥Ð¥ë¥È½ô¹ñ (ISO-8859-13)" -#: src/prefs_common.c:891 +#: src/prefs_common.c:896 msgid "Baltic (ISO-8859-4)" msgstr "¥Ð¥ë¥È½ô¹ñ (ISO-8859-4)" -#: src/prefs_common.c:892 +#: src/prefs_common.c:897 msgid "Greek (ISO-8859-7)" msgstr "¥®¥ê¥·¥ã¸ì (ISO-8859-7)" -#: src/prefs_common.c:893 +#: src/prefs_common.c:898 msgid "Turkish (ISO-8859-9)" msgstr "¥È¥ë¥³¸ì (ISO-8859-9)" -#: src/prefs_common.c:894 +#: src/prefs_common.c:899 msgid "Cyrillic (ISO-8859-5)" msgstr "¥­¥ê¥ëʸ»ú (ISO-8859-5)" -#: src/prefs_common.c:895 +#: src/prefs_common.c:900 msgid "Cyrillic (KOI8-R)" msgstr "¥­¥ê¥ëʸ»ú (KOI8-R)" -#: src/prefs_common.c:896 +#: src/prefs_common.c:901 msgid "Cyrillic (Windows-1251)" msgstr "¥­¥ê¥ëʸ»ú (Windows-1251)" -#: src/prefs_common.c:897 +#: src/prefs_common.c:902 msgid "Cyrillic (KOI8-U)" msgstr "¥­¥ê¥ëʸ»ú (KOI8-U)" -#: src/prefs_common.c:899 +#: src/prefs_common.c:904 msgid "Japanese (ISO-2022-JP)" msgstr "ÆüËܸì (ISO-2022-JP)" -#: src/prefs_common.c:901 +#: src/prefs_common.c:906 msgid "Japanese (EUC-JP)" msgstr "ÆüËܸì (EUC-JP)" -#: src/prefs_common.c:902 +#: src/prefs_common.c:907 msgid "Japanese (Shift_JIS)" msgstr "ÆüËܸì (Shift_JIS)" -#: src/prefs_common.c:905 +#: src/prefs_common.c:910 msgid "Simplified Chinese (GB2312)" msgstr "´ÊÂλúÃæ¹ñ¸ì (GB2312)" -#: src/prefs_common.c:906 +#: src/prefs_common.c:911 msgid "Traditional Chinese (Big5)" msgstr "ÈËÂλúÃæ¹ñ¸ì (Big5)" -#: src/prefs_common.c:908 +#: src/prefs_common.c:913 msgid "Traditional Chinese (EUC-TW)" msgstr "ÈËÂλúÃæ¹ñ¸ì (EUC-TW)" -#: src/prefs_common.c:909 +#: src/prefs_common.c:914 msgid "Chinese (ISO-2022-CN)" msgstr "Ãæ¹ñ¸ì (ISO-2022-CN)" -#: src/prefs_common.c:911 +#: src/prefs_common.c:916 msgid "Korean (EUC-KR)" msgstr "´Ú¹ñ¸ì (EUC-KR)" -#: src/prefs_common.c:961 +#: src/prefs_common.c:966 msgid "Quotation" msgstr "°úÍÑ" -#: src/prefs_common.c:969 +#: src/prefs_common.c:974 msgid "Quote message when replying" msgstr "ÊÖ¿®»þ¤Ë¥á¥Ã¥»¡¼¥¸¤ò°úÍѤ¹¤ë" -#: src/prefs_common.c:975 +#: src/prefs_common.c:980 msgid "Quotation mark" msgstr "°úÍÑÉä" -#: src/prefs_common.c:988 +#: src/prefs_common.c:993 msgid "Quotation format:" msgstr "°úÍѤηÁ¼°:" -#: src/prefs_common.c:993 +#: src/prefs_common.c:998 msgid " Description of symbols " msgstr " µ­¹æ¤ÎÀâÌÀ " -#: src/prefs_common.c:1020 +#: src/prefs_common.c:1025 msgid "Insert signature automatically" msgstr "¼«Æ°Åª¤Ë½ð̾¤òÁÞÆþ¤¹¤ë" -#: src/prefs_common.c:1026 +#: src/prefs_common.c:1031 msgid "Signature separator" msgstr "½ð̾¤Î¶èÀÚ¤ê" -#: src/prefs_common.c:1044 +#: src/prefs_common.c:1049 msgid "Wrap messages at" msgstr "¥á¥Ã¥»¡¼¥¸¤òȾ³Ñ" -#: src/prefs_common.c:1056 +#: src/prefs_common.c:1061 msgid "characters" msgstr "ʸ»ú¤Ç²þ¹Ô" -#: src/prefs_common.c:1064 +#: src/prefs_common.c:1069 msgid "Wrap quotation" msgstr "°úÍÑÉô¤ò¼«Æ°²þ¹Ô¤¹¤ë" -#: src/prefs_common.c:1066 +#: src/prefs_common.c:1071 msgid "Wrap before sending" msgstr "Á÷¿®»þ¤Ë¼«Æ°²þ¹Ô¤¹¤ë" -#: src/prefs_common.c:1105 +#: src/prefs_common.c:1110 msgid "Font" msgstr "¥Õ¥©¥ó¥È" -#: src/prefs_common.c:1114 +#: src/prefs_common.c:1119 msgid "Text" msgstr "¥Æ¥­¥¹¥È" -#: src/prefs_common.c:1137 +#: src/prefs_common.c:1142 msgid "Translate header name (such as `From:', `Subject:')" msgstr "¥Ø¥Ã¥À¤Î¹àÌܤòËÝÌõ¤¹¤ë (Î㤨¤Ð `From:', `Subject:' Åù)" -#: src/prefs_common.c:1140 +#: src/prefs_common.c:1145 msgid "Display unread number next to folder name" msgstr "¥Õ¥©¥ë¥À̾¤Î²£¤Ë̤ÆÉ¿ô¤òɽ¼¨¤¹¤ë" #. ---- Summary ---- -#: src/prefs_common.c:1144 +#: src/prefs_common.c:1149 msgid "Summary View" msgstr "¥µ¥Þ¥ê¥Ó¥å¡¼" -#: src/prefs_common.c:1153 +#: src/prefs_common.c:1158 msgid "Display recipient on `From' column if sender is yourself" msgstr "º¹½Ð¿Í¤¬¼«Ê¬¤Î¾ì¹ç¤Ï `º¹½Ð¿Í' ¥«¥é¥à¤Ë°¸Àè¤òɽ¼¨¤¹¤ë" -#: src/prefs_common.c:1155 +#: src/prefs_common.c:1160 msgid "Enable horizontal scroll bar" msgstr "¿åÊ¿¥¹¥¯¥í¡¼¥ë¥Ð¡¼¤òÍ­¸ú¤Ë¤¹¤ë" -#: src/prefs_common.c:1161 +#: src/prefs_common.c:1166 msgid "Date format" msgstr "ÆüÉդνñ¼°" -#: src/prefs_common.c:1172 +#: src/prefs_common.c:1177 msgid "" "Ordinary characters placed in the format string are copied without " "conversion. Conversion specifiers are introduced by a % character, and are " @@ -2921,76 +2927,76 @@ msgstr "" "%Y: (4·å¤Î)À¾Îñǯ\n" "%Z: ¥¿¥¤¥à¥¾¡¼¥ó¤Þ¤¿¤Ï¥¾¡¼¥ó̾¤Þ¤¿¤Ï¾Êά̾" -#: src/prefs_common.c:1201 +#: src/prefs_common.c:1206 msgid " Set display item of summary... " msgstr " ¥µ¥Þ¥ê¤Îɽ¼¨¹àÌܤòÀßÄê... " -#: src/prefs_common.c:1254 +#: src/prefs_common.c:1260 msgid "Enable coloration of message" msgstr "¥á¥Ã¥»¡¼¥¸¤Î¿§¤òÍ­¸ú¤Ë¤¹¤ë" -#: src/prefs_common.c:1273 +#: src/prefs_common.c:1279 msgid "Display 2-byte alphabet and numeric with 1-byte character" msgstr "2¥Ð¥¤¥È±Ñ¿ô»ú¤ò1¥Ð¥¤¥Èʸ»ú¤Çɽ¼¨¤¹¤ë" -#: src/prefs_common.c:1275 +#: src/prefs_common.c:1281 msgid "Display header pane above message view" msgstr "¥á¥Ã¥»¡¼¥¸¥Ó¥å¡¼¤Î¾åÉô¤Ë¥Ø¥Ã¥À¥Ú¥¤¥ó¤òɽ¼¨¤¹¤ë" -#: src/prefs_common.c:1277 +#: src/prefs_common.c:1288 msgid "Display short headers on message view" msgstr "¥á¥Ã¥»¡¼¥¸¥Ó¥å¡¼¤Ë´Êά¥Ø¥Ã¥À¤òɽ¼¨¤¹¤ë" -#: src/prefs_common.c:1287 +#: src/prefs_common.c:1308 msgid "Line space" msgstr "¹Ô´Ö¤ò¶õ¤±¤ë" -#: src/prefs_common.c:1301 src/prefs_common.c:1341 +#: src/prefs_common.c:1322 src/prefs_common.c:1362 msgid "pixel(s)" msgstr "¥Ô¥¯¥»¥ë" -#: src/prefs_common.c:1306 +#: src/prefs_common.c:1327 msgid "Leave space on head" msgstr "¹ÔƬ¤ò¶õ¤±¤ë" -#: src/prefs_common.c:1308 +#: src/prefs_common.c:1329 msgid "Scroll" msgstr "¥¹¥¯¥í¡¼¥ë" -#: src/prefs_common.c:1315 +#: src/prefs_common.c:1336 msgid "Half page" msgstr "Ⱦ¥Ú¡¼¥¸Ã±°Ì" -#: src/prefs_common.c:1321 +#: src/prefs_common.c:1342 msgid "Smooth scroll" msgstr "¥¹¥à¡¼¥º¥¹¥¯¥í¡¼¥ë" -#: src/prefs_common.c:1327 +#: src/prefs_common.c:1348 msgid "Step" msgstr "´Ö³Ö" -#: src/prefs_common.c:1386 +#: src/prefs_common.c:1407 msgid "Encrypt message by default" msgstr "ɸ½à¤Ç¥á¥Ã¥»¡¼¥¸¤ò°Å¹æ²½¤¹¤ë" -#: src/prefs_common.c:1389 +#: src/prefs_common.c:1410 msgid "Sign message by default" msgstr "ɸ½à¤Ç¥á¥Ã¥»¡¼¥¸¤Ë½ð̾¤¹¤ë" -#: src/prefs_common.c:1392 +#: src/prefs_common.c:1413 msgid "Automatically check signatures" msgstr "½ð̾¤ò¼«Æ°Åª¤Ë¸¡¾Ú" -#: src/prefs_common.c:1396 +#: src/prefs_common.c:1417 msgid "Grab input while entering a passphrase" msgstr "¥Ñ¥¹¥Õ¥ì¡¼¥º¤ÎÆþÎÏ»þ¤ËÆþÎϤòÊ᪤¹¤ë" #. create default signkey box -#: src/prefs_common.c:1404 +#: src/prefs_common.c:1425 msgid "Default Sign Key" msgstr "ɸ½à¤Î½ð̾¸°" -#: src/prefs_common.c:1503 +#: src/prefs_common.c:1524 msgid "" "Emulate the behavior of mouse operation of\n" "Emacs-based mailer" @@ -2998,19 +3004,19 @@ msgstr "" "Emacs¾å¤Î¥á¡¼¥é¤Î¥Þ¥¦¥¹Áàºî»þ¤ÎµóÆ°¤ò\n" "¥¨¥ß¥å¥ì¡¼¥È¤¹¤ë" -#: src/prefs_common.c:1510 +#: src/prefs_common.c:1531 msgid "Open first unread message when entering a folder" msgstr "¥Õ¥©¥ë¥À¤ËÆþ¤Ã¤¿¤È¤­¤ËºÇ½é¤Î̤ÆÉ¥á¥Ã¥»¡¼¥¸¤ò³«¤¯" -#: src/prefs_common.c:1514 +#: src/prefs_common.c:1535 msgid "Go to inbox after receiving new mail" msgstr "¿·Ãå¥á¡¼¥ë¤ò¼õ¿®¤·¤¿¸å¼õ¿®È¢¤Ë°ÜÆ°¤¹¤ë" -#: src/prefs_common.c:1522 +#: src/prefs_common.c:1543 msgid "Execute immediately when moving or deleting messages" msgstr "¥á¥Ã¥»¡¼¥¸¤ò°ÜÆ°¤Þ¤¿¤Ïºï½ü¤·¤¿¤é¨ºÂ¤Ë¼Â¹Ô¤¹¤ë" -#: src/prefs_common.c:1529 +#: src/prefs_common.c:1550 msgid "" "(Messages will be just marked till execution\n" " if this is turned off)" @@ -3018,98 +3024,98 @@ msgstr "" "(¤³¤ì¤ò̵¸ú¤Ë¤¹¤ë¤È¡¢¥á¥Ã¥»¡¼¥¸¤Ï¼Â¹Ô¤µ¤ì¤ë¤Þ¤Ç\n" " ¥Þ¡¼¥¯¤µ¤ì¤¿¾õÂ֤ˤʤê¤Þ¤¹)" -#: src/prefs_common.c:1536 +#: src/prefs_common.c:1557 msgid "Add address to destination when double-clicked" msgstr "¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¤·¤¿¤È¤­¤Ë¥¢¥É¥ì¥¹¤ò°¸Àè¤ËÄɲ乤ë" -#: src/prefs_common.c:1538 +#: src/prefs_common.c:1559 msgid "On exit" msgstr "½ªÎ»»þ" -#: src/prefs_common.c:1546 +#: src/prefs_common.c:1567 msgid "Confirm on exit" msgstr "½ªÎ»»þ¤Ë³Îǧ¤¹¤ë" -#: src/prefs_common.c:1553 +#: src/prefs_common.c:1574 msgid "Empty trash on exit" msgstr "½ªÎ»»þ¤Ë¤´¤ßÈ¢¤ò¶õ¤Ë¤¹¤ë" -#: src/prefs_common.c:1555 +#: src/prefs_common.c:1576 msgid "Ask before emptying" msgstr "¶õ¤Ë¤¹¤ëÁ°¤Ë¿Ò¤Í¤ë" -#: src/prefs_common.c:1559 +#: src/prefs_common.c:1580 msgid "Warn if there are queued messages" msgstr "Á÷¿®ÂÔµ¡Ãæ¤Î¥á¥Ã¥»¡¼¥¸¤¬¤¢¤ì¤Ð·Ù¹ð¤¹¤ë" -#: src/prefs_common.c:1597 +#: src/prefs_common.c:1618 #, c-format msgid "External Web browser (%s will be replaced with URI)" msgstr "³°ÉôWeb¥Ö¥é¥¦¥¶ (%s ¤ÏURI¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹)" -#: src/prefs_common.c:1604 src/prefs_common.c:1628 src/prefs_common.c:1644 +#: src/prefs_common.c:1625 src/prefs_common.c:1649 src/prefs_common.c:1665 msgid "Command" msgstr "¥³¥Þ¥ó¥É" -#: src/prefs_common.c:1621 +#: src/prefs_common.c:1642 #, c-format msgid "Printing (%s will be replaced with file name)" msgstr "°õºþ (%s ¤Ï¥Õ¥¡¥¤¥ë̾¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹)" -#: src/prefs_common.c:1637 +#: src/prefs_common.c:1658 #, c-format msgid "External editor (%s will be replaced with file name)" msgstr "³°Éô¥¨¥Ç¥£¥¿ (%s ¤Ï¥Õ¥¡¥¤¥ë̾¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹)" -#: src/prefs_common.c:1699 +#: src/prefs_common.c:1720 msgid "Set message colors" msgstr "¥á¥Ã¥»¡¼¥¸¤Î¿§¤ò»ØÄê" -#: src/prefs_common.c:1707 +#: src/prefs_common.c:1728 msgid "Colors" msgstr "¿§" -#: src/prefs_common.c:1745 +#: src/prefs_common.c:1766 msgid "Quoted Text - First Level" msgstr "°úÍÑʸ - 1Ãʳ¬" -#: src/prefs_common.c:1751 +#: src/prefs_common.c:1772 msgid "Quoted Text - Second Level" msgstr "°úÍÑʸ - 2Ãʳ¬" -#: src/prefs_common.c:1757 +#: src/prefs_common.c:1778 msgid "Quoted Text - Third Level" msgstr "°úÍÑʸ - 3Ãʳ¬" -#: src/prefs_common.c:1763 +#: src/prefs_common.c:1784 msgid "URI link" msgstr "URI ¥ê¥ó¥¯" -#: src/prefs_common.c:1770 +#: src/prefs_common.c:1791 msgid "Recycle quote colors" msgstr "°úÍÑ¿§¤ò½Û´Ä" -#: src/prefs_common.c:1818 +#: src/prefs_common.c:1839 msgid "Pick color for quotation level 1" msgstr "°úÍÑ¥ì¥Ù¥ë1¤Î¿§¤òÁªÂò" -#: src/prefs_common.c:1821 +#: src/prefs_common.c:1842 msgid "Pick color for quotation level 2" msgstr "°úÍÑ¥ì¥Ù¥ë2¤Î¿§¤òÁªÂò" -#: src/prefs_common.c:1824 +#: src/prefs_common.c:1845 msgid "Pick color for quotation level 3" msgstr "°úÍÑ¥ì¥Ù¥ë3¤Î¿§¤òÁªÂò" -#: src/prefs_common.c:1827 +#: src/prefs_common.c:1848 msgid "Pick color for URI" msgstr "URI ¤Î¿§¤òÁªÂò" -#: src/prefs_common.c:1951 +#: src/prefs_common.c:1972 msgid "Description of symbols" msgstr "µ­¹æ¤ÎÀâÌÀ" -#: src/prefs_common.c:1978 +#: src/prefs_common.c:1999 #, c-format msgid "" "Date\n" @@ -3132,122 +3138,158 @@ msgstr "" "¥á¥Ã¥»¡¼¥¸ID\n" "%" -#: src/prefs_common.c:2081 +#: src/prefs_common.c:2102 msgid "Set display item" msgstr "ɽ¼¨¹àÌܤÎÀßÄê" -#: src/prefs_common.c:2098 +#: src/prefs_common.c:2119 msgid "Mark" msgstr "¥Þ¡¼¥¯" -#: src/prefs_common.c:2100 +#: src/prefs_common.c:2121 msgid "MIME" msgstr "MIME" -#: src/prefs_common.c:2101 +#: src/prefs_common.c:2122 msgid "Number" msgstr "ÈÖ¹æ" -#: src/prefs_common.c:2103 src/summaryview.c:352 +#: src/prefs_common.c:2124 src/summaryview.c:352 msgid "Date" msgstr "ÆüÉÕ" -#: src/prefs_common.c:2104 src/summaryview.c:353 +#: src/prefs_common.c:2125 src/summaryview.c:353 msgid "From" msgstr "º¹½Ð¿Í" -#: src/prefs_common.c:2105 src/summaryview.c:354 +#: src/prefs_common.c:2126 src/summaryview.c:354 msgid "Subject" msgstr "·ï̾" -#: src/prefs_common.c:2158 +#: src/prefs_common.c:2179 msgid "Font selection" msgstr "¥Õ¥©¥ó¥È¤ÎÁªÂò" -#: src/prefs_filter.c:178 +#: src/prefs_display_header.c:176 +msgid "Creating display header setting window...\n" +msgstr "ɽ¼¨¥Ø¥Ã¥ÀÀßÄꥦ¥£¥ó¥É¥¦¤òºîÀ®Ãæ...\n" + +#: src/prefs_display_header.c:195 +msgid "Display header setting" +msgstr "ɽ¼¨¥Ø¥Ã¥À¤ÎÀßÄê" + +#: src/prefs_display_header.c:221 +msgid "Header name" +msgstr "¥Ø¥Ã¥À̾" + +#: src/prefs_display_header.c:250 +msgid "Displayed Headers" +msgstr "ɽ¼¨¤¹¤ë¥Ø¥Ã¥À" + +#: src/prefs_display_header.c:301 +msgid "Hidden headers" +msgstr "ɽ¼¨¤·¤Ê¤¤¥Ø¥Ã¥À" + +#: src/prefs_display_header.c:331 +msgid "Show other headers" +msgstr "¾¤Î¥Ø¥Ã¥À¤òɽ¼¨" + +#: src/prefs_display_header.c:355 +msgid "Reading configuration for displaying headers...\n" +msgstr "ɽ¼¨¥Ø¥Ã¥À¤ÎÀßÄê¤òÆɤ߹þ¤ßÃæ...\n" + +#: src/prefs_display_header.c:393 +msgid "Writing configuration for displaying headers...\n" +msgstr "ɽ¼¨¥Ø¥Ã¥À¤ÎÀßÄê¤ò½ñ¤­½Ð¤·Ãæ...\n" + +#: src/prefs_display_header.c:515 src/prefs_filter.c:610 +msgid "Header name is not set." +msgstr "¥Ø¥Ã¥À̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" + +#: src/prefs_display_header.c:525 +msgid "This header is already in the list." +msgstr "¤³¤Î¥Ø¥Ã¥À¤Ï¤¹¤Ç¤Ë¥ê¥¹¥ÈÃæ¤Ë¸ºß¤·¤Þ¤¹¡£" + +#: src/prefs_filter.c:181 msgid "Registered rules" msgstr "ÅÐÏ¿ºÑ¤ß¥ë¡¼¥ë" -#: src/prefs_filter.c:180 +#: src/prefs_filter.c:183 msgid "Creating filter setting window...\n" msgstr "¿¶¤êʬ¤±ÀßÄꥦ¥£¥ó¥É¥¦¤òºîÀ®Ãæ...\n" -#: src/prefs_filter.c:199 +#: src/prefs_filter.c:202 msgid "Filter setting" msgstr "¿¶¤êʬ¤±¤ÎÀßÄê" -#: src/prefs_filter.c:222 +#: src/prefs_filter.c:225 msgid "Operator" msgstr "±é»»»Ò" -#: src/prefs_filter.c:260 src/prefs_filter.c:620 src/prefs_filter.c:759 -#: src/prefs_filter.c:771 +#: src/prefs_filter.c:263 src/prefs_filter.c:623 src/prefs_filter.c:762 +#: src/prefs_filter.c:774 msgid "(none)" msgstr "(¤Ê¤·)" -#: src/prefs_filter.c:266 +#: src/prefs_filter.c:269 msgid "Keyword" msgstr "¥­¡¼¥ï¡¼¥É" -#: src/prefs_filter.c:287 +#: src/prefs_filter.c:290 msgid "Predicate" msgstr "½Ò¸ì" -#: src/prefs_filter.c:299 src/prefs_filter.c:310 src/prefs_filter.c:629 -#: src/prefs_filter.c:632 src/prefs_filter.c:776 src/prefs_filter.c:779 +#: src/prefs_filter.c:302 src/prefs_filter.c:313 src/prefs_filter.c:632 +#: src/prefs_filter.c:635 src/prefs_filter.c:779 src/prefs_filter.c:782 msgid "contains" msgstr "´Þ¤à" -#: src/prefs_filter.c:299 src/prefs_filter.c:310 src/prefs_filter.c:776 -#: src/prefs_filter.c:779 +#: src/prefs_filter.c:302 src/prefs_filter.c:313 src/prefs_filter.c:779 +#: src/prefs_filter.c:782 msgid "not contain" msgstr "´Þ¤Þ¤Ê¤¤" -#: src/prefs_filter.c:326 +#: src/prefs_filter.c:329 msgid "Destination" msgstr "¿¶¤êʬ¤±Àè" -#: src/prefs_filter.c:350 +#: src/prefs_filter.c:353 msgid "Use regex" msgstr "Àµµ¬É½¸½¤ò»ÈÍÑ" -#: src/prefs_filter.c:354 +#: src/prefs_filter.c:357 msgid "Don't receive" msgstr "¼õ¿®¤·¤Ê¤¤" -#: src/prefs_filter.c:379 +#: src/prefs_filter.c:382 msgid "Register" msgstr "ÅÐÏ¿" -#: src/prefs_filter.c:385 +#: src/prefs_filter.c:388 msgid " Substitute " msgstr " ÃÖ´¹ " -#: src/prefs_filter.c:472 +#: src/prefs_filter.c:475 msgid "Reading filter configuration...\n" msgstr "¿¶¤êʬ¤±¤ÎÀßÄê¤òÆɤ߹þ¤ßÃæ...\n" -#: src/prefs_filter.c:508 +#: src/prefs_filter.c:511 msgid "Writing filter configuration...\n" msgstr "¿¶¤êʬ¤±¤ÎÀßÄê¤ò½ñ¤­½Ð¤·Ãæ...\n" -#: src/prefs_filter.c:551 +#: src/prefs_filter.c:554 msgid "(New)" msgstr "(¿·µ¬)" -#: src/prefs_filter.c:602 +#: src/prefs_filter.c:605 msgid "Destination is not set." msgstr "¿¶¤êʬ¤±À褬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" -#: src/prefs_filter.c:607 -msgid "Header name is not set." -msgstr "¥Ø¥Ã¥À̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" - -#: src/prefs_filter.c:713 +#: src/prefs_filter.c:716 msgid "Delete rule" msgstr "¥ë¡¼¥ë¤Îºï½ü" -#: src/prefs_filter.c:714 +#: src/prefs_filter.c:717 msgid "Do you really want to delete this rule?" msgstr "ËÜÅö¤Ë¤³¤Î¥ë¡¼¥ë¤òºï½ü¤·¤Æ¤â¤¤¤¤¤Ç¤¹¤«?" @@ -3314,11 +3356,11 @@ msgstr " msgid "Creating progress dialog...\n" msgstr "¿Ê¹Ô¾õ¶·¥À¥¤¥¢¥í¥°¤òºîÀ®Ãæ...\n" -#: src/recv.c:106 +#: src/recv.c:111 msgid "error occurred while retrieving data.\n" msgstr "¥Ç¡¼¥¿¤Î¼èÆÀÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£\n" -#: src/recv.c:130 src/recv.c:167 src/recv.c:182 +#: src/recv.c:148 src/recv.c:185 src/recv.c:200 msgid "Can't write to file.\n" msgstr "¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤á¤Þ¤»¤ó¡£\n" @@ -3802,15 +3844,15 @@ msgstr " msgid "Go to %s\n" msgstr "%s ¤Ë°ÜÆ°\n" -#: src/textview.c:137 +#: src/textview.c:138 msgid "Creating text view...\n" msgstr "¥Æ¥­¥¹¥È¥Ó¥å¡¼¤òºîÀ®Ãæ...\n" -#: src/textview.c:372 +#: src/textview.c:365 msgid "To save this part, pop up the context menu with\n" msgstr "¤³¤Î¥Ñ¡¼¥È¤òÊݸ¤¹¤ë¤Ë¤Ï¡¢±¦¥¯¥ê¥Ã¥¯¤Ç¥³¥ó¥Æ¥­¥¹¥È¥á¥Ë¥å¡¼¤ò\n" -#: src/textview.c:375 +#: src/textview.c:368 msgid "" "right click and select `Save as...', or press `y' key.\n" "\n" @@ -3818,11 +3860,11 @@ msgstr "" "ɽ¼¨¤·¡¢¡Ö̾Á°¤òÉÕ¤±¤ÆÊݸ...¡×¤òÁªÂò¤¹¤ë¤«¡¢`y' ¥­¡¼¤ò²¡¤·¤Æ¤¯¤À¤µ¤¤¡£\n" "\n" -#: src/textview.c:379 +#: src/textview.c:372 msgid "To display this part as a text message, select\n" msgstr "¤³¤Î¥Ñ¡¼¥È¤ò¥Æ¥­¥¹¥È¥á¥Ã¥»¡¼¥¸¤È¤·¤Æɽ¼¨¤¹¤ë¤Ë¤Ï¡¢\n" -#: src/textview.c:382 +#: src/textview.c:375 msgid "" "`Display as text', or press `t' key.\n" "\n" @@ -3830,41 +3872,41 @@ msgstr "" "¡Ö¥Æ¥­¥¹¥È¤È¤·¤Æɽ¼¨¡×¤òÁªÂò¤¹¤ë¤«¡¢`t' ¥­¡¼¤ò²¡¤·¤Æ¤¯¤À¤µ¤¤¡£\n" "\n" -#: src/textview.c:386 +#: src/textview.c:379 msgid "To open this part with external program, select `Open',\n" msgstr "¤³¤Î¥Ñ¡¼¥È¤ò³°Éô¥×¥í¥°¥é¥à¤Ç³«¤¯¤Ë¤Ï¡¢¡Ö³«¤¯¡×¤òÁªÂò¤¹¤ë¤«¡¢\n" -#: src/textview.c:389 +#: src/textview.c:382 msgid "or double-click, or click the center button, or press `l' key." msgstr "" "¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¤¹¤ë¤«¡¢Ãæ±û¥Ü¥¿¥ó¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤«¡¢\n" "`l' ¥­¡¼¤ò²¡¤·¤Æ²¼¤µ¤¤¡£" -#: src/textview.c:410 +#: src/textview.c:403 msgid "This signature has not been checked yet.\n" msgstr "¤³¤Î½ð̾¤Ï¤Þ¤À¸¡¾Ú¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n" -#: src/textview.c:413 +#: src/textview.c:406 msgid "To check it, pop up the context menu with\n" msgstr "¸¡¾Ú¤¹¤ë¤Ë¤Ï¡¢±¦¥¯¥ê¥Ã¥¯¤Ç¥³¥ó¥Æ¥­¥¹¥È¥á¥Ë¥å¡¼¤òɽ¼¨¤·¡¢\n" -#: src/textview.c:416 +#: src/textview.c:409 msgid "right click and select `Check signature'.\n" msgstr "" "¡Ö½ð̾¤ò¸¡¾Ú¡×¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤¡£\n" "\n" -#: src/utils.c:1407 src/utils.c:1484 +#: src/utils.c:1425 src/utils.c:1502 #, c-format msgid "writing to %s failed.\n" msgstr "%s ¤Ø¤Î½ñ¤­¹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£\n" -#: src/utils.c:1427 +#: src/utils.c:1445 #, c-format msgid "File copy from %s to %s failed.\n" msgstr "%s ¤«¤é %s ¤Ø¤Î¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£\n" -#: src/utils.c:1645 +#: src/utils.c:1663 #, c-format msgid "Open URI command line is invalid: `%s'" msgstr "URI ¤ò³«¤¯¤¿¤á¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤¬Ìµ¸ú¤Ç¤¹: `%s'" diff --git a/src/Makefile.am b/src/Makefile.am index add50ca4e..113fce5c7 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -25,7 +25,9 @@ sylpheed_SOURCES = \ prefs_common.c prefs_common.h \ prefs_filter.c prefs_filter.h \ prefs_account.c prefs_account.h \ + prefs_display_header.c prefs_display_header.h \ account.c account.h \ + displayheader.c displayheader.h \ addressbook.c addressbook.h \ filesel.c filesel.h \ foldersel.c foldersel.h \ @@ -77,8 +79,6 @@ sylpheed_SOURCES = \ grouplist_dialog.c grouplist_dialog.h \ customheader.c customheader.h \ prefs_headers.c prefs_headers.h \ - headers_display.c headers_display.h \ - prefs_display_headers.c prefs_display_headers.h \ scoring.c scoring.h \ prefs_folder_item.c prefs_folder_item.h \ matcher.c matcher.h diff --git a/src/account.c b/src/account.c index 5446c59c2..79d5705ae 100644 --- a/src/account.c +++ b/src/account.c @@ -39,6 +39,7 @@ #include "prefs_account.h" #include "compose.h" #include "manage_window.h" +#include "inc.h" #include "gtkutils.h" #include "utils.h" #include "alertpanel.h" @@ -198,9 +199,12 @@ GList *account_get_list(void) void account_edit_open(void) { + inc_autocheck_timer_remove(); + if (compose_get_compose_list()) { alertpanel_notice(_("Some composing windows are open.\n" "Please close all the composing windows before editing the accounts.")); + inc_autocheck_timer_set(); return; } @@ -223,6 +227,7 @@ void account_add(void) PrefsAccount *ac_prefs; ac_prefs = prefs_account_open(NULL); + inc_autocheck_timer_remove(); if (!ac_prefs) return; @@ -473,6 +478,7 @@ static void account_edit_prefs(void) Xstrdup_a(ac_name, ac_prefs->account_name, return); prefs_account_open(ac_prefs); + inc_autocheck_timer_remove(); if (!prev_default && ac_prefs->is_default) account_set_as_default(ac_prefs); @@ -571,6 +577,8 @@ static void account_edit_close(void) main_window_reflect_prefs_all(); gtk_widget_hide(edit_account.window); + + inc_autocheck_timer_set(); } static void account_key_pressed(GtkWidget *widget, GdkEventKey *event, diff --git a/src/defs.h b/src/defs.h index f68eef039..ca57327e9 100644 --- a/src/defs.h +++ b/src/defs.h @@ -47,7 +47,7 @@ #define ACCOUNT_RC "accountrc" #define FILTER_RC "filterrc" #define HEADERS_RC "headersrc" -#define HEADERS_DISPLAY_RC "headersdisplayrc" +#define DISPLAY_HEADER_RC "dispheaderrc" #define FOLDERITEM_RC "folderitemrc" #define SCORING_RC "scoringrc" #define MENU_RC "menurc" diff --git a/src/filter.c b/src/filter.c index 15cb21d82..e2235c6eb 100644 --- a/src/filter.c +++ b/src/filter.c @@ -42,7 +42,7 @@ FolderItem *filter_get_dest_folder(GSList *fltlist, const gchar *file) g_return_val_if_fail(file != NULL, NULL); if (!fltlist) return NULL; - hlist = procheader_get_header_list(file); + hlist = procheader_get_header_list_from_file(file); if (!hlist) return NULL; for (cur = fltlist; cur != NULL; cur = cur->next) { diff --git a/src/headerview.c b/src/headerview.c index 73cda7331..47eaf3cd9 100644 --- a/src/headerview.c +++ b/src/headerview.c @@ -208,6 +208,7 @@ static void headerview_show_xface(HeaderView *headerview, MsgInfo *msginfo) } return; } + if (!GTK_WIDGET_VISIBLE(headerview->hbox)) return; strncpy(xface, msginfo->xface, sizeof(xface)); diff --git a/src/inc.c b/src/inc.c index 324ebf518..133d3c2d0 100644 --- a/src/inc.c +++ b/src/inc.c @@ -98,7 +98,7 @@ static gint connection_check_cb (Automaton *atm); #endif static void inc_pop3_recv_func (SockInfo *sock, - gint read_len, + gint read_bytes, gpointer data); static void inc_put_error (IncState istate); @@ -112,6 +112,8 @@ static gint get_spool (FolderItem *dest, static void inc_all_spool(void); +static gint inc_autocheck_func (gpointer data); + static void inc_finished(MainWindow *mainwin) { FolderItem *item; @@ -131,6 +133,7 @@ static void inc_finished(MainWindow *mainwin) void inc_mail(MainWindow *mainwin) { + inc_autocheck_timer_remove(); summary_write_cache(mainwin->summaryview); if (prefs_common.use_extinc && prefs_common.extinc_path) { @@ -139,6 +142,7 @@ void inc_mail(MainWindow *mainwin) /* external incorporating program */ if ((pid = fork()) < 0) { perror("fork"); + inc_autocheck_timer_set(); return; } @@ -165,6 +169,7 @@ void inc_mail(MainWindow *mainwin) } inc_finished(mainwin); + inc_autocheck_timer_set(); } static void inc_account_mail(PrefsAccount *account, MainWindow *mainwin) @@ -194,12 +199,16 @@ void inc_all_account_mail(MainWindow *mainwin) GList *list, *queue_list = NULL; IncProgressDialog *inc_dialog; + inc_autocheck_timer_remove(); summary_write_cache(mainwin->summaryview); if (prefs_common.inc_local) inc_spool(); list = account_get_list(); - if (!list) return; + if (!list) { + inc_autocheck_timer_set(); + return; + } for (; list != NULL; list = list->next) { IncSession *session; @@ -212,7 +221,10 @@ void inc_all_account_mail(MainWindow *mainwin) } } - if (!queue_list) return; + if (!queue_list) { + inc_autocheck_timer_set(); + return; + } inc_dialog = inc_progress_dialog_create(); inc_dialog->queue_list = queue_list; @@ -232,6 +244,7 @@ void inc_all_account_mail(MainWindow *mainwin) inc_start(inc_dialog); inc_finished(mainwin); + inc_autocheck_timer_set(); } static IncProgressDialog *inc_progress_dialog_create(void) @@ -668,7 +681,7 @@ static gint connection_check_cb(Automaton *atm) } #endif -static void inc_pop3_recv_func(SockInfo *sock, gint read_len, gpointer data) +static void inc_pop3_recv_func(SockInfo *sock, gint read_bytes, gpointer data) { gchar buf[MSGBUFSIZE]; IncSession *session = (IncSession *)data; @@ -677,8 +690,7 @@ static void inc_pop3_recv_func(SockInfo *sock, gint read_len, gpointer data) ProgressDialog *dialog = inc_dialog->dialog; gint cur_total; - state->cur_msg_bytes += read_len; - cur_total = state->cur_total_bytes + state->cur_msg_bytes; + cur_total = state->cur_total_bytes + read_bytes; if (cur_total > state->total_bytes) cur_total = state->total_bytes; @@ -925,3 +937,41 @@ static gint get_spool(FolderItem *dest, const gchar *mbox) return msgs; } + +static guint autocheck_timer = 0; +static gpointer autocheck_data = NULL; + +void inc_autocheck_timer_init(MainWindow *mainwin) +{ + autocheck_data = mainwin; + inc_autocheck_timer_set(); +} + +void inc_autocheck_timer_set(void) +{ + inc_autocheck_timer_remove(); + + if (prefs_common.autochk_newmail && autocheck_data) { + autocheck_timer = gtk_timeout_add + (prefs_common.autochk_itv * 60000, + inc_autocheck_func, + autocheck_data); + } +} + +void inc_autocheck_timer_remove(void) +{ + if (autocheck_timer) { + gtk_timeout_remove(autocheck_timer); + autocheck_timer = 0; + } +} + +static gint inc_autocheck_func(gpointer data) +{ + MainWindow *mainwin = (MainWindow *)data; + + inc_all_account_mail(mainwin); + + return FALSE; +} diff --git a/src/inc.h b/src/inc.h index 132b43d81..7c59e0d1e 100644 --- a/src/inc.h +++ b/src/inc.h @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999,2000 Hiroyuki Yamamoto + * Copyright (C) 1999-2001 Hiroyuki Yamamoto * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -102,5 +102,8 @@ void inc_progress_update (Pop3State *state, Pop3Phase phase); gint inc_drop_message (const gchar *file, Pop3State *state); +void inc_autocheck_timer_init (MainWindow *mainwin); +void inc_autocheck_timer_set (void); +void inc_autocheck_timer_remove (void); #endif /* __INC_H__ */ diff --git a/src/main.c b/src/main.c index 549da44d7..c9147cd61 100644 --- a/src/main.c +++ b/src/main.c @@ -57,6 +57,7 @@ #include "prefs_common.h" #include "prefs_filter.h" #include "prefs_account.h" +#include "prefs_display_header.h" #include "account.h" #include "procmsg.h" #include "inc.h" @@ -198,14 +199,6 @@ int main(int argc, char *argv[]) srandom((gint)time(NULL)); - prefs_common_read_config(); - prefs_common_save_config(); - prefs_filter_read_config(); - prefs_filter_write_config(); - prefs_display_headers_read_config(); - prefs_display_headers_write_config(); - prefs_scoring_read_config(); - #if USE_GPGME if (gpgme_check_engine()) { /* Also does some gpgme init */ rfc2015_disable_all(); @@ -226,6 +219,14 @@ int main(int argc, char *argv[]) gpgme_register_idle(idle_function_for_gpgme); #endif + prefs_common_read_config(); + prefs_common_save_config(); + prefs_filter_read_config(); + prefs_filter_write_config(); + prefs_display_header_read_config(); + prefs_display_header_write_config(); + prefs_scoring_read_config(); + gtkut_widget_init(); mainwin = main_window_create @@ -245,9 +246,11 @@ int main(int argc, char *argv[]) account_set_missing_folder(); folderview_set(folderview); - if (cmd.receive_all) + inc_autocheck_timer_init(mainwin); + + if (cmd.receive_all || prefs_common.chk_on_startup) inc_all_account_mail(mainwin); - else if (prefs_common.chk_on_startup || cmd.receive) + else if (cmd.receive) inc_mail(mainwin); else gtk_widget_grab_focus(folderview->ctree); diff --git a/src/main.h b/src/main.h index d365cc668..0fb8c56f0 100644 --- a/src/main.h +++ b/src/main.h @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999,2000 Hiroyuki Yamamoto + * Copyright (C) 1999-2001 Hiroyuki Yamamoto * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/pop.c b/src/pop.c index 7ae10d5db..45eb01809 100644 --- a/src/pop.c +++ b/src/pop.c @@ -300,7 +300,7 @@ gint pop3_getsize_list_recv(SockInfo *sock, gpointer data) if (buf[0] == '.') break; if (sscanf(buf, "%d %d", &num, &size) != 2) - continue; + break; if (num <= state->count) state->sizes[num] = size; diff --git a/src/prefs_account.c b/src/prefs_account.c index 59641e06f..f835032f2 100644 --- a/src/prefs_account.c +++ b/src/prefs_account.c @@ -39,6 +39,7 @@ #include "account.h" #include "mainwindow.h" #include "manage_window.h" +#include "inc.h" #include "menu.h" #include "gtkutils.h" #include "utils.h" @@ -424,6 +425,8 @@ PrefsAccount *prefs_account_open(PrefsAccount *ac_prefs) debug_print(_("Opening account preferences window...\n")); + inc_autocheck_timer_remove(); + cancelled = FALSE; if (!ac_prefs) { @@ -478,6 +481,8 @@ PrefsAccount *prefs_account_open(PrefsAccount *ac_prefs) gtk_main(); gtk_widget_hide(dialog.window); + inc_autocheck_timer_set(); + if (cancelled && new_account) { g_free(ac_prefs); return NULL; @@ -881,8 +886,9 @@ static void prefs_account_receive_create(void) _("Remove messages on server when received")); PACK_CHECK_BUTTON (vbox2, getall_chkbtn, _("Receive all messages on server")); - PACK_CHECK_BUTTON (vbox2, recvatgetall_chkbtn, - _("Receive at getting from all accounts")); + PACK_CHECK_BUTTON + (vbox2, recvatgetall_chkbtn, + _("`Receive all' checks for new mail on this account")); PACK_CHECK_BUTTON (vbox2, filter_on_recv_chkbtn, _("Filter messages on receiving")); diff --git a/src/prefs_common.c b/src/prefs_common.c index 5f9c597a9..6a8cd6ca0 100644 --- a/src/prefs_common.c +++ b/src/prefs_common.c @@ -37,17 +37,18 @@ #include "main.h" #include "prefs.h" #include "prefs_common.h" +#include "prefs_display_header.h" #include "mainwindow.h" #include "summaryview.h" #include "messageview.h" #include "manage_window.h" +#include "inc.h" #include "menu.h" #include "codeconv.h" #include "utils.h" #include "gtkutils.h" #include "alertpanel.h" #include "folder.h" -#include "prefs_display_headers.h" PrefsCommon prefs_common; @@ -425,6 +426,9 @@ static PrefParam param[] = { &message.chkbtn_halfpage, prefs_set_data_from_toggle, prefs_set_toggle}, + {"show_other_header", "FALSE", &prefs_common.show_other_header, P_BOOL, + NULL, NULL, NULL}, + /* MIME viewer */ {"mime_image_viewer", "display '%s'", &prefs_common.mime_image_viewer, P_STRING, NULL, NULL, NULL}, @@ -565,8 +569,9 @@ static void prefs_font_selection_ok (GtkButton *button); static void prefs_common_key_pressed (GtkWidget *widget, GdkEventKey *event, gpointer data); -static void prefs_common_ok (GtkButton *button); -static void prefs_common_apply (GtkButton *button); +static void prefs_common_ok (void); +static void prefs_common_apply (void); +static void prefs_common_cancel (void); void prefs_common_read_config(void) { @@ -580,6 +585,8 @@ void prefs_common_save_config(void) void prefs_common_open(void) { + inc_autocheck_timer_remove(); + if (!dialog.window) { prefs_common_create(); } @@ -603,7 +610,7 @@ static void prefs_common_create(void) gtk_window_set_title (GTK_WINDOW(dialog.window), _("Common Preferences")); gtk_signal_connect (GTK_OBJECT(dialog.window), "delete_event", - GTK_SIGNAL_FUNC(gtk_widget_hide_on_delete), NULL); + GTK_SIGNAL_FUNC(prefs_common_cancel), NULL); gtk_signal_connect (GTK_OBJECT(dialog.window), "key_press_event", GTK_SIGNAL_FUNC(prefs_common_key_pressed), NULL); gtk_signal_connect (GTK_OBJECT(dialog.window), "focus_in_event", @@ -615,7 +622,7 @@ static void prefs_common_create(void) gtk_signal_connect (GTK_OBJECT(dialog.apply_btn), "clicked", GTK_SIGNAL_FUNC(prefs_common_apply), NULL); gtk_signal_connect_object (GTK_OBJECT(dialog.cancel_btn), "clicked", - GTK_SIGNAL_FUNC(gtk_widget_hide_on_delete), + GTK_SIGNAL_FUNC(prefs_common_cancel), GTK_OBJECT(dialog.window)); /* create all widgets on notebook */ @@ -742,8 +749,6 @@ static void prefs_receive_create(void) gtk_widget_show (hbox_autochk); gtk_box_pack_start (GTK_BOX (vbox2), hbox_autochk, FALSE, FALSE, 0); - gtk_widget_set_sensitive(hbox_autochk, FALSE); - PACK_CHECK_BUTTON (hbox_autochk, checkbtn_autochk, _("Auto-check new mail")); @@ -1308,7 +1313,6 @@ static void prefs_display_create(void) GtkWidget *hbox1; GtkWidget *label_datefmt; GtkWidget *button_dispitem; - GtkWidget *button_headers_display; vbox1 = gtk_vbox_new (FALSE, VSPACING); gtk_widget_show (vbox1); @@ -1393,19 +1397,6 @@ static void prefs_display_create(void) GTK_SIGNAL_FUNC (prefs_summary_display_item_set), NULL); - hbox1 = gtk_hbox_new (FALSE, 8); - gtk_widget_show (hbox1); - gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, TRUE, 0); - - button_headers_display = gtk_button_new_with_label - (_(" Set displaying of headers... ")); - gtk_widget_show (button_headers_display); - gtk_box_pack_start (GTK_BOX (hbox1), button_headers_display, FALSE, - TRUE, 0); - gtk_signal_connect (GTK_OBJECT (button_headers_display), "clicked", - GTK_SIGNAL_FUNC (prefs_display_headers_open), - NULL); - display.entry_textfont = entry_textfont; display.button_textfont = button_textfont; @@ -1426,6 +1417,7 @@ static void prefs_message_create(void) GtkWidget *chkbtn_mbalnum; GtkWidget *chkbtn_disphdrpane; GtkWidget *chkbtn_disphdr; + GtkWidget *button_edit_disphdr; GtkWidget *hbox_linespc; GtkWidget *label_linespc; GtkObject *spinbtn_linespc_adj; @@ -1473,8 +1465,23 @@ static void prefs_message_create(void) _("Display 2-byte alphabet and numeric with 1-byte character")); PACK_CHECK_BUTTON(vbox2, chkbtn_disphdrpane, _("Display header pane above message view")); - PACK_CHECK_BUTTON(vbox2, chkbtn_disphdr, - _("Display short headers on message view")); + + hbox1 = gtk_hbox_new (FALSE, 8); + gtk_widget_show (hbox1); + gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, TRUE, 0); + + PACK_CHECK_BUTTON(hbox1, chkbtn_disphdr, + _("Display short headers on message view")); + + button_edit_disphdr = gtk_button_new_with_label (_(" Edit... ")); + gtk_widget_show (button_edit_disphdr); + gtk_box_pack_end (GTK_BOX (hbox1), button_edit_disphdr, + FALSE, TRUE, 0); + gtk_signal_connect (GTK_OBJECT (button_edit_disphdr), "clicked", + GTK_SIGNAL_FUNC (prefs_display_header_open), + NULL); + + SET_TOGGLE_SENSITIVITY(chkbtn_disphdr, button_edit_disphdr); hbox1 = gtk_hbox_new (FALSE, 32); gtk_widget_show (hbox1); @@ -2466,20 +2473,28 @@ static void prefs_common_key_pressed(GtkWidget *widget, GdkEventKey *event, gpointer data) { if (event && event->keyval == GDK_Escape) - gtk_widget_hide(dialog.window); + prefs_common_cancel(); } -static void prefs_common_ok(GtkButton *button) +static void prefs_common_ok(void) { - prefs_common_apply(button); + prefs_common_apply(); gtk_widget_hide(dialog.window); if (quote_desc_win && GTK_WIDGET_VISIBLE(quote_desc_win)) gtk_widget_hide(quote_desc_win); + + inc_autocheck_timer_set(); } -static void prefs_common_apply(GtkButton *button) +static void prefs_common_apply(void) { prefs_set_data_from_dialog(param); main_window_reflect_prefs_all(); prefs_common_save_config(); } + +static void prefs_common_cancel(void) +{ + gtk_widget_hide(dialog.window); + inc_autocheck_timer_set(); +} diff --git a/src/prefs_common.h b/src/prefs_common.h index 86595b15f..5ba4e203e 100644 --- a/src/prefs_common.h +++ b/src/prefs_common.h @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999,2000 Hiroyuki Yamamoto + * Copyright (C) 1999-2001 Hiroyuki Yamamoto * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -144,6 +144,9 @@ struct _PrefsCommon gchar *force_charset; + gboolean show_other_header; + GSList *disphdr_list; + /* MIME viewer */ gchar *mime_image_viewer; gchar *mime_audio_player; diff --git a/src/prefs_filter.c b/src/prefs_filter.c index 5d0fcfb05..fbd2c5ebc 100644 --- a/src/prefs_filter.c +++ b/src/prefs_filter.c @@ -39,6 +39,7 @@ #include "mainwindow.h" #include "foldersel.h" #include "manage_window.h" +#include "inc.h" #include "filter.h" #include "utils.h" #include "gtkutils.h" @@ -110,10 +111,12 @@ static void prefs_filter_notrecv_radio_button_toggled (void); static void prefs_filter_key_pressed (GtkWidget *widget, GdkEventKey *event, gpointer data); -static void prefs_filter_close (GtkButton *button); +static void prefs_filter_close (); void prefs_filter_open(void) { + inc_autocheck_timer_remove(); + if (!filter.window) { prefs_filter_create(); } @@ -198,7 +201,7 @@ static void prefs_filter_create(void) gtk_window_set_title (GTK_WINDOW(window), _("Filter setting")); gtk_signal_connect (GTK_OBJECT(window), "delete_event", - GTK_SIGNAL_FUNC(gtk_widget_hide_on_delete), NULL); + GTK_SIGNAL_FUNC(prefs_filter_close), NULL); gtk_signal_connect (GTK_OBJECT(window), "key_press_event", GTK_SIGNAL_FUNC(prefs_filter_key_pressed), NULL); gtk_signal_connect (GTK_OBJECT(window), "focus_in_event", @@ -804,11 +807,12 @@ static void prefs_filter_key_pressed(GtkWidget *widget, GdkEventKey *event, gpointer data) { if (event && event->keyval == GDK_Escape) - gtk_widget_hide(filter.window); + prefs_filter_close(); } -static void prefs_filter_close(GtkButton *button) +static void prefs_filter_close(void) { prefs_filter_write_config(); gtk_widget_hide(filter.window); + inc_autocheck_timer_set(); } diff --git a/src/procheader.c b/src/procheader.c index 64252ad73..22fce1034 100644 --- a/src/procheader.c +++ b/src/procheader.c @@ -36,13 +36,6 @@ #define BUFFSIZE 8192 -/* - procheader_get_one_field - - reads fp and puts the header and the corresponding content into buf - if one of these is one of hentry table. - - if hentry is NULL, ignores no headers - */ - gint procheader_get_one_field(gchar *buf, gint len, FILE *fp, HeaderEntry hentry[]) { @@ -192,6 +185,145 @@ gchar *procheader_get_unfolded_line(gchar *buf, gint len, FILE *fp) return buf; } +GSList *procheader_get_header_list_from_file(const gchar *file) +{ + FILE *fp; + GSList *hlist; + + if ((fp = fopen(file, "r")) == NULL) { + FILE_OP_ERROR(file, "fopen"); + return NULL; + } + + hlist = procheader_get_header_list(fp); + + fclose(fp); + return hlist; +} + +GSList *procheader_get_header_list(FILE *fp) +{ + gchar buf[BUFFSIZE], tmp[BUFFSIZE]; + gchar *p; + GSList *hlist = NULL; + Header *header; + + g_return_val_if_fail(fp != NULL, NULL); + + while (procheader_get_unfolded_line(buf, sizeof(buf), fp) != NULL) { + if (*buf == ':') continue; + for (p = buf; *p && *p != ' '; p++) { + if (*p == ':') { + header = g_new(Header, 1); + header->name = g_strndup(buf, p - buf); + p++; + while (*p == ' ' || *p == '\t') p++; + conv_unmime_header(tmp, sizeof(tmp), p, NULL); + header->body = g_strdup(tmp); + + hlist = g_slist_append(hlist, header); + break; + } + } + } + + return hlist; +} + +GPtrArray *procheader_get_header_array(FILE *fp) +{ + gchar buf[BUFFSIZE], tmp[BUFFSIZE]; + gchar *p; + GPtrArray *headers; + Header *header; + + g_return_val_if_fail(fp != NULL, NULL); + + headers = g_ptr_array_new(); + + while (procheader_get_unfolded_line(buf, sizeof(buf), fp) != NULL) { + if (*buf == ':') continue; + for (p = buf; *p && *p != ' '; p++) { + if (*p == ':') { + header = g_new(Header, 1); + header->name = g_strndup(buf, p - buf); + p++; + while (*p == ' ' || *p == '\t') p++; + conv_unmime_header(tmp, sizeof(tmp), p, NULL); + header->body = g_strdup(tmp); + + g_ptr_array_add(headers, header); + break; + } + } + } + + return headers; +} + +GPtrArray *procheader_get_header_array_asis(FILE *fp) +{ + gchar buf[BUFFSIZE], tmp[BUFFSIZE]; + gchar *p; + GPtrArray *headers; + Header *header; + + g_return_val_if_fail(fp != NULL, NULL); + + headers = g_ptr_array_new(); + + while (procheader_get_one_field(buf, sizeof(buf), fp, NULL) != -1) { + if (*buf == ':') continue; + for (p = buf; *p && *p != ' '; p++) { + if (*p == ':') { + header = g_new(Header, 1); + header->name = g_strndup(buf, p - buf); + p++; + conv_unmime_header(tmp, sizeof(tmp), p, NULL); + header->body = g_strdup(tmp); + + g_ptr_array_add(headers, header); + break; + } + } + } + + return headers; +} + +void procheader_header_list_destroy(GSList *hlist) +{ + Header *header; + + while (hlist != NULL) { + header = hlist->data; + procheader_header_free(header); + hlist = g_slist_remove(hlist, header); + } +} + +void procheader_header_array_destroy(GPtrArray *harray) +{ + gint i; + Header *header; + + for (i = 0; i < harray->len; i++) { + header = g_ptr_array_index(harray, i); + procheader_header_free(header); + } + + g_ptr_array_free(harray, TRUE); +} + +void procheader_header_free(Header *header) +{ + if (!header) return; + + g_free(header->name); + g_free(header->body); + g_free(header); +} + /* tests whether two headers' names are equal remove the trailing ':' or ' ' before comparing @@ -213,13 +345,6 @@ gboolean procheader_headername_equal(char * hdr1, char * hdr2) return (strncasecmp(hdr1, hdr2, len1) == 0); } -void procheader_header_free(Header * header) -{ - g_free(header->name); - g_free(header->body); - g_free(header); -} - /* parse headers, for example : From: dinh@enseirb.fr becomes : @@ -250,41 +375,6 @@ Header * procheader_parse_header(gchar * buf) return NULL; } -GSList *procheader_get_header_list(const gchar *file) -{ - FILE *fp; - gchar buf[BUFFSIZE], tmp[BUFFSIZE]; - gchar *p; - GSList *hlist = NULL; - Header *header; - - if ((fp = fopen(file, "r")) == NULL) { - FILE_OP_ERROR(file, "fopen"); - return NULL; - } - - while (procheader_get_unfolded_line(buf, sizeof(buf), fp) != NULL) { - header = procheader_parse_header(buf); - if (header != NULL) - hlist = g_slist_append(hlist, header); - } - - fclose(fp); - return hlist; -} - -void procheader_header_list_destroy(GSList *hlist) -{ - Header *header; - - while (hlist != NULL) { - header = hlist->data; - - procheader_header_free(header); - hlist = g_slist_remove(hlist, header); - } -} - void procheader_get_header_fields(FILE *fp, HeaderEntry hentry[]) { gchar buf[BUFFSIZE]; diff --git a/src/procheader.h b/src/procheader.h index 58753272f..f6292e48c 100644 --- a/src/procheader.h +++ b/src/procheader.h @@ -50,8 +50,14 @@ gchar *procheader_get_unfolded_line (gchar *buf, gint len, FILE *fp); -GSList *procheader_get_header_list (const gchar *file); -void procheader_header_list_destroy (GSList *hlist); +GSList *procheader_get_header_list_from_file (const gchar *file); +GSList *procheader_get_header_list (FILE *fp); +GPtrArray *procheader_get_header_array (FILE *fp); +GPtrArray *procheader_get_header_array_asis (FILE *fp); +void procheader_header_list_destroy (GSList *hlist); +void procheader_header_array_destroy (GPtrArray *harray); +void procheader_header_free (Header *header); + void procheader_get_header_fields (FILE *fp, HeaderEntry hentry[]); MsgInfo *procheader_parse (const gchar *file, diff --git a/src/recv.c b/src/recv.c index 5af52685c..9497bb73e 100644 --- a/src/recv.c +++ b/src/recv.c @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999,2000 Hiroyuki Yamamoto + * Copyright (C) 1999-2001 Hiroyuki Yamamoto * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -25,6 +25,7 @@ #include #include #include +#include #include "intl.h" #include "recv.h" @@ -100,6 +101,10 @@ gint recv_write(SockInfo *sock, FILE *fp) { gchar buf[BUFFSIZE]; gint len; + gint bytes = 0; + struct timeval tv_prev, tv_cur; + + gettimeofday(&tv_prev, NULL); for (;;) { if (sock_gets(sock, buf, sizeof(buf)) < 0) { @@ -108,10 +113,23 @@ gint recv_write(SockInfo *sock, FILE *fp) } len = strlen(buf); - if (len > 1 && buf[0] == '.' && buf[1] == '\r') break; - - if (recv_ui_func) - recv_ui_func(sock, len, recv_ui_func_data); + if (len > 1 && buf[0] == '.' && buf[1] == '\r') { + if (recv_ui_func) + recv_ui_func(sock, bytes, recv_ui_func_data); + break; + } + bytes += len; + + if (recv_ui_func) { + gettimeofday(&tv_cur, NULL); + /* if elapsed time from previous update is greater + than 300 usec, update UI */ + if (tv_cur.tv_sec - tv_prev.tv_sec > 0 || + tv_cur.tv_usec - tv_prev.tv_usec > 300) { + recv_ui_func(sock, bytes, recv_ui_func_data); + gettimeofday(&tv_prev, NULL); + } + } if (len > 1 && buf[len - 1] == '\n' && buf[len - 2] == '\r') { buf[len - 2] = '\n'; diff --git a/src/recv.h b/src/recv.h index cae8dbae4..dd59ea57d 100644 --- a/src/recv.h +++ b/src/recv.h @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999,2000 Hiroyuki Yamamoto + * Copyright (C) 1999-2001 Hiroyuki Yamamoto * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -25,7 +25,7 @@ #include "socket.h" typedef void (*RecvUIFunc) (SockInfo *sock, - gint read_len, + gint read_bytes, gpointer data); gint recv_write_to_file (SockInfo *sock, diff --git a/src/textview.c b/src/textview.c index 82906f085..f3e372fdb 100644 --- a/src/textview.c +++ b/src/textview.c @@ -47,8 +47,7 @@ #include "html.h" #include "compose.h" #include "addressbook.h" -#include "headers_display.h" -#include "prefs_display_headers.h" +#include "displayheader.h" #define FONT_LOAD(font, s) \ { \ @@ -331,16 +330,8 @@ void textview_show_part(TextView *textview, MimeInfo *mimeinfo, FILE *fp) gtk_text_freeze(text); if (headers) { - gint i; - textview_show_header(textview, headers); - for (i = 0; i < headers->len; i++) { - Header *header = g_ptr_array_index(headers, i); - g_free(header->body); - g_free(header->name); - g_free(header); - } - g_ptr_array_free(headers, TRUE); + procheader_header_array_destroy(headers); } tmpfp = procmime_decode_content(NULL, fp, mimeinfo); @@ -637,8 +628,8 @@ static gchar *make_email_string(const gchar *bp, const gchar *ep) } /* textview_make_clickable_parts() - colorizes clickable parts */ -static void textview_make_clickable_parts(TextView *textview, GtkText *text, - GdkFont *textfont, +static void textview_make_clickable_parts(TextView *textview, + GdkFont *font, GdkColor *fg_color, GdkColor *uri_color, const gchar *linebuf) @@ -678,6 +669,8 @@ static void textview_make_clickable_parts(TextView *textview, GtkText *text, struct txtpos *next; /* next */ } head = {NULL, NULL, 0, NULL}, *last = &head; + GtkText *text = GTK_TEXT(textview->text); + /* parse for clickable parts, and build a list of begin and end positions */ for (walk = linebuf, n = 0;;) { gint last_index = PARSE_ELEMS; @@ -720,13 +713,14 @@ static void textview_make_clickable_parts(TextView *textview, GtkText *text, uri = g_new(RemoteURI, 1); if (last->bp - normal_text > 0) - gtk_text_insert(text, textfont, + gtk_text_insert(text, font, fg_color, NULL, normal_text, last->bp - normal_text); - uri->uri = parser[last->pti].build_uri(last->bp, last->ep); + uri->uri = parser[last->pti].build_uri(last->bp, + last->ep); uri->start = gtk_text_get_point(text); - gtk_text_insert(text, textfont, uri_color, + gtk_text_insert(text, font, uri_color, NULL, last->bp, last->ep - last->bp); uri->end = gtk_text_get_point(text); textview->uri_list = @@ -734,11 +728,10 @@ static void textview_make_clickable_parts(TextView *textview, GtkText *text, } if (*normal_text) - gtk_text_insert(text, textfont, fg_color, + gtk_text_insert(text, font, fg_color, NULL, normal_text, -1); } else - gtk_text_insert(text, textfont, fg_color, NULL, - linebuf, -1); + gtk_text_insert(text, font, fg_color, NULL, linebuf, -1); } #undef ADD_TXT_POS @@ -797,8 +790,7 @@ static void textview_write_line(TextView *textview, const gchar *str, gtk_text_insert(text, spacingfont, NULL, NULL, " ", 1); if (prefs_common.enable_color) - textview_make_clickable_parts(textview, text, - textview->msgfont, + textview_make_clickable_parts(textview, textview->msgfont, fg_color, &uri_color, buf); else gtk_text_insert(text, textview->msgfont, fg_color, NULL, @@ -940,29 +932,11 @@ enum static GPtrArray *textview_scan_header(TextView *textview, FILE *fp) { - /* - static HeaderEntry hentry[] = {{"Date:", NULL, FALSE}, - {"From:", NULL, TRUE}, - {"To:", NULL, FALSE}, - {"Newsgroups:", NULL, FALSE}, - {"Subject:", NULL, TRUE}, - {"Cc:", NULL, FALSE}, - {"Reply-To:", NULL, FALSE}, - {"Followup-To:", NULL, FALSE}, - {"X-Mailer:", NULL, TRUE}, - {"X-Newsreader:", NULL, TRUE}, - {"User-Agent:", NULL, TRUE}, - {"Organization:", NULL, TRUE}, - {NULL, NULL, FALSE}}; - */ - gchar buf[BUFFSIZE], tmp[BUFFSIZE]; - gint hnum; - HeaderEntry *hp; - GPtrArray *headers; - GSList * l; - - int i; - GPtrArray *sorted_headers; + gchar buf[BUFFSIZE]; + GPtrArray *headers, *sorted_headers; + GSList *disphdr_list; + Header *header; + gint i; g_return_val_if_fail(fp != NULL, NULL); @@ -972,72 +946,38 @@ static GPtrArray *textview_scan_header(TextView *textview, FILE *fp) return NULL; } - headers = g_ptr_array_new(); + headers = procheader_get_header_array_asis(fp); - /* - while ((hnum = procheader_get_one_field(buf, sizeof(buf), fp, hentry)) - != -1) { - Header *header; - - hp = hentry + hnum; + sorted_headers = g_ptr_array_new(); - header = g_new(Header, 1); - header->name = g_strndup(buf, strlen(hp->name)); - conv_unmime_header(tmp, sizeof(tmp), buf + strlen(hp->name), - NULL); - header->body = g_strdup(tmp); + for (disphdr_list = prefs_common.disphdr_list; disphdr_list != NULL; + disphdr_list = disphdr_list->next) { + DisplayHeaderProp *dp = + (DisplayHeaderProp *)disphdr_list->data; - g_ptr_array_add(headers, header); - } - */ - // while (procheader_get_unfolded_line(buf, sizeof(buf), fp) != NULL) { - while (procheader_get_one_field(buf, sizeof(buf), fp, NULL) != -1) { - gchar * p; - Header *header; - - header = procheader_parse_header(buf); - if (header != NULL) - g_ptr_array_add(headers, header); - } + for (i = 0; i < headers->len; i++) { + header = g_ptr_array_index(headers, i); - sorted_headers = g_ptr_array_new(); - for(l = prefs_display_headers.headers_list ; l != NULL ; - l = g_slist_next(l)) { - HeaderDisplayProp * dp = (HeaderDisplayProp *) l->data; - for(i = 0 ; i < headers->len ; i++) { - Header * header = g_ptr_array_index(headers, i); - if (procheader_headername_equal(header->name, - dp->name)) { - if (dp->hidden) { - g_ptr_array_remove_index(headers, i); + if (!strcasecmp(header->name, dp->name)) { + if (dp->hidden) procheader_header_free(header); - i--; - } - else { - g_ptr_array_add(sorted_headers, - header); - g_ptr_array_remove_index(headers, i); - i--; - } + else + g_ptr_array_add(sorted_headers, header); + + g_ptr_array_remove_index(headers, i); + i--; } } } - if (prefs_display_headers.show_other_headers) { - while (headers->len != 0) { - Header * header = g_ptr_array_index(headers, 0); + if (prefs_common.show_other_header) { + for (i = 0; i < headers->len; i++) { + header = g_ptr_array_index(headers, i); g_ptr_array_add(sorted_headers, header); - g_ptr_array_remove_index(headers, 0); } } - for(i = 0 ; i < headers->len ; i++) { - Header * header = g_ptr_array_index(headers, i); - procheader_header_free(header); - } - - g_ptr_array_free(headers, FALSE); - + g_ptr_array_free(headers, TRUE); return sorted_headers; } @@ -1057,27 +997,28 @@ static void textview_show_header(TextView *textview, GPtrArray *headers) gtk_text_insert(text, textview->boldfont, NULL, NULL, header->name, -1); - gtk_text_insert(text, textview->boldfont, NULL, NULL, - " ", -1); + gtk_text_insert(text, textview->boldfont, NULL, NULL, ":", 2); + + if (!strcasecmp(header->name, "Subject") || + !strcasecmp(header->name, "From") || + !strcasecmp(header->name, "To") || + !strcasecmp(header->name, "Cc")) + unfold_line(header->body); + if (prefs_common.enable_color && - (strncmp(header->name, "X-Mailer", 8) == 0 || - strncmp(header->name, "X-Newsreader", 12) == 0) && + (!strncmp(header->name, "X-Mailer", 8) || + !strncmp(header->name, "X-Newsreader", 12)) && strstr(header->body, "Sylpheed") != NULL) gtk_text_insert(text, NULL, &emphasis_color, NULL, header->body, -1); - else { - if (prefs_common.enable_color) { - textview_make_clickable_parts(textview, text, - NULL, - NULL, - &uri_color, - header->body); - } - else { - gtk_text_insert(text, NULL, NULL, NULL, - header->body, -1); - } - } + else if (prefs_common.enable_color) { + textview_make_clickable_parts(textview, + NULL, NULL, &uri_color, + header->body); + } else { + gtk_text_insert(text, NULL, NULL, NULL, + header->body, -1); + } gtk_text_insert(text, textview->msgfont, NULL, NULL, "\n", 1); } diff --git a/src/utils.c b/src/utils.c index 62e95ad71..0e65bbc55 100644 --- a/src/utils.c +++ b/src/utils.c @@ -826,6 +826,24 @@ void remove_space(gchar *str) } } +void unfold_line(gchar *str) +{ + register gchar *p = str; + register gint spc; + + while (*p) { + if (*p == '\n' || *p == '\r') { + *p++ = ' '; + spc = 0; + while (isspace(*(p + spc))) + spc++; + if (spc) + memmove(p, p + spc, strlen(p + spc) + 1); + } else + p++; + } +} + void subst_char(gchar *str, gchar orig, gchar subst) { register gchar *p = str; diff --git a/src/utils.h b/src/utils.h index 630c190eb..065f37f37 100644 --- a/src/utils.h +++ b/src/utils.h @@ -219,6 +219,7 @@ GSList *newsgroup_list_append (GSList *group_list, const gchar *str); void remove_return (gchar *str); void remove_space (gchar *str); +void unfold_line (gchar *str); void subst_char (gchar *str, gchar orig, gchar subst);