From debbugs-submit-bounces@debbugs.gnu.org Wed Sep 03 15:31:16 2025 Received: (at submit) by debbugs.gnu.org; 3 Sep 2025 19:31:16 +0000 Received: from localhost ([127.0.0.1]:42159 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uttCN-0007Ya-Bq for submit@debbugs.gnu.org; Wed, 03 Sep 2025 15:31:16 -0400 Received: from lists.gnu.org ([2001:470:142::17]:34224) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uttCH-0007Wl-Lc for submit@debbugs.gnu.org; Wed, 03 Sep 2025 15:31:13 -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 1uttC5-0005gh-M0 for bug-gnu-emacs@gnu.org; Wed, 03 Sep 2025 15:30:59 -0400 Received: from fout-b2-smtp.messagingengine.com ([202.12.124.145]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uttC1-0003xe-Id for bug-gnu-emacs@gnu.org; Wed, 03 Sep 2025 15:30:57 -0400 Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46]) by mailfout.stl.internal (Postfix) with ESMTP id 1187B1D0043D for ; Wed, 3 Sep 2025 15:30:50 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-06.internal (MEProxy); Wed, 03 Sep 2025 15:30:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= secure.kjonigsen.net; h=cc:content-type:content-type:date:date :from:from:in-reply-to:message-id:mime-version:reply-to:subject :subject:to:to; s=fm3; t=1756927849; x=1757014249; bh=+pZq9IAVr8 e8mJo+TCF2nOXhbSgZm0EOjfzGJKF0hJU=; b=GV+Lp/PlQO5kzHI/VKc/UIdK49 eTTkxU8aYsftcy5qOmmovtaUervvW16nUmR/6QHc0mKM/bVT8rEFq14Nfh3d/Pwg j6IiEvCRMYkMWxGxdw5D62xUguRyAG1PVCIBqW6/eOShCS62Civ+4m6LqTbaCQFU ouLcMzJqJB6PIJpZ9tq0BYZRg7KCIF+5E3b5V7rUaMwWxCKP6ozxo7YcLdCSS6BU 3ka/+ctQF6+3J+wqt3eaPHGoZOReyWirP1wv9rZQcPYP45AErY+LYuaqKNlEuWt5 sx/9CpPE4XgcbaZpqaiJBDdjb2WjGTswQphsGgE5/QflHi6+NJphGJD6EzLQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1756927849; x= 1757014249; bh=+pZq9IAVr8e8mJo+TCF2nOXhbSgZm0EOjfzGJKF0hJU=; b=W zQQccYeGCewctE8kxonv1cxK/PxbA9JkvjiJoiMuv3SJj3pkMJMX/JXpvvLFdsoB 0OSgOq8A3MEPPccV1V7TFFVXjQ6OoKPWtIWsm84CBtaV3mEtvfT/EzQQJtCCw1Ws qyCgIc9zpp0FeoXXjlOSunoh97B1yZwC/6x238Epzx02eTQii5ixM3LsH13qYu/1 lo5QO3BAb07YCl9GGjNKXcBahvu3unJe1/TouOwwu1ZDB74iRt1ZuYc8OcbkhaSw //GjVBGaUoZqq69karCkqZk3Sb9QvkDM32Kyd5i45pY7mFCrzMg1ysaIt+s2rjg9 i6gdMynBC80f83hZoxQAA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggdefleekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceurghi lhhouhhtmecufedttdenucenucfjughrpefhtggguffkfffvofesrgdtmherhhdtjeenuc fhrhhomheplfhoshhtvghinhcumfhjpphnihhgshgvnhcuoehjohhsthgvihhnsehsvggt uhhrvgdrkhhjohhnihhgshgvnhdrnhgvtheqnecuggftrfgrthhtvghrnheptdfgvdeigf efudekhfefjeffvedtgeejfeefffekleelgfeuvdekudefgeejueegnecuffhomhgrihhn pehfohhrrdhnvghtpdifihhthhdrnhgvthenucevlhhushhtvghrufhiiigvpedtnecurf grrhgrmhepmhgrihhlfhhrohhmpehjohhsthgvihhnsehsvggtuhhrvgdrkhhjohhnihhg shgvnhdrnhgvthdpnhgspghrtghpthhtohepuddpmhhouggvpehsmhhtphhouhhtpdhrtg hpthhtohepsghughdqghhnuhdqvghmrggtshesghhnuhdrohhrgh X-ME-Proxy: Feedback-ID: ib2f84088:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Wed, 3 Sep 2025 15:30:49 -0400 (EDT) From: =?utf-8?Q?Jostein_Kj=C3=B8nigsen?= Content-Type: multipart/alternative; boundary="Apple-Mail=_F7D031C9-954D-49F9-A4D1-BD51658B0EE3" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81\)) Subject: [PATCH] 31.0.50; nxml-mode does not provide schema-support for SLNX-files Message-Id: <218427CB-FDB3-4D45-88B7-8B454D2AF914@secure.kjonigsen.net> Date: Wed, 3 Sep 2025 21:30:37 +0200 To: bug-gnu-emacs@gnu.org X-Mailer: Apple Mail (2.3826.700.81) Received-SPF: pass client-ip=202.12.124.145; envelope-from=jostein@secure.kjonigsen.net; helo=fout-b2-smtp.messagingengine.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.7 (/) 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.3 (/) --Apple-Mail=_F7D031C9-954D-49F9-A4D1-BD51658B0EE3 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 SLNX is a new XML-based file-format for .NET based solutions, replacing the older proprietary SLN file-format. Unlike SLN-files, it is merge-friendly and expected to become the new the de-facto standard for working with .NET projects. This commit adds support for SLNX-schema to nxml-mode. When opening SLNX-files in Emacs and activating nxml-mode, no special schema-validation or completion/assistance is provided. Attached is a patch which corrects this situation. (SLNX-files not added to any auto-mode-list, because I couldn't find where/if that is done in the nxml-mode codebase). =E2=80=94 Kind Regards Jostein Kj=C3=B8nigsen =EF=BF=BC= --Apple-Mail=_F7D031C9-954D-49F9-A4D1-BD51658B0EE3 Content-Type: multipart/mixed; boundary="Apple-Mail=_67AD94B7-8B03-4761-B46C-433D71433D39" --Apple-Mail=_67AD94B7-8B03-4761-B46C-433D71433D39 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8
SLNX is a = new XML-based file-format for .NET based solutions, = replacing
the older proprietary SLN = file-format.

Unlike SLN-files, it is = merge-friendly and expected to become the new
the de-facto = standard for working with .NET projects. This commit = adds
support for SLNX-schema to = nxml-mode.

When opening SLNX-files in = Emacs and activating nxml-mode, no special
schema-validation = or completion/assistance is provided.

Attached = is a patch which corrects this = situation.

(SLNX-files not added to any = auto-mode-list, because I couldn't
find where/if that is done = in the nxml-mode codebase).

=E2=80=94
Kind Regards
Jostein = Kj=C3=B8nigsen

= --Apple-Mail=_67AD94B7-8B03-4761-B46C-433D71433D39 Content-Disposition: attachment; filename=0001-nxml-mode-add-schema-for-.NET-SLNX-files.patch Content-Type: application/octet-stream; x-unix-mode=0644; name="0001-nxml-mode-add-schema-for-.NET-SLNX-files.patch" Content-Transfer-Encoding: quoted-printable =46rom=20eb34f4e6f814cf570e71e060cd0dc8ef122cff33=20Mon=20Sep=2017=20= 00:00:00=202001=0AFrom:=20=3D?UTF-8?q?Jostein=3D20Kj=3DC3=3DB8nigsen?=3D=20= =0ADate:=20Wed,=203=20Sep=202025=2011:59:04=20= +0200=0ASubject:=20[PATCH]=20nxml-mode:=20add=20schema=20for=20.NET=20= SLNX=20files.=0A=0A-=20add=20new=20etc/schema/dotnet-slnx.rnc,=20and=20= add=20to=20etc/schemas.xml.=0A=0ASLNX=20is=20a=20new=20XML-based=20= file-format=20for=20.NET=20based=20solutions,=20replacing=0Athe=20older=20= proprietary=20SLN=20file-format.=0A=0AUnlike=20SLN-files,=20it=20is=20= merge-friendly=20and=20expected=20to=20become=20the=20new=0Athe=20= de-facto=20standard=20for=20working=20with=20.NET=20projects.=20This=20= commit=20adds=0Asupport=20for=20SLNX-schema=20to=20nxml-mode.=0A=0AThe=20= schme=20provided=20has=20been=20synthesized=20using=20the=20official=20= XSD-schema=0Adefinition:=0A= https://github.com/microsoft/vs-solutionpersistence/blob/main/src/Microsof= t.VisualStudio.SolutionPersistence/Serializer/Xml/Slnx.xsd=0A=0AThis=20= schema=20was=20then=20converted=20to=20RNG=20using=20XSDtoRNG.xsl:=0A= https://github.com/epiasini/XSDtoRNG=0A=0AThe=20RNG=20schema=20was=20= then=20converted=20to=20RNC=20using=20the=20trang=20CLI-tool:=0A= https://relaxng.org/jclark/trang.html=0A---=0A=20= etc/schema/dotnet-slnx.rnc=20|=2074=20= ++++++++++++++++++++++++++++++++++++++=0A=20etc/schema/schemas.xml=20=20=20= =20=20|=20=203=20++=0A=202=20files=20changed,=2077=20insertions(+)=0A=20= create=20mode=20100644=20etc/schema/dotnet-slnx.rnc=0A=0Adiff=20--git=20= a/etc/schema/dotnet-slnx.rnc=20b/etc/schema/dotnet-slnx.rnc=0Anew=20file=20= mode=20100644=0Aindex=2000000000000..2e081ed39fd=0A---=20/dev/null=0A+++=20= b/etc/schema/dotnet-slnx.rnc=0A@@=20-0,0=20+1,74=20@@=0A+default=20= namespace=20=3D=20""=0A+namespace=20a=20=3D=20= "http://relaxng.org/ns/compatibility/annotations/1.0"=0A+namespace=20= ns_1=20=3D=20"http://relaxng.org/ns/compatibility/annotations/1.0"=0A= +namespace=20rng=20=3D=20"http://relaxng.org/ns/structure/1.0"=0A+=0A= +start=20|=3D=20starting_Solution=0A+starting_Solution=20=3D=0A+=20=20= element=20Solution=20{=0A+=20=20=20=20(element=20Configurations=20{=20= Configurations=20}?=0A+=20=20=20=20=20|=20element=20Project=20{=20= Project=20}*=0A+=20=20=20=20=20|=20element=20Folder=20{=20Folder=20}*=0A= +=20=20=20=20=20|=20PropertiesGroup*)*,=0A+=20=20=20=20attribute=20= Description=20{=20xsd:string=20}?,=0A+=20=20=20=20attribute=20Version=20= {=20xsd:string=20}?=0A+=20=20}=0A+Configurations=20=3D=0A+=20=20(element=20= BuildType=20{=0A+=20=20=20=20=20attribute=20Name=20{=20xsd:string=20}=0A= +=20=20=20}*=0A+=20=20=20|=20element=20Platform=20{=0A+=20=20=20=20=20=20= =20attribute=20Name=20{=20xsd:string=20}=0A+=20=20=20=20=20}*=0A+=20=20=20= |=20element=20ProjectType=20{=20ProjectType=20}*)*=0A+ProjectType=20=3D=0A= +=20=20(ConfigurationRulesGroup*)*,=0A+=20=20attribute=20TypeId=20{=20= xsd:string=20}?,=0A+=20=20attribute=20Name=20{=20xsd:string=20}?,=0A+=20=20= attribute=20Extension=20{=20xsd:string=20}?,=0A+=20=20attribute=20= BasedOn=20{=20xsd:string=20}?,=0A+=20=20[=20ns_1:defaultValue=20=3D=20= "true"=20]=20attribute=20IsBuildable=20{=20xsd:boolean=20}?,=0A+=20=20[=20= ns_1:defaultValue=20=3D=20"true"=20]=0A+=20=20attribute=20= SupportsPlatform=20{=20xsd:boolean=20}?=0A+Folder=20=3D=0A+=20=20= (element=20File=20{=0A+=20=20=20=20=20attribute=20Path=20{=20xsd:string=20= }=0A+=20=20=20}*=0A+=20=20=20|=20element=20Project=20{=20Project=20}*=0A= +=20=20=20|=20PropertiesGroup*)*,=0A+=20=20attribute=20Name=20{=20= xsd:string=20}=0A+Project=20=3D=0A+=20=20(element=20BuildDependency=20{=0A= +=20=20=20=20=20attribute=20Project=20{=20text=20}=0A+=20=20=20}*=0A+=20=20= =20|=20ConfigurationRulesGroup*=0A+=20=20=20|=20PropertiesGroup*)*,=0A+=20= =20attribute=20Path=20{=20xsd:string=20},=0A+=20=20attribute=20Type=20{=20= xsd:string=20}?,=0A+=20=20attribute=20DisplayName=20{=20xsd:string=20}?=0A= +PropertiesGroup=20=3D=0A+=20=20element=20Properties=20{=0A+=20=20=20=20= element=20Property=20{=0A+=20=20=20=20=20=20attribute=20Name=20{=20= xsd:string=20},=0A+=20=20=20=20=20=20attribute=20Value=20{=20xsd:string=20= }?=0A+=20=20=20=20}*,=0A+=20=20=20=20attribute=20Name=20{=20text=20},=0A= +=20=20=20=20attribute=20Scope=20{=20text=20}?=0A+=20=20}=0A= +ConfigurationRulesGroup=20=3D=0A+=20=20element=20BuildType=20{=0A+=20=20= =20=20attribute=20Solution=20{=20xsd:string=20}?,=0A+=20=20=20=20= attribute=20Project=20{=20xsd:string=20}?=0A+=20=20}+=0A+=20=20|=20= element=20Platform=20{=0A+=20=20=20=20=20=20attribute=20Solution=20{=20= xsd:string=20}?,=0A+=20=20=20=20=20=20attribute=20Project=20{=20= xsd:string=20}=0A+=20=20=20=20}+=0A+=20=20|=20element=20Build=20{=0A+=20=20= =20=20=20=20attribute=20Solution=20{=20xsd:string=20}?,=0A+=20=20=20=20=20= =20attribute=20Project=20{=20xsd:string=20}?=0A+=20=20=20=20}+=0A+=20=20= |=20element=20Deploy=20{=0A+=20=20=20=20=20=20attribute=20Solution=20{=20= xsd:string=20}?,=0A+=20=20=20=20=20=20attribute=20Project=20{=20= xsd:string=20}?=0A+=20=20=20=20}+=0Adiff=20--git=20= a/etc/schema/schemas.xml=20b/etc/schema/schemas.xml=0Aindex=20= 18af8ccf4af..6701b9b56a6=20100644=0A---=20a/etc/schema/schemas.xml=0A+++=20= b/etc/schema/schemas.xml=0A@@=20-93,4=20+93,7=20@@=0A=20=20=20= =0A=20=20=20= =0A=20=0A+=20=20=0A+=20=20=0A+=0A=20= =0A--=20=0A2.51.0=0A=0A= --Apple-Mail=_67AD94B7-8B03-4761-B46C-433D71433D39 Content-Transfer-Encoding: 7bit Content-Type: text/html; charset=us-ascii
--Apple-Mail=_67AD94B7-8B03-4761-B46C-433D71433D39-- --Apple-Mail=_F7D031C9-954D-49F9-A4D1-BD51658B0EE3-- From debbugs-submit-bounces@debbugs.gnu.org Thu Sep 04 01:31:19 2025 Received: (at 79379) by debbugs.gnu.org; 4 Sep 2025 05:31:19 +0000 Received: from localhost ([127.0.0.1]:44600 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uu2Z5-0003O8-Bq for submit@debbugs.gnu.org; Thu, 04 Sep 2025 01:31:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57720) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uu2Z2-0003Nj-QI for 79379@debbugs.gnu.org; Thu, 04 Sep 2025 01:31:17 -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 1uu2Yx-0006Rx-7C; Thu, 04 Sep 2025 01:31:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=sP9hkXEJdhCpRp7d2Z1DuIRQKVs1OhyGomt6IVH1ByE=; b=b+UC5LI9jbUqtJSxOdDf NeeqrxM+8W/GGXFMMuqXuV/Om/fG4AUbF+BzKJZ6+L/UG6t3rcyIQjREQXmmFYBtDWHiscBTNckvc eH9USZQ1L1vIVBcNf8nmbusDdNVtGuXuc6leBZl+fgN43yVXVW86C1GB0ODy3FTQgdAWX9EX4X/ee +xXtbIoo3GhpPDSuCBjq5m2h6aGf0DiDTabhN79Hg40JQsT04bWRNnMym2aAAVGrTwAWa9qt94qfs ERiZLbZKUD5NqtfaA+gC2Yj74sw+crKFghrzwbWmMP6tglnAqG2n2iCHZ8VpW6wjY9Dq4ABXSd3Dd a4fJ0xm6JXCSkA==; Date: Thu, 04 Sep 2025 08:31:08 +0300 Message-Id: <86cy86kcmb.fsf@gnu.org> From: Eli Zaretskii To: Jostein =?utf-8?Q?Kj=C3=B8nigsen?= In-Reply-To: <218427CB-FDB3-4D45-88B7-8B454D2AF914@secure.kjonigsen.net> (message from Jostein =?utf-8?Q?Kj=C3=B8nigsen?= on Wed, 3 Sep 2025 21:30:37 +0200) Subject: Re: bug#79379: [PATCH] 31.0.50; nxml-mode does not provide schema-support for SLNX-files References: <218427CB-FDB3-4D45-88B7-8B454D2AF914@secure.kjonigsen.net> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 79379 Cc: 79379@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: Jostein Kjønigsen > Date: Wed, 3 Sep 2025 21:30:37 +0200 > > SLNX is a new XML-based file-format for .NET based solutions, replacing > the older proprietary SLN file-format. > > Unlike SLN-files, it is merge-friendly and expected to become the new > the de-facto standard for working with .NET projects. This commit adds > support for SLNX-schema to nxml-mode. > > When opening SLNX-files in Emacs and activating nxml-mode, no special > schema-validation or completion/assistance is provided. > > Attached is a patch which corrects this situation. Thanks. > (SLNX-files not added to any auto-mode-list, because I couldn't > find where/if that is done in the nxml-mode codebase). It's in files.el, where auto-mode-list is set up: ("\\.x[ms]l\\'" . xml-mode) and "C-h f xml-mode RET" says xml-mode is an alias for ‘nxml-mode’ in ‘nxml-mode.el’. From debbugs-submit-bounces@debbugs.gnu.org Thu Sep 04 04:49:55 2025 Received: (at 79379) by debbugs.gnu.org; 4 Sep 2025 08:49:55 +0000 Received: from localhost ([127.0.0.1]:45289 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uu5fH-0005oP-40 for submit@debbugs.gnu.org; Thu, 04 Sep 2025 04:49:55 -0400 Received: from fhigh-b5-smtp.messagingengine.com ([202.12.124.156]:39041) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uu5fA-0005nv-4M for 79379@debbugs.gnu.org; Thu, 04 Sep 2025 04:49:49 -0400 Received: from phl-compute-01.internal (phl-compute-01.internal [10.202.2.41]) by mailfhigh.stl.internal (Postfix) with ESMTP id 3CBAE7A03F4; Thu, 4 Sep 2025 04:49:42 -0400 (EDT) Received: from phl-mailfrontend-02 ([10.202.2.163]) by phl-compute-01.internal (MEProxy); Thu, 04 Sep 2025 04:49:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= secure.kjonigsen.net; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1756975782; x=1757062182; bh=Ts9ApJxh6ValtElBSYFlarDhWE06u8kWE9wRupRHCS8=; b= qXrFSZKbRQWbUoT0RPv8lAkQiNebCiuffNehE74QLhK1Quc4sG5LOPLO5j77kCYH QkL4IQXTyizp+0UNxjMl5Ua3QSfQ1acA2Can6dQTIunJJAm7/6b6mRcYrudjP7xM DogUYbuKQs/I2wS3OATCGRzCtLgtgXd8WpwUAkVYRZADw8NYes+sB0x9mRKFjcqs 61u23qjDSAKm5WEtrYtnY+j3A8rwAkBtdyLpnk33CAAn+Dtuxr+sJVE9bFJiQKba jzDaX33ih0B4EYSTR6tAXCB+PWG+crgB0fHJygpT2mRj+KeWALN+NQattY6OGn4s vaH1Pyx6QiKjOlUT3fZRbQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1756975782; x=1757062182; bh=Ts9ApJxh6ValtElBSYFlarDhWE06u8kWE9w RupRHCS8=; b=IXtPowZuFTZ2OGTr4WmmiwLbeDOMpSntCvwpoQqE7GNKO5tZ0Md x2WeaajIQq57hN/FoBfbY8ZSpiRhw1du+pZrTju0PAnlcS24ySorehILQnFS/Cec W66WUNkdYDaULXwoJ2vb8ZQBOEPNuGPUaThs4lmxE8i54eM53Uh3IgM/aafPrRch 12KI0Ncasloax8C0j11eg1liMFuPEMW1NLGmcBM+p5nyzUlKtSB1hd+F3xPHsh5N Cl3Z2W1SaL2tV62Z6OngffuQ8hWpDy15FllzwQkhZIJ5USb38YcJ6md5B9W+r3lW wtNbazESasfbESV7BySCTlX7gvylcJyV2Qw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggdehheekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceurghi lhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurh ephffktgggufffjgevvfhfofesrgdtmherhhdtjeenucfhrhhomheplfhoshhtvghinhcu mfhjpphnihhgshgvnhcuoehjohhsthgvihhnsehsvggtuhhrvgdrkhhjohhnihhgshgvnh drnhgvtheqnecuggftrfgrthhtvghrnhepvdeitdeuheelfeefteejgfegvdevleduveek ffefhffgjeekteejheetffegueegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrg hmpehmrghilhhfrhhomhepjhhoshhtvghinhesshgvtghurhgvrdhkjhhonhhighhsvghn rdhnvghtpdhnsggprhgtphhtthhopedvpdhmohguvgepshhmthhpohhuthdprhgtphhtth hopegvlhhiiiesghhnuhdrohhrghdprhgtphhtthhopeejleefjeelseguvggssghughhs rdhgnhhurdhorhhg X-ME-Proxy: Feedback-ID: ib2f84088:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 4 Sep 2025 04:49:41 -0400 (EDT) From: =?utf-8?Q?Jostein_Kj=C3=B8nigsen?= Message-Id: Content-Type: multipart/alternative; boundary="Apple-Mail=_B985233C-1179-4F55-A7BB-4D3A41066EF0" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81\)) Subject: Re: bug#79379: [PATCH] 31.0.50; nxml-mode does not provide schema-support for SLNX-files Date: Thu, 4 Sep 2025 10:49:29 +0200 In-Reply-To: <86cy86kcmb.fsf@gnu.org> To: Eli Zaretskii References: <218427CB-FDB3-4D45-88B7-8B454D2AF914@secure.kjonigsen.net> <86cy86kcmb.fsf@gnu.org> X-Mailer: Apple Mail (2.3826.700.81) X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 79379 Cc: 79379@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.7 (-) --Apple-Mail=_B985233C-1179-4F55-A7BB-4D3A41066EF0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 =E2=80=94 Kind Regards Jostein Kj=C3=B8nigsen > On 4 Sep 2025, at 07:31, Eli Zaretskii wrote: >=20 >=20 >> (SLNX-files not added to any auto-mode-list, because I couldn't >> find where/if that is done in the nxml-mode codebase). >=20 > It's in files.el, where auto-mode-list is set up: >=20 > ("\\.x[ms]l\\'" . xml-mode) >=20 > and "C-h f xml-mode RET" says >=20 > xml-mode is an alias for =E2=80=98nxml-mode=E2=80=99 in = =E2=80=98nxml-mode.el=E2=80=99. Thanks! Attached is a patch which also includes this: =EF=BF=BC= --Apple-Mail=_B985233C-1179-4F55-A7BB-4D3A41066EF0 Content-Type: multipart/mixed; boundary="Apple-Mail=_3C8ACD61-A2D3-479F-A21A-B38B54EA8483" --Apple-Mail=_3C8ACD61-A2D3-479F-A21A-B38B54EA8483 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8
=E2=80=94
Kind Regards
Jostein = Kj=C3=B8nigsen

On 4 Sep 2025, at 07:31, Eli = Zaretskii <eliz@gnu.org> wrote:


(SLNX-files not added to any auto-mode-list, because I = couldn't
find where/if that is done in the nxml-mode = codebase).

It's in files.el, where auto-mode-list is = set up:

   ("\\.x[ms]l\\'" . xml-mode)

and = "C-h f xml-mode RET" says

 xml-mode is an alias for = =E2=80=98nxml-mode=E2=80=99 in = =E2=80=98nxml-mode.el=E2=80=99.

Thanks!

Attached is a patch which also = includes this:

= --Apple-Mail=_3C8ACD61-A2D3-479F-A21A-B38B54EA8483 Content-Disposition: attachment; filename=0001-nxml-mode-add-schema-for-.NET-SLNX-files.patch Content-Type: application/octet-stream; x-unix-mode=0644; name="0001-nxml-mode-add-schema-for-.NET-SLNX-files.patch" Content-Transfer-Encoding: quoted-printable =46rom=200a500e8f1f10aa4dbb8d6522b72d67c1ae7b58f8=20Mon=20Sep=2017=20= 00:00:00=202001=0AFrom:=20=3D?UTF-8?q?Jostein=3D20Kj=3DC3=3DB8nigsen?=3D=20= =0ADate:=20Wed,=203=20Sep=202025=2011:59:04=20= +0200=0ASubject:=20[PATCH]=20nxml-mode:=20add=20schema=20for=20.NET=20= SLNX=20files.=0A=0A-=20add=20new=20etc/schema/dotnet-slnx.rnc,=20and=20= add=20to=20etc/schemas.xml.=0A=0ASLNX=20is=20a=20new=20XML-based=20= file-format=20for=20.NET=20based=20solutions,=20replacing=0Athe=20older=20= proprietary=20SLN=20file-format.=0A=0AUnlike=20SLN-files,=20it=20is=20= merge-friendly=20and=20expected=20to=20become=20the=20new=0Athe=20= de-facto=20standard=20for=20working=20with=20.NET=20projects.=20This=20= commit=20adds=0Asupport=20for=20SLNX-schema=20to=20nxml-mode.=0A=0AThe=20= schme=20provided=20has=20been=20synthesized=20using=20the=20official=20= XSD-schema=0Adefinition:=0A= https://github.com/microsoft/vs-solutionpersistence/blob/main/src/Microsof= t.VisualStudio.SolutionPersistence/Serializer/Xml/Slnx.xsd=0A=0AThis=20= schema=20was=20then=20converted=20to=20RNG=20using=20XSDtoRNG.xsl:=0A= https://github.com/epiasini/XSDtoRNG=0A=0AThe=20RNG=20schema=20was=20= then=20converted=20to=20RNC=20using=20the=20trang=20CLI-tool:=0A= https://relaxng.org/jclark/trang.html=0A---=0A=20= etc/schema/dotnet-slnx.rnc=20|=2074=20= ++++++++++++++++++++++++++++++++++++++=0A=20etc/schema/schemas.xml=20=20=20= =20=20|=20=203=20++=0A=20lisp/files.el=20=20=20=20=20=20=20=20=20=20=20=20= =20=20|=20=201=20+=0A=203=20files=20changed,=2078=20insertions(+)=0A=20= create=20mode=20100644=20etc/schema/dotnet-slnx.rnc=0A=0Adiff=20--git=20= a/etc/schema/dotnet-slnx.rnc=20b/etc/schema/dotnet-slnx.rnc=0Anew=20file=20= mode=20100644=0Aindex=2000000000000..2e081ed39fd=0A---=20/dev/null=0A+++=20= b/etc/schema/dotnet-slnx.rnc=0A@@=20-0,0=20+1,74=20@@=0A+default=20= namespace=20=3D=20""=0A+namespace=20a=20=3D=20= "http://relaxng.org/ns/compatibility/annotations/1.0"=0A+namespace=20= ns_1=20=3D=20"http://relaxng.org/ns/compatibility/annotations/1.0"=0A= +namespace=20rng=20=3D=20"http://relaxng.org/ns/structure/1.0"=0A+=0A= +start=20|=3D=20starting_Solution=0A+starting_Solution=20=3D=0A+=20=20= element=20Solution=20{=0A+=20=20=20=20(element=20Configurations=20{=20= Configurations=20}?=0A+=20=20=20=20=20|=20element=20Project=20{=20= Project=20}*=0A+=20=20=20=20=20|=20element=20Folder=20{=20Folder=20}*=0A= +=20=20=20=20=20|=20PropertiesGroup*)*,=0A+=20=20=20=20attribute=20= Description=20{=20xsd:string=20}?,=0A+=20=20=20=20attribute=20Version=20= {=20xsd:string=20}?=0A+=20=20}=0A+Configurations=20=3D=0A+=20=20(element=20= BuildType=20{=0A+=20=20=20=20=20attribute=20Name=20{=20xsd:string=20}=0A= +=20=20=20}*=0A+=20=20=20|=20element=20Platform=20{=0A+=20=20=20=20=20=20= =20attribute=20Name=20{=20xsd:string=20}=0A+=20=20=20=20=20}*=0A+=20=20=20= |=20element=20ProjectType=20{=20ProjectType=20}*)*=0A+ProjectType=20=3D=0A= +=20=20(ConfigurationRulesGroup*)*,=0A+=20=20attribute=20TypeId=20{=20= xsd:string=20}?,=0A+=20=20attribute=20Name=20{=20xsd:string=20}?,=0A+=20=20= attribute=20Extension=20{=20xsd:string=20}?,=0A+=20=20attribute=20= BasedOn=20{=20xsd:string=20}?,=0A+=20=20[=20ns_1:defaultValue=20=3D=20= "true"=20]=20attribute=20IsBuildable=20{=20xsd:boolean=20}?,=0A+=20=20[=20= ns_1:defaultValue=20=3D=20"true"=20]=0A+=20=20attribute=20= SupportsPlatform=20{=20xsd:boolean=20}?=0A+Folder=20=3D=0A+=20=20= (element=20File=20{=0A+=20=20=20=20=20attribute=20Path=20{=20xsd:string=20= }=0A+=20=20=20}*=0A+=20=20=20|=20element=20Project=20{=20Project=20}*=0A= +=20=20=20|=20PropertiesGroup*)*,=0A+=20=20attribute=20Name=20{=20= xsd:string=20}=0A+Project=20=3D=0A+=20=20(element=20BuildDependency=20{=0A= +=20=20=20=20=20attribute=20Project=20{=20text=20}=0A+=20=20=20}*=0A+=20=20= =20|=20ConfigurationRulesGroup*=0A+=20=20=20|=20PropertiesGroup*)*,=0A+=20= =20attribute=20Path=20{=20xsd:string=20},=0A+=20=20attribute=20Type=20{=20= xsd:string=20}?,=0A+=20=20attribute=20DisplayName=20{=20xsd:string=20}?=0A= +PropertiesGroup=20=3D=0A+=20=20element=20Properties=20{=0A+=20=20=20=20= element=20Property=20{=0A+=20=20=20=20=20=20attribute=20Name=20{=20= xsd:string=20},=0A+=20=20=20=20=20=20attribute=20Value=20{=20xsd:string=20= }?=0A+=20=20=20=20}*,=0A+=20=20=20=20attribute=20Name=20{=20text=20},=0A= +=20=20=20=20attribute=20Scope=20{=20text=20}?=0A+=20=20}=0A= +ConfigurationRulesGroup=20=3D=0A+=20=20element=20BuildType=20{=0A+=20=20= =20=20attribute=20Solution=20{=20xsd:string=20}?,=0A+=20=20=20=20= attribute=20Project=20{=20xsd:string=20}?=0A+=20=20}+=0A+=20=20|=20= element=20Platform=20{=0A+=20=20=20=20=20=20attribute=20Solution=20{=20= xsd:string=20}?,=0A+=20=20=20=20=20=20attribute=20Project=20{=20= xsd:string=20}=0A+=20=20=20=20}+=0A+=20=20|=20element=20Build=20{=0A+=20=20= =20=20=20=20attribute=20Solution=20{=20xsd:string=20}?,=0A+=20=20=20=20=20= =20attribute=20Project=20{=20xsd:string=20}?=0A+=20=20=20=20}+=0A+=20=20= |=20element=20Deploy=20{=0A+=20=20=20=20=20=20attribute=20Solution=20{=20= xsd:string=20}?,=0A+=20=20=20=20=20=20attribute=20Project=20{=20= xsd:string=20}?=0A+=20=20=20=20}+=0Adiff=20--git=20= a/etc/schema/schemas.xml=20b/etc/schema/schemas.xml=0Aindex=20= 18af8ccf4af..6701b9b56a6=20100644=0A---=20a/etc/schema/schemas.xml=0A+++=20= b/etc/schema/schemas.xml=0A@@=20-93,4=20+93,7=20@@=0A=20=20=20= =0A=20=20=20= =0A=20=0A+=20=20=0A+=20=20=0A+=0A=20= =0Adiff=20--git=20a/lisp/files.el=20b/lisp/files.el=0A= index=20bd229673d8d..8cfbdc79bf0=20100644=0A---=20a/lisp/files.el=0A+++=20= b/lisp/files.el=0A@@=20-3158,6=20+3158,7=20@@=20auto-mode-alist=0A=20=20=20= =20=20("\\.oak\\'"=20.=20scheme-mode)=0A=20=20=20=20=20("\\.sgml?\\'"=20= .=20sgml-mode)=0A=20=20=20=20=20("\\.x[ms]l\\'"=20.=20xml-mode)=0A+=20=20= =20=20("\\.slnx\\'"=20.=20xml-mode)=0A=20=20=20=20=20("\\.dbk\\'"=20.=20= xml-mode)=0A=20=20=20=20=20("\\.dtd\\'"=20.=20sgml-mode)=0A=20=20=20=20=20= ("\\.ds\\(ss\\)?l\\'"=20.=20dsssl-mode)=0A--=20=0A2.51.0=0A=0A= --Apple-Mail=_3C8ACD61-A2D3-479F-A21A-B38B54EA8483 Content-Transfer-Encoding: 7bit Content-Type: text/html; charset=us-ascii
--Apple-Mail=_3C8ACD61-A2D3-479F-A21A-B38B54EA8483-- --Apple-Mail=_B985233C-1179-4F55-A7BB-4D3A41066EF0-- From debbugs-submit-bounces@debbugs.gnu.org Sat Sep 06 05:31:58 2025 Received: (at 79379-done) by debbugs.gnu.org; 6 Sep 2025 09:31:58 +0000 Received: from localhost ([127.0.0.1]:34443 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uupH4-0000nR-8C for submit@debbugs.gnu.org; Sat, 06 Sep 2025 05:31:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57628) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uupH0-0000nC-TC for 79379-done@debbugs.gnu.org; Sat, 06 Sep 2025 05:31:55 -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 1uupGs-0006My-JJ; Sat, 06 Sep 2025 05:31:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=QEckYz1DUVwQ9h2RdKuEFlENfcSGAqV1UkDrjn6gPig=; b=KeMoIfWdnFbXYc6JJDfy LqvpgF7ZtWZv3V/EUkfDorbRm8/IG5LJ/bH14w4BMMldDXDS90duxtNtlBYqgg23VtPM6ZT/OSSlT skDi6WBcKODNOBwqQNopVFN5JbrUGqaEr8EQea8c9cIEIFfK9hgw/qTMSa2PkyPr4dYFxPk/G11cR 6/EdaaZA8S/dsEk91SQNQh1oJV22Tu2MZPIvqN6PioT1kcPaEsc0xCf90C4YeK5D7xYN13WoXeDgx KGYq6T2nrpb2PlQ3w1RS262GZA0IB3jsJkPz7+JGXXqPrS+P4n+OWBm8umA0mE6WFnbv+nZsLoUd8 DrWVabtTRV3g/g==; Date: Sat, 06 Sep 2025 12:31:43 +0300 Message-Id: <86o6roexkw.fsf@gnu.org> From: Eli Zaretskii To: Jostein =?utf-8?Q?Kj=C3=B8nigsen?= In-Reply-To: (message from Jostein =?utf-8?Q?Kj=C3=B8nigsen?= on Thu, 4 Sep 2025 10:49:29 +0200) Subject: Re: bug#79379: [PATCH] 31.0.50; nxml-mode does not provide schema-support for SLNX-files References: <218427CB-FDB3-4D45-88B7-8B454D2AF914@secure.kjonigsen.net> <86cy86kcmb.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 79379-done Cc: 79379-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: Jostein Kjønigsen > Date: Thu, 4 Sep 2025 10:49:29 +0200 > Cc: 79379@debbugs.gnu.org > > > On 4 Sep 2025, at 07:31, Eli Zaretskii wrote: > > > > > >> (SLNX-files not added to any auto-mode-list, because I couldn't > >> find where/if that is done in the nxml-mode codebase). > > > > It's in files.el, where auto-mode-list is set up: > > > > ("\\.x[ms]l\\'" . xml-mode) > > > > and "C-h f xml-mode RET" says > > > > xml-mode is an alias for ‘nxml-mode’ in ‘nxml-mode.el’. > > Thanks! > > Attached is a patch which also includes this: Thanks, installed on master, and closing the bug.