patch 8.0.1406: difficult to track changes to a quickfix list
Problem: Difficult to track changes to a quickfix list.
Solution: Add a "changedtick" value. (Yegappan Lakshmanan, closes #2460)
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index e17181b..c621ba1 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -4674,6 +4674,8 @@
If the optional {what} dictionary argument is supplied, then
returns only the items listed in {what} as a dictionary. The
following string items are supported in {what}:
+ changedtick get the total number of changes made
+ to the list
context get the context stored with |setqflist()|
efm errorformat to use when parsing "lines". If
not present, then the 'errorformat' option
@@ -4707,6 +4709,8 @@
"items" with the list of entries.
The returned dictionary contains the following entries:
+ changedtick total number of changes made to the
+ list |quickfix-changedtick|
context context information stored with |setqflist()|.
If not present, set to "".
id quickfix list ID |quickfix-ID|. If not
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 29752db..75ff404 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -64,6 +64,14 @@
location list. When there are no longer any references to a location list,
the location list is destroyed.
+ *quickfix-changedtick*
+Every quickfix and location list has a read-only changedtick variable that
+tracks the total number of changes made to the list. Every time the quickfix
+list is modified, this count is incremented. This can be used to perform an
+action only when the list has changed. The getqflist() and getloclist()
+functions can be used to query the current value of changedtick. You cannot
+change the changedtick variable.
+
The following quickfix commands can be used. The location list commands are
similar to the quickfix commands, replacing the 'c' prefix in the quickfix
command with 'l'.