From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleh Subject: Re: Screencast of lispy.el with org-mode code base Date: Fri, 14 Mar 2014 15:38:57 +0100 Message-ID: References: <87wqga44wv.fsf@bzg.ath.cx> <87wqfxows5.fsf@bzg.ath.cx> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49241) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WOTGG-0001s0-8z for emacs-orgmode@gnu.org; Fri, 14 Mar 2014 10:39:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WOTGF-0006zT-BU for emacs-orgmode@gnu.org; Fri, 14 Mar 2014 10:39:00 -0400 In-Reply-To: <87wqfxows5.fsf@bzg.ath.cx> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Bastien Cc: org mode >> The package provides a key binding method that can work effectively >> only for a Lisp-like language: Elisp, Scheme, Common Lisp and Clojure >> all fit here. > > I better understand the name then. > > Looks like quite a big project already. Yes, it's my biggest yet. > Each time I tried paredit, I could not stand it for more than > a few minutes, I've not been patient so far, especially since > `electric-pair-mode' is now on by default and does 90% of what > I need. That's how I've started to write lispy: with 3 functions for inserting pairs and a re-bind of `forward-list`/`backward-list` to "]"/"[". > But I may look at other solutions than paredit (being conscious > your librarie goes far beyond that.) Sure. Not everyone likes paredit (at first:). That's why each locally bound function in lispy is constructed from a regular interactive function: so you can use them without turning on the minor mode. But somehow paredit together with other powerful tools becomes more than the sum of its parts: paredit + multiple-cursors allows easy refactors of repeated information, lispy store region + ediff makes for easier and faster diffs, and lispy narrowing + ace-jump-mode symbol selection + iedit allows to rename variables faster. And of course it's nice to keep some specialty tools handy: `lispy-multiline` ("M") may not seem like much, but it's great after a `macroexpand-all`. And look at `lispy-flatten` ("xf"): |(org-defkey org-mode-map [(meta up)] 'org-metaup) -> |(define-key org-mode-map (org-key [(meta up)]) 'org-metaup) Nifty, right? regards, Oleh