comment-indent-function does funny things.
(comment-normalize-vars): Autoload.
(comment-region-internal): Fiddle with the visibility spec.
(comment-valid-prefix): New function.
(comment-indent-new-line): Use it. Ignore adaptive-fill-prefixes
that would turn comment-text into non-comment-text.
Delegate to indent-according-to-mode if comment-indent-function returns nil.
(comment-indent-default): New function.
(comment-indent-function): Use it and document the new semantics.
(comment-style): Be careful not to depend on runtime data at compile-time.
(comment-indent-hook): Remove.
(comment-indent): Check if comment-indent-hook is bound.
(comment-region): Docstring fix.
(comment-normalize-vars): Better default for comment-continue to
avoid whitespace-only continuations.
(comment-search-forward): Always move even in the no-syntax case.
(comment-padright): Only obey N if it's only obeyed for padleft.
(comment-make-extra-lines): Better handling of empty continuations.
Use `=' for the filler if comment-start has only one character.
(uncomment-region): Try handling the special `=' filler.
(comment-region): Allow LINES even if MULTI is nil.
(comment-box): Choose box style based on comment-style.
Move aliases (indent-for-comment, set-comment-column, kill-comment
and indent-new-comment-line) to the beginning of the file.
Get rid of the last few CLisms.
(comment-forward): Avoid decf.
(comment-make-extra-lines): Comment-out asserts.
(comment-with-narrowing): Properly create uninterned symbol.
(comment-region-internal): Comment-out asserts. Avoid incf and decf.
(comment-indent-new-line): Fix bug where compt could be set but
not comstart. Set comment-column more carefully.
(comment-auto-fill-only-comments): New var.
(comment-indent-new-line): Obey comment-auto-fill-only-comments.
Align with comment-column rather than previous comment if previous
comment's indentation is greater than comment-column.
(comment-search-forward): Make LIMIT compulsory.
If an unterminated string (rather than a comment) is found, try again,
assuming that the region starts inside a string.
(comment-beginning): Make sure we don't move if we find a comment but
it's not the one we're in.
(comment-enter-backward): Handle the case where comment-end-skip fails.
(comment-indent): Normalize variables and use line-end-position.
(comment-kill): Use line-end-position.
(comment-spill): Remove.
(comment-indent-new-line): Renamed from indent-new-comment-line.
Cleaned up old commented-out code.
Reset comment-continue and comment-end before calling comment-indent.
(comment-style): Extract the choice out of comment-styles.
(comment-continue): Just a simple string now.
(comment-normalize-vars): Update for the new comment-continue.
(until, comment-end-quote-re): Removed.
(comment-quote-re, comment-quote-nested): New functions for quoting.
These quote both the end and the start and also work for single-chars.
(comment-padright): Added lots of comments.
(comment-padleft): Added more comments. Check comment-end rather than
STR to determine whether N can be applied or not.
(uncomment-region): Rename BLOCK to BOX.
Use the new comment-quote-nested.
Use only one marker and properly set it back to nil.
Be more picky when eliminating continuation markers.
(comment-quote-nested): New. Replaces comment-nested.
(comment-add): Turn into a mere defvar or a integer.
(comment-style): Change default to `plain'.
(comment-styles): Rename `plain' to `indent' and create a new plainer `plain'.
(comment-string-reverse): Use nreverse.
(comment-normalize-vars): Change `maybe' to `undecided', add comments.
Don't infer the setting of comment-nested anymore (the default for
comment-quote-nested is safe). Use comment-quote-nested.
(comment-end-quote-re): Use comment-quote-nested.
(comment-search-forward): Obey LIMIT.
(comment-indent): Don't skip forward further past comment-search-forward.
(comment-padleft): Use comment-quote-nested.
(comment-make-extra-lines): Use `cons' rather than `values'.
(comment-region-internal): New arg INDENT. Use line-end-position.
Avoid multiple-value-setq.
(comment-region): Follow the new comment-add semantics.
Don't do box comments any more.
(comment-box): New function.
(comment-dwim): Only do the region stuff is transient-mark-active.