Function: term-args
term-args is a byte-compiled function defined in term.el.gz.
Signature
(term-args STRING BEGIN END)
Source Code
;; Defined in /usr/src/emacs/lisp/term.el.gz
(defun term-args (string begin end)
;; From STRING, return the args depending on the range specified in the text
;; from BEGIN to END. If BEGIN is nil, assume all args. Ignore leading `:'.
;; Range can be x-y, x-, -y, where x/y can be [0-9], *, ^, $.
(save-match-data
(if (null begin)
(term-arguments string 0 nil)
(let* ((range (buffer-substring
(if (eq (char-after begin) ?:) (1+ begin) begin) end))
(nth (cond ((string-match "^[*^]" range) 1)
((string-match "^-" range) 0)
((string-equal range "$") nil)
(t (string-to-number range))))
(mth (cond ((string-match "[-*$]$" range) nil)
((string-match "-" range)
(string-to-number (substring range (match-end 0))))
(t nth))))
(term-arguments string nth mth)))))