+2005-07-26 18:45:01 TAKAHASHI Tamotsu <ttakah@lapis.plala.or.jp> (brendan)
+
+ * crypt-gpgme.c, mutt_ssl_gnutls.c, po/POTFILES.in: Partial
+ application of Tamo's translation patch for gpgme and gnutls.
+
+2005-07-26 16:44:20 Brendan Cully <brendan@kublai.com> (brendan)
+
+ * imap/imap.c: Don't check for the existence of a mailbox we're
+ already in when appending. (closes #1842)
+
+2005-07-26 16:40:16 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (roessler)
+
+ * init.h: Return $menu_move_off default to status quo ante.
+
+2005-07-26 16:39:17 Thomas Glanzmann <sithglan@stud.uni-erlangen.de> (roessler)
+
+ * init.h: hcache spelling fixes
+
+2005-07-26 16:37:28 Tamotsu Takahashi <ttakah@lapis.plala.or.jp> (roessler)
+
+ * enter.c: Introduce fall-back from complete-query to complete
+ for the edit menu, so 'bind editor <tab> complete-query'
+ becomes possible.
+
2005-07-26 06:14:34 "Brent J. Nordquist" <brent@nordist.net> (brendan)
* doc/manual.sgml.head: Correct a couple of typos (and change
err = gpgme_new (&ctx);
if (err) {
- mutt_error ("error creating gpgme context: %s\n", gpgme_strerror (err));
+ mutt_error (_("error creating gpgme context: %s\n"), gpgme_strerror (err));
sleep (2);
mutt_exit (1);
}
if (for_smime) {
err = gpgme_set_protocol (ctx, GPGME_PROTOCOL_CMS);
if (err) {
- mutt_error ("error enabling CMS protocol: %s\n", gpgme_strerror (err));
+ mutt_error (_("error enabling CMS protocol: %s\n"), gpgme_strerror (err));
sleep (2);
mutt_exit (1);
}
err = gpgme_data_new (&data);
if (err) {
- mutt_error ("error creating gpgme data object: %s\n",
+ mutt_error (_("error creating gpgme data object: %s\n"),
gpgme_strerror (err));
sleep (2);
mutt_exit (1);
}
unlink (tempfile);
if (err) {
- mutt_error ("error allocating data object: %s\n", gpgme_strerror (err));
+ mutt_error (_("error allocating data object: %s\n"), gpgme_strerror (err));
return NULL;
}
err = gpgme_data_new_from_filepart (&data, NULL, fp, offset, length);
if (err) {
- mutt_error ("error allocating data object: %s\n", gpgme_strerror (err));
+ mutt_error (_("error allocating data object: %s\n"), gpgme_strerror (err));
return NULL;
}
err = ((gpgme_data_seek (data, 0, SEEK_SET) == -1)
? gpgme_error_from_errno (errno) : 0);
if (err) {
- mutt_error ("error rewinding data object: %s\n", gpgme_strerror (err));
+ mutt_error (_("error rewinding data object: %s\n"), gpgme_strerror (err));
return -1;
}
}
}
if (nread == -1) {
- mutt_error ("error reading data object: %s\n", strerror (errno));
+ mutt_error (_("error reading data object: %s\n"), strerror (errno));
return -1;
}
return 0;
else
fclose (fp);
if (nread == -1) {
- mutt_error ("error reading data object: %s\n", gpgme_strerror (err));
+ mutt_error (_("error reading data object: %s\n"), gpgme_strerror (err));
unlink (tempfile);
fclose (fp);
return NULL;
rset[rset_n++] = key;
}
else {
- mutt_error ("error adding recipient `%s': %s\n",
+ mutt_error (_("error adding recipient `%s': %s\n"),
buf, gpgme_strerror (err));
FREE (&rset);
return NULL;
plaintext, ciphertext);
mutt_need_hard_redraw ();
if (err) {
- mutt_error ("error encrypting data: %s\n", gpgme_strerror (err));
+ mutt_error (_("error encrypting data: %s\n"), gpgme_strerror (err));
gpgme_data_release (ciphertext);
gpgme_release (ctx);
return NULL;
if (err) {
gpgme_data_release (signature);
gpgme_release (ctx);
- mutt_error ("error signing data: %s\n", gpgme_strerror (err));
+ mutt_error (_("error signing data: %s\n"), gpgme_strerror (err));
return NULL;
}
err = gpgme_data_new_from_file (&message, tempfile, 1);
if (err) {
gpgme_data_release (signature);
- mutt_error ("error allocating data object: %s\n", gpgme_strerror (err));
+ mutt_error (_("error allocating data object: %s\n"), gpgme_strerror (err));
return -1;
}
ctx = create_gpgme_context (is_smime);
err = gpgme_new (&ctx);
if (err) {
- mutt_error ("gpgme_new failed: %s", gpgme_strerror (err));
+ mutt_error (_("gpgme_new failed: %s"), gpgme_strerror (err));
FREE (&pattern);
return NULL;
}
FREE (&patarr[n]);
FREE (&patarr);
if (err) {
- mutt_error ("gpgme_op_keylist_start failed: %s", gpgme_strerror (err));
+ mutt_error (_("gpgme_op_keylist_start failed: %s"), gpgme_strerror (err));
gpgme_release (ctx);
FREE (&pattern);
return NULL;
}
}
if (gpg_err_code (err) != GPG_ERR_EOF)
- mutt_error ("gpgme_op_keylist_next failed: %s", gpgme_strerror (err));
+ mutt_error (_("gpgme_op_keylist_next failed: %s"), gpgme_strerror (err));
gpgme_op_keylist_end (ctx);
no_pgphints:
;
gpgme_set_protocol (ctx, GPGME_PROTOCOL_CMS);
err = gpgme_op_keylist_start (ctx, pattern, 0);
if (err) {
- mutt_error ("gpgme_op_keylist_start failed: %s", gpgme_strerror (err));
+ mutt_error (_("gpgme_op_keylist_start failed: %s"), gpgme_strerror (err));
gpgme_release (ctx);
FREE (&pattern);
return NULL;
}
}
if (gpg_err_code (err) != GPG_ERR_EOF)
- mutt_error ("gpgme_op_keylist_next failed: %s", gpgme_strerror (err));
+ mutt_error (_("gpgme_op_keylist_next failed: %s"), gpgme_strerror (err));
gpgme_op_keylist_end (ctx);
}
if (ch != OP_NULL) {
first = 0;
- if (ch != OP_EDITOR_COMPLETE)
+ if (ch != OP_EDITOR_COMPLETE && ch != OP_EDITOR_COMPLETE_QUERY)
state->tabs = 0;
redraw = M_REDRAW_LINE;
switch (ch) {
/* fall through to completion routine (M_FILE) */
case OP_EDITOR_COMPLETE:
+ case OP_EDITOR_COMPLETE_QUERY:
state->tabs++;
if (flags & M_CMD) {
for (i = state->curpos; i && state->wbuf[i - 1] != ' '; i--);
replace_part (state, i, buf);
}
- else if (flags & M_ALIAS) {
+ else if (flags & M_ALIAS && ch == OP_EDITOR_COMPLETE) {
/* invoke the alias-menu to get more addresses */
for (i = state->curpos; i && state->wbuf[i - 1] != ',' &&
state->wbuf[i - 1] != ':'; i--);
goto bye;
}
break;
- }
- else if (flags & M_COMMAND) {
+ } else if (flags & M_ALIAS && ch == OP_EDITOR_COMPLETE_QUERY) {
+ /* invoke the query-menu to get more addresses */
+ if ((i = state->curpos)) {
+ for (; i && state->wbuf[i - 1] != ','; i--);
+ for (; i < state->curpos && state->wbuf[i] == ' '; i++);
+ }
+ my_wcstombs (buf, buflen, state->wbuf + i, state->curpos - i);
+ mutt_query_complete (buf, buflen);
+ replace_part (state, i, buf);
+ rv = 1;
+ goto bye;
+ } else if (flags & M_COMMAND) {
my_wcstombs (buf, buflen, state->wbuf, state->curpos);
i = mutt_strlen (buf);
if (i && buf[i - 1] == '=' &&
goto self_insert;
break;
- case OP_EDITOR_COMPLETE_QUERY:
- if (flags & M_ALIAS) {
- /* invoke the query-menu to get more addresses */
- if ((i = state->curpos)) {
- for (; i && state->wbuf[i - 1] != ','; i--);
- for (; i < state->curpos && state->wbuf[i] == ' '; i++);
- }
-
- my_wcstombs (buf, buflen, state->wbuf + i, state->curpos - i);
- mutt_query_complete (buf, buflen);
- replace_part (state, i, buf);
-
- rv = 1;
- goto bye;
- }
- else
- goto self_insert;
-
case OP_EDITOR_QUOTE_CHAR:
{
event_t event;
imap_fix_path (idata, mx.mbox, mailbox, sizeof (mailbox));
+ /* We may be appending to the same folder we've selected. */
+ if (!ascii_strcmp(idata->mailbox, mx.mbox)) {
+ FREE (&mx.mbox);
+ return 0;
+ }
+
imap_munge_mbox_name (mbox, sizeof (mbox), mailbox);
if (mutt_bit_isset (idata->capabilities, IMAP4REV1))
** This variable controls the number of lines of context that are given
** when scrolling through menus. (Similar to ``$$pager_context''.)
*/
- {"menu_move_off", DT_BOOL, R_NONE, OPTMENUMOVEOFF, 0},
+ {"menu_move_off", DT_BOOL, R_NONE, OPTMENUMOVEOFF, 1},
/*
** .pp
** When \fIunset\fP, the bottom entry of menus will never scroll up past
/* forward declarations */
static int socket_preconnect (void);
static int socket_connect (int fd, struct sockaddr *sa);
-static CONNECTION *socket_new_conn ();
+static CONNECTION *socket_new_conn (void);
/* Wrappers */
int mutt_socket_open (CONNECTION * conn)
}
/* socket_new_conn: allocate and initialise a new connection. */
-static CONNECTION *socket_new_conn ()
+static CONNECTION *socket_new_conn (void)
{
CONNECTION *conn;
err = gnutls_global_init ();
if (err < 0) {
- mutt_error ("gnutls_global_init: %s", gnutls_strerror (err));
+ mutt_error (_("gnutls_global_init: %s"), gnutls_strerror (err));
mutt_sleep (2);
return -1;
}
int ret;
if (!data) {
- mutt_error ("Error: no TLS socket open");
+ mutt_error (_("Error: no TLS socket open"));
mutt_sleep (2);
return -1;
}
ret = gnutls_record_recv (data->state, buf, len);
if (gnutls_error_is_fatal (ret) == 1) {
- mutt_error ("tls_socket_read (%s)", gnutls_strerror (ret));
+ mutt_error (_("tls_socket_read (%s)"), gnutls_strerror (ret));
mutt_sleep (4);
return -1;
}
int ret;
if (!data) {
- mutt_error ("Error: no TLS socket open");
+ mutt_error (_("Error: no TLS socket open"));
mutt_sleep (2);
return -1;
}
ret = gnutls_record_send (data->state, buf, len);
if (gnutls_error_is_fatal (ret) == 1) {
- mutt_error ("tls_socket_write (%s)", gnutls_strerror (ret));
+ mutt_error (_("tls_socket_write (%s)"), gnutls_strerror (ret));
mutt_sleep (4);
return -1;
}
err = gnutls_certificate_allocate_credentials (&data->xcred);
if (err < 0) {
FREE (&conn->sockdata);
- mutt_error ("gnutls_certificate_allocate_credentials: %s",
+ mutt_error (_("gnutls_certificate_allocate_credentials: %s"),
gnutls_strerror (err));
mutt_sleep (2);
return -1;
}
if (err < 0) {
if (err == GNUTLS_E_FATAL_ALERT_RECEIVED) {
- mutt_error ("gnutls_handshake: %s(%s)", gnutls_strerror (err),
+ mutt_error (_("gnutls_handshake: %s(%s)"), gnutls_strerror (err),
gnutls_alert_get_name (gnutls_alert_get (data->state)));
}
else {
- mutt_error ("gnutls_handshake: %s", gnutls_strerror (err));
+ mutt_error (_("gnutls_handshake: %s"), gnutls_strerror (err));
}
mutt_sleep (2);
goto fail;
compose.c
compress.c
crypt.c
+cryptglue.c
+crypt-gpgme.c
curs_lib.c
curs_main.c
edit.c
muttlib.c
mutt_socket.c
mutt_ssl.c
+mutt_ssl_gnutls.c
+mutt_ssl_nss.c
+mutt_tunnel.c
mx.c
newsrc.c
nntp.c