From debbugs-submit-bounces@debbugs.gnu.org Wed Aug 20 05:41:20 2025 Received: (at submit) by debbugs.gnu.org; 20 Aug 2025 09:41:20 +0000 Received: from localhost ([127.0.0.1]:56108 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uofJn-0000KV-At for submit@debbugs.gnu.org; Wed, 20 Aug 2025 05:41:19 -0400 Received: from lists.gnu.org ([2001:470:142::17]:56944) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uofJk-0000KD-So for submit@debbugs.gnu.org; Wed, 20 Aug 2025 05:41:17 -0400 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 1uofJf-00078z-E6 for bug-gnu-emacs@gnu.org; Wed, 20 Aug 2025 05:41:11 -0400 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uofJd-0003S0-2F for bug-gnu-emacs@gnu.org; Wed, 20 Aug 2025 05:41:11 -0400 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-45a1b0cd668so33475675e9.3 for ; Wed, 20 Aug 2025 02:41:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755682867; x=1756287667; darn=gnu.org; h=mime-version:message-id:date:subject:to:from:from:to:cc:subject :date:message-id:reply-to; bh=1MlYXeXwwaEx4DU1Lk4JaZFSE5hFYZ1ZRB+cPIZPjqM=; b=V6HCfiYUE+HAMD21yvTJrTBryFmg5ff9obPPM0RzTqNcgnLZHaaA46XUXw7C239gSQ t3OHz9MrYD7HcVxD2YrowyPp40WOjobD2CpVCTYIkim9F4z2tUxHhOHTIsP65mOrvVos +EKkG454XL7sukxIRlVoMr/QI/s4VDoQvrxqCX/nptgLzdIMsckdkEGN+UzAukFNM2v2 DjhNEb0MOQP193MJ5G7qXNqghKfvTi05YybAvaZFgBw5iC+0X8BRgakxLg8wwq80ENBV SrlWlFkBIf8mQ7Jl0eFKVJsVhrzcvmfqlyUIPOR7i2e7UKuZgjhiXNGSxZC5GjQlWPA3 sCzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755682867; x=1756287667; h=mime-version:message-id:date:subject:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=1MlYXeXwwaEx4DU1Lk4JaZFSE5hFYZ1ZRB+cPIZPjqM=; b=VUllvkttAAB/v43pQNcSs2LgAZyYv+PMxLpEh9HC34yJZwb7tz2bVmV+vaX05ogcZa HZcs/aIuuQ5I3RDtFR5hRl6yW4OSH3huhijKBDvnNO/HJTV/ecBgTLZ36/ngwWWSOhvR Me7uffSYBy/mYW+UCe9ACaLVxVYJppsV2tV8NIm2vvg2Yzw6k8SP78Me7LUbtKZ32//Q ds7zvrQFFZMOExfy7D3XyN9kK0dPi9eqfXVTwbWIzS+U2NpW0rY3gxUSXQa0WFQQVdJR sNipjGnviP/lgrzXmm4MirFs4mIfXx9jLOA6W/2vWCTkYP4LKFr1yj8jlQAzmAJlN7R+ rHCg== X-Gm-Message-State: AOJu0Yw25fQwghxQynvEkP1EF5ZUB3dgZDKtt1A+uKIzH6mHgcIMDAZy wJd4OLml6JE/SvyF/yQMEMbGmG1bzFplTAMnwxg5TQxBagAwO9ivhLMavBH1Cg== X-Gm-Gg: ASbGncuY53Mtxx5vuxJbiYV3CjN8QeUKQgq4i9DUHNZe9QWzdsBg/n72v/CpPmWYthK YM6wSc+dacViRjbvJQ1EOzw47353UpZSNA/QLd/NMo9N+eAVEB5FlXPFEBSmgs9ayWvRekax/Fz 9nVCXnAXczMoPNJsDcLziUIaCLaauC0JSNRR8cCAbAN+kmV5wsgIH3bUAyC4v1YG8Ua4PCrKE7J aFDCOjIitqe9wRBRkT77AslRoakkMHw+aDHAk2GW7PzdHGN7h1z7j45ZnMJotg61DKBfMgpFAAR CNh3cfZd5rXapmK1oHdjOU2V4DhK8krdtLR+XJmsEbr/AoHBQKTRme3y6DsA/9UfMGolIRgNahe /RCnLaSfCNTamlycV8GDi X-Google-Smtp-Source: AGHT+IGsgcZyJBNwLPnNfjlKam2Fjc3lthsppzVckH9MIFEp2FDXRNg/iCOrskjokQESHdWeBEunlw== X-Received: by 2002:a05:600c:4e4a:b0:43c:f8fc:f697 with SMTP id 5b1f17b1804b1-45b47df04dbmr13559665e9.9.1755682866386; Wed, 20 Aug 2025 02:41:06 -0700 (PDT) Received: from localhost ([84.79.192.255]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3c0777892basm6934745f8f.56.2025.08.20.02.41.05 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 Aug 2025 02:41:05 -0700 (PDT) From: Roi Martin To: bug-gnu-emacs@gnu.org Subject: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual X-Debbugs-Cc: Date: Wed, 20 Aug 2025 11:41:00 +0200 Message-ID: <87h5y2z5xv.fsf@gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=jroi.martin@gmail.com; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --=-=-= Content-Type: text/plain Tags: patch This patch adds a new section about semantic linefeeds to the Emacs user manual. This allows us to link the doc string of `fill-region-as-paragraph-semlf' to the new Info node. Now everything related to semantic linefeeds is self-contained and we don't have to rely on external URLs which are not official references. Roi --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Add-section-Semantic-Linefeed-Filling-to-Emacs-user-.patch >From fd5ca29d054afcd51269b541bc30bd07bc64685e Mon Sep 17 00:00:00 2001 From: Roi Martin Date: Wed, 20 Aug 2025 11:12:16 +0200 Subject: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual * doc/emacs/text.texi (Fill Commands): Add subsection "Semantic Linefeed Filling". * etc/NEWS: Indicate that all relevant manuals in doc/ have been updated. * lisp/textmodes/fill.el (fill-region-as-paragraph-semlf): Link to Info node from doc string. --- doc/emacs/text.texi | 99 ++++++++++++++++++++++++++++++++++++++++++ etc/NEWS | 2 +- lisp/textmodes/fill.el | 4 +- 3 files changed, 102 insertions(+), 3 deletions(-) diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi index d8a7e0fc25e2..84715470b7da 100644 --- a/doc/emacs/text.texi +++ b/doc/emacs/text.texi @@ -674,6 +674,105 @@ Fill Commands using the Display fill column indicator mode (@pxref{Displaying Boundaries, display-fill-column-indicator}). +@menu +* Semantic Linefeed Filling:: Paragraph filling using semantic linefeeds. +@end menu + +@node Semantic Linefeed Filling +@subsubsection Semantic Linefeed Filling +@cindex semantic linefeed filling +@cindex semantic linefeeds +@cindex semlf + +@table @kbd +@item M-x fill-paragraph-semlf +Fill paragraph at or after point using semantic linefeeds. +@end table + + The term @dfn{semantic linefeeds} or @dfn{semantic line breaks} refers +to a set of conventions for using insensitive vertical whitespace to +structure prose along semantic boundaries. + +@findex fill-paragraph-semlf + The command @kbd{M-x fill-paragraph-semlf} fills a paragraph of text +using semantic linefeeds, whereby a newline is inserted after every +sentence. + +@findex fill-region-as-paragraph-semlf + The command @code{fill-region-as-paragraph-semlf} fills a region of +text using semantic linefeeds as if the region were a single paragraph. +Users can set the variable @code{fill-region-as-paragraph-function} to +the value @code{fill-region-as-paragraph-semlf} to enable functions like +@kbd{M-q} (@code{fill-paragraph}) and @code{fill-region} to fill text +using semantic linefeeds. + + Semantic linefeeds are usually used with markup languages that are not +sensitive to newlines when exported to a different format (e.g. Org, +Texinfo, Markdown). + + Let's say that we have the following paragraph in an Org document: + +@example +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod +tempor. Incididunt ut labore et dolore magna aliqua. Ut enim ad minim +veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea +commodo consequat. +@end example + + After filling the paragraph using semantic linefeeds, the result is: + +@example +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod +tempor. +Incididunt ut labore et dolore magna aliqua. +Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi +ut aliquip ex ea commodo consequat. +@end example + + However, when exported, in both cases the result is: + +@example +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod +tempor. Incididunt ut labore et dolore magna aliqua. Ut enim ad minim +veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea +commodo consequat. +@end example + + So, what are the benefits? + + One benefit is that semantic linefeeds are ``diff friendly''. For +example, + +@example +-Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod +-tempor. Incididunt ut labore et dolore magna aliqua. Ut enim ad minim +-veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea +-commodo consequat. ++Lorem ipsum dolor sit amet, XXXXX consectetur adipiscing elit, sed do ++eiusmod tempor. Incididunt ut labore et dolore magna aliqua. Ut enim ++ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut ++aliquip ex ea commodo consequat. +@end example + + Versus, + +@example +-Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod +-tempor. ++Lorem ipsum dolor sit amet, XXXXX consectetur adipiscing elit, sed do ++eiusmod tempor. + Incididunt ut labore et dolore magna aliqua. + Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi + ut aliquip ex ea commodo consequat. +@end example + + Semantic linefeeds make easier to spot that the word @samp{XXXXX} was +added in the first line. + + Also, they are convenient during code reviews. Shorter diffs and +separating ideas with newlines allow to be more accurate when adding +comments. + @node Fill Prefix @subsection The Fill Prefix diff --git a/etc/NEWS b/etc/NEWS index ebf03b53e123..05c10827a6fa 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -697,7 +697,7 @@ activate the mark if it is not already active. The default value is t, which retains the old behavior. This variable has no effect when Transient Mark mode is off. ---- ++++ ** New commands for filling text using semantic linefeeds. The new command 'fill-paragraph-semlf' fills a paragraph of text using "semantic linefeeds", whereby a newline is inserted after every diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el index 4ab639497ec9..df3794aad616 100644 --- a/lisp/textmodes/fill.el +++ b/lisp/textmodes/fill.el @@ -1645,8 +1645,8 @@ fill-region-as-paragraph-semlf override how functions like `fill-paragraph' and `fill-region' fill text. -For more details about semantic linefeeds, see `https://sembr.org/' and -`https://rhodesmill.org/brandon/2012/one-sentence-per-line/'." +For more details about semantic linefeeds, see Info node `(emacs) +Semantic Linefeed Filling'." (interactive (progn (barf-if-buffer-read-only) (list (region-beginning) -- 2.50.1 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Aug 20 07:21:07 2025 Received: (at 79278) by debbugs.gnu.org; 20 Aug 2025 11:21:07 +0000 Received: from localhost ([127.0.0.1]:56277 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uogsN-00087Q-9j for submit@debbugs.gnu.org; Wed, 20 Aug 2025 07:21:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:58816) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uogsL-00086Y-68 for 79278@debbugs.gnu.org; Wed, 20 Aug 2025 07:21:05 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uogsF-0001kY-6f; Wed, 20 Aug 2025 07:20:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=PCslIfNedtdnUioza+RIhkkHbtgklbRd2KwkSi1Y16k=; b=MUJKYYtSliGr DqZTgNkxdzycfef68bgyItqyvT7Nd8NNkc1wedczwHmtrPrElIVCuuucr/pPSrk6WM77qNL4lMIKh 9GuYtY8EmmC5MslC0JOS/lhO3HDhCqRzncM/bn5AM6c4ny1EjB6itcTiG2AxkPH0PYHR+dBZQoubD bSqQtokkSaLctIrDBjc4AZBDBSBbtCIVJbSAnfzR9E10l73SHAnd1YqNdGBRQ+YCMMtYdqYlVuZUv 6jWXRFFqko4ZwRmaA5chAMKeyGbef+z+FVO0cHBM762PKd2jgy52tx9qoIv0Gc+nyr1QXlzC5gbnP NyCNguzlb0ycs6xH43l/Ug==; Date: Wed, 20 Aug 2025 14:20:46 +0300 Message-Id: <86jz2yfddd.fsf@gnu.org> From: Eli Zaretskii To: Roi Martin In-Reply-To: <87h5y2z5xv.fsf@gmail.com> (message from Roi Martin on Wed, 20 Aug 2025 11:41:00 +0200) Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual References: <87h5y2z5xv.fsf@gmail.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 79278 Cc: 79278@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Roi Martin > Date: Wed, 20 Aug 2025 11:41:00 +0200 > > This patch adds a new section about semantic linefeeds to the Emacs user > manual. This allows us to link the doc string of > `fill-region-as-paragraph-semlf' to the new Info node. Now everything > related to semantic linefeeds is self-contained and we don't have to > rely on external URLs which are not official references. Thanks, but I'm not sure this feature is important enough to have it described in so many words in the user manual. What do others think? From debbugs-submit-bounces@debbugs.gnu.org Wed Aug 20 10:06:14 2025 Received: (at 79278) by debbugs.gnu.org; 20 Aug 2025 14:06:14 +0000 Received: from localhost ([127.0.0.1]:57168 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uojS9-0002KJ-JP for submit@debbugs.gnu.org; Wed, 20 Aug 2025 10:06:14 -0400 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]:43283) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1uojS6-0002K0-LN for 79278@debbugs.gnu.org; Wed, 20 Aug 2025 10:06:12 -0400 Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-3bea24519c0so465222f8f.1 for <79278@debbugs.gnu.org>; Wed, 20 Aug 2025 07:06:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755698764; x=1756303564; darn=debbugs.gnu.org; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=aX2gsY7pFDxs31WLlL6EeHC5ZdP5QkWvF78CzsFaKqk=; b=Fj2YO/2gOj0Xo6bxwl4GL8wTqdfMrYrtrpy+29O2q2VWP44FMSPWoXSb4OXHbTPEaO TG5z3bjiPrcd2xBr2ZEuxiaqNnUykqUUju/UlZzJohxPCDIDWhu3zz5WYN/ZKrTS96wU M/6KvGvmF7lITHrWCTMB7V4fZp7Upvjx4qMXhqSgFPElo3WiATsCB1ZbGdWlNlrHmE4x luN2oWIEvqWngo+xiZcb55SlqDLALUjyo8vIr4qsgqEnX+JOdP782hD38HU/bMdfOgBS fmFQfW6SmtvjgcOZSCe1fvjhYNgcsEWyE/RYiJ6dWag4Ltzg6irBYni5lPrh2AqvMDNT rMOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755698764; x=1756303564; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=aX2gsY7pFDxs31WLlL6EeHC5ZdP5QkWvF78CzsFaKqk=; b=aoXadXdc22BnXwHIk6IFh2jhRt0XGIGLDGys+Swh/q6u8AAqyQxF5Cs78jECG2+sbL 3S4fcMi3+2UR7+gYzjYNu5pHcFEyUWLNH7pROmGe33c2+/3RZMLrkA4sYEka2L56nDi/ TaXWcL9PY6k2rvjgCYVjXaakC69XAg4PJqLnlP7bXxtwCzh24NdXYyvPU+TfMJYt/tx6 683VBZJ5FYaCHZjsM97MZaQemc2XeSMHRKZo2PhJeKM4+nZFrKUkYDK8RhkeL+TQgfSe bxOwXMkcq9kYUu8a9ZCEs4Pjubtky0DxfhqwNuPLYzyKR5Pa7H6MyASt8C55QKczNOgy rw5g== X-Gm-Message-State: AOJu0Yy18aIuDUPa1B/PPVDbIMTa9/x88PPbrqt+CkoA6Zq1l0LewBgo 4tgQxbaAxygjO+srFuINF9JDsnWANa+F6f+CgobrGLSnNJ5DOoyRHp6CFO+tOA== X-Gm-Gg: ASbGncs9X4p01nKPMx9T4MWd7uL2wkz9Pq3fae0YLSELTz5t7EETOepyaDkU45iMHDk 3BzOIzjKFHo47H9GH4fSk5ltAtuYQq65LbkRT9HXzVU0xuauo9Te8+muY1iJMX6hHY7kjF94nzf QJ+45lTEQNJDekzbB6BpFbRrvHWDTQW/UU1UgliHIVhFD9R3OTeNGKQO1ArHnNfoJLN/gu0Sq2l TMnVH/AnKF0KPtsRUMIswnF2iNZQLNiPWPgq7xDCB3QX5TRPXHKcyT8d72YR5LaabzX/HQz9H9J 3i8zqKhQhofMqcrsES0XjMAeP/CWilvCpoSOsNW0Uakg2spzgIca1NpJW8jLKRjZV22O6ogh8q0 mSKKcH4M72/DeXtDLKlKdzdjG8wB7vaK9AhGYGhAymg== X-Google-Smtp-Source: AGHT+IEHN9OMhwWP1Efa5f3aqmxoIaKPBXkZDkCDZOVJ1vhHKoILj94EEgmQMS669Dkgmwn4MX/Efg== X-Received: by 2002:a05:6000:2411:b0:3b8:d8d1:1e72 with SMTP id ffacd0b85a97d-3c314e73c5fmr2515170f8f.19.1755698764321; Wed, 20 Aug 2025 07:06:04 -0700 (PDT) Received: from localhost ([84.79.192.255]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3c0777892basm7767497f8f.56.2025.08.20.07.06.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 Aug 2025 07:06:03 -0700 (PDT) From: Roi Martin To: Eli Zaretskii Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual In-Reply-To: <86jz2yfddd.fsf@gnu.org> References: <87h5y2z5xv.fsf@gmail.com> <86jz2yfddd.fsf@gnu.org> Date: Wed, 20 Aug 2025 16:05:54 +0200 Message-ID: <87wm6yxf3x.fsf@gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 79278 Cc: 79278@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain Eli Zaretskii writes: > Thanks, but I'm not sure this feature is important enough to have it > described in so many words in the user manual. I agree this is a minor feature, which is why I added the documentation into a subsubsection. However, I'd like to provide users with information about what is the meaning of "semantic linefeeds" and how to use them in Emacs. I believe that having information about `fill-paragraph-semlf', `fill-region-as-paragraph-semlf' and `fill-region-as-paragraph-function' side by side makes it easier to understand the different ways in which users can use the feature. I also agree that the first version was too verbose. What do you think of this new version? Roi --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Add-section-Semantic-Linefeed-Filling-to-Emacs-user-.patch >From 258bfa33b5a7c81c02d1f6d82ae83be15f50b553 Mon Sep 17 00:00:00 2001 From: Roi Martin Date: Wed, 20 Aug 2025 11:12:16 +0200 Subject: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual * doc/emacs/text.texi (Fill Commands): Add subsection "Semantic Linefeed Filling". * etc/NEWS: Indicate that all relevant manuals in doc/ have been updated. * lisp/textmodes/fill.el (fill-region-as-paragraph-semlf): Link to Info node from doc string. (Bug#79278) --- doc/emacs/text.texi | 44 ++++++++++++++++++++++++++++++++++++++++++ etc/NEWS | 2 +- lisp/textmodes/fill.el | 4 ++-- 3 files changed, 47 insertions(+), 3 deletions(-) diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi index d8a7e0fc25e2..c7b6d3ad4f48 100644 --- a/doc/emacs/text.texi +++ b/doc/emacs/text.texi @@ -674,6 +674,50 @@ Fill Commands using the Display fill column indicator mode (@pxref{Displaying Boundaries, display-fill-column-indicator}). +@menu +* Semantic Linefeed Filling:: Paragraph filling using semantic linefeeds. +@end menu + +@node Semantic Linefeed Filling +@subsubsection Semantic Linefeed Filling +@cindex semantic linefeed filling +@cindex semantic linefeeds +@cindex semlf + +@table @kbd +@item M-x fill-paragraph-semlf +Fill current paragraph using semantic linefeeds. +@item M-x fill-region-as-paragraph-semlf +Fill the region using semantic linefeeds, considering it as one +paragraph. +@end table + + The term @dfn{semantic linefeeds} or @dfn{semantic line breaks} refers +to a set of conventions for using insensitive vertical whitespace to +structure prose along semantic boundaries. For instance, inserting a +newline after every sentence. They are usually used with markup +languages that are not sensitive to newlines when exported to a +different format (e.g. Org, Texinfo, Markdown). + +@findex fill-paragraph-semlf + The command @kbd{M-x fill-paragraph-semlf} fills a paragraph of text +using semantic linefeeds, whereby a newline is inserted after every +sentence. + +@findex fill-region-as-paragraph-semlf + The command @code{fill-region-as-paragraph-semlf} fills a region of +text using semantic linefeeds as if the region were a single paragraph. +Users can set the variable @code{fill-region-as-paragraph-function} to +the value @code{fill-region-as-paragraph-semlf} to enable functions like +@kbd{M-q} (@code{fill-paragraph}) and @code{fill-region} to fill text +using semantic linefeeds. + + One benefit of using semantic linefeeds is that they are +``diff-friendly'', making it easy to spot which specific sentences have +been modified in a diff. They are also convenient during code reviews: +shorter diffs and the separation of ideas with newlines make it easier +to add accurate comments. + @node Fill Prefix @subsection The Fill Prefix diff --git a/etc/NEWS b/etc/NEWS index ebf03b53e123..05c10827a6fa 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -697,7 +697,7 @@ activate the mark if it is not already active. The default value is t, which retains the old behavior. This variable has no effect when Transient Mark mode is off. ---- ++++ ** New commands for filling text using semantic linefeeds. The new command 'fill-paragraph-semlf' fills a paragraph of text using "semantic linefeeds", whereby a newline is inserted after every diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el index 4ab639497ec9..df3794aad616 100644 --- a/lisp/textmodes/fill.el +++ b/lisp/textmodes/fill.el @@ -1645,8 +1645,8 @@ fill-region-as-paragraph-semlf override how functions like `fill-paragraph' and `fill-region' fill text. -For more details about semantic linefeeds, see `https://sembr.org/' and -`https://rhodesmill.org/brandon/2012/one-sentence-per-line/'." +For more details about semantic linefeeds, see Info node `(emacs) +Semantic Linefeed Filling'." (interactive (progn (barf-if-buffer-read-only) (list (region-beginning) -- 2.50.1 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 23 08:19:28 2025 Received: (at 79278) by debbugs.gnu.org; 23 Aug 2025 12:19:28 +0000 Received: from localhost ([127.0.0.1]:38985 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1upnDU-0004cp-9K for submit@debbugs.gnu.org; Sat, 23 Aug 2025 08:19:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:38178) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1upnDS-0004cd-QA for 79278@debbugs.gnu.org; Sat, 23 Aug 2025 08:19:27 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1upnDN-0007Bx-2F; Sat, 23 Aug 2025 08:19:21 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=maBw2prYhoDZPpcXdIbyHo+75eXyTjhT8fQOai8Vs/8=; b=XvS8pTS6Oa7F 9Wi59c9thWggcxSDiA5QNy5NfakfQehX+y6YCpeYZ/R4vzUX79tIf3GQu6btRaEVdP7EfIMv3F4ob AECy4iFVez1IkSihPyhszS+GWKe0TiRqAgOuCvwoVfD8y/6r5W1fEmWtO2divbUkzoxNsyRm0KKfT 8OwCj8rSMFm1P0Qdbrb9hEBLJQ36Np88jeSydNCYy5C8oMTpbsc18BFFNW1oouJB/MrBcTuU1V0PX y04Fc4KBy10IkR6IhANWL3Yk0hYGutkbUZWOjFlwi0fEp7wsB0fLorQotf9fe53gUS2mCqYBcZ7p6 Xo4+2U6eThDo6J+B5qIoeA==; Date: Sat, 23 Aug 2025 15:19:18 +0300 Message-Id: <867byub589.fsf@gnu.org> From: Eli Zaretskii To: Roi Martin In-Reply-To: <87wm6yxf3x.fsf@gmail.com> (message from Roi Martin on Wed, 20 Aug 2025 16:05:54 +0200) Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual References: <87h5y2z5xv.fsf@gmail.com> <86jz2yfddd.fsf@gnu.org> <87wm6yxf3x.fsf@gmail.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 79278 Cc: 79278@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Roi Martin > Cc: 79278@debbugs.gnu.org > Date: Wed, 20 Aug 2025 16:05:54 +0200 > > Eli Zaretskii writes: > > > Thanks, but I'm not sure this feature is important enough to have it > > described in so many words in the user manual. > > I agree this is a minor feature, which is why I added the documentation > into a subsubsection. However, I'd like to provide users with > information about what is the meaning of "semantic linefeeds" and how to > use them in Emacs. > > I believe that having information about `fill-paragraph-semlf', > `fill-region-as-paragraph-semlf' and `fill-region-as-paragraph-function' > side by side makes it easier to understand the different ways in which > users can use the feature. > > I also agree that the first version was too verbose. What do you think > of this new version? I'd like first to see if this is used widely enough to warrant being mentioned in the manual. How about asking on help-gnu-emacs or via Reddit? From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 23 09:30:06 2025 Received: (at 79278) by debbugs.gnu.org; 23 Aug 2025 13:30:06 +0000 Received: from localhost ([127.0.0.1]:39102 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1upoJp-00086n-J0 for submit@debbugs.gnu.org; Sat, 23 Aug 2025 09:30:06 -0400 Received: from mail-wr1-x42e.google.com ([2a00:1450:4864:20::42e]:46462) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1upoJl-000850-MK for 79278@debbugs.gnu.org; Sat, 23 Aug 2025 09:30:03 -0400 Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-3c43399ea42so1953682f8f.1 for <79278@debbugs.gnu.org>; Sat, 23 Aug 2025 06:30:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755955795; x=1756560595; darn=debbugs.gnu.org; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=rClwPQMMk8dW81m/Au4AO+a0y5kz3O4VRf1BsZh1J0Y=; b=MB70DJ+RgVQhD0SvIt2iHALWqlNccNTA12p7DT79cSTIUzNiyAxuAlvemcho8EINtW lb2O1H9JF9cmKuCBGTNwT9tQcUXeXiOxpSt9DhZjWBsM9JRq4fbAZCrDJapqhRQSUZc8 LClJQSecQta3QuP7oVB8C6Nphv8Qu2ujlAN6xoUw8q1qALcawj/OhEyiNJXDrifnqC91 XvZuqOeW/D8g2bDth57UGGWp7c+y2tV8S3Jyf06s1YIXrH8MAk4MGQO5ICqpcWf6sphr FgoNPgqj4zDUhTBuKFZS4jfZ8gtP1wfkAZDwFFogJjAN0kGpm2CZBLtaRBhjIxzwtwKg z6oQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755955795; x=1756560595; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=rClwPQMMk8dW81m/Au4AO+a0y5kz3O4VRf1BsZh1J0Y=; b=BsZAos7IIzcb1BvwVHtcnkTJmrwbp2DOHZxtlSYLVomBqi4U43UUOmFbEORftVoFLV OAfh6qQLIlbgOxTc2NLk4/UJVjZGJkMqFd/+OaMYDVG7uBijwlYMpg8Qmo42oM8dA4rs 8ZoGGJXcOX/Bx+2rKbLx/JZhlJ/ws1x32/uYbV6dL8YKLMOdyEMTGL3NPdRoaygca0hS bQLcgEy/ia4fHKNXV8bJQxnQoibDzuQ2WiLzOjprtOh7NR1E7b6erxngqnIyk3A1e5QC KCuFFd09mwJ5g2p3x1ZeO9emVQO5FiqXrNShFkq00nISkaJrSqrYKWosHMeYscOmRFLk 7cEg== X-Gm-Message-State: AOJu0YxblsCtFEJMBJ9wEHEUUI1NDrmSAj5UqfKiZ9e4FzitEweJcO8l dYi80VlOnG/zbSlFqUYNIVNhM7SXgFHAEWF5HYQE/HdjeHJILcMasuny X-Gm-Gg: ASbGncsxYHH0XSiPYtNd5WJ/pn0pHpUY7Y/ISLJAqyPvzx6XndRAtT+TAvbIdWG8+CA 53ggCxNok1DePthl3PGkju9ZYkiZaNaajH9C1T+IY1a6jbFqJLYL9KSl8LRfJSOe6vUxT5pKC2p K8Jr0oHA8gtRgUx8AR60y7bAL13yP2s3KFmoIVTV8488K+gOCQNFnqt9A6ys9KBdlAdIaI94WeY 1CY2Vv0F+M4FvlxRT9UxMGNsR1IHdzaX7jhRpbUCOrg/Dx7WvAPy3vaT4/WBFBYfhE08Pg9jZUf dGAfdnBoM8BEy1/f5qeuA+xQ5Gcd7GGfLldWAMdt7suw6KdAUlTx48E7y8saSMLIiOzQ8W1P/pv N20vxU2FwT0RNuyuYKb5e X-Google-Smtp-Source: AGHT+IEKGuMiYTI+UYxrGpWdAUYfY4A6diDQfIt2WoFX2fxOIw9ikoD7Q7UuJHZQZ6FjoODWHoGVvQ== X-Received: by 2002:a05:6000:25c3:b0:3b7:88f5:f0ad with SMTP id ffacd0b85a97d-3c5daa2b6c7mr4439465f8f.16.1755955795206; Sat, 23 Aug 2025 06:29:55 -0700 (PDT) Received: from localhost ([84.79.192.255]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45b4e8ae6aasm54468185e9.5.2025.08.23.06.29.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 23 Aug 2025 06:29:54 -0700 (PDT) From: Roi Martin To: Eli Zaretskii Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual In-Reply-To: <867byub589.fsf@gnu.org> References: <87h5y2z5xv.fsf@gmail.com> <86jz2yfddd.fsf@gnu.org> <87wm6yxf3x.fsf@gmail.com> <867byub589.fsf@gnu.org> Date: Sat, 23 Aug 2025 15:29:50 +0200 Message-ID: <87tt1yxj1t.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 79278 Cc: 79278@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eli Zaretskii writes: > I'd like first to see if this is used widely enough to warrant being > mentioned in the manual. How about asking on help-gnu-emacs or via > Reddit? What would you ask specifically? Also, given that the feature is already in core, what are the criteria for deciding what goes in the manual and what does not? This specific feature provides user-facing commands and variables, where should I document the details? Only in the corresponding doc strings? What about users who are not aware of the concept? This change in the manual may allow them to learn about something that they could find useful and Emacs implements. I'm just asking to have a better understanding that I can apply to future patches. In any case, my main goal is for the information about the feature to be self-contained. I don't want to depend on external URLs, which can change or stop working (actually, one of the referenced sites was down recently). Can I use the doc string of `fill-region-as-paragraph-semlf' for that? Roi From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 23 10:13:51 2025 Received: (at 79278) by debbugs.gnu.org; 23 Aug 2025 14:13:52 +0000 Received: from localhost ([127.0.0.1]:41232 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1upp0B-0002HU-Ao for submit@debbugs.gnu.org; Sat, 23 Aug 2025 10:13:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51468) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1upp05-0002H6-Vs for 79278@debbugs.gnu.org; Sat, 23 Aug 2025 10:13:49 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1upp00-000436-L1; Sat, 23 Aug 2025 10:13:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=22vlV3pJfzROAefwwU3uX8Z94VnqKmj3tnchNcn1aCY=; b=IFRMzDX0hw7T n0H7bHcvMqSJaDB2lxKiiAHMd1ReFdQBPOZIY8hKlV9ZUgwt2y5+rZRSrgJ+qar1/EAf3la9aNP7b v+Sn+gg/9S1WpSLd+O2KUoGoGZCd0hEr6VFJIIphhIwfer7N1D5SuKeYCsJydTa8aL+bPzrOQHvXm A/c0hSJaxnhtZ3T4NGofglF5VYyesoYfE9IDKK+7raaJqiq6lN4F/O3CiUSXx3FwcRpmsugmwjq+W OVliW68a9EGm2Dg8nw2MNbLoe/1yoYt57vObmPPAtdI31YAomIJxKn6m7sMc7NMWJoZu++A5LGMqA gEcN3iai745pbTstbQmHkA==; Date: Sat, 23 Aug 2025 17:13:38 +0300 Message-Id: <86jz2u9ld9.fsf@gnu.org> From: Eli Zaretskii To: Roi Martin In-Reply-To: <87tt1yxj1t.fsf@gmail.com> (message from Roi Martin on Sat, 23 Aug 2025 15:29:50 +0200) Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual References: <87h5y2z5xv.fsf@gmail.com> <86jz2yfddd.fsf@gnu.org> <87wm6yxf3x.fsf@gmail.com> <867byub589.fsf@gnu.org> <87tt1yxj1t.fsf@gmail.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 79278 Cc: 79278@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Roi Martin > Cc: 79278@debbugs.gnu.org > Date: Sat, 23 Aug 2025 15:29:50 +0200 > > Eli Zaretskii writes: > > > I'd like first to see if this is used widely enough to warrant being > > mentioned in the manual. How about asking on help-gnu-emacs or via > > Reddit? > > What would you ask specifically? "Who uses this?: sounds like a good starting point. > Also, given that the feature is already in core, what are the criteria > for deciding what goes in the manual and what does not? It's a judgment call. Features that are minor and rarely used are not in the manual. > This specific > feature provides user-facing commands and variables, where should I > document the details? Only in the corresponding doc strings? Yes. Emacs has commands to search the doc strings, so not everything must be in the manual. > What about users who are not aware of the concept? How would they find it in the manual, if they are not aware of the concept? No one reads the manual start to end, because it is huge. > I'm just asking to have a better understanding that I can apply to > future patches. I understand. > In any case, my main goal is for the information about the feature to be > self-contained. I don't want to depend on external URLs, which can > change or stop working (actually, one of the referenced sites was down > recently). Can I use the doc string of `fill-region-as-paragraph-semlf' > for that? Yes, you can. But there's nothing wrong in principle in pointing to external URLs, when we implement features whose definition is external to Emacs. If the URL becomes invalid, we will update it when we know it became invalid. From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 23 12:26:48 2025 Received: (at 79278) by debbugs.gnu.org; 23 Aug 2025 16:26:48 +0000 Received: from localhost ([127.0.0.1]:41462 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1upr4q-0000Ji-51 for submit@debbugs.gnu.org; Sat, 23 Aug 2025 12:26:48 -0400 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]:44292) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1upr4n-0000JS-B2 for 79278@debbugs.gnu.org; Sat, 23 Aug 2025 12:26:46 -0400 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-45a1b065d59so16508205e9.1 for <79278@debbugs.gnu.org>; Sat, 23 Aug 2025 09:26:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755966399; x=1756571199; darn=debbugs.gnu.org; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=VGu2v+MhBUWWHx/soh9KEzWHsPKiLCKJvZ0KkSX0IFU=; b=bm/RlUEUH2k2BpyapM8ZNveqOAXFi2nUykoIEqxD5ZmREG219MZvt9A4LqCmPJY+jg Q663O++L/uxsQpiuqGmy54BPoYpJO2qdZ8au5yCTrDtP82vlt6a7dbrhwTyMTG+ZNUEb lWYTE+fDYv6ye4eEygkvQ9PfU0XgGMXSo0GVUfBzMyVuGZ2A6x+IFy46J9JQp50uIY4d mg/+KpaKqWMTGakRZqkhVqOe97Yw3TlFxw6/zW6zVNUyfv+09LXfRaonKUUulIE8tm5N tw5Je4lLMd9usDbQclir0vvYazmjUwMixesdxQbMdCLgM/vKsX+dxT4e5WZuxPHhjb5g WI1Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755966399; x=1756571199; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=VGu2v+MhBUWWHx/soh9KEzWHsPKiLCKJvZ0KkSX0IFU=; b=nYNbz0ekPDlSnJZ7VsP1wu5wipEeSRpOwePX/w0it8Un7ACTPIfarCEGjW966PkxXF VhRjA96sbpw1iDMjhmOyuPcC+3dsvb+NIviWj22iZ4eAk2TAcSbALNPaVHjeJ3WM++xW ykmhC7h31BFsszqQXl9nFsI0nVA63bR9r+8WMoM+imJ+aEscxpmOW11Fh/jdrBZE5LFd KOJTBmJ119gdhxPPD43fWFicYXm7LWAkoprW8I9GpfJwi8T7IQUpn6jDSnWZBVkm7Ssp PAydn4tXmwup40YDQ7s8N7IqpzcS2hnDoLHtiiWRMyG2WlAWiwnvyIhcmtZ7jZE2CPT5 PYjQ== X-Gm-Message-State: AOJu0Yz3MmtbnFTlx7Wb/RP/tNQDToEjkabJqKHzuZo4dO49D9Ed9x6r 0+hB5LKsAMKlnYG4/z3igfk1OblDozLNW/wblSr7Sze9dL05qplBl6sm X-Gm-Gg: ASbGnctkwq987tPo90+UrBfbcdAIEVCJc60a+vCGexYK1EQUKImPRShdFG8RW5z/dBG XI4xBtMNeOAg5hpzKsvM/TDduKMOCMjue5WmOUyL6n+lw9SCwnhDXpYQErBr85Is9eJcgXIQZfC PXEqodewqXG7p7rPEua3N0H/wJYn+lwlJ4OTTzCcHUoF6UbeU3akNOCGAairO9f7j/FpeuZFolr ETbO1kbfTiWlA27a8YasBP5EEKKhPq4cxXiNekQHcGvK7L8InUXmoJsQJwB68DxQJd4h1+kMh7m U8Y07e/Y34B4A+fBatcjbru8S+b+lel2rQiFuT1CodoRAjf/4XoGKn/FFEL4KF4qQMFuSPZau5V sCVxQIfCD+voeSOfgLOgwhe0/JeYW2Cs= X-Google-Smtp-Source: AGHT+IHom0GDoc8yg2s6OZaGFXTXtqaKp6Q0p6+N48E0jeWj6pNuAIpXNWJ6F7nGDWOyrdfq9q/kvQ== X-Received: by 2002:a05:600c:4ed0:b0:459:dfde:3323 with SMTP id 5b1f17b1804b1-45b517cfb81mr54442885e9.27.1755966398677; Sat, 23 Aug 2025 09:26:38 -0700 (PDT) Received: from localhost ([84.79.192.255]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3c7119c4192sm4177373f8f.52.2025.08.23.09.26.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 23 Aug 2025 09:26:38 -0700 (PDT) From: Roi Martin To: Eli Zaretskii Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual In-Reply-To: <86jz2u9ld9.fsf@gnu.org> References: <87h5y2z5xv.fsf@gmail.com> <86jz2yfddd.fsf@gnu.org> <87wm6yxf3x.fsf@gmail.com> <867byub589.fsf@gnu.org> <87tt1yxj1t.fsf@gmail.com> <86jz2u9ld9.fsf@gnu.org> Date: Sat, 23 Aug 2025 18:26:12 +0200 Message-ID: <87qzx2xavv.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 79278 Cc: 79278@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eli Zaretskii writes: >> What about users who are not aware of the concept? > > How would they find it in the manual, if they are not aware of the > concept? No one reads the manual start to end, because it is huge. When reading about a related concept. For instance, in this case, fill commands. It happens to me all the time. You look for something specific and when reading its documentation a related concept catches your attention (e.g. a subsection). Roi From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 23 12:32:40 2025 Received: (at 79278) by debbugs.gnu.org; 23 Aug 2025 16:32:40 +0000 Received: from localhost ([127.0.0.1]:41473 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uprAW-0000be-AP for submit@debbugs.gnu.org; Sat, 23 Aug 2025 12:32:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:55518) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uprAT-0000bJ-BA for 79278@debbugs.gnu.org; Sat, 23 Aug 2025 12:32:38 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uprAN-0003tU-UR; Sat, 23 Aug 2025 12:32:31 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=R9Uj2IPWwqwYdNtz7KXD3W+mOzrIYFg+oYGXtyiNGPo=; b=lXRHnX1Nzjkv 7flC9iwjAL80fmudXJJy/8zx9OAA5YtAOhVcpf39gDTqhZJ1R0N5lJPnpJgHb+FSX2PNYoZuJjOvE JYOcqpxlUFRKIu9V8ScBss6y/4b6lgNdMBqgxybQvluye4BS/ddUnq8oY5TsAfPxkF+tsIQD0WryY f/R1XdEiWj5RTW/K0t61p8NwjWZs/yUp/AcUViFCBTguVl/i/HdabFEv2JiUVc/ihGAc6iVy+NqSI lYRIcX2aU2J726g/Y6zbSyMcFcOMFy6TM8LnSVFWaIdfZTjPSQaYbZ4M7aPDNzPJs2P9eiXsZsKQS uxnvDFHOtoCwjKeAJLZ61A==; Date: Sat, 23 Aug 2025 19:32:02 +0300 Message-Id: <86a53q9eyl.fsf@gnu.org> From: Eli Zaretskii To: Roi Martin In-Reply-To: <87qzx2xavv.fsf@gmail.com> (message from Roi Martin on Sat, 23 Aug 2025 18:26:12 +0200) Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual References: <87h5y2z5xv.fsf@gmail.com> <86jz2yfddd.fsf@gnu.org> <87wm6yxf3x.fsf@gmail.com> <867byub589.fsf@gnu.org> <87tt1yxj1t.fsf@gmail.com> <86jz2u9ld9.fsf@gnu.org> <87qzx2xavv.fsf@gmail.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 79278 Cc: 79278@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Roi Martin > Cc: 79278@debbugs.gnu.org > Date: Sat, 23 Aug 2025 18:26:12 +0200 > > Eli Zaretskii writes: > > >> What about users who are not aware of the concept? > > > > How would they find it in the manual, if they are not aware of the > > concept? No one reads the manual start to end, because it is huge. > > When reading about a related concept. For instance, in this case, fill > commands. It happens to me all the time. You look for something > specific and when reading its documentation a related concept catches > your attention (e.g. a subsection). The same is true with built-in documentation. For example: M-x apropos-command RET fill RET From debbugs-submit-bounces@debbugs.gnu.org Fri Sep 05 07:34:53 2025 Received: (at 79278) by debbugs.gnu.org; 5 Sep 2025 11:34:53 +0000 Received: from localhost ([127.0.0.1]:52251 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uuUiT-0006ww-AK for submit@debbugs.gnu.org; Fri, 05 Sep 2025 07:34:53 -0400 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]:43150) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1uuUiO-0006wW-HZ for 79278@debbugs.gnu.org; Fri, 05 Sep 2025 07:34:49 -0400 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-45b9814efbcso22158075e9.0 for <79278@debbugs.gnu.org>; Fri, 05 Sep 2025 04:34:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1757072082; x=1757676882; darn=debbugs.gnu.org; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=nM4wTh/2yxG+FjbTc804oKIIYHeFzsJK6rYl9jkt2IQ=; b=NCPQCr+jI6bgQoSrNVp1NXXtif5cKJoUOqSs/qmKBlog3ZDwi5h2GuCGOBms1c2bXX N2oQAxxUOUjSoaCQ1ryNXS3WZ87Vl8ZsGU3/pj8tUuYF3NOky3NDMogaFqfCMRAUGBUr lQ4hpumNB5Ldij2zQEMUt5bNwq2ceTGZAdJs4nxN0X1naGjfORXrZXYuGMpooqYd5pOI zt4HPyZBZvIkHkEtpeZ/1T80OKUl/5sH2DWTJQCuISgHBAE4IEpKai0iLISxKwO1Ua09 7dMdS2RPAVt4rMa90MD4XGe2MNDwsOyhk+GHb/KsY18v0KrkRJFDhozh5Ak8PKUDC9Dv iYoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757072082; x=1757676882; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=nM4wTh/2yxG+FjbTc804oKIIYHeFzsJK6rYl9jkt2IQ=; b=LgU6Gbpb7a8FdvHQMRXTGnyHhndKU1FplQ01Sdkh9OPBxjcBKq0OdMhBGp7I/dkAcv dFaeyeEEkV6C0NR+S4hgctTR6qFPkKsw34W0ESrVhcNxWKKseS+qCn1FoL4KPdpLYvwc q8KYpqHxEs0hEFH9ppBMrZifGOLbkEythRn+j4gaJ3hRmHbSnlcMznO4dvT0GlNyn5zW 1wCor0JDpiyHgq0fM4aAWfr9/VKngWqy2W0Z88QEE2utsHezTnLdkLTj/BwIaV1hhEJw +YIVk//95Oz+UcpX18R9ub0+NKCEgyKNmL6NpTk/WqNdrDL4molYYAMG+yFP3IngOWCp GgsQ== X-Gm-Message-State: AOJu0Yzmrof6KBf5tHE+N7UQ/HuSkrenoLA2NwubAyQ/8FBGwAykRB5y BhujH+oIMx8w2uhOuXs4gPDQTvooj8tJtifTVEw+6HGr6mFpdV7s+JbK X-Gm-Gg: ASbGncurhMp839we4iZwdf7NAivcb4zyqpaMGD0IWDExV6o6DszCYcs6vgdy5JIL0DY kJSyUXaGigtYfQASw2xL7D3gmsYtz0xN99L8E2BaR9RKyvh2enFgxjtwSJxeDRX5up/DalHI54r IwC90Lg50wNJPKk8+9LKDNvgT38M9r5fq7Z2/Ok9cHe55vMkbqOdET0rpPUdPLITalvQitt9H0K ipE0T7t3G0l0caJogGeUZG+8qJGwPnWFKjll2L2nrK5OEvo3/Zl1+VCQy1Srq8mk/ye9OzAEsON n2i32Z0CTrjK6Wa4DXcbf4tSGUw+qlkPhqWS189yigHSWRBcv6HxHeTiGH4epIcsV2T5S78rb3t VrG+ng0mZDs6dZdWXAPNXtg== X-Google-Smtp-Source: AGHT+IGdC733mFWZi0VQmTiOTt84c8dCqG85wcl8+FeuY80i8EEsfZk5XeuwQV1bvQ8rju2ZrIvwQw== X-Received: by 2002:a05:600c:4695:b0:45d:5c71:769d with SMTP id 5b1f17b1804b1-45dd5b3c3bfmr27151265e9.8.1757072081851; Fri, 05 Sep 2025 04:34:41 -0700 (PDT) Received: from localhost ([84.79.192.255]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45b6f30fe02sm398229145e9.18.2025.09.05.04.34.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 05 Sep 2025 04:34:41 -0700 (PDT) From: Roi Martin To: Eli Zaretskii Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual In-Reply-To: <867byub589.fsf@gnu.org> References: <87h5y2z5xv.fsf@gmail.com> <86jz2yfddd.fsf@gnu.org> <87wm6yxf3x.fsf@gmail.com> <867byub589.fsf@gnu.org> Date: Fri, 05 Sep 2025 13:34:37 +0200 Message-ID: <87h5xhceuq.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 79278 Cc: 79278@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eli Zaretskii writes: > I'd like first to see if this is used widely enough to warrant being > mentioned in the manual. How about asking on help-gnu-emacs or via > Reddit? Hi Eli, On August 23th, almost 2 weeks ago, we asked in help-gnu-emacs. It seems to me that the participation level (2 people replied) does not justify a new section in the manual. Also, the main concern expressed by Jean Louis, which is lack of details and examples, should be covered by the links we already provide in the doc strings. So, if you agree, feel free to close this issue. Thanks! Roi From debbugs-submit-bounces@debbugs.gnu.org Fri Sep 05 07:42:15 2025 Received: (at 79278-done) by debbugs.gnu.org; 5 Sep 2025 11:42:15 +0000 Received: from localhost ([127.0.0.1]:52313 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uuUpb-0007Q6-DZ for submit@debbugs.gnu.org; Fri, 05 Sep 2025 07:42:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50646) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uuUpW-0007Pn-1j for 79278-done@debbugs.gnu.org; Fri, 05 Sep 2025 07:42:12 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uuUpP-0000sM-0Y; Fri, 05 Sep 2025 07:42:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=rlMMKO2lShB4StOA2j7Cc02j2UhoLEAJjhCjYmqPXSs=; b=SxwPBK9/tid9 lV95wmgHaH6YWpK+wwtBd6sgUnigU0vapkSKD2/Duuyx35JRP9KYVJSBWq0d2/EvX9hOUkNLU/XJX v+ozRnvgApkwBkl8lGTpksTECbvCP43iEYnnb3UAOa8JhuGOFcGavDXNHGzsF8r3kH7qDUyF4OxTP AsQOnsFkfRs8xJQjh4KqfTDgyS3z5Ze7BV3Jl9BcYp8uiupi9KGy+pQPlUUQeZaiuOjxv0ozVd70A plCharXMl77bmnphr9uwc5WdRUU9Do0QSd4YbRPvfwMCu3byRfyuVIDa1jQa1DNnrmfiUZHJ8fmSM RPPTR+CL7YduwX7zDZwL7w==; Date: Fri, 05 Sep 2025 14:41:50 +0300 Message-Id: <86h5xhi0sh.fsf@gnu.org> From: Eli Zaretskii To: Roi Martin In-Reply-To: <87h5xhceuq.fsf@gmail.com> (message from Roi Martin on Fri, 05 Sep 2025 13:34:37 +0200) Subject: Re: bug#79278: [PATCH] Add section "Semantic Linefeed Filling" to Emacs user manual References: <87h5y2z5xv.fsf@gmail.com> <86jz2yfddd.fsf@gnu.org> <87wm6yxf3x.fsf@gmail.com> <867byub589.fsf@gnu.org> <87h5xhceuq.fsf@gmail.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 79278-done Cc: 79278-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Roi Martin > Cc: 79278@debbugs.gnu.org > Date: Fri, 05 Sep 2025 13:34:37 +0200 > > Eli Zaretskii writes: > > > I'd like first to see if this is used widely enough to warrant being > > mentioned in the manual. How about asking on help-gnu-emacs or via > > Reddit? > > Hi Eli, > > On August 23th, almost 2 weeks ago, we asked in help-gnu-emacs. It > seems to me that the participation level (2 people replied) does not > justify a new section in the manual. > > Also, the main concern expressed by Jean Louis, which is lack of details > and examples, should be covered by the links we already provide in the > doc strings. > > So, if you agree, feel free to close this issue. Agreed and closed.