From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Philip Kaludercic Newsgroups: gmane.emacs.help Subject: Re: How to modify a function of a package Date: Thu, 12 Oct 2023 22:02:00 +0000 Message-ID: <87h6mvzehz.fsf@posteo.net> References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="27129"; mail-complaints-to="usenet@ciao.gmane.io" Cc: help-gnu-emacs@gnu.org To: Maske Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Fri Oct 13 00:03:03 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 1qr3ln-0006mL-36 for geh-help-gnu-emacs@m.gmane-mx.org; Fri, 13 Oct 2023 00:03:03 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qr3ky-00028t-NP; Thu, 12 Oct 2023 18:02:12 -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 1qr3kv-00028P-Fm for help-gnu-emacs@gnu.org; Thu, 12 Oct 2023 18:02:09 -0400 Original-Received: from mout02.posteo.de ([185.67.36.66]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qr3ks-00025x-7y for help-gnu-emacs@gnu.org; Thu, 12 Oct 2023 18:02:08 -0400 Original-Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 618FB240101 for ; Fri, 13 Oct 2023 00:02:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1697148121; bh=1DQwnH7Xt0HpnRPlNDRbUgt7JRb79ixNbhfPvD2jz6E=; h=From:To:Cc:Subject:Autocrypt:Date:Message-ID:MIME-Version:From; b=RC0nyCKN0XYvefBH/Lbdo7XtvLakUfOk9yuD7ropzWw8eapr6xlPwYRgVSd55xpn9 Rsg74dXRypVx2UZg2IdHwy62agZlZA9kA7INoDsMQCmb8oYmv4nfU6wkB5qMGOspY9 q9LrAkcafUfR8ZaSqy6tFVvwDp2o/qaIgDsu0AbExewjBpiaUVna4N6SAu7io5sHe7 kZprh0LBQnQowSt+FEBsIwuueWnOZMCI8k14OdmI+tXGXv6zz2QaSzkK9U2NDhHEHo kzGnpuRa43BWxZ8b+8LafDDpt+HX1H6ynp1cuGh7fc0TjxRU9cC2HJhrI/SkMlULy4 Hmc43WybIgBzQ== Original-Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4S63Ws0L78z6tv5; Fri, 13 Oct 2023 00:02:01 +0200 (CEST) In-Reply-To: (Maske's message of "Thu, 12 Oct 2023 21:39:39 +0200") Autocrypt: addr=philipk@posteo.net; keydata= mDMEZBBQQhYJKwYBBAHaRw8BAQdAHJuofBrfqFh12uQu0Yi7mrl525F28eTmwUDflFNmdui0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiWBBMWCAA+FiEEDg7HY17ghYlni8XN8xYDWXahwukFAmQQUEICGwMFCQHhM4AFCwkI BwIGFQoJCAsCBBYCAwECHgECF4AACgkQ8xYDWXahwulikAEA77hloUiSrXgFkUVJhlKBpLCHUjA0 mWZ9j9w5d08+jVwBAK6c4iGP7j+/PhbkxaEKa4V3MzIl7zJkcNNjHCXmvFcEuDgEZBBQQhIKKwYB BAGXVQEFAQEHQI5NLiLRjZy3OfSt1dhCmFyn+fN/QKELUYQetiaoe+MMAwEIB4h+BBgWCAAmFiEE Dg7HY17ghYlni8XN8xYDWXahwukFAmQQUEICGwwFCQHhM4AACgkQ8xYDWXahwukm+wEA8cml4JpK NeAu65rg+auKrPOP6TP/4YWRCTIvuYDm0joBALw98AMz7/qMHvSCeU/hw9PL6u6R2EScxtpKnWof z4oM Received-SPF: pass client-ip=185.67.36.66; envelope-from=philipk@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 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, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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:145278 Archived-At: Maske writes: > Hi > > I have installed a package and I want to modify a function of it, but > not in the package itself, because if there is an update it would stop > working, so I have added the function modified in my init file. But, > it doesn't work. The package behavior is not altered. If you know that it will only affect you and you can reasonably assume that the feature will be stable in future versions, you can take a look at `(elisp) Advising Functions'. Specifically the function `define-advice' could be of use, here is an example that pulses the region evaluated using C-M-x: (define-advice eval-region (:after (start end &rest _)) (pulse-momentary-highlight-region start end)) The other option is always to share your contribution with the author and all other users. This might require some discussions and generalising whatever you changed, and even if nothing is accepted you probably stand learning something new, so it is always worth the try. You can use package-vc-install to fetch the package sources (which btw. doesn't loose local modifications on updating, but therefore might require resolving a merge-conflict), and package-vc-submit-patch to send the change to the maintainer. > What would be the correct way? > > Best regards