From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48639) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fwwIF-0001mx-HX for guix-patches@gnu.org; Mon, 03 Sep 2018 17:21:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fww4s-000264-Af for guix-patches@gnu.org; Mon, 03 Sep 2018 17:08:08 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:39643) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fww4o-00021j-JB for guix-patches@gnu.org; Mon, 03 Sep 2018 17:08:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fww4o-0007Sy-9M for guix-patches@gnu.org; Mon, 03 Sep 2018 17:08:02 -0400 Subject: [bug#32538] [PATCH] Add emacs-elpy Resent-Message-ID: From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <87sh304d56.fsf@apteryx.i-did-not-set--mail-host-address--so-tickle-me> Date: Mon, 03 Sep 2018 23:07:03 +0200 In-Reply-To: <87sh304d56.fsf@apteryx.i-did-not-set--mail-host-address--so-tickle-me> (Maxim Cournoyer's message of "Mon, 27 Aug 2018 01:00:37 -0400") Message-ID: <878t4iwars.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Maxim Cournoyer Cc: 32538@debbugs.gnu.org Hello Maxim, I didn=E2=80=99t actually try the patch set but on a quick look it LGTM! (Including v2 of the emacs-elpy patch itself.) Maxim Cournoyer skribis: > From 54130c8f5bcf683b1681e1a6c6238421bd0c6459 Mon Sep 17 00:00:00 2001 > From: Maxim Cournoyer > Date: Sun, 26 Aug 2018 23:56:15 -0400 > Subject: [PATCH 2/9] gnu: Add python-toml. > > * gnu/packages/python.scm (python-toml, python2-toml): New variables. [...] > + (home-page "https://github.com/uiri/toml") > + (synopsis "Library for TOML") > + (description > + "@code{toml} is a library for Tom's Obvious, Minimal Language (TOML= ).") > + (license license:expat))) Maybe =E2=80=9Cparser=E2=80=9D instead of =E2=80=9Clibrary=E2=80=9D? > +(define-public python2-toml > + (package-with-python2 python-toml)) There was a loose consensus that if the Python 2 variant isn=E2=80=99t stri= ctly needed, then it=E2=80=99s best not to include it; so I think you can remove= it. > From 46ccd0d7093f9adbe091ec6e7846719e5ad267bf Mon Sep 17 00:00:00 2001 > From: Maxim Cournoyer > Date: Mon, 12 Feb 2018 22:08:03 -0500 > Subject: [PATCH 4/9] gnu: Add emacs-el-x. > > * gnu/packages/emacs.scm (emacs-el-x): New variable. [...] > + (home-page "https://github.com/sigma/el-x") > + (synopsis "Emacs Lisp extensions") > + (description "Defines the @code{dflet} macro to provide the historic > +behavior of @code{flet}, as well as @code{declare-function} stub for old= er > +Emacs.") Full sentence please. :-) > + (arguments > + `(#:phases > + (modify-phases %standard-phases > + (add-before 'check 'set-shell > + ;; Otherwise Emacs shell-file-name is set to "/bin/sh", which= doesn't > + ;; work. > + (lambda _ > + (setenv "SHELL" (which "sh"))))) This still needs to return #t, though I think Mark=E2=80=99s plan is to put= an end to that in the next =E2=80=98core-updates=E2=80=99 cycle. > + (home-page "https://github.com/antonj/Highlight-Indentation-for-Emac= s/") > + (synopsis "Highlighting indentation for Emacs") > + (description "Provides two minor modes to highlight indentation guid= es in Emacs: > +@enumerate > +@item @code{highlight-indentation-mode}, which displays guidelines > +indentation (space indentation only). > +@item @code{ighlight-indentation-current-column-mode}, which displays gu= idelines for the current-point indentation (space indentation only). ^ Typo. > + (arguments > + `(#:include (cons* "^elpy\\/" "^snippets\\/" %default-include) > + #:phases > + ;; TODO: Make `elpy-config' display Guix commands :) > + (modify-phases %standard-phases > + ;; One elpy test depends on being run inside a Python virtual > + ;; environment to pass. We have nothing to gain from doing so h= ere, > + ;; so we just trick Elpy into thinking we are (see: > + ;; https://github.com/jorgenschaefer/elpy/pull/1293). > + (add-before 'check 'fake-virtualenv > + (lambda _ > + (setenv "VIRTUAL_ENV" "/tmp"))) > + ;; TODO: Remove after next release (see: > + ;; https://github.com/jorgenschaefer/elpy/pull/1293). > + (add-after 'unpack 'fix-broken-test > + (lambda _ > + (substitute* "test/elpy-config-test.el" > + (("python-check-command") "elpy-syntax-check-command"))))) Likewise for phase return values. > + (home-page "https://github.com/jorgenschaefer/elpy") > + (synopsis "Python development environment for Emacs") > + (description "Elpy brings powerful Python editing to Emacs. It comb= ines > +and configures a number of other packages written in Emacs Lisp as well > +as Python.") If you could expound a little bit on the features (completion? navigation? refactoring?), that would be great. Otherwise LGTM, thanks! Ludo=E2=80=99.