From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Michael Albinus Newsgroups: gmane.emacs.devel Subject: Re: OSX FSEvents file watching support Date: Thu, 18 Jul 2019 14:16:29 +0200 Message-ID: <877e8fedwi.fsf@gmx.de> References: <0ce358e3-9333-4717-97d5-f03d882bc2d0@www.fastmail.com> <83lfwvy9ai.fsf@gnu.org> <87muhbeg01.fsf@gmx.de> <83a7dby2lp.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="94637"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: muir@mnd.rs, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jul 18 14:16:55 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1ho5LC-000ORH-3n for ged-emacs-devel@m.gmane.org; Thu, 18 Jul 2019 14:16:54 +0200 Original-Received: from localhost ([::1]:37412 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1ho5LA-0003i5-UF for ged-emacs-devel@m.gmane.org; Thu, 18 Jul 2019 08:16:52 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:38257) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1ho5L1-0003hU-Ux for emacs-devel@gnu.org; Thu, 18 Jul 2019 08:16:44 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ho5L1-0004by-2X for emacs-devel@gnu.org; Thu, 18 Jul 2019 08:16:43 -0400 Original-Received: from mout.gmx.net ([212.227.15.19]:55439) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ho5L0-0004bE-MN; Thu, 18 Jul 2019 08:16:43 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1563452191; bh=2dDz6ibKK9fQ4IXjr6zBVl2WtoSlKk/NLGR/2Fa/eCI=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=guizS+z+fdem7W02UcyKvgLXWimS06zKoRd8FJy8zmEePZnyW2BwvqjdwLJUNnWav CKW0L7Qfa/WXnuCMNkHXE1hyIzpYXPjtJLRAtN9sa3a76XP8vcAaNLStKGOUXdaWFn 1pRUhm/PgG4vmMsFGuDkJxC4rgTtgQDn/ZJy4Bto= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from detlef.gmx.de ([212.86.58.192]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Mv2xO-1iex2N1csS-00qzfp; Thu, 18 Jul 2019 14:16:31 +0200 In-Reply-To: <83a7dby2lp.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 18 Jul 2019 15:00:18 +0300") X-Provags-ID: V03:K1:Sv3Al/+znzBKbrzhvA2JpwVOYGTDdaEkEKch7uiNB6ZNOgIBb9B WXuG0IKVLYcUBPyM2QGxYzFXr/Tr18Dd2kwv8jD4Gk3J8IV3wCb5WFvp2SlBItm7zP5GDvA AP3SUi8+A1baP6JOzq2CtkYryUskE62+eev7eoxK9DNc7ABTEG3R0qMC0gmUg8/8PnliQn7 wtyMhplVk/88oKke5fitg== X-UI-Out-Filterresults: notjunk:1;V03:K0:g5hXd5ALVSw=:BXYS8cUGrZtmPDEQNtd/vt SSHPgsIbq/nN+awf193vLDsI687fIZFDgbrZBtAChkN8/sycVzRjN3zyFZ2bQYhUc6jaGcptn gm7xTeKkB4Exdgg9z7PNvB4Th3mFZMYa70G3AWDE0WrrvO4ibvRJg6CWZEe77/ImonY9pFoNo K8anVaNqjVbz5/ug2wqX1dDYB7ESm/jTj2OINcsh+5yUhxSMfk5LinZEUVpYGsxKo+Mgo3DR6 N/D1O+D+4OhFziUsRvPINE2euYCXnV4lKM1Yhy3Mp3rgpHP9WdXEyZxbJrXXEX1+gQ4hgs+tx nKNTRbTMs90jVi6a0O3WbIhsn+1YY2uayuMtgHSvrUeaBut7Qy34gtywvn+rhwoIAEnKnT2e2 zWiVMFTitS9Td58F1Qf3hNYXAbET1RLpah+/6BUxf7T2Z6AA/ADnss5QMqfVGwkrYMtxl+W9a 24wcOjKobtERGEvt04kjus/12ZDRDwT7qPdB2pQXntF8vJSvsKMQNTK9MjZOU7J6HpnIlciua xPdlHx2F/ikE727/saCy8mUSSyR7B6aTpKTvp4Qew5BDbfXhbtoiuGbdXGH9s9K3yebJN2796 2nBAk/5MGSwW0KnpjDE5CbYSso7GGsASRdCXKRlrElHOzIPnHnkpWoBfPT9/1saUP6SDTmIK7 Qsgbck5QP7b1/Eu68TcPhoWfe/Ga3GqnKNeOx1V590ubPYf+OtqXWQ2DgD/7Er3tm2q1Or9HE NwkiHe7SShwKt747WMuri4/MHE8t5K5ptbef7/86MHWvXDWLRueGo7LwBmdshELN+wgF6w73 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 212.227.15.19 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:238643 Archived-At: Eli Zaretskii writes: Hi Eli, >> > How would that work, implementation-wise? Filesystem events are >> > supposed to be eventually injected into the input queue; how would yo= u >> > go about doing that when an external porgram does the watching? >> >> Tramp mimics this by calling the respective special event filter functi= on >> file-notify-handle-event. > > That needs a callback function, and the callback needs to be written > in C, no? Or am I missing something? You were responding to =2D-8<---------------cut here---------------start------------->8--- 3. Publish an elisp package that calls out to an existing program that supports FSEvents like "fswatch". =2D-8<---------------cut here---------------end--------------->8--- > To make myself clear, I was responding to the "publish an elisp > package" part of the OP's proposal, and my point was that I didn't > see how can this be done entirely in Lisp. The crucial point of this is "calls out an existing program". That's what Tramp does in the process filters I've mentioned before. Best regards, Michael.