annotate update-subdirs @ 50715:46229d46cbeb

Major rewrite. The code is reordered, cleaner and faster. Introduced new options to automatically cleanup the recent list, and to handle filename transformation (for example to use true filenames). (recentf-version): New constant. (recentf-save-file-header): Moved. (recentf-data-cache): New variable. (recentf-update-menu-p, recentf-initialized-p): Removed. (recentf-menu-customization-changed): Moved. Doc fix. (recentf-max-saved-items): Doc fix. (recentf-save-file): Doc fix. No more expand filename here. (recentf-exclude, recentf-menu-action) (recentf-menu-filter): Doc fix. (recentf-menu-append-commands-flag): Renamed from... (recentf-menu-append-commands-p): Made obsolete. (recentf-keep-non-readable-files-flag): Renamed from... (recentf-keep-non-readable-files-p): Made obsolete. (recentf-auto-cleanup, recentf-filename-handler): New options. (recentf-string-equal, recentf-string-lessp) (recentf-string-member): New functions. (recentf-trunc-list): Moved. (recentf-dump-variable): Moved. Better code and output format. (recentf-auto-cleanup-timer): New variable. (recentf-auto-cleanup): New function. (recentf-push, recentf-expand-file-name): New functions. (recentf-add-file): In-lined. Use above functions. (recentf-remove-if-non-readable): In-lined. Expand file name. (recentf-find-file): Use `recentf-remove-if-non-readable'. (recentf-directory-compare): Moved. Use `recentf-string-equal' and `recentf-string-lessp' to do comparisons. (recentf-menu-items-for-commands) (recentf-menu-filter-commands): Moved. (recentf-elements, recentf-make-menu-element) (recentf-menu-element-item, recentf-menu-element-value) (recentf-set-menu-element-item, recentf-set-menu-element-value) (recentf-sub-menu-element-p, recentf-make-default-menu-element) (recentf-menu-elements): In-lined. Some doc fix. (recentf-apply-menu-filter): Better code. (recentf-make-menu-items): Doc fix. Use `recentf-menu-append-commands-flag'. (recentf-make-menu-item): In-lined. Better code. (recentf-clear-data): New function. (recentf-sort-ascending, recentf-sort-descending) (recentf-sort-basenames-ascending) (recentf-sort-basenames-descending) (recentf-sort-directories-ascending) (recentf-sort-directories-descending) (recentf-show-basenames-ascending) (recentf-show-basenames-descending: In-lined. Better code. Some doc fix. (recentf-show-basenames) (recentf-relative-filter): Better code. Doc fix. (recentf-arrange-by-rule-subfilter): Doc fix. Improved :set code. (recentf-match-rule-p): Use filename instead of file-path. (recentf-arrange-by-rule, recentf-build-mode-rules) (recentf-arrange-by-mode, recentf-build-dir-rules) (recentf-file-name-nondir) (recentf-filter-changer-alist): Some doc fix and code cleanup. (recentf-filter-changer-goto-next): Doc fix. Call `recentf-clear-data'. (recentf-filter-changer-get-current) (recentf-filter-changer-get-next): In-lined. Doc fix and better code. (recentf-filter-changer): Doc fix and better code. (recentf-cancel-dialog): Doc fix. (recentf-dialog-mode-map): Initialized in defvar. (recentf-dialog-mode): Doc fix. (recentf-track-opened-file): Renamed from... (recentf-add-file-hook): Removed. (recentf-track-closed-file): Renamed from... (recentf-remove-file-hook): Removed. (recentf-update-menu-hook): Removed. Replaced by... (recentf-update-menu): New. Better catch unnecessary updates. Display a message on error. (recentf-used-hooks): New constant. (recentf-enabled-p): New function. (recentf-edit-selected-items) (recentf-open-files-action) (recentf-open-files-item-shift): Doc fix. (recentf-edit-list-action) (recentf-open-files-item): Doc fix. Code cleanup. (recentf-edit-list, recentf-open-files) (recentf-open-more-files): Likewise. Removed autoload cookie. (recentf-save-list, recentf-cleanup): Likewise. Moved. (recentf-load-list): New command. (recentf-mode): Better code. Does nothing if enabling the already enabled mode.
author Juanma Barranquero <lekktu@gmail.com>
date Sat, 26 Apr 2003 23:41:59 +0000
parents 23a1cea22d13
children 695cf19ef79e d7ddb3e565de
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25856
Dave Love <fx@gnu.org>
parents:
diff changeset
1 #!/bin/sh
Dave Love <fx@gnu.org>
parents:
diff changeset
2 # Write into $1/subdirs.el a list of subdirs of directory $1.
36219
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
3
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
4 # Copyright (C) 1994, 1995, 1997, 1999, 2001 Free Software Foundation, Inc.
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
5 #
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
6 # This file is part of GNU Emacs.
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
7 #
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
8 # GNU Emacs is free software; you can redistribute it and/or modify
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
9 # it under the terms of the GNU General Public License as published by
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
10 # the Free Software Foundation; either version 2, or (at your option)
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
11 # any later version.
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
12 #
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
13 # GNU Emacs is distributed in the hope that it will be useful,
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
16 # GNU General Public License for more details.
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
17 #
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
18 # You should have received a copy of the GNU General Public License
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
19 # along with GNU Emacs; see the file COPYING. If not, write to the
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
20 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
21 # Boston, MA 02111-1307, USA.
f440b9766968 Add copyright notice.
Gerd Moellmann <gerd@gnu.org>
parents: 25931
diff changeset
22
25856
Dave Love <fx@gnu.org>
parents:
diff changeset
23 cd $1
Dave Love <fx@gnu.org>
parents:
diff changeset
24 for file in *; do
Dave Love <fx@gnu.org>
parents:
diff changeset
25 case $file in
25931
3ede6c50d7f5 also ignore CVS subdirs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 25856
diff changeset
26 *.elc | *.el | term | RCS | CVS | Old | . | .. | =* | *~ | *.orig | *.rej)
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 47727
diff changeset
27 ;;
25856
Dave Love <fx@gnu.org>
parents:
diff changeset
28 *)
Dave Love <fx@gnu.org>
parents:
diff changeset
29 if [ -d $file ]; then
Dave Love <fx@gnu.org>
parents:
diff changeset
30 subdirs="\"$file\" $subdirs"
Dave Love <fx@gnu.org>
parents:
diff changeset
31 fi
Dave Love <fx@gnu.org>
parents:
diff changeset
32 ;;
Dave Love <fx@gnu.org>
parents:
diff changeset
33 esac
Dave Love <fx@gnu.org>
parents:
diff changeset
34 done
Dave Love <fx@gnu.org>
parents:
diff changeset
35
Dave Love <fx@gnu.org>
parents:
diff changeset
36 if [ "x$subdirs" = x ]; then
Dave Love <fx@gnu.org>
parents:
diff changeset
37 rm -f subdirs.el
Dave Love <fx@gnu.org>
parents:
diff changeset
38 else
47727
53a1d514b214 Add "no-byte-compile: t" to subdirs.el.
Juanma Barranquero <lekktu@gmail.com>
parents: 36219
diff changeset
39
53a1d514b214 Add "no-byte-compile: t" to subdirs.el.
Juanma Barranquero <lekktu@gmail.com>
parents: 36219
diff changeset
40 echo ";; -*- no-byte-compile: t -*-" > subdirs.el
53a1d514b214 Add "no-byte-compile: t" to subdirs.el.
Juanma Barranquero <lekktu@gmail.com>
parents: 36219
diff changeset
41
25856
Dave Love <fx@gnu.org>
parents:
diff changeset
42 echo ";; In load-path, after this directory should come
47727
53a1d514b214 Add "no-byte-compile: t" to subdirs.el.
Juanma Barranquero <lekktu@gmail.com>
parents: 36219
diff changeset
43 ;; certain of its subdirectories. Here we specify them." >> subdirs.el
25856
Dave Love <fx@gnu.org>
parents:
diff changeset
44
Dave Love <fx@gnu.org>
parents:
diff changeset
45 echo "(normal-top-level-add-to-load-path '($subdirs))" >> subdirs.el
Dave Love <fx@gnu.org>
parents:
diff changeset
46 fi