From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: phillip.lord@russet.org.uk (Phillip Lord) Newsgroups: gmane.emacs.help Subject: Re: Any cool uses of Lentic? Date: Wed, 27 Apr 2016 17:32:58 +0100 Message-ID: <87oa8vqaf9.fsf@russet.org.uk> References: <874manawag.fsf@torysa-worldsendless.byu.edu> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1461774813 29746 80.91.229.3 (27 Apr 2016 16:33:33 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 27 Apr 2016 16:33:33 +0000 (UTC) Cc: Emacs Help List To: "Tory S. Anderson" Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Wed Apr 27 18:33:21 2016 Return-path: Envelope-to: geh-help-gnu-emacs@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 1avSOu-0003E7-Of for geh-help-gnu-emacs@m.gmane.org; Wed, 27 Apr 2016 18:33:20 +0200 Original-Received: from localhost ([::1]:44208 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1avSOt-0008TD-Rn for geh-help-gnu-emacs@m.gmane.org; Wed, 27 Apr 2016 12:33:19 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48169) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1avSOe-0008N8-Ak for help-gnu-emacs@gnu.org; Wed, 27 Apr 2016 12:33:05 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1avSOb-0003xF-4j for help-gnu-emacs@gnu.org; Wed, 27 Apr 2016 12:33:04 -0400 Original-Received: from cloud103.planethippo.com ([31.216.48.48]:53220) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1avSOa-0003wf-S8 for help-gnu-emacs@gnu.org; Wed, 27 Apr 2016 12:33:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=g7BZuPTybQgoGNPnMMzKH9XLqkihUKsIAgo4/AHAq9E=; b=rye/JaLs9MFkJDvd6UylQ0M4yD ybo69HiCMdz6qGTldvEzgGRYI9EpmMHG/1e+WysLiox4ep4webNIWQcDA1qt4LsFHVMGDzZuM4YxD lRDkc8wYFZHZ/wqfSxRoSWbJq2iVvj9eEui2sAwWJcaJh1//ozOt4BYp+NM1/EL2QqQscFelwNWbK vNz3lCj3HF36sAFlygK/qF8xMIGTeHzWa07Hk8vYKS4omN7plYs7IDei9GNEcAk+IOrJd9CkCrt0H fZZ2XOCTFeSddq9W44fQkGIvvLx39+ekDLD+sL36jVlKXkZ6VtvGyrwOq7Z7+WI20u9tyAyTQzPmR Q+JPlTgw==; Original-Received: from janus-nat-128-240-225-60.ncl.ac.uk ([128.240.225.60]:33037 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1avSOZ-002Ie0-L7; Wed, 27 Apr 2016 17:32:59 +0100 In-Reply-To: <874manawag.fsf@torysa-worldsendless.byu.edu> (Tory S. Anderson's message of "Wed, 27 Apr 2016 09:47:19 -0600") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 31.216.48.48 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.21 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.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.org gmane.emacs.help:109808 Archived-At: "Tory S. Anderson" writes: > Looking at Lentic[1] it seems like something that has been thought out and > well developed, Thank you! > but I feel I'm missing awesomeness that I know must be there. How is > it more than only a shortcut for indirect buffers? > > Footnotes: [1] https://github.com/phillord/lentic The main problem with indirect buffers is that the two buffers share exactly the same text (in the context of Emacs this also means text properties which is why they tend to break for multi-modal usage, for example). Lentic allows you have text with any relationship you want; I have a silly example, where the two buffers contain the rot13'd text for each other. The main use, though, is that you can transform for example text so that in one buffer it is an entirely valid program, while in the other it's valid org mode, (or latex or anything else). I use it for documenting lentic.el itself. You can see the video for how this appears: https://vimeo.com/116078853 and the output of this here: http://homepages.cs.ncl.ac.uk/phillip.lord/lentic/lenticular.html My motivating use case was to combine Clojure with documentation. Here, for example is a tutorial on for my Tawny-OWL library: https://github.com/phillord/tawny-tutorial which is written in Clojure with comments in asciidoc. The end result of this (turned into slides) is here: http://homepages.cs.ncl.ac.uk/jennifer.warrender/swat4ls_2015/2015_swat4ls.html So, lentic can be a replacement for indirect buffers, can support multi-modal editing (without needing support for either mode), and can do a form of literate programming, build directly into the editor. It's actually surprisingly easy to use and intuitive to use in practice. It seems to be rather harder to explain what it actually does. I remember the same being true of internet, hyperlinks and the web, so with any luck lentic will have the same impact. Not holding my breath though. Phil