unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Editing Scheme in the installation image
@ 2017-01-05 23:05 Ludovic Courtès
  2017-01-06  1:54 ` Kei Kebreau
                   ` (3 more replies)
  0 siblings, 4 replies; 12+ messages in thread
From: Ludovic Courtès @ 2017-01-05 23:05 UTC (permalink / raw)
  To: guix-devel; +Cc: Mike Gran

[-- Attachment #1: Type: text/plain, Size: 532 bytes --]

Hello Guix!

One issue that’s often reported is that it’s inconvenient to edit the
config file with all its parentheses in the installation image given the
available options (Zile, Nano, and nvi).

Something like Paredit and ‘show-paren-mode’ in Emacs would help avoid
mistakes such as unbalanced parenthesis.  However ‘emacs-minimal’ takes
180 MiB and it would be unreasonable to include it.

So I figured we could use Zile-on-Guile¹ (yes!) and extend it to have
something that resembles Paredit, like:


[-- Attachment #2: Type: text/x-scheme, Size: 259 bytes --]

;; Poor developer’s Paredit.

(define (paredit-open-paren)
  (insert "()")
  (backward-char))

(define (paredit-close-paren)
  (unless (search-forward ")")
    (insert ")")))

(set-key "(" 'paredit-open-paren)
(set-key ")" 'paredit-close-paren)

[-- Attachment #3: Type: text/plain, Size: 400 bytes --]


Of course, it takes more than these few lines to write a real Paredit,
but still, wouldn’t it be cool?  :-)

What do people (Mike in particular!) think?

Ludo’.

¹ https://www.gnu.org/software/guix/packages/z.html#zile-on-guile

PS: The closure of Zile-on-Guile is 103 MiB, but Zile-on-Guile itself is
    only 400K and its dependencies are already in the installation
    image.

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2017-01-09  9:10 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-05 23:05 Editing Scheme in the installation image Ludovic Courtès
2017-01-06  1:54 ` Kei Kebreau
2017-01-06  9:09 ` Ricardo Wurmus
2017-01-06 13:49 ` Mike Gran
2017-01-07 11:54   ` Ludovic Courtès
2017-01-07 22:44     ` Maxim Cournoyer
2017-01-08 10:48       ` Ludovic Courtès
2017-01-08 18:43         ` Mike Gran
2017-01-08 22:43           ` Ludovic Courtès
2017-01-09  1:27             ` Christopher Allan Webber
2017-01-09  9:10               ` Ludovic Courtès
2017-01-07 16:00 ` Christopher Allan Webber

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).