all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
To: "'Dan Davison'" <davison@stats.ox.ac.uk>,
	"'Deniz Dogan'" <deniz.a.m.dogan@gmail.com>
Cc: help-gnu-emacs@gnu.org, 'Andrea Crotti' <andrea.crotti.0@gmail.com>
Subject: RE: Simple useful function
Date: Mon, 5 Jul 2010 16:34:05 -0700	[thread overview]
Message-ID: <CBF8D59FD89E48A9AC2E06C2FFB9D1F6@us.oracle.com> (raw)
In-Reply-To: <87vd8tk026.fsf@stats.ox.ac.uk>

> Is there a way to do this sort of stuff with dired (perhaps involving
> magit)? E.g. how would one limit dired to showing just the files that
> git is tracking?

If you have an Emacs function that returns those file names (absolute or
relative), then you can open a Dired buffer for just those files.

You do that by calling `dired' with a cons arg: the list of file names.  If the
files are not all in the same directory, then use absolute names.  For example:

 (dired "My GIT Files" '("/my/first/file" "/my/2nd/file"...))

`C-h f dired':

,----
| dired is an interactive compiled Lisp function in `dired.el'.
...
| (dired DIRNAME &optional SWITCHES)
...
| If DIRNAME is a cons, its first element is taken as the directory name
| and the rest as an explicit list of files to make directory entries for.
| You can move around in it with the usual commands.
...
`----

You can do more than "move around in it"!  All Dired operations work normally on
the files listed.

The file names can be a mix of local and remote, absolute and relative.

This is an important and little known Dired feature.  IMHO, it is not well
documented.  And that's probably why it had a few bugs wrt remote files until
this year.  Little attention is drawn to this feature, yet it is very useful.
You can use it to organize files into projects etc.  Define specific commands
that give you just the sets of files you want.

Combine this feature with an ability to bookmark Dired buffers and you have a
flexible way to get quickly to and operate on a given set of files, without
defining specialized commands.  With Bookmark+, you can not only bookmark an
arbitrary Dired buffer (saving the current Dired switches, markings, and subdir
showings).  You can also open a Dired buffer on the bookmarks currently marked
in the `*Bookmark List*'.  http://www.emacswiki.org/emacs/BookmarkPlus





  reply	other threads:[~2010-07-05 23:34 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-05 21:19 Simple useful function Andrea Crotti
2010-07-05 21:56 ` Deniz Dogan
2010-07-05 22:58   ` Dan Davison
2010-07-05 23:34     ` Drew Adams [this message]
2010-07-06  5:33       ` Thierry Volpiatto
2010-07-06 13:21         ` Drew Adams
2010-07-15  7:39           ` Thierry Volpiatto
2010-08-03 15:11             ` Andrea Crotti
     [not found]           ` <mailman.2.1279179720.17180.help-gnu-emacs@gnu.org>
2010-07-15  8:10             ` Andreas Politz
2010-07-06 11:03       ` Andrea Crotti
2010-07-06 11:11         ` Lennart Borgman
2010-07-06 11:49           ` Andrea Crotti
2010-07-06 12:25             ` Lennart Borgman
     [not found] <mailman.16.1278364774.11527.help-gnu-emacs@gnu.org>
2010-07-06  7:26 ` Nicolas Neuss
2010-07-06  7:36   ` Teemu Likonen

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

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

  git send-email \
    --in-reply-to=CBF8D59FD89E48A9AC2E06C2FFB9D1F6@us.oracle.com \
    --to=drew.adams@oracle.com \
    --cc=andrea.crotti.0@gmail.com \
    --cc=davison@stats.ox.ac.uk \
    --cc=deniz.a.m.dogan@gmail.com \
    --cc=help-gnu-emacs@gnu.org \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.