summaryrefslogtreecommitdiffstats
path: root/Documentation/line-range-format.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/line-range-format.txt')
-rw-r--r--Documentation/line-range-format.txt32
1 files changed, 32 insertions, 0 deletions
diff --git a/Documentation/line-range-format.txt b/Documentation/line-range-format.txt
new file mode 100644
index 0000000..9b51e9f
--- /dev/null
+++ b/Documentation/line-range-format.txt
@@ -0,0 +1,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]).