summaryrefslogtreecommitdiff
path: root/Documentation/line-range-format.txt
blob: 9b51e9fb66143606e328a554186046f3fd1a0b28 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
'<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. The function names are determined in the same way as `git diff`
works out patch hunk headers (see 'Defining a custom hunk-header'
in linkgit:gitattributes[5]).