summaryrefslogtreecommitdiff
path: root/lisp/init-my-stuff.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/init-my-stuff.el')
-rw-r--r--lisp/init-my-stuff.el70
1 files changed, 70 insertions, 0 deletions
diff --git a/lisp/init-my-stuff.el b/lisp/init-my-stuff.el
new file mode 100644
index 0000000..2dcc186
--- /dev/null
+++ b/lisp/init-my-stuff.el
@@ -0,0 +1,70 @@
+(defun my/find-user-init-file ()
+ "Edit the `user-init-file', in another window."
+ (interactive)
+ (find-file-other-window user-init-file))
+(global-set-key (kbd "C-c I") 'my/find-user-init-file)
+
+(defun my/new-empty-buffer ()
+ "Open a new empty buffer."
+ (interactive)
+ (let ((buf (generate-new-buffer "untitled")))
+ (switch-to-buffer buf)
+ (funcall (and initial-major-mode))
+ (setq buffer-offer-save t)))
+(global-set-key (kbd "C-c n") 'my/new-empty-buffer)
+
+;; http://whattheemacsd.com/key-bindings.el-01.html#disqus_thread
+(require 'linum)
+(defun my/goto-line-with-feedback ()
+ "Show line numbers temporarily, while prompting for the line number input"
+ (interactive)
+ (let ((line-numbers-off-p (not linum-mode)))
+ (unwind-protect
+ (progn
+ (when line-numbers-off-p
+ (linum-mode 1))
+ (call-interactively 'goto-line))
+ (when line-numbers-off-p
+ (linum-mode -1)))))
+(global-set-key [remap goto-line] 'my/goto-line-with-feedback)
+
+;; kill current buffer
+(global-set-key (kbd "C-x C-k") (lambda ()
+ (interactive)
+ (kill-buffer (current-buffer))))
+
+;; delete up to non-whitespace character
+(global-set-key (kbd "C-c d") 'hungry-delete-forward)
+
+(defun ssh-dtach (host)
+ "Open SSH connection to HOST and start dtach session."
+ (interactive)
+ (let ((explicit-shell-file-name "dtach")
+ (explicit-dtach-args '("-A" "/tmp/emacs.dtach" "-z"
+ "/bin/bash" "--noediting" "-login"))
+ (default-directory (format "/ssh:%s:" host)))
+ (shell (format "*ssh %s*" host))))
+
+;; http://blog.vivekhaldar.com/post/4809065853/dotemacs-extract-interactively-change-font-size
+(defun my/zoom-in ()
+ "Increase font size by 10 points"
+ (interactive)
+ (set-face-attribute 'default nil
+ :height
+ (+ (face-attribute 'default :height)
+ 10)))
+
+(defun my/zoom-out ()
+ "Decrease font size by 10 points"
+ (interactive)
+ (set-face-attribute 'default nil
+ :height
+ (- (face-attribute 'default :height)
+ 10)))
+
+;; change font size, interactively
+(global-set-key (kbd "C->") 'my/zoom-in)
+(global-set-key (kbd "C-<") 'my/zoom-out)
+
+;; easier way to jump to other window
+(global-set-key (kbd "M-o") 'other-window)