ag.el
author Oleksandr Gavenko <gavenkoa@gmail.com>
Thu, 30 Mar 2017 00:38:47 +0300
changeset 1522 bbc10891c9a0
parent 1521 df20553d4bd2
child 1523 4d0732762013
permissions -rw-r--r--
Fix: Warning: 'goto-line' is for interactive use only; use 'forward-line' instead.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1493
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
     1
;;; ag.el --- Ag frontend
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
     2
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
     3
;;; Commentary:
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
     4
;;
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
     6
(defun my-ag-goto ()
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     7
  (interactive)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     8
  (save-excursion
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     9
    (let ( lineno end )
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    10
      (forward-line 1)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    11
      (backward-char 1)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    12
      (setq end (point))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    13
      (forward-line 0)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    14
      (if (not (search-forward-regexp "^\\([1-9][0-9]*\\):" end t))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    15
          (message "Not at line number...")
1521
df20553d4bd2 Fix: Warning: "string-to-int" is an obsolete function (as of 22.1); use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1515
diff changeset
    16
        (setq lineno (string-to-number (match-string 1)))
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    17
        (if (search-backward-regexp "^$" nil t)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    18
            (forward-char)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    19
          (goto-char (point-min)))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    20
        (search-forward-regexp "^.*")
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    21
        (find-file-other-window (match-string 0))
1522
bbc10891c9a0 Fix: Warning: 'goto-line' is for interactive use only; use 'forward-line'
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1521
diff changeset
    22
        (goto-char (point-min))
bbc10891c9a0 Fix: Warning: 'goto-line' is for interactive use only; use 'forward-line'
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1521
diff changeset
    23
        (forward-line (1- lineno))))))
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    24
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    25
(defun my-ag-kill-process ()
1493
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    26
  (interactive)
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    27
  (let ( (proc (get-buffer-process (current-buffer))) )
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    28
    (if proc
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    29
	(interrupt-process proc)
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    30
      (error "The %s process is not running" (downcase mode-name)))))
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    31
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    32
(defvar my-ag-mode-map (make-sparse-keymap))
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    33
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    34
(define-key my-ag-mode-map (kbd "RET") 'my-ag-goto)
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    35
(define-key my-ag-mode-map (kbd "C-c C-k") 'my-ag-kill-process)
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    36
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    37
(defface my-ag/lineno-face
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    38
  '((t :inherit warning))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    39
  "Face for line number.")
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    40
(defface my-ag/path-face
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    41
  '((t :inherit success))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    42
  "Face for line number.")
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    43
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    44
(defvar my-ag/keywords
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    45
  '(("^[1-9][0-9]\\{0,5\\}:" . (0 'my-ag/lineno-face))
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    46
    ("^[^:]\\{6\\}.*" . (0 'my-ag/path-face))))
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    47
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    48
(defun my-ag/font-lock-extend-region ()
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    49
  (save-excursion
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    50
    (goto-char font-lock-beg)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    51
    (forward-line 2)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    52
    (setq font-lock-beg (point))))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    53
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    54
(define-derived-mode my-ag-mode fundamental-mode "Ag"
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    55
  "Major mode for Ag parsing."
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    56
  (setq font-lock-defaults '(my-ag/keywords t nil nil)) ;  (font-lock-multiline . t)
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    57
  ;; (add-hook 'font-lock-extend-region-functions 'my-ag/font-lock-extend-region)
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    58
  (use-local-map my-ag-mode-map))
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    59
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    60
(defvar my-ag/buffer-name "*ag*")
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    61
(defvar my-ag/buffer nil)
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    62
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    63
(defun my-ag/filter (proc str)
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    64
  (when (buffer-live-p (process-buffer proc))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    65
    (with-current-buffer (process-buffer proc)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    66
      (save-excursion
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    67
        (goto-char (process-mark proc))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    68
        (insert str)
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    69
        (set-marker (process-mark proc) (point)))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    70
      )))
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    71
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    72
(defvar my-ag/regex-history nil)
1492
8ebcfb7fc718 Add own ag mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    73
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    74
(defun my-ag/setup-buffer (dir)
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    75
  (setq my-ag/buffer (get-buffer-create my-ag/buffer-name))
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    76
  (with-current-buffer my-ag/buffer
1493
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    77
    (setq default-directory dir)
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    78
    (erase-buffer)
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    79
    (my-ag-mode))
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    80
  (display-buffer my-ag/buffer))
1493
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    81
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    82
(defun my-ag/run (regex)
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    83
  (let ( (default-directory (buffer-local-value 'default-directory my-ag/buffer)) )
1496
4b336f352950 (vc-root-dir) selectively work depending on buffer mode. I need root based on
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1493
diff changeset
    84
    (make-process
4b336f352950 (vc-root-dir) selectively work depending on buffer mode. I need root based on
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1493
diff changeset
    85
     :name "ag"
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    86
     :buffer my-ag/buffer
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    87
     :filter 'my-ag/filter
1496
4b336f352950 (vc-root-dir) selectively work depending on buffer mode. I need root based on
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1493
diff changeset
    88
     :command (list "ag" "--group" "--nocolor" regex))))
4b336f352950 (vc-root-dir) selectively work depending on buffer mode. I need root based on
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1493
diff changeset
    89
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    90
(defun my-ag/project-root ()
1501
636e49ed6d27 Prevent error if there is no repository. Fix highlighting of line numbers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1498
diff changeset
    91
  (condition-case err
636e49ed6d27 Prevent error if there is no repository. Fix highlighting of line numbers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1498
diff changeset
    92
      (let ( backend )
636e49ed6d27 Prevent error if there is no repository. Fix highlighting of line numbers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1498
diff changeset
    93
        (setq backend (vc-responsible-backend default-directory))
636e49ed6d27 Prevent error if there is no repository. Fix highlighting of line numbers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1498
diff changeset
    94
        (if backend
1496
4b336f352950 (vc-root-dir) selectively work depending on buffer mode. I need root based on
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1493
diff changeset
    95
            (vc-call-backend backend 'root default-directory)
1501
636e49ed6d27 Prevent error if there is no repository. Fix highlighting of line numbers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1498
diff changeset
    96
          default-directory))
636e49ed6d27 Prevent error if there is no repository. Fix highlighting of line numbers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1498
diff changeset
    97
    (error default-directory)))
1493
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
    98
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
    99
(defun my-ag/read-regex ()
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   100
  (let* ( (def (when my-ag/regex-history (car my-ag/regex-history)))
1502
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   101
          (part (when def (if (< (length def) 20)
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   102
                              def
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   103
                            (concat (substring def 0 20) "...")))) )
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   104
    (read-string
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   105
     (if part (format "Regex [%s]: " part) "Regex: ")
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   106
     ""  'my-ag/regex-history  def  t)))
1502
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   107
1493
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
   108
;;;###autoload
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   109
(defun my-ag (regex)
1502
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   110
  "Search in 'ag' recursively from VCS root directory and fall to
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   111
current directory if VCS root is not defined."
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   112
  (interactive (list (my-ag/read-regex)))
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   113
  (my-ag/setup-buffer (if current-prefix-arg default-directory (my-ag/project-root)))
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   114
  (my-ag/run regex))
1493
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
   115
1502
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   116
;;;###autoload
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   117
(defun my-ag-default-directory (regex)
1502
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   118
  "Search in 'ag' recursively from current directory."
1515
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   119
  (interactive (list (my-ag/read-regex)))
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   120
  (my-ag/setup-buffer default-directory)
a28c181c1412 Rename public function so that they wouldn't have '/' symbol in name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1502
diff changeset
   121
  (my-ag/run regex))
1502
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   122
72c63cea35d3 It much easy to call ag for current directory via modifier then prefix argument.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1501
diff changeset
   123
1493
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
   124
(provide 'ag)
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
   125
d242edfd1321 Function for killing process. Simplify code. Limit search for current
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1492
diff changeset
   126
;;; ag.el ends here