[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] globbing file links

From: John Kitchin
Subject: Re: [O] globbing file links
Date: Sun, 01 Jul 2018 07:19:59 -0700
User-agent: mu4e 1.0; emacs 25.3.1

This could be useful. Here is something close. It does not use
dired-virtual. I couldn't figure out how to generate the ls -lR like
listing for each file, but if you know how to do that it should be
straightforward to modify.

#+BEGIN_SRC emacs-lisp
(defun glob-follow (path)
  (let ((files (directory-files-recursively "." path)))
    (if (= 1 (length files))
        (find-file (car files))
      (pop-to-buffer (get-buffer-create "*org-glob*"))
       (cl-loop for file in files concat
                (format "[[./%s]]\n" (file-relative-name file ".")))))))

 :follow 'glob-follow)

Here is an example usage:


Samuel Wales <address@hidden> writes:

> i frequently have broken file: links.  this might reduce their occurrence.
> i'd like to be able to do this:
>   file:.../**/myfile
> which would use bash's globbing mechanism or an elisp equivalent.
> also perhaps this:
>   file:.../**/*myfile*
> if one file results, i would like it to open as normal.  if more than
> one file results, i would like all of them to open in a dired-virtual
> buffer.  i think dired-virtual is in core.
> the first case would prevent broken links by allowing myfile to be
> moved as long as it is under ....
> the second case would allow you to select a bunch of files that have a
> common substring.  it would also prevent broken links by allowing
> myfile to be renamed slightly [such as compressed or uncompressed].
> i think broken links are likely a common problem for org users.  maybe
> this can help prevent it.
> does this sound like a good idea as an optional feature?
> if no, then what would be a good implementation of a glob: link?

Professor John Kitchin
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213

reply via email to

[Prev in Thread] Current Thread [Next in Thread]