]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix documentation of recent treesit changes
authorEli Zaretskii <eliz@gnu.org>
Thu, 17 Nov 2022 13:03:40 +0000 (15:03 +0200)
committerEli Zaretskii <eliz@gnu.org>
Thu, 17 Nov 2022 13:03:40 +0000 (15:03 +0200)
* src/treesit.c (Ftreesit_parser_notifiers)
(Ftreesit_parser_add_notifier, Ftreesit_parser_remove_notifier):
Doc string fixes.

* doc/lispref/parsing.texi (Accessing Node Information): Fix
wording and punctuation.
(Using Parser): Improve indexing and wording.

doc/lispref/parsing.texi
src/treesit.c

index d73057321e1efd14de639c0713457e9bfd1aaede..feb92345ff4a2e59909da0cb1e6f1779e468743e 100644 (file)
@@ -224,33 +224,36 @@ assign @dfn{field names} to child nodes.  For example, a
 @end example
 
 @heading Exploring the syntax tree
+@cindex explore tree-sitter syntax tree
+@cindex inspection of tree-sitter parse tree nodes
 
-To aid understanding the syntax of a language and debugging, Emacs
-provides a ``explore'' mode, which displays the syntax tree of the
-source in the current buffer in real time.  Emacs also comes with a
-``inspect mode'', which displays information of the nodes at point in
-the mode-line.
+To aid in understanding the syntax of a language and in debugging of
+Lisp program that use the syntax tree, Emacs provides an ``explore''
+mode, which displays the syntax tree of the source in the current
+buffer in real time.  Emacs also comes with an ``inspect mode'', which
+displays information of the nodes at point in the mode-line.
 
 @deffn Command treesit-explore-mode
 This mode pops up a window displaying the syntax tree of the source in
-the current buffer.  Emacs highlights nodes in the syntax tree if
-their corresponding text in the source buffer is selected.  Clicking
+the current buffer.  Selecting text in the source buffer highlights
+the corresponding nodes in the syntax tree display.  Clicking
 on nodes in the syntax tree highlights the corresponding text in the
 source buffer.
 @end deffn
 
 @deffn Command treesit-inspect-mode
 This minor mode displays on the mode-line the node that @emph{starts}
-at point.  The mode-line will display
+at point.  For example, the mode-line can display
 
 @example
 @var{parent} @var{field}: (@var{node} (@var{child} (@dots{})))
 @end example
 
-where @var{node}, @var{child}, etc, are nodes which begin at point.
+@noindent
+where @var{node}, @var{child}, etc., are nodes which begin at point.
 @var{parent} is the parent of @var{node}.  @var{node} is displayed in
-bold typeface.  @var{field-name}s are field names of @var{node} and
-@var{child}, etc.
+bold typeface.  @var{field-name}s are field names of @var{node} and
+of @var{child}, etc.
 
 If no node starts at point, i.e., point is in the middle of a node,
 then the mode line displays the earliest node that spans point, and
@@ -478,43 +481,44 @@ This function parses @var{string} using @var{language}, and returns
 the root node of the generated syntax tree.
 @end defun
 
-@cindex parse-tree update callback, tree-sitter
-@cindex parse-tree after-change notifer, tree-sitter
-@cindex tree-sitter parse-tree update callback
-@cindex tree-sitter parse-tree after-change notifer
 @heading Be notified by changes to the parse tree
-
-A Lisp program might want to be notified of affected text of a
-incremental parse.  For example, inserting a closing comment token
-converts text before that closing comment token into comments.  Even
-though those text are not directly edited, they are changed
+@cindex update callback, for tree-sitter parse-tree
+@cindex after-change notifier, for tree-sitter parse-tree
+@cindex tree-sitter parse-tree, update and after-change callback
+@cindex notifiers, tree-sitter
+
+A Lisp program might want to be notified of text affected by
+incremental parsing.  For example, inserting a comment-closing token
+converts text before that token into a comment.  Even
+though the text is not directly edited, it is deemed to be ``changed''
 nevertheless.
 
 Emacs lets a Lisp program to register callback functions
-(@dfn{notifiers}) for this kind of changes.  A notifier function takes
-2 arguments: @var{ranges} and @var{parser}.  @var{ranges} is a list of
-cons of the form @w{@code{(@var{start} . @var{end})}}, where
-@var{start} and @var{end} marks the start and end position of a range.
-@var{parser} is the parser issuing the notification.
+(a.k.a.@: @dfn{notifiers}) for this kind of changes.  A notifier
+function takes two arguments: @var{ranges} and @var{parser}.
+@var{ranges} is a list of cons cells of the form @w{@code{(@var{start}
+. @var{end})}}, where @var{start} and @var{end} mark the start and the
+end positions of a range.  @var{parser} is the parser issuing the
+notification.
 
 Every time a parser reparses a buffer, it compares the old and new
 parse-tree, computes the ranges in which nodes have changed, and
 passes the ranges to notifier functions.
 
 @defun treesit-parser-add-notifier parser function
-This function adds @var{function} to @var{parser}'s after-change
-notifier functions list.  @var{function} must be a function symbol,
-rather than a lambda function.
+This function adds @var{function} to @var{parser}'s list of
+after-change notifier functions.  @var{function} must be a function
+symbol, not a lambda function (@pxref{Anonymous Functions}).
 @end defun
 
 @defun treesit-parser-remove-notifier parser function
-This function removes @var{function} from @var{parser}'s after-change
-notifier functions list.  @var{function} must be a function symbol,
-rather than a lambda function.
+This function removes @var{function} from the list of @var{parser}'s
+after-change notifier functions.  @var{function} must be a function
+symbol, rather than a lambda function.
 @end defun
 
 @defun treesit-parser-notifiers parser
-This function returns @var{parser}'s notifier function list.
+This function returns the list of @var{parser}'s notifier functions.
 @end defun
 
 @node Retrieving Nodes
@@ -932,8 +936,8 @@ which can appear anywhere in the text.
 
 @cindex tree-sitter outdated node
 @cindex outdated node, tree-sitter
-A node can be ``outdated'': If its parser has reparse at least once
-after the node was created, the node is outdated.
+A node can be ``outdated'', if its parser has reparsed at least once
+after the node was created.
 
 @cindex tree-sitter node that has error
 @cindex has error, tree-sitter node
@@ -951,8 +955,8 @@ This function checks if @var{node} has the specified @var{property}.
 Named nodes have ``types'' (@pxref{tree-sitter node type, node type}).
 For example, a named node can be a @code{string_literal} node, where
 @code{string_literal} is its type.  The type of an anonymous node is
-just the text that node represents, e.g., the type of a @samp{,} node
-is just @samp{,}.
+just the text that the node represents; e.g., the type of a @samp{,}
+node 480is just @samp{,}.
 
 This function returns @var{node}'s type as a string.
 @end defun
index a05efaf5db5561c7db40d7aeba7cba8041db0db4..53b1e0d8dc37c3dbaaa5543be37c2a28e134a2e8 100644 (file)
@@ -1504,7 +1504,7 @@ return nil.  */)
 DEFUN ("treesit-parser-notifiers", Ftreesit_parser_notifiers,
        Streesit_parser_notifiers,
        1, 1, 0,
-       doc: /* Return the after-change notifier functions for PARSER.  */)
+       doc: /* Return the list of after-change notifier functions for PARSER.  */)
   (Lisp_Object parser)
 {
   treesit_check_parser (parser);
@@ -1520,10 +1520,10 @@ DEFUN ("treesit-parser-notifiers", Ftreesit_parser_notifiers,
 DEFUN ("treesit-parser-add-notifier", Ftreesit_parser_add_notifier,
        Streesit_parser_add_notifier,
        2, 2, 0,
-       doc: /* Add FUNCTION to PARSER's after-change notifiers list.
+       doc: /* Add FUNCTION to the list of PARSER's after-change notifiers.
 FUNCTION must be a function symbol, rather than a lambda form.
 FUNCTION should take 2 arguments, RANGES and PARSER.  RANGES is a list
-of cons of the form (START . END), where START and END are buffer
+of cons cells of the form (START . END), where START and END are buffer
 positions.  PARSER is the parser issuing the notification.  */)
   (Lisp_Object parser, Lisp_Object function)
 {
@@ -1540,8 +1540,8 @@ positions.  PARSER is the parser issuing the notification.  */)
 DEFUN ("treesit-parser-remove-notifier", Ftreesit_parser_remove_notifier,
        Streesit_parser_remove_notifier,
        2, 2, 0,
-       doc: /* Remove FUNCTION from PARSER's after-change notifiers
-list.  FUNCTION must be a function symbol, rather than a lambda form.
+       doc: /* Remove FUNCTION from the list of PARSER's after-change notifiers.
+  FUNCTION must be a function symbol, rather than a lambda form.
 FUNCTION should take 2 arguments, RANGES and PARSER.  RANGES is a list
 of cons of the form (START . END), where START and END are buffer
 positions.  PARSER is the parser issuing the notification.   */)