From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id Dc6sIamOy2VIMQEAe85BDQ:P1 (envelope-from ) for ; Tue, 13 Feb 2024 16:45:45 +0100 Received: from aspmx1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id Dc6sIamOy2VIMQEAe85BDQ (envelope-from ) for ; Tue, 13 Feb 2024 16:45:45 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1707839145; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=WaDvdvbS8mE6OuNxU4iy/j6kD2kAVXudtsfzWrECJR0=; b=pdel3g7XMuOD2lg9YEqyN+TnFnFh0tb4PVWy66A1fQiWx3HvVipsjtFQ9lpRv1wRTbRMwW UQxvbixX37fQawHAJZkI2SuGiH9cxFhAlP8Iaf0SLeO6clw5S95x9DBNBiaiu2pFuiBiJU +cZUZymRg0WK78K4fu5nYmbCmN59bykZfNzzvnc8Nh1iF7lTYVVNM6g3SLJCnrGY2rOOSa gCi1wS41rBcetJNn4uPA+kvRRBdcnWobrf+K8smsBvEApg1OU6LuV8aKhIj2UEoZQtZyyy 7f2eqbHRyIzK1LarGpC3w9D3YQPUW7fRe7z4YSt3QtEAYDCKD1l1y5b1TiTSfA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1707839145; a=rsa-sha256; cv=none; b=dalIsDWMK8Y6ZVEjmMI30NwXMQhS24/rMI5AapG/jlZ/IEmPODHpGRXqMy3CX47b/xpByf qxEUe+M/kzb4WK5IP297BnTv2ksvN2tQzHtuzp7rdKl5OsyjaSobcT05muFcrOUjMpW4JZ IxVmqKjo4BjDc2hckf2tpTK0MJzHWILG43SvGG4UF/nPD4ClzcFQQzCQYeM/83JoatStY+ 6CAX8dcBMQDiq5dg514O02LOfEe8kLuo1HFnkgCtqjRv04W6or+IS6gX8UsVWCXvcEy+Bn Bqs8BH6BzSv5qS6vITFhN0sb2Q96itfa6qAJJS6boo2zjwEjBkZuyjF5p6CjIw== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 222D432DF9 for ; Tue, 13 Feb 2024 16:45:45 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rZuxq-0006pb-4l; Tue, 13 Feb 2024 10:44:54 -0500 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 1rZuxm-0006pO-48 for emacs-orgmode@gnu.org; Tue, 13 Feb 2024 10:44:50 -0500 Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rZuxk-0004BC-Dx for emacs-orgmode@gnu.org; Tue, 13 Feb 2024 10:44:49 -0500 Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1rZuxi-0006Rc-AY for emacs-orgmode@gnu.org; Tue, 13 Feb 2024 16:44:46 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: emacs-orgmode@gnu.org From: Max Nikulin Subject: Re: [DISCUSSION, default settings] Using mailcap as default handler for opening file links Date: Tue, 13 Feb 2024 22:44:36 +0700 Message-ID: References: <963d5f94-3fdf-a01b-bc91-edc99222cb34@gmail.com> <877d6lbsg5.fsf@localhost> <7c75b724-1ea2-5e3e-cbe6-e1895fd35bd3@gmail.com> <877d6j2htv.fsf@localhost> <87ilq14p6p.fsf@localhost> <87v8u0396t.fsf@localhost> <87ilpz3bi0.fsf@localhost> <87h75ip5r6.fsf@localhost> <87zgj46hwo.fsf@localhost> <8735gr15ok.fsf@localhost> <878rqcy27h.fsf@localhost> <874jedoo4d.fsf@localhost> <87bk8kwqmu.fsf@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit User-Agent: Mozilla Thunderbird Content-Language: en-US, ru-RU In-Reply-To: <87bk8kwqmu.fsf@localhost> Received-SPF: pass client-ip=116.202.254.214; envelope-from=geo-emacs-orgmode@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: 25 X-Spam_score: 2.5 X-Spam_bar: ++ X-Spam_report: (2.5 / 5.0 requ) BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, FORGED_GMAIL_RCVD=1, FORGED_MUA_MOZILLA=2.309, FREEMAIL_FORGED_FROMDOMAIN=0.001, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.248, NML_ADSP_CUSTOM_MED=0.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -0.97 X-Spam-Score: -0.97 X-Migadu-Queue-Id: 222D432DF9 X-Migadu-Scanner: mx12.migadu.com X-TUID: CFZOInzcvNsy On 13/02/2024 18:27, Ihor Radchenko wrote: > Max Nikulin writes: > > I am mostly going to address user confusion about mailcap XDG configuration and so xdg-open behavior is often confusing to users as well, especially in the cases of KDE and no DE. In GNOME it is alleviated by a step with the application chooser if default application has not been set yet. > (1) a number > of people are using DMs that rely on FreeDesktop and xdg-open; DM is display manager. Even DE (desktop environment) is not necessary, some toolkits and applications have their own implementations of XDG specs. > (2) Emacs' mailcap does not implement the specification fully - only a > subset of mailcap format is obeyed. Agree. On the other hand, mailcap.el is aware that Emacs can handle some files internally. This feature should be preserved in some way. In addition, mailcap has to be used if neither DISPLAY nor WAYLAND_DISPLAY is set for current terminal. >> xdg-mime is more close to the file(1) tool > > That might be a good alternative to file indeed; although file is > probably more widely installed. xdg-mime and xdg-open belong to the same package. In the case of no DE xdg-mime calls file(1) (if mimetype(1) is not installed). > Yes, but mailcap is not documented in Emacs manual. (info "emacs-mailcap") However it is not as useful as it should be. >> Is it necessary to modify Org? Maybe an alternative is to add "xdg-open >> %s" for */* to `mailcap-user-mime-data'. > > Do you mean changing the default value of `mailcap-mime-data'? I am unsure what is a proper way to do it. I am not confident enough with the code that selects handlers for files. >>> I believe that xdg-open issue has been fixed by you in >>> https://git.savannah.gnu.org/cgit/emacs/org-mode.git/commit/?id=5db61eb0f >>> org.el: Avoid xdg-open silent failure >> >> I am still not really comfortable due to the strategy to start external >> processes diverged from methods used in browse-url.el. > > Is it related to the problem at hand? - Eli had objections, but did not provide any details. - Error handling code was dropped for the sake of Emacs-25. - In the case of no DE, quit from emacs means terminating of started applications. - I hope a bug I faced is exotic enough to never happen in real life. Unfortunately another approach is a kind of trade-off, not an unambiguous advantage. > AFAIK, xdg.el does not support xdg-open functionality. We cannot use it > here. `xdg-mime-apps' looks like a building block. However it is not enough and perhaps has enough bugs. Ideally Emacs should provide API that uses either xdg.el or mailcap.el as backend depending on runtime and user configuration. Org is not the only package that needs it. P.S. Ihor, perhaps your clock is several minutes ahead.