36 lines
1.1 KiB
EmacsLisp
36 lines
1.1 KiB
EmacsLisp
;;; 99-misc.el --- My miscellaneous functions. -*- no-byte-compile: t; lexical-binding: t; -*-
|
|
|
|
;;; Description:
|
|
;; This file contains my miscellaneous functions and their key binding code.
|
|
;; Some of those functions were written by me, some of them are taken from the
|
|
;; internet.
|
|
|
|
;;; Code:
|
|
|
|
(defun my/resize-margins-to-fill ()
|
|
"Set the current buffer margins so that its width is equal to the fill
|
|
column."
|
|
(interactive)
|
|
(let ((margin-size (/ (- (frame-width) fill-column) 2)))
|
|
(set-window-margins nil margin-size margin-size)))
|
|
|
|
(defun my/reset-margins ()
|
|
"Removes margins from the current buffer."
|
|
(interactive)
|
|
(set-window-margins nil nil nil))
|
|
|
|
(defun my/insert-buffer-name ()
|
|
"Inserts the name of the current buffer at point."
|
|
(interactive)
|
|
(let ((name (buffer-name)))
|
|
(insert name)))
|
|
|
|
(setq margins-map (make-sparse-keymap))
|
|
(keymap-set margins-map "f" 'my/resize-margins-to-fill)
|
|
(keymap-set margins-map "r" 'my/reset-margins)
|
|
|
|
(keymap-set mode-specific-map "C-m" margins-map)
|
|
(keymap-set mode-specific-map "b" 'my/insert-buffer-name)
|
|
|
|
;;; 99-misc.el ends here
|