From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Philipp Stephani Newsgroups: gmane.emacs.bugs Subject: bug#48584: 28.0.50; Incorrect hook ordering between local and global hooks with depth Date: Tue, 25 May 2021 22:23:26 +0200 Message-ID: References: <871r9uefvy.fsf@gnus.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="30755"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 48584@debbugs.gnu.org To: Lars Ingebrigtsen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue May 25 22:24:12 2021 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 1lldb1-0007mc-Il for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 25 May 2021 22:24:11 +0200 Original-Received: from localhost ([::1]:41216 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lldb0-0003m9-7u for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 25 May 2021 16:24:10 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:47118) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lldas-0003k0-Ll for bug-gnu-emacs@gnu.org; Tue, 25 May 2021 16:24:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:35487) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lldas-0004Ny-Di for bug-gnu-emacs@gnu.org; Tue, 25 May 2021 16:24:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lldas-0005aQ-AW for bug-gnu-emacs@gnu.org; Tue, 25 May 2021 16:24:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Philipp Stephani Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 25 May 2021 20:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48584 X-GNU-PR-Package: emacs Original-Received: via spool by 48584-submit@debbugs.gnu.org id=B48584.162197422621451 (code B ref 48584); Tue, 25 May 2021 20:24:02 +0000 Original-Received: (at 48584) by debbugs.gnu.org; 25 May 2021 20:23:46 +0000 Original-Received: from localhost ([127.0.0.1]:47033 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lldac-0005Zv-Eh for submit@debbugs.gnu.org; Tue, 25 May 2021 16:23:46 -0400 Original-Received: from mail-oi1-f171.google.com ([209.85.167.171]:46821) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lldaZ-0005Zi-TZ for 48584@debbugs.gnu.org; Tue, 25 May 2021 16:23:45 -0400 Original-Received: by mail-oi1-f171.google.com with SMTP id x15so31443138oic.13 for <48584@debbugs.gnu.org>; Tue, 25 May 2021 13:23:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=6FqmSHcNpA1IblSThcIPtPrQK+yqQ1LFRiR5TQvoWu4=; b=C9+6EnY4LhX9q5yA633eblKs+hNwA0gX4eGZT09//FXwgByBGKthV/IW+bz4eMZ03y wtNRy9oup2skyrjmQT307tvFFK7XFhSa3pBKCQRq1nI7eEe0NW2Q/VuKenc7lrbxjKAx PDHcZ87SNDvNASmvMtYwwkbH8so9QsX/QemM45H+S7l7inh1PDhA3RTOe3dT+fie3J9a 8Fa9x/PeXmaifoSyjQuiGoQqp17cvEKNPACbyEKnOje3eV0qgdj6MuhAa1oZTCTkZlt4 wmohJORihOqf9qzZzomUz6r6PP4DOmcM/1QKWnZGXskhiYa+e6sTjamHBm/0Q++2xteo fwgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=6FqmSHcNpA1IblSThcIPtPrQK+yqQ1LFRiR5TQvoWu4=; b=gBzTawjMMmFGjmF2jK/FP4caK/0sVJUrrDa8NkRzXOak9rF+Tf9EqzfVraOHc0wksB LZkIsYDjIzlRmq/ewlMg08dStaU4AioniDoKMUj/FGThUtghkP7egEx2S+cXzEEU+znU Glv4EjKcGuGMvnfX0eHsFHQqUGCPiLigpJip2/5bkwEMLR/Za3Oewdkt2JLX/Zd1UjwD vq3/8qMsK/pWp4OvLIpXNa0IanM6MZcLhhwTgHyNjN3aCHlN8MzxYdKulWa28PuOmO1S edXHIROusLDbUtu6C5QWrRKQx4JcQrPagkXI9iaNfcJyDTPoKMs7k/0jsHASciLn2qCj qlzQ== X-Gm-Message-State: AOAM532M/xN8IzJS+awNlqO4g+ILqxB0WvBfqx2hlGoXfwR6Blyrk6gp 4OBV7UWFgPCXGAld5rmf5DOliRRMAKq667FD3AE= X-Google-Smtp-Source: ABdhPJz+o7ntSrAltuPOp3QcEyf8PxBe0J5cnX+KNRLXZ5mWYTV/huGeHsGxiAMSkSr9UiEkgdko2LYb82ZVvftxUnY= X-Received: by 2002:aca:4d01:: with SMTP id a1mr15452094oib.158.1621974218121; Tue, 25 May 2021 13:23:38 -0700 (PDT) In-Reply-To: <871r9uefvy.fsf@gnus.org> 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" Xref: news.gmane.io gmane.emacs.bugs:207256 Archived-At: Am Di., 25. Mai 2021 um 22:07 Uhr schrieb Lars Ingebrigtsen : > > So... I don't see any obvious way to fix this, and perhaps we should > just document that the order is undefined when you have both local and > global hooks with the same name. > > Any opinions? The order isn't undefined, and add-hook carefully distinguishes between negative and nonnegative depths in this case. It's just that the relative ordering of depths with the same sign but different "localness" isn't considered/documented. How about documenting something along those lines? In "Running hooks", amend the paragraph "If the hook variable is buffer-local, the buffer-local variable will be used instead of the global variable. However, if the buffer-local variable contains the element @code{t}, the global hook variable will be run as well." to say that the global hook is run at exactly the place where the "t" appears. In "Setting hooks", amend the paragraph "If @var{local} is non-@code{nil}, that says to add @var{function} to the buffer-local hook list instead of to the global hook list. This makes the hook buffer-local and adds @code{t} to the buffer-local value." to specify where the "t" is added (IIUC it's appended if depth > 0 and prepended otherwise).