doomemacs/core/defuns/defuns-editor.el

63 lines
1.6 KiB
EmacsLisp
Raw Normal View History

2015-06-15 15:05:52 +08:00
;;; defuns-editor.el
;; for ../core-editor.el
(defvar *linum-mdown-line* nil)
2016-05-21 10:37:30 +08:00
(defun doom--line-at-click ()
(save-excursion
(let ((click-y (cdr (cdr (mouse-position))))
(line-move-visual-store line-move-visual))
(setq line-move-visual t)
(goto-char (window-start))
(next-line (1- click-y))
(setq line-move-visual line-move-visual-store)
;; If you are using tabbar substitute the next line with
;; (line-number-at-pos))))
(1+ (line-number-at-pos)))))
;;;###autoload
2016-05-21 10:37:30 +08:00
(defun doom/mouse-drag-line ()
(interactive)
2016-05-21 10:37:30 +08:00
(goto-line (doom--line-at-click))
(set-mark (point))
(setq *linum-mdown-line* (line-number-at-pos)))
2015-06-15 15:05:52 +08:00
;;;###autoload
2016-05-21 10:37:30 +08:00
(defun doom/mouse-select-line ()
2015-06-15 15:05:52 +08:00
(interactive)
(when *linum-mdown-line*
(let (mu-line)
2016-05-21 10:37:30 +08:00
(setq mu-line (doom--line-at-click))
2015-11-14 15:41:53 +08:00
(goto-line *linum-mdown-line*)
(if (> mu-line *linum-mdown-line*)
(progn
(set-mark (point))
(goto-line mu-line)
(end-of-line))
(set-mark (line-end-position))
(goto-line mu-line)
(beginning-of-line))
2015-11-14 15:41:53 +08:00
(setq *linum-mdown-line* nil))))
2015-06-15 15:05:52 +08:00
2016-02-26 13:08:41 +08:00
;;;###autoload
2016-05-21 10:37:30 +08:00
(defun doom*load-hs-minor-mode ()
2016-02-26 13:08:41 +08:00
(hs-minor-mode 1)
2016-05-21 10:37:30 +08:00
(advice-remove 'evil-toggle-fold 'doom-load-hs-minor-mode))
2016-02-26 13:08:41 +08:00
2016-03-21 00:18:51 +08:00
;;;###autoload
2016-05-21 10:37:30 +08:00
(defun doom/reselect-paste ()
2016-03-21 00:18:51 +08:00
(interactive)
(evil-goto-mark ?\[)
(evil-visual-state)
(evil-goto-mark ?\]))
2016-05-25 10:15:44 +08:00
;;;###autoload
(defun doom/delete-forward-word ()
"Delete the word in front of the cursor."
(interactive)
(evil-forward-word)
(evil-delete-backward-word))
2015-06-15 15:05:52 +08:00
(provide 'defuns-editor)
;;; defuns-editor.el ends here