summaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ravi-init-repl.el16
1 files changed, 15 insertions, 1 deletions
diff --git a/lisp/ravi-init-repl.el b/lisp/ravi-init-repl.el
index b697147..cd8ba0b 100644
--- a/lisp/ravi-init-repl.el
+++ b/lisp/ravi-init-repl.el
@@ -68,7 +68,21 @@
:diminish repl-toggle-mode)
;; Calc and friends
-(bind-key "H-c" 'calc)
+(use-package calc
+ :bind
+ (("H-c" . calc))
+ :config
+ ;; whole-line-or-region messes up pasting into calc buffers
+ (defun ravi/disable-whole-line-or-region-local-mode ()
+ (when (fboundp 'whole-line-or-region-local-mode)
+ (whole-line-or-region-local-mode -1)))
+ (add-hook 'calc-mode-hook #'ravi/disable-whole-line-or-region-local-mode)
+ ;; Prefer primary selection for pasting with mouse
+ (defun ravi/calc-yank-mouse (radix)
+ (interactive "P")
+ (let ((interprogram-paste-function 'gui-get-primary-selection))
+ (calc-yank radix)))
+ (bind-key "<mouse-2>" 'ravi/calc-yank-mouse calc-mode-map))
(provide 'ravi-init-repl)
;;; ravi-init-repl.el ends here