by shigemk2

当面は技術的なことしか書かない

prefix-numeric-value

(defun add-number-and-fullwidth-space-to-lines (start end &optional start-number)
  "リージョン内の各行の行頭に連番(半角)+全角スペースを追加する。
START-NUMBER を省略すると 1 から開始。"
  (interactive "r\nP")
  (let ((line-number (or (and start-number (prefix-numeric-value start-number)) 1)))
    (save-excursion
      (goto-char start)
      (while (< (point) end)
        (beginning-of-line)
        (insert (format "%d " line-number)) ;; 半角数字+全角スペース
        (setq end (+ end (length (format "%d " line-number))))
        (setq line-number (1+ line-number))
        (forward-line 1)))))

;; Ctrl + c r にバインド
(global-set-key (kbd "C-c r") 'add-number-and-fullwidth-space-to-lines)

prefix-numeric-value

この関数は、 raw プレフィックスアーギュメント arg の示す数値を返します。 raw プレフィックスアーギュメントは、シンボルもしくは数値もしくはリストで す。 nil の場合 1 を返します。 nil 以外のシンボルの場合、-1 を返します。数 値の場合、その数値を返し、リストの場合、そのリストの car (これは数字でなく てはいけません) を返します。

flex.phys.tohoku.ac.jp