X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/f0398ec17f8a00d6c6d828c3d04522d94337d156..dd92b5f5047931f6020045ce47360b62d1c2cb72:/lisp/eshell/em-glob.el diff --git a/lisp/eshell/em-glob.el b/lisp/eshell/em-glob.el index a58c7730de..b06804e069 100644 --- a/lisp/eshell/em-glob.el +++ b/lisp/eshell/em-glob.el @@ -1,6 +1,6 @@ -;;; em-glob.el --- extended file name globbing +;;; em-glob.el --- extended file name globbing -*- lexical-binding:t -*- -;; Copyright (C) 1999-2013 Free Software Foundation, Inc. +;; Copyright (C) 1999-2016 Free Software Foundation, Inc. ;; Author: John Wiegley @@ -180,6 +180,8 @@ interpretation." (goto-char (1+ end)))))))))) (defvar eshell-glob-chars-regexp nil) +(defvar eshell-glob-matches) +(defvar message-shown) (defun eshell-glob-regexp (pattern) "Convert glob-pattern PATTERN to a regular expression. @@ -191,8 +193,8 @@ The basic syntax is: * .* matches any group of characters (or none) # * matches zero or more occurrences of preceding ## + matches one or more occurrences of preceding - (x) \(x\) makes 'x' a regular expression group - | \| boolean OR within an expression group + (x) \\(x\\) makes `x' a regular expression group + | \\| boolean OR within an expression group [a-b] [a-b] matches a character or range [^a] [^a] excludes a character or range @@ -218,7 +220,7 @@ resulting regular expression." matched-in-pattern (1+ op-begin)) (let ((xlat (assq op-char eshell-glob-translate-alist))) (if (not xlat) - (error "Unrecognized globbing character '%c'" op-char) + (error "Unrecognized globbing character `%c'" op-char) (if (stringp (cdr xlat)) (setq regexp (concat regexp (cdr xlat)) matched-in-pattern (1+ op-begin)) @@ -230,6 +232,8 @@ resulting regular expression." (regexp-quote (substring pattern matched-in-pattern)) "\\'"))) +(defvar ange-cache) ; XEmacs? See esh-util + (defun eshell-extended-glob (glob) "Return a list of files generated from GLOB, perhaps looking for DIRS-ONLY. This function almost fully supports zsh style filename generation @@ -262,9 +266,6 @@ the form: (error "No matches found: %s" glob) glob)))) -(defvar eshell-glob-matches) -(defvar message-shown) - ;; FIXME does this really need to abuse eshell-glob-matches, message-shown? (defun eshell-glob-entries (path globs &optional recurse-p) "Glob the entries in PATHS, possibly recursing if RECURSE-P is non-nil." @@ -288,7 +289,7 @@ the form: glob (car globs) len (length glob))))) (if (and recurse-p (not glob)) - (error "'**' cannot end a globbing pattern")) + (error "`**' cannot end a globbing pattern")) (let ((index 1)) (setq incl glob) (while (and (eq incl glob)