From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Spencer Baugh Newsgroups: gmane.emacs.help Subject: Continuing existing comment, with proper identation Date: Sat, 21 Oct 2023 17:57:36 -0400 Message-ID: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="38888"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: help-gnu-emacs@gnu.org Cancel-Lock: sha1:P6vJRpajbBvBruNS45mpcGlhd70= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Sat Oct 21 23:58:32 2023 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1quJzM-0009xn-AB for geh-help-gnu-emacs@m.gmane-mx.org; Sat, 21 Oct 2023 23:58:32 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1quJyc-0003SS-Mo; Sat, 21 Oct 2023 17:57:46 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1quJyb-0003SK-HI for help-gnu-emacs@gnu.org; Sat, 21 Oct 2023 17:57:45 -0400 Original-Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1quJyZ-0004Qy-Va for help-gnu-emacs@gnu.org; Sat, 21 Oct 2023 17:57:45 -0400 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1quJyY-0008wl-87 for help-gnu-emacs@gnu.org; Sat, 21 Oct 2023 23:57:42 +0200 X-Injected-Via-Gmane: http://gmane.org/ Received-SPF: pass client-ip=116.202.254.214; envelope-from=geh-help-gnu-emacs@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -15 X-Spam_score: -1.6 X-Spam_bar: - X-Spam_report: (-1.6 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.25, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.help:145345 Archived-At: I'm writing a function to manipulate an existing commnet. It should insert a blank line, and then some data, at the end of a comment, without creating a new comment. I want it to work in a major-mode-independent way, but I'm having a bit of trouble figuring out what functions to call to get the same behavior across major-mode. In Lisp, I'd like: ;; ...existing comment... ;; ...existing comment... to be turned into ;; ...existing comment... ;; ...existing comment... ;; ;; new data and in C: /* ...existing comment... ...existing comment... */ to be turned into /* ...existing comment... ...existing comment... new data */ (Keeping the same indentation level as the previous lines, of course, if it's already in an indented block.) The obvious thing to do is to put point at the end of the comment and comment-indent-new-line twice. But this behaves differently in Lisp and C - it's a one character difference, but that's enough to break my major-mode-independence. In C, I get /* ...existing comment... ...existing comment... */ so I can just go ahead and (insert "new data") In Lisp though, I get: ;; ...existing comment... ;; ...existing comment... ;; ;; Note the lack of a space before . So if I (insert "new data"), I get ;; ...existing comment... ;; ...existing comment... ;; ;;new data which is not what I want. I want a space before ";;" and "new data", as is normal in Lisp. What should I do to get the behavior that I see in C, in Lisp major-modes?