comparison .elisp/textmate.el @ 473:f86c1048a46d

emacs: hack up my textmate.el some more to add searching config This gives up and use a bonus grep for extension filtering because I can't quite make the rg flags work like the grep one, and this gets the job done with minimal fuss.
author Augie Fackler <raf@durin42.com>
date Fri, 01 Feb 2019 16:25:05 -0500
parents 13c11127a79e
children
comparison
equal deleted inserted replaced
472:79110d94a0c2 473:f86c1048a46d
154 154
155 (defvar *textmate-vcs-exclude* nil 155 (defvar *textmate-vcs-exclude* nil
156 "string to give to grep -V to exclude some VCS paths from being grepped." 156 "string to give to grep -V to exclude some VCS paths from being grepped."
157 ) 157 )
158 158
159 (defvar *textmate-grep-command* "egrep --color=never -n" "Base grep command.")
160
159 (defvar *textmate-find-in-project-default* nil) 161 (defvar *textmate-find-in-project-default* nil)
160 162
161 (defvar *textmate-find-in-project-type-default* nil) 163 (defvar *textmate-find-in-project-type-default* nil)
162 164
163 (defvar *textmate-compile-default* nil) 165 (defvar *textmate-compile-default* nil)
278 (format " [\"%s\"]" *textmate-find-in-project-type-default*) 280 (format " [\"%s\"]" *textmate-find-in-project-type-default*)
279 "") 281 "")
280 ": " 282 ": "
281 ) nil nil *textmate-find-in-project-type-default*))) 283 ) nil nil *textmate-find-in-project-type-default*)))
282 (setq *textmate-find-in-project-type-default* pat) 284 (setq *textmate-find-in-project-type-default* pat)
283 (textmate-find-in-project (concat "*." pat)))) 285 (textmate-find-in-project (concat ".*\\." pat "$"))))
284 286
285 (defun textmate-start-compile-in-root (command &optional mode 287 (defun textmate-start-compile-in-root (command &optional mode
286 name-function 288 name-function
287 highlight-regexp) 289 highlight-regexp)
288 "Idential to compilation-start, except it automatically changes to the 290 "Idential to compilation-start, except it automatically changes to the
314 (let* ((default *textmate-find-in-project-default*) 316 (let* ((default *textmate-find-in-project-default*)
315 (re (read-string (concat "Search for " 317 (re (read-string (concat "Search for "
316 (if (and default (> (length default) 0)) 318 (if (and default (> (length default) 0))
317 (format "[\"%s\"]" default)) ": ") 319 (format "[\"%s\"]" default)) ": ")
318 nil 'textmate-find-in-project-history default)) 320 nil 'textmate-find-in-project-history default))
319 (incpat (if pattern pattern "*"))
320 (type (textmate-project-root-type (textmate-project-root))) 321 (type (textmate-project-root-type (textmate-project-root)))
321 (command 322 (command
322 (cond ((not (string= type "unknown")) 323 (cond ((not (string= type "unknown"))
323 (concat (cond ((string= type "git") "git ls-files") 324 (concat (cond ((string= type "git") "git ls-files")
324 ((string= type "hg") "hg locate 'set:added() or modified() or clean()'")) 325 ((string= type "hg") "hg locate 'set:added() or modified() or clean()'"))
325 (if *textmate-vcs-exclude* 326 (if *textmate-vcs-exclude*
326 (concat " | egrep --color=never -v " 327 (concat " | egrep --color=never -v "
327 (shell-quote-argument *textmate-vcs-exclude*)) 328 (shell-quote-argument *textmate-vcs-exclude*))
328 "") 329 "")
329 " | xargs egrep --color=never -n " 330 (if pattern (concat " | egrep '" pattern "' "))
330 (if pattern (concat " --include='" pattern "' ") "") 331 " | xargs " *textmate-grep-command* " "
331 " -- " 332 " -- "
332 (shell-quote-argument re))) 333 (shell-quote-argument re)))
333 (t (concat "egrep --color=never -nR --exclude='" 334 (t (concat "egrep --color=never -nR --exclude='"
334 *textmate-gf-exclude* 335 *textmate-gf-exclude*
335 "' --include='" 336 "' --include='"