読者です 読者をやめる 読者になる 読者になる

行数を数える

リージョンの行数を数える count-lines を少し拡張して、バッファとファイルに対して使えるようにしておく。

(defun count-lines-buffer (&optional buf)
  (let* ((curbuf (current-buffer))
         (target (if buf buf curbuf)))
    (set-buffer target)
    (prog1 
        (count-lines (point-min) (point-max))
      (set-buffer curbuf))))

(defun count-lines-file (f)
  (with-temp-buffer
    (insert-file-contents-literally f)
    (count-lines-buffer)))