emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Takaaki Ishikawa <takaxp@ieee.org>
To: Kyle Meyer <kyle@kyleam.com>
Cc: orgmode list <emacs-orgmode@gnu.org>
Subject: Re: Quit and Error in org-export--dispatch-action
Date: Thu, 5 Dec 2019 22:59:47 +0900	[thread overview]
Message-ID: <CAJsv8TEn-YX6aND8a_FaZ1go_XoXUPC88EM7ZAhi6j7_QKoedw@mail.gmail.com> (raw)
In-Reply-To: <87a787gj9h.fsf@kyleam.com>

Dear Kyle and all,

Using user-error is another way, but it does not work for me
because user-error stops the org-export-dispatch.
I would like to keep the session to do an action after
the completing org-export-dispatch something like this:

  (defun my-org-export-dispatch (f ARG)
    (interactive "P")
    (if (< (frame-width) 160)
        (apply f ARG)
      (split-window-right)
      (apply f ARG)
      (delete-window)))
  (advice-add 'org-export-dispatch :around #'my-org-export-dispatch)

So I still prefer to replace the error function with a simple message function.
If you agree with this idea, I'll produce an appropriate patch for this
as you kindly instructed.

Best,
Takaaki


--
Takaaki ISHIKAWA <takaxp@ieee.org>

2019年12月5日(木) 19:27 Kyle Meyer <kyle@kyleam.com>:
>
> Hi Takaaki,
>
> Takaaki Ishikawa <takaxp@ieee.org> writes:
>
> > The org-export provides a quitting option for user by typing `q`.
> > This is nice feature but it is implemented with an error function.
> > For me, it is not actually an error, it is one of the user actions,
> > and when `debug-on-error` is `t`, the Backtrace buffer will be
> > popped up every time. It is annoying.
>
> True, that shouldn't be treated as a plain error.
>
> > Please find a patch to replace error function with a simple message.
> > What do you think?
> >
> >[...]
> >
> > --- a/lisp/ox.el
> > +++ b/lisp/ox.el
> > @@ -6929,8 +6929,8 @@ options as CDR."
> >        (org-export--dispatch-ui options first-key expertp))
> >       ;; q key at first level aborts export.  At second level, cancel
> >       ;; first key instead.
> > -     ((eq key ?q) (if (not first-key) (error "Export aborted")
> > -                 (org-export--dispatch-ui options nil expertp)))
> > +     ((eq key ?q) (if first-key (org-export--dispatch-ui options nil expertp)
> > +                 (message "Export aborted") '(ignore)))
>
> Hmm, what about instead replacing the call to `error' with a call to
> `user-error'?  If that works for you, could you send an updated patch
> with a commit message?  (Org's commit message conventions are described
> at <https://orgmode.org/worg/org-contribute.html#commit-messages>.)

  reply	other threads:[~2019-12-05 14:00 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-05  7:42 Quit and Error in org-export--dispatch-action Takaaki Ishikawa
2019-12-05 10:27 ` Kyle Meyer
2019-12-05 13:59   ` Takaaki Ishikawa [this message]
2019-12-06  3:48     ` Kyle Meyer
2019-12-09  4:58       ` Takaaki Ishikawa
2019-12-09 10:39         ` Kyle Meyer
2019-12-09 15:02           ` Takaaki Ishikawa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAJsv8TEn-YX6aND8a_FaZ1go_XoXUPC88EM7ZAhi6j7_QKoedw@mail.gmail.com \
    --to=takaxp@ieee.org \
    --cc=emacs-orgmode@gnu.org \
    --cc=kyle@kyleam.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).