;;; -*- lexical-binding: t -*- ;; ;; this file: ;; https://dataswamp.org/~incal/emacs-init/ref-lines.el (require 'window-other) (defun ref-lines-ref () (pcase-let ((`(,beg ,end) (if (use-region-p) (list (line-number-at-pos (region-beginning)) (line-number-at-pos (region-end)) ) (list (line-number-at-pos) nil) ))) (if (and end (< beg end)) (format "lines %d-%d" beg end) (format "line %d" beg) ))) (defun ref-lines (&optional other-win no-insert) (interactive "P") (let ((ref (if other-win (apply-in-other-window #'ref-lines-ref) (ref-lines-ref) ))) (when ref (if no-insert (prog1 ref (message ref) ) (insert ref) )))) (provide 'ref-lines)