-DEFUN ("beginning-of-line", Fbeginning_of_line, Sbeginning_of_line,
- 0, 1, "p",
- "Move point to beginning of current line.\n\
-With argument N not nil or 1, move forward N - 1 lines first.\n\
-If scan reaches end of buffer, stop there without error.")
- (n)
+DEFUN ("beginning-of-line", Fbeginning_of_line, Sbeginning_of_line, 0, 1, "p",
+ doc: /* Move point to beginning of current line.
+With argument N not nil or 1, move forward N - 1 lines first.
+If point reaches the beginning or end of buffer, it stops there.
+
+This command does not move point across a field boundary unless doing so
+would move beyond there to a different line; If N is nil or 1, and point
+starts at a field boundary, point does not move. To ignore field
+boundaries, either bind `inhibit-field-text-motion' to t, or use the
+`forward-line' function instead. For instance, `(forward-line 0)' does
+the same thing as `(beginning-of-line)', except that it ignores field
+boundaries. */)
+ (n)