mirror of
https://https.git.savannah.gnu.org/git/guix.git/
synced 2025-07-16 03:50:45 +02:00
emacs: Add development utils.
* emacs/guix-guile.el (guix-guile-current-module): New function. * emacs/guix-devel.el: New file. * emacs.am (ELFILES): Add it. * doc/emacs.texi (Emacs Development): New node. (Emacs Interface): Add it. * doc/contributing.texi (The Perfect Setup): Mention it. * doc/guix.texi (Top): Add it. * emacs/guix-init.el: Add 'guix-devel-activate-mode-maybe' to 'scheme-mode-hook'.
This commit is contained in:
parent
6f05a24df3
commit
187f80c6c5
7 changed files with 141 additions and 2 deletions
|
@ -121,6 +121,9 @@ facilities to directly operate on the syntax tree, such as raising an
|
|||
s-expression or wrapping it, swallowing or rejecting the following
|
||||
s-expression, etc.
|
||||
|
||||
GNU Guix also comes with a minor mode that provides some additional
|
||||
functionality for Scheme buffers (@pxref{Emacs Development}).
|
||||
|
||||
|
||||
@node Coding Style
|
||||
@section Coding Style
|
||||
|
|
|
@ -12,7 +12,8 @@ Guix convenient and fun.
|
|||
* Popup Interface: Emacs Popup Interface. Magit-like interface for guix commands.
|
||||
* Prettify Mode: Emacs Prettify. Abbreviating @file{/gnu/store/@dots{}} file names.
|
||||
* Build Log Mode: Emacs Build Log. Highlighting Guix build logs.
|
||||
* Completions: Emacs Completions. Completing @command{guix} shell command.
|
||||
* Completions: Emacs Completions. Completing @command{guix} shell command.
|
||||
* Development: Emacs Development. Tools for Guix developers.
|
||||
@end menu
|
||||
|
||||
|
||||
|
@ -637,3 +638,25 @@ something:
|
|||
@item @code{guix lint --checkers=synopsis,des}@key{TAB}
|
||||
|
||||
@end itemize
|
||||
|
||||
|
||||
@node Emacs Development
|
||||
@section Development
|
||||
|
||||
By default, when you open a Scheme file, @code{guix-devel-mode} will be
|
||||
activated (if you don't want it, set @code{guix-devel-activate-mode} to
|
||||
nil). This minor mode provides the following key bindings:
|
||||
|
||||
@table @kbd
|
||||
|
||||
@item C-c . k
|
||||
Copy the name of the current Guile module into kill ring
|
||||
(@code{guix-devel-copy-module-as-kill}).
|
||||
|
||||
@item C-c . u
|
||||
Use the current Guile module. Often after opening a Scheme file, you
|
||||
want to use a module it defines, so you switch to the Geiser REPL and
|
||||
write @code{,use (some module)} there. You may just use this command
|
||||
instead (@code{guix-devel-use-module}).
|
||||
|
||||
@end table
|
||||
|
|
|
@ -113,7 +113,8 @@ Emacs Interface
|
|||
* Popup Interface: Emacs Popup Interface. Magit-like interface for guix commands.
|
||||
* Prettify Mode: Emacs Prettify. Abbreviating @file{/gnu/store/@dots{}} file names.
|
||||
* Build Log Mode: Emacs Build Log. Highlighting Guix build logs.
|
||||
* Completions: Emacs Completions. Completing @command{guix} shell command.
|
||||
* Completions: Emacs Completions. Completing @command{guix} shell command.
|
||||
* Development: Emacs Development. Tools for Guix developers.
|
||||
|
||||
Programming Interface
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue