emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Kyle Meyer <kyle@kyleam.com>
To: "Sebastian Reuße" <seb@wirrsal.net>
Cc: emacs-orgmode@gnu.org
Subject: Re: [PATCH 1/2] org-refile: escape slashes only in headline of refile target
Date: Fri, 05 May 2017 19:22:52 -0400	[thread overview]
Message-ID: <87vapesxbn.fsf@kyleam.com> (raw)
In-Reply-To: <20170503203046.31610-1-seb@wirrsal.net>

Sebastian Reuße <seb@wirrsal.net> writes:

> * org.el (org-refile-get-targets): only escape slashes in headline

For style consistency, the first word following the colon should be
capitalized.  The same applies to the commit subject.

> part of refile target; leave any file-system path component (when
> enabled) unescaped.
>
> The reason to escape slashes in refile targets is to make it clear
> when a slash was part of a headline vs. part of the outline path.  It
> makes sense to treat slashes in the file system part the same way as
> outline paths, since this won’t result in any confusion and serves to
> make target selection less noisy.

That sounds reasonable to me.

> ---
>  lisp/org.el | 21 ++++++++++-----------
>  1 file changed, 10 insertions(+), 11 deletions(-)

Based on the Org contributor page [*], it doesn't look like you've
signed papers with the FSF, so the commit message should label this as a
"TINYCHANGE".  (I think this and the next patch would be small enough to
mark as tiny changes.)

[*] http://orgmode.org/worg/org-contribute.html

> diff --git a/lisp/org.el b/lisp/org.el
> index 0d83b4cbd..ad92f3b2e 100644
> --- a/lisp/org.el
> +++ b/lisp/org.el
> @@ -11575,18 +11575,17 @@ (defun org-refile-get-targets (&optional default-buffer)
>  					(regexp-quote heading)))
>  			    (target
>  			     (if (not org-refile-use-outline-path) heading
> -			       (mapconcat
> -				#'org-protect-slash
> -				(append
> +			       (string-join

Org's master branch currently supports Emacs >= 24.3, but string-join
was added in the 24.5 release.

> +				(cons
>  				 (pcase org-refile-use-outline-path
> -				   (`file (list (file-name-nondirectory
> -						 (buffer-file-name
> -						  (buffer-base-buffer)))))
> -				   (`full-file-path
> -				    (list (buffer-file-name
> -					   (buffer-base-buffer))))
> -				   (_ nil))
> -				 (org-get-outline-path t t))
> +				   (`file (file-name-nondirectory
> +					   (buffer-file-name
> +					    (buffer-base-buffer))))
> +				   (`full-file-path (buffer-file-name
> +						     (buffer-base-buffer)))
> +				   (_ ""))

I'm fine with the append -> cons conversion, but avoiding it would make
for a cleaner diff that's more focused on the main purpose of this
patch.

Also, it does slightly change the result because the fall-through case
would now include "/" at the start of the path, but I don't think that's
a big deal given that this case shouldn't be reached if the user sets
org-refile-use-outline-path to a valid value.  Which makes me wonder
whether we should just raise a user-error for this fall-through case.

> +				 (mapcar #'org-protect-slash
> +					 (org-get-outline-path t t)))
>  				"/"))))

-- 
Kyle

  parent reply	other threads:[~2017-05-05 23:22 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-03 17:50 [PATCH 1/2] org-refile: escape slashes only in headline of refile target Sebastian Reuße
2017-05-03 17:50 ` [PATCH 2/2] org-refile: optionally prefix refile targets with buffer name Sebastian Reuße
2017-05-03 20:30   ` [PATCH 1/2] org-refile: escape slashes only in headline of refile target Sebastian Reuße
2017-05-03 20:30     ` [PATCH 2/2] org-refile: optionally prefix refile targets with buffer name Sebastian Reuße
2017-05-03 20:33       ` Sebastian Reuße
2017-05-05 23:23       ` Kyle Meyer
2017-05-05 23:22     ` Kyle Meyer [this message]
2017-05-06  5:51       ` [PATCH 1/2] org-refile: Escape slashes only in headline of refile target Sebastian Reuße
2017-05-06  5:51         ` [PATCH 2/2] org-refile: Optionally prefix refile targets with buffer name Sebastian Reuße
2017-05-06  6:34           ` [PATCH 1/2] org-refile: Escape slashes only in headline of refile target Sebastian Reuße
2017-05-06  6:34             ` [PATCH 2/2] org-refile: Optionally prefix refile targets with buffer name Sebastian Reuße
2017-05-06  6:38               ` [PATCH 1/2] org-refile: Escape slashes only in headline of refile target Sebastian Reuße
2017-05-06  6:38                 ` [PATCH 2/2] org-refile: Optionally prefix refile targets with buffer name Sebastian Reuße
2017-05-06  6:41       ` [PATCH 1/2] org-refile: escape slashes only in headline of refile target Sebastian Reuße
2017-05-06 16:07         ` Kyle Meyer
2017-05-06 19:04           ` [PATCH] ORG-NEWS: Update new features Sebastian Reuße
2017-05-06 20:19             ` Kyle Meyer
2017-05-07 10:04               ` Nicolas Goaziou
2017-05-06  6:44       ` [PATCH 1/2] org-refile: escape slashes only in headline of refile target Sebastian Reuße
2017-05-06 16:08         ` Kyle Meyer

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=87vapesxbn.fsf@kyleam.com \
    --to=kyle@kyleam.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=seb@wirrsal.net \
    /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).