|  | <start> and <end> can take one of these forms: | 
|  |  | 
|  | - number | 
|  | + | 
|  | If <start> or <end> is a number, it specifies an | 
|  | absolute line number (lines count from 1). | 
|  | + | 
|  |  | 
|  | - /regex/ | 
|  | + | 
|  | This form will use the first line matching the given | 
|  | POSIX regex. If <start> is a regex, it will search from the end of | 
|  | the previous `-L` range, if any, otherwise from the start of file. | 
|  | If <start> is ``^/regex/'', it will search from the start of file. | 
|  | If <end> is a regex, it will search | 
|  | starting at the line given by <start>. | 
|  | + | 
|  |  | 
|  | - +offset or -offset | 
|  | + | 
|  | This is only valid for <end> and will specify a number | 
|  | of lines before or after the line given by <start>. | 
|  |  | 
|  | + | 
|  | If ``:<funcname>'' is given in place of <start> and <end>, it is a | 
|  | regular expression that denotes the range from the first funcname line | 
|  | that matches <funcname>, up to the next funcname line. ``:<funcname>'' | 
|  | searches from the end of the previous `-L` range, if any, otherwise | 
|  | from the start of file. ``^:<funcname>'' searches from the start of | 
|  | file. |