From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Matthew Plant Newsgroups: gmane.emacs.devel Subject: Emacs as WM Date: Fri, 8 Aug 2014 13:35:42 -0700 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Trace: ger.gmane.org 1407530173 22605 80.91.229.3 (8 Aug 2014 20:36:13 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 8 Aug 2014 20:36:13 +0000 (UTC) To: "emacs-devel@gnu.org" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Aug 08 22:36:06 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XFqtR-0006xu-I9 for ged-emacs-devel@m.gmane.org; Fri, 08 Aug 2014 22:36:05 +0200 Original-Received: from localhost ([::1]:52984 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XFqtM-0003vt-UN for ged-emacs-devel@m.gmane.org; Fri, 08 Aug 2014 16:36:00 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58404) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XFqtC-0003uK-Ms for emacs-devel@gnu.org; Fri, 08 Aug 2014 16:35:56 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XFqt6-000709-HD for emacs-devel@gnu.org; Fri, 08 Aug 2014 16:35:50 -0400 Original-Received: from mail-lb0-f181.google.com ([209.85.217.181]:51902) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XFqt6-0006zD-9z for emacs-devel@gnu.org; Fri, 08 Aug 2014 16:35:44 -0400 Original-Received: by mail-lb0-f181.google.com with SMTP id 10so4136664lbg.40 for ; Fri, 08 Aug 2014 13:35:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to :content-type; bh=Mi+mzVuGMykS+A5eFfMnaOL1Gk2qbJ1TdSYXeEBkuTk=; b=XbA0Sj1bUV4SOmW0aJk/YRypM5oJc0ebIhVE8WKeFSDpzL9m4RY1hRusNSA1wcK5Ps Q17dL85wK+WbFcAdLMn5duJexIVYAaetlFovw4RtNEN7/PnbtdMOPoZgPKQxNdWG0mtV 9Z6WLnCG3xWjTlWYQCItvk2bvFl58lj1xcOjUlLXKP90RiLzmRKpE9T6X0tYwKCvfw5z rlK+PqEqGexS3nnX2633aowhTR1dmC2i+Jjyork4IRLI8R6TaC0fBe5KZ3M8skuAQoq2 QFOzjavOKBtDq+Vf0p+C1o01+4mTUJW8REqqY6UP7pfZYNwZkVNd3QMnEAiA0ZABNljY 8/uw== X-Gm-Message-State: ALoCoQkmmfSt9ylBcCmfhLq38cqmljGmXelPqiWC27K0RlsCZqSs28sDgeaNU2wmb/AAuCCVnx17 X-Received: by 10.112.35.97 with SMTP id g1mr22970095lbj.20.1407530142394; Fri, 08 Aug 2014 13:35:42 -0700 (PDT) Original-Received: by 10.112.185.99 with HTTP; Fri, 8 Aug 2014 13:35:42 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.85.217.181 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:173492 Archived-At: I was curious about what people on this list thought about application embedding in Emacs. To a degree this is already supported with ansi term, but this obviously doesn't extend to GUI applications. For those of you familiar with Plan 9, think of how programs use the window the terminal they're launched in; embedding GUI apps in Emacs would force the program to run in a window owned by Emacs and fitted into a buffer. The reason why I bring this up is because it would be relatively easy to do in a way that's not very platform agnostic. It's really easy to replace the X libarary (forgive me for not using proper nomenclature; it'd lengthen this email tenfold) window creation functions with one that extends contol over the window. The degree of integration can be controlled by the number of replaced functions. If drawn text wants to be handled specially, those functions would be replaced. Some method can be specified for switching between emacs and the application controlling user input. This has some obvious advantages; for one, Emacs automatically subsumes all editors, including more WYSIWYG editors. Not only that, but Emacs essentially becomes a window manager, which I personally would love. Because some apps, particular web browsers, do not always require special handling of the keyboard, switching between regular Emacs buffers and the special app buffers would be generally seamless. I could imagine myself typing away in one Emacs buffer, momentarily moving to the mouse to click throught some online doxygen in my web browser in the buffer to the right. There are also a lot of disadvantages to this. For one, the applications would be pretty buggy without some effort to re-implement X functions. Also, my co-worker points out that this would be incongrous with the current capabilities of Emacs, one of which is the easy transfer of text betwixt buffers. Getting these two features to work harmoniously would be kind of difficult; lots of wrappers to X/Gnome/whatever text writing functions would have to be made. However, copy and paste would work (I'm guessing) out of the box. I suppose it all boils down to what people want with the future of Emacs. Personally, I would love to turn on my computer and have Emacs be there every step of the way. I genuinely think that Emacs is a great full interface to an OS. It is not a full OS however and never should be, which is why I like this idea as an in-between. -M