1 |
commit: 3fea7beee694cc0d1e63127e4a6aef19128fd99b |
2 |
Author: Chema Alonso Josa <nimiux <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Apr 8 15:40:07 2018 +0000 |
4 |
Commit: José María Alonso <nimiux <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Apr 8 15:40:07 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/lisp.git/commit/?id=3fea7bee |
7 |
|
8 |
app-emacs/slime: Fixes doc build |
9 |
|
10 |
.../slime/files/slime-2.20-fix-doc-build.patch | 94 ++++++++++++++++++++++ |
11 |
app-emacs/slime/files/swank-loader.lisp | 4 - |
12 |
app-emacs/slime/metadata.xml | 43 ++++++++++ |
13 |
app-emacs/slime/slime-2.20.ebuild | 18 +++-- |
14 |
4 files changed, 148 insertions(+), 11 deletions(-) |
15 |
|
16 |
diff --git a/app-emacs/slime/files/slime-2.20-fix-doc-build.patch b/app-emacs/slime/files/slime-2.20-fix-doc-build.patch |
17 |
new file mode 100644 |
18 |
index 00000000..c95608c7 |
19 |
--- /dev/null |
20 |
+++ b/app-emacs/slime/files/slime-2.20-fix-doc-build.patch |
21 |
@@ -0,0 +1,94 @@ |
22 |
+diff -Nuar a/doc/slime.texi b/doc/slime.texi |
23 |
+--- a/doc/slime.texi 2017-08-28 13:51:57.000000000 +0200 |
24 |
++++ b/doc/slime.texi 2018-04-08 17:21:16.004697168 +0200 |
25 |
+@@ -1219,7 +1219,8 @@ |
26 |
+ Describe the slot at point. |
27 |
+ |
28 |
+ @kbditem{e, slime-inspector-eval} |
29 |
+-Evaluate an expression in the context of the inspected object. |
30 |
++Evaluate an expression in the context of the inspected object. The |
31 |
++variable @code{*} will be bound to the inspected object. |
32 |
+ |
33 |
+ @kbditem{v, slime-inspector-toggle-verbose} |
34 |
+ Toggle between verbose and terse mode. Default is determined by |
35 |
+@@ -1250,8 +1251,7 @@ |
36 |
+ Store the value under point in the variable `*'. This can |
37 |
+ then be used to access the object in the REPL. |
38 |
+ |
39 |
+-@kbditempair{TAB, S-TAB, slime-inspector-next-inspectable-object, |
40 |
+-slime-inspector-previous-inspectable-object} |
41 |
++@kbditempair{TAB, S-TAB, slime-inspector-next-inspectable-object, slime-inspector-previous-inspectable-object} |
42 |
+ |
43 |
+ Jump to the next and previous inspectable object respectively. |
44 |
+ |
45 |
+@@ -2016,7 +2016,7 @@ |
46 |
+ On the emacs side you will use something like |
47 |
+ @example |
48 |
+ (setq slime-net-coding-system 'utf-8-unix) |
49 |
+-(slime-connect "127.0.0.1" 4005)) |
50 |
++(slime-connect "localhost" 4005)) |
51 |
+ @end example |
52 |
+ to connect to this lisp image from the same machine. |
53 |
+ |
54 |
+@@ -2028,7 +2028,7 @@ |
55 |
+ remote machine. |
56 |
+ |
57 |
+ @example |
58 |
+-ssh -L4005:127.0.0.1:4005 username@@remote.example.com |
59 |
++ssh -L4005:localhost:4005 username@@remote.example.com |
60 |
+ @end example |
61 |
+ |
62 |
+ That ssh invocation creates an ssh tunnel between the port 4005 on our |
63 |
+@@ -2044,9 +2044,9 @@ |
64 |
+ @end example |
65 |
+ |
66 |
+ The @kbd{RET RET} sequence just means that we want to use the default |
67 |
+-host (@code{127.0.0.1}) and the default port (@code{4005}). Even |
68 |
++host (@code{localhost}) and the default port (@code{4005}). Even |
69 |
+ though we're connecting to a remote machine the ssh tunnel fools Emacs |
70 |
+-into thinking it's actually @code{127.0.0.1}. |
71 |
++into thinking it's actually @code{localhost}. |
72 |
+ |
73 |
+ @c ----------------------- |
74 |
+ @node Setting up pathname translations |
75 |
+@@ -2323,8 +2323,7 @@ |
76 |
+ |
77 |
+ @table @kbd |
78 |
+ |
79 |
+-@kbditempair{C-<up>, C-<down>, |
80 |
+- slime-repl-forward-input, slime-repl-backward-input} |
81 |
++@kbditempair{C-<up>, C-<down>, slime-repl-forward-input, slime-repl-backward-input} |
82 |
+ Go to the next/previous history item. |
83 |
+ |
84 |
+ @kbditempair{M-n, M-p, slime-repl-next-input, slime-repl-previous-input} |
85 |
+@@ -2333,16 +2332,14 @@ |
86 |
+ a row, the second invocation uses the same search pattern (even if the |
87 |
+ current input has changed). |
88 |
+ |
89 |
+-@kbditempair{M-s, M-r, |
90 |
+-slime-repl-next-matching-input, slime-repl-previous-matching-input} |
91 |
++@kbditempair{M-s, M-r, slime-repl-next-matching-input, slime-repl-previous-matching-input} |
92 |
+ Search forward/reverse through command history with regex |
93 |
+ |
94 |
+ @c @code{slime-repl-@{next,previous@}-input}@* |
95 |
+ @c @code{slime-repl-@{next,previous@}-matching-input}@* |
96 |
+ @c @code{comint}-style input history commands. |
97 |
+ |
98 |
+-@kbditempair{C-c C-n, C-c C-p, |
99 |
+-slime-repl-next-prompt, slime-repl-previous-prompt} |
100 |
++@kbditempair{C-c C-n, C-c C-p, slime-repl-next-prompt, slime-repl-previous-prompt} |
101 |
+ Move between the current and previous prompts in the @REPL{} buffer. |
102 |
+ Pressing RET on a line with old input copies that line to the newest |
103 |
+ prompt. |
104 |
+@@ -2655,6 +2652,11 @@ |
105 |
+ If @code{slime-autodoc-use-multiline-p} is set to non-nil, |
106 |
+ allow long autodoc messages to resize echo area display. |
107 |
+ |
108 |
++@vindex slime-autodoc-mode-string |
109 |
++@code{slime-autodoc-mode-string} is a string that will be displayed in |
110 |
++the mode line when autodoc-mode is enabled, or nil, if you prefer no |
111 |
++indication. You can customize this variable. |
112 |
++ |
113 |
+ @node ASDF |
114 |
+ @section ASDF |
115 |
+ |
116 |
|
117 |
diff --git a/app-emacs/slime/files/swank-loader.lisp b/app-emacs/slime/files/swank-loader.lisp |
118 |
deleted file mode 100644 |
119 |
index 4d9b1573..00000000 |
120 |
--- a/app-emacs/slime/files/swank-loader.lisp |
121 |
+++ /dev/null |
122 |
@@ -1,4 +0,0 @@ |
123 |
- |
124 |
-;; This file is NOT part of SLIME |
125 |
- |
126 |
-(asdf:oos 'asdf:load-op :swank) |
127 |
|
128 |
diff --git a/app-emacs/slime/metadata.xml b/app-emacs/slime/metadata.xml |
129 |
new file mode 100644 |
130 |
index 00000000..17cb00f7 |
131 |
--- /dev/null |
132 |
+++ b/app-emacs/slime/metadata.xml |
133 |
@@ -0,0 +1,43 @@ |
134 |
+<?xml version="1.0" encoding="UTF-8"?> |
135 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
136 |
+<pkgmetadata> |
137 |
+<maintainer type="project"> |
138 |
+ <email>gnu-emacs@g.o</email> |
139 |
+ <name>Gentoo GNU Emacs project</name> |
140 |
+</maintainer> |
141 |
+<maintainer type="project"> |
142 |
+ <email>common-lisp@g.o</email> |
143 |
+ <name>Gentoo Common Lisp Project</name> |
144 |
+</maintainer> |
145 |
+<longdescription> |
146 |
+ SLIME: The Superior Lisp Interaction Mode for Emacs. SLIME is a |
147 |
+ fresh, new Emacs mode for Common Lisp development inspired by existing |
148 |
+ systems such Emacs Lisp and ILISP. Feature highlights include: |
149 |
+ |
150 |
+ * slime-mode: An Emacs minor-mode to enhance lisp-mode with: |
151 |
+ o Code evaluation, compilation, and macroexpansion. |
152 |
+ o Online documentation (describe, apropos, hyperspec). |
153 |
+ o Definition finding (aka Meta-Point aka M-.). |
154 |
+ o Symbol and package name completion. |
155 |
+ o Automatic macro indentation based on &body. |
156 |
+ o Cross-reference interface (WHO-CALLS, etc). |
157 |
+ o ... and more. |
158 |
+ |
159 |
+ * SLDB: Common Lisp debugger with an Emacs-based user interface. |
160 |
+ |
161 |
+ * REPL: The Read-Eval-Print Loop ("top-level") is written in Emacs |
162 |
+ Lisp for tighter integration with Emacs. The REPL also has builtin |
163 |
+ "shortcut" commands similar those of the McCLIM Listener. |
164 |
+ |
165 |
+ * Compilation notes: SLIME is able to take compiler messages and |
166 |
+ annotate them directly into source buffers. |
167 |
+ |
168 |
+ * Inspector: Interactive object-inspector in an Emacs buffer. |
169 |
+</longdescription> |
170 |
+<use> |
171 |
+ <flag name="xref">Install xref.lisp cross-referencing tool</flag> |
172 |
+</use> |
173 |
+<upstream> |
174 |
+ <remote-id type="github">slime/slime</remote-id> |
175 |
+</upstream> |
176 |
+</pkgmetadata> |
177 |
|
178 |
diff --git a/app-emacs/slime/slime-2.20.ebuild b/app-emacs/slime/slime-2.20.ebuild |
179 |
index b8a5bdb9..73d436c1 100644 |
180 |
--- a/app-emacs/slime/slime-2.20.ebuild |
181 |
+++ b/app-emacs/slime/slime-2.20.ebuild |
182 |
@@ -3,7 +3,7 @@ |
183 |
|
184 |
EAPI=6 |
185 |
|
186 |
-inherit elisp eutils |
187 |
+inherit elisp |
188 |
|
189 |
DESCRIPTION="SLIME, the Superior Lisp Interaction Mode (Extended)" |
190 |
HOMEPAGE="http://common-lisp.net/project/slime/" |
191 |
@@ -25,22 +25,26 @@ CLPACKAGE=swank |
192 |
CLSYSTEMS=swank |
193 |
SITEFILE=70${PN}-gentoo.el |
194 |
|
195 |
+PATCHES=( |
196 |
+ # Should be fixed in >=app-emacs/slime-2.20 |
197 |
+ "${FILESDIR}/${PN}-2.20-fix-doc-build.patch" |
198 |
+) |
199 |
+ |
200 |
src_prepare() { |
201 |
+ default |
202 |
# Remove xref.lisp (which is non-free) unless USE flag is set |
203 |
use xref || rm -f xref.lisp |
204 |
- eapply_user |
205 |
} |
206 |
|
207 |
src_compile() { |
208 |
elisp-compile *.el || die |
209 |
BYTECOMPFLAGS="${BYTECOMPFLAGS} -L contrib -l slime" \ |
210 |
elisp-compile contrib/*.el lib/*.el || die |
211 |
- emake -j1 -C doc slime.info || die "Cannot build info docs" |
212 |
|
213 |
- #if use doc; then |
214 |
- # VARTEXFONTS="${T}"/fonts \ |
215 |
- # emake -j1 -C doc slime.pdf || die "emake doc failed" |
216 |
- #fi |
217 |
+ if use doc ; then |
218 |
+ VARTEXFONTS="${T}"/fonts \ |
219 |
+ emake -C doc all |
220 |
+ fi |
221 |
} |
222 |
|
223 |
src_install() { |