From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eliza Velasquez Newsgroups: gmane.emacs.devel Subject: ediff merge wrapper Date: Mon, 2 Nov 2020 12:01:33 -0800 Message-ID: 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="23314"; mail-complaints-to="usenet@ciao.gmane.io" To: emacs-devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Nov 02 21:05:43 2020 Return-path: Envelope-to: ged-emacs-devel@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 1kZg5H-0005xb-Kc for ged-emacs-devel@m.gmane-mx.org; Mon, 02 Nov 2020 21:05:43 +0100 Original-Received: from localhost ([::1]:46614 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kZg5G-0005Vt-FH for ged-emacs-devel@m.gmane-mx.org; Mon, 02 Nov 2020 15:05:42 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35934) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kZg1W-000188-ML for emacs-devel@gnu.org; Mon, 02 Nov 2020 15:01:52 -0500 Original-Received: from mail-il1-x135.google.com ([2607:f8b0:4864:20::135]:38125) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kZg1U-0002s0-8n for emacs-devel@gnu.org; Mon, 02 Nov 2020 15:01:50 -0500 Original-Received: by mail-il1-x135.google.com with SMTP id x7so14079255ili.5 for ; Mon, 02 Nov 2020 12:01:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=cEeKjww94ZzXfxTJiQN+pS4BA085pGFRXvOWS46O9qE=; b=k8ZjqNd6jooahdDIHZiL0adHK+icEkilpI+Vq1Vg31B/A7l+Addo3BAWm3GsjXlUoC Z8YqpfdXdyl4F/LKZ+OD7VTdUQukYYXCny5ettmaCYgPM1MW+1pfDYl5DNnTzVUS23ar xxKYpMJOLdt5bu+GQTJbY4Z3/EV2tcGxa4CIQ3NRUBgB+zxaGkQyRmINSySufgqqqdOu lkR2qtf+njjSSaA1hJ6d5lsl7fsGzdgqzacX7aMCILMCD2hqKYNAopfuPzdGcegqzVSP POfxKiFVtJGeaGnYfCX+eaakjjtCQzHL5SU+JmpK+6QJRi52sSqhqvO25VKNVq/o6A1B dOBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=cEeKjww94ZzXfxTJiQN+pS4BA085pGFRXvOWS46O9qE=; b=dZo7Rxs7dfMgI6NymTd7x90TH2aTvTzmV7V5A5e4vAmQX8J8+tkDuzmBL7yz0Icgdb U+tGUrostsI1KCbraZez96zNpKOWbdorQU9awgsouJoqID5j56CMqo9J0IGQ61btZuOp 8e1697EXewnJYIbOxCG7a/j2kuatPbv1UX+0qFENtrtaURRAU/kH/oh7n15gXWQum9Ej vgHfL8m89TR66R8g9mZ+k97O6HjG/OZHpHCmWn2xraKXT6Mbbmpjqns20Ja1xBRKBlzE bFaEpzRzeyko6CbOE4GycboIaC4GyL+CVg8t7y/hpCJix0mp/OPip9e7KqBD79rBzUq5 xcQA== X-Gm-Message-State: AOAM531S2RIFOtfP5801+alaQ2EBxk1BbHTJqT7DVbkP2HqnH8b3qKoR 3eI4i7UXoYnajvPFuZG5SPYtjJVwvOfITqxUetowK+OI4pWbo0Rr X-Google-Smtp-Source: ABdhPJzuaurx+IPm7pMQxrF47lL36pxN0TSDOFSRcYs/lX27dnr226BjmSlqb0HYJl/5S3hHZugHmq6pflcFnJrxyFM= X-Received: by 2002:a92:670e:: with SMTP id b14mr11739945ilc.36.1604347304452; Mon, 02 Nov 2020 12:01:44 -0800 (PST) Received-SPF: pass client-ip=2607:f8b0:4864:20::135; envelope-from=exv@google.com; helo=mail-il1-x135.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -175 X-Spam_score: -17.6 X-Spam_bar: ----------------- X-Spam_report: (-17.6 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5 autolearn=ham autolearn_force=no X-Spam_action: no action 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:258635 Archived-At: Hello, Internally at Google, we have a wrapper performing an ediff merge with emacs/emacsclient which blocks until the merge operation has completed. It automatically handles edge cases such as creating a new frame over ssh in tty mode or being invoked as an emacs subprocess. I think it would be really useful to upstream a tool like this, given that using emacs as a merge tool that can be invoked by software such as mercurial or perforce can be very fiddly or have unexpected behavior. The biggest caveat is that the internal tool is written in golang, and I imagine that you will want it to be rewritten to C. So before I go and do that, I would like to gauge interest in distributing such a wrapper alongside emacsclient and the like. What do you think? Best, Eliza