From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?UTF-8?Q?Jo=C3=A3o_?= =?UTF-8?Q?T=C3=A1vora?= Newsgroups: gmane.emacs.bugs Subject: bug#68246: 30.0.50; Add non-TS mode as extra parent of TS modes Date: Tue, 9 Jan 2024 11:05:55 +0000 Message-ID: References: <83edeww73j.fsf@gnu.org> <83o7dzvrmf.fsf@gnu.org> <838r53vlo5.fsf@gnu.org> <831qavvcbo.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="6123"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Dmitry Gutov , Eli Zaretskii , casouri@gmail.com, 68246@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Jan 09 12:07:18 2024 Return-path: Envelope-to: geb-bug-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 1rN9wz-0001My-CT for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 09 Jan 2024 12:07:17 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rN9wf-0003kf-Su; Tue, 09 Jan 2024 06:06:57 -0500 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 1rN9we-0003kE-4N for bug-gnu-emacs@gnu.org; Tue, 09 Jan 2024 06:06:56 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rN9wd-0001ld-RA for bug-gnu-emacs@gnu.org; Tue, 09 Jan 2024 06:06:55 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rN9wk-0004QY-6K for bug-gnu-emacs@gnu.org; Tue, 09 Jan 2024 06:07:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: =?UTF-8?Q?Jo=C3=A3o_?= =?UTF-8?Q?T=C3=A1vora?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 09 Jan 2024 11:07:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68246 X-GNU-PR-Package: emacs Original-Received: via spool by 68246-submit@debbugs.gnu.org id=B68246.170479838316971 (code B ref 68246); Tue, 09 Jan 2024 11:07:02 +0000 Original-Received: (at 68246) by debbugs.gnu.org; 9 Jan 2024 11:06:23 +0000 Original-Received: from localhost ([127.0.0.1]:38463 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rN9w6-0004Pf-OR for submit@debbugs.gnu.org; Tue, 09 Jan 2024 06:06:23 -0500 Original-Received: from mail-lj1-x229.google.com ([2a00:1450:4864:20::229]:42149) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rN9w4-0004PP-At for 68246@debbugs.gnu.org; Tue, 09 Jan 2024 06:06:21 -0500 Original-Received: by mail-lj1-x229.google.com with SMTP id 38308e7fff4ca-2ccea11b6bbso26565201fa.0 for <68246@debbugs.gnu.org>; Tue, 09 Jan 2024 03:06:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1704798367; x=1705403167; darn=debbugs.gnu.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=U2TM8z0e2w0pKdMJE4x7wmdWcmLCwRa4T0FecaW8EOs=; b=ClmM4R36TGiFGkcosMRtHxBzZLPnJOpukis5t4pEFPN2j+JIVRPebdyJnzFserl4SF FTRr5kdOi2cJ4cVl3v71wvaUW5g1KhSuSYZUmLDbUSsslt20h8RKiQtaeP7zmnTkqchv JQ6icYiik6zEhSRVRTRxMCvoVJYuVnGKIJsaOhH09it1edIWGVl2CIN6NevnjMk4KM6A y13KALC9wxOY+O/qWS2zUtKaRpGN6TtH3fjlIYZupgpE/vFbkfr/eLxz1og2WnbDijqx DNT10h8edps0dSaojcpOWTWiUCITrYwYazi8UTO9sswXDI2rQTP47Q8ND04UrzDgyzZX NU1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1704798367; x=1705403167; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=U2TM8z0e2w0pKdMJE4x7wmdWcmLCwRa4T0FecaW8EOs=; b=fpg8jeVIfX7vszKGnqTPvM8B3INI5Idclvd9DOcu/L70tHCVUz4f971t96UBCgiYLI H8HpZbqHsiQnVVNmsyMXkEA1xt1hUAm6q/pEmJIQmw5qzE8SyuY/puY85HiZ2huTDvTD oDrOsYqIfCjg+8qgdvLjXexde+KMG6CzHUaYD4orz9+Ft85aNfnVh6YHdcsOijUW3QqW A07VM/XIp+Y5u1YJT0SWzemNCwQ7JqZqSL+g+Qhe9xglC0Bf5zH031x7AFoWc5W9NX61 f2Rqbt29H6x38RhtiFKl3X56JabGn6XPGCCSZExFTm9wp1rjrCQH4JPitQOBB7KY9t0O ybMQ== X-Gm-Message-State: AOJu0YxOrm+cjvJ0fANEFbfwwN9NINwYe9TS85Smtdi05fEM3on7evxJ +aGw981MuTJvIljdttwc34LQhSM3GsQFX13r7Wo= X-Google-Smtp-Source: AGHT+IEX/5B05TWz6fdeQOvevVZgLxFJMpXAiz35SbNemSSqyHRahx8OiOzZ2iKFn6GtCVC/zc9JVNNcOEaNilZgTew= X-Received: by 2002:a2e:a179:0:b0:2cd:23a7:a350 with SMTP id u25-20020a2ea179000000b002cd23a7a350mr347579ljl.22.1704798367336; Tue, 09 Jan 2024 03:06:07 -0800 (PST) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:277619 Archived-At: On Tue, Jan 9, 2024 at 3:55=E2=80=AFAM Stefan Monnier wrote: > The mapping from "language" to major mode can't be always reversible, so > `major-mode-remap-alist` works to map "language" to "major-mode" but not > the other way. > > The current bug-report *is* about "finding the language" but the code > that needs that info luckily doesn't need "the language" I must be out of luck, because Eglot does need "the language" to send as the LSP "languageID" to the server. > which I propose to solve with `derived-mode-p`, since > that's what we've been using all these years. Even before your patch and before TS modes, derived-mode-p leads to exposing Eglot users looking to customize eglot-server-programs to much more complicated concepts. If I could reliably write `get-language-for-mode`, this is much closer to what they are really after: (ocaml "ocamllsp") (reason "ocamllsp") Instead of (((caml-mode :language-id "ocaml") (tuareg-mode :language-id "ocaml") reason-mode) . ("ocamllsp")) which is what is currently found in the Eglot database. In fact even if LSP languageID wasn't a thing, I still think it's easier to customize on those terms. It's also a fair bit simpler to. And it'd be much simpler for Yasnippet too. Jo=C3=A3o