(user-error "Should only be called in the minibuffer through `swiper-map'")
(let* ((enable-recursive-minibuffers t)
(from (ivy--regex ivy-text))
- (to (query-replace-read-to from "Query replace" t)))
+ (to (minibuffer-with-setup-hook
+ (lambda ()
+ (setq minibuffer-default
+ (if (string-match "\\`\\\\_<\\(.*\\)\\\\_>\\'" ivy-text)
+ (match-string 1 ivy-text)
+ ivy-text)))
+ (read-from-minibuffer (format "Query replace %s with: " from)))))
(swiper--cleanup)
(ivy-exit-with-action
(lambda (_)
(declare-function mc/create-fake-cursor-at-point "ext:multiple-cursors-core")
(declare-function multiple-cursors-mode "ext:multiple-cursors-core")
-;;;###autoload
(defun swiper-mc ()
- (interactive)
(unless (require 'multiple-cursors nil t)
(error "multiple-cursors isn't installed"))
(let ((cands (nreverse ivy--old-cands)))
(buffer-substring
(point)
(line-end-position)))))))
- (when (eq major-mode 'twittering-mode)
- (remove-text-properties 0 (length str) '(field) str))
+ (remove-text-properties 0 (length str) '(field) str)
(put-text-property 0 1 'display
(format swiper--format-spec
(cl-incf line-number))
(if (null revert)
ivy--old-cands
(setq ivy--old-re nil)
- (ivy--filter
- (progn (string-match "\"\\(.*\\)\"" (buffer-name))
- (match-string 1 (buffer-name)))
- (with-current-buffer buffer
- (swiper--candidates)))))))
+ (let ((ivy--regex-function 'swiper--re-builder))
+ (ivy--filter
+ (progn (string-match "\"\\(.*\\)\"" (buffer-name))
+ (match-string 1 (buffer-name)))
+ (with-current-buffer buffer
+ (swiper--candidates))))))))
(unless (eq major-mode 'ivy-occur-grep-mode)
(ivy-occur-grep-mode)
(font-lock-mode -1))