Hello Ludovic! ludo@gnu.org (Ludovic Courtès) writes: > Hello Maxim, > > I didn’t 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 “parser” instead of “library”? I've settled for this, taking inspiration from their project's page: - "@code{toml} is a library for Tom's Obvious, Minimal Language (TOML).") + "@code{toml} is a library for parsing and creating Tom's Obvious, Minimal +Language (TOML) configuration files.") >> +(define-public python2-toml >> + (package-with-python2 python-toml)) > > There was a loose consensus that if the Python 2 variant isn’t strictly > needed, then it’s best not to include it; so I think you can remove it. Removed. >> 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 older >> +Emacs.") > > Full sentence please. :-) It now reads as: - (description "Defines the @code{dflet} macro to provide the historic -behavior of @code{flet}, as well as @code{declare-function} stub for older -Emacs.") + (description "command@{emacs-el-x} defines the @code{dflet} macro to +provide the historic behavior of @code{flet}, as well as +@code{declare-function} stub for older Emacs.") >> + (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’s plan is to put an > end to that in the next ‘core-updates’ cycle. Done. > >> + (home-page "https://github.com/antonj/Highlight-Indentation-for-Emacs/") >> + (synopsis "Highlighting indentation for Emacs") >> + (description "Provides two minor modes to highlight indentation guides in Emacs: >> +@enumerate >> +@item @code{highlight-indentation-mode}, which displays guidelines >> +indentation (space indentation only). >> +@item @code{ighlight-indentation-current-column-mode}, which displays guidelines for the current-point indentation (space indentation only). > ^ > Typo. Fixed. >> + (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 here, >> + ;; 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. Fixed! > >> + (home-page "https://github.com/jorgenschaefer/elpy") >> + (synopsis "Python development environment for Emacs") >> + (description "Elpy brings powerful Python editing to Emacs. It combines >> +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. It now reads as: -and configures a number of other packages written in Emacs Lisp as well -as Python.") +and configures a number of other packages written in Emacs Lisp as well as +Python, together offering features such as navigation, documentation, +completion, interactive development and more.") I'm resending the modified full series of patches as v3, for ease of use. Thank you for reviewing! Maxim