aboutsummaryrefslogtreecommitdiffstats
path: root/behaviour.el
diff options
context:
space:
mode:
authorMarcos Magueta <mmagueta@MacMini.local>2022-11-20 14:00:15 -0300
committerMarcos Magueta <mmagueta@MacMini.local>2022-11-20 14:00:15 -0300
commit19865a22258ac7c5ee943cebc6448168a8a20e34 (patch)
treeaf52a53f39d0e179437f6da3047b2cf05d21d934 /behaviour.el
downloadMageMacs-19865a22258ac7c5ee943cebc6448168a8a20e34.tar.gz
MageMacs-19865a22258ac7c5ee943cebc6448168a8a20e34.zip
macintosh branch port
Diffstat (limited to 'behaviour.el')
-rw-r--r--behaviour.el57
1 files changed, 57 insertions, 0 deletions
diff --git a/behaviour.el b/behaviour.el
new file mode 100644
index 0000000..2eea27b
--- /dev/null
+++ b/behaviour.el
@@ -0,0 +1,57 @@
+(require 'use-package)
+
+(setq create-lockfiles nil)
+(setq make-backup-files nil)
+
+(defun emacs-lisp/eval-entire-expression ()
+ (interactive)
+ (forward-sentence)
+ (minibuffer-message (eval-last-sexp (sexp-at-point))))
+
+(define-key emacs-lisp-mode-map (kbd "C-c C-e") 'eval-buffer)
+(define-key emacs-lisp-mode-map (kbd "C-c C-c") 'emacs-lisp/eval-entire-expression)
+
+(global-set-key (kbd "s-e") 'eshell)
+(use-package multi-term
+ :ensure t
+ :config
+ (global-set-key (kbd "s-m") 'multi-term))
+(global-set-key (kbd "s-1") 'async-shell-command)
+(global-set-key (kbd "s-t") 'transpose-frame)
+
+
+(use-package comint
+ :after fsharp-mode
+ :config
+ (defun comint-write-history-on-exit (process event)
+ (comint-write-input-ring)
+ (let ((buf (process-buffer process)))
+ (when (buffer-live-p buf)
+ (with-current-buffer buf
+ (insert (format "\nProcess %s %s" process event))))))
+
+ (defun turn-on-comint-history ()
+ (let ((process (get-buffer-process (current-buffer))))
+ (when process
+ (setq comint-input-ring-file-name
+ (format "~/.emacs.d/inferior-%s-history"
+ (process-name process)))
+ (comint-read-input-ring)
+ (set-process-sentinel process
+ #'comint-write-history-on-exit))))
+
+ (defun mapc-buffers (fn)
+ (mapc (lambda (buffer)
+ (with-current-buffer buffer
+ (funcall fn)))
+ (buffer-list)))
+
+ (defun comint-write-input-ring-all-buffers ()
+ (mapc-buffers 'comint-write-input-ring))
+
+ (add-hook 'kill-emacs-hook 'comint-write-input-ring-all-buffers)
+ (add-hook 'kill-buffer-hook 'comint-write-input-ring)
+ :hook
+ (inferior-fsharp-mode . turn-on-comint-history))
+
+(provide 'behaviour)