1 2009-11-02 Sean O'Rourke <seano@cs.ucla.edu>
3 * lib/Sepia.pm (location): change to work on only one location,
4 since that's how it's used.
5 (define_shortcuts): tweak.
6 (repl_setup): fix $REPL_LEVEL bug.
7 (repl,repl_quit): make quitting from restarted REPLs.
9 2009-10-28 Sean O'Rourke <seano@cs.ucla.edu>
11 * sepia.el (sepia-indent-or-complete): work around bug where
12 expand-abbrev returns nil even though it expanded.
13 (sepia-looks-like-module): use xref-apropos-module.
15 2009-10-19 Sean O'Rourke <seano@cs.ucla.edu>
17 * sepia-cpan.el (sepia-cpan-mode-map): initialize in definition;
21 2009-10-18 Sean O'Rourke <seano@cs.ucla.edu>
23 * lib/Sepia/CPAN.pm (group_by_dist): better heuristic.
24 * lib/Sepia.pm (repl_reload, repl_full_reload, full_reload):
25 support "reload" and "freload" shortcuts.
26 * lib/Sepia/Debug.pm (xreturn, repl_xreturn): return-from-context,
30 2009-10-12 Sean O'Rourke <seano@cs.ucla.edu>
32 * sepia.el (sepia-symbol-info): tweak on module names.
33 (sepia-apropos-module): new function.
34 (sepia-perlize-region,sepia-perl-ne-region): interactive prompt fix
36 2009-07-22 Sean O'Rourke <seano@cs.ucla.edu>
38 * sepia-cpan.el (sepia-cpan-doc): make browser pop up in other
41 2009-07-18 Sean O'Rourke <seano@cs.ucla.edu>
43 * lib/Sepia.pm (filter_exact_prefix): new function to improve
46 2009-07-07 Sean O'Rourke <seano@cs.ucla.edu>
48 * lib/Sepia.pm (save,load,repl_save,repl_load): Persist
52 2009-07-05 Sean O'Rourke <seano@cs.ucla.edu>
54 * sepia.el (sepia-rename-lexical): New function; a small wrapper
55 around query-replace(-regexp).
57 2009-05-03 Sean O'Rourke <seano@cs.ucla.edu>
59 * t/02completion.t (ok_comp): adjust for completion changes.
60 * sepia.texi: Variable index.
62 2009-03-18 Sean O'Rourke <seano@cs.ucla.edu>
64 * lib/Sepia.pm (repl_help): fix formatting with "help CMD"
65 (repl_size): sort by size
67 2008-12-17 Sean O'Rourke <seano@cs.ucla.edu>
69 * sepia.texi (Completion): we do lexicals.
70 * lib/Sepia.pm (lexical_completions): new function.
71 (completions): use it.
72 * sepia.el (sepia-function-at-point): return nil outside subs.
73 (sepia-interactive-arg): fix call to xref-completions.
75 2008-07-22 Sean O'Rourke <seano@cs.ucla.edu>
77 * sepia.el (sepia-scratch-send-line): change to use REPL printer.
79 2008-07-09 Sean O'Rourke <seano@cs.ucla.edu>
80 * sepia.el (sepia-indent-line): new function. Let-bind
81 beginning-of-defun-function for cperl-indent-line.
83 2008-06-29 Sean O'Rourke <seano@cs.ucla.edu>
85 * sepia.el (sepia-cont-or-restart): new function to restart
87 * sepia-cpan.el (sepia-cpan-do-{desc,recommend}): oops.
88 (sepia-cpan-make-buffer): better column widths
89 * lib/Sepia.pm (repl_size): skip %SIG to avoid segfaults.
90 * lib/sepia/CPAN.pm (group_by_dist): only list "main" module in
91 each distribution, and sort them.
93 2008-06-20 Sean O'Rourke <seano@cs.ucla.edu>
96 * lib/Sepia.pm: fix use of defined().
98 2008-06-17 Sean O'Rourke <seano@cs.ucla.edu>
100 * lib/Sepia.pm (repl_who,repl_size): turn off added 5.10 strictures.
102 2008-05-11 Sean O'Rourke <seano@cs.ucla.edu>
104 * sepia.texi (Mutilation): updated CPAN documentation.
105 * sepia-cpan.el (sepia-cpan-desc): add search-by-description
106 (sepia-cpan-mode-map): fix keybindings.
107 * lib/Sepia/CPAN.pm: have ls/_ls, etc call interesting_parts
109 2008-05-10 Sean O'Rourke <seano@cs.ucla.edu>
112 * sepia-cpan.el (sepia-cpan-list, sepia-cpan-make-buffer)
113 (sepia-cpan-search): added list-by-author, refactored.
114 (sepia-cpan-readme): insert temp file rather than passing as
116 * lib/Sepia/CPAN.pm (ls): new function to list author's modules.
117 * lib/Sepia/Debug.pm (repl_finish): mostly-working, by adding 0x10
118 to $^P and looking at sub's last line.
120 2008-01-10 Sean O'Rourke <seano@cs.ucla.edu>
122 * lib/Sepia.pm (columnate): true -> defined
124 * sepia-cpan.el: new file, experimental CPAN interface.
125 * lib/Sepia/CPAN.pm: new file.
127 2008-01-05 Sean O'Rourke <seano@cs.ucla.edu>
129 * README: remove redundant/obsolete documentation
131 2008-01-02 Sean O'Rourke <seano@cs.ucla.edu>
133 * lib/Sepia.pm (flow): get closer to margin.
135 2007-12-22 Sean O'Rourke <seano@cs.ucla.edu>
137 * t/50expect.t: mysterious change to placate expect.
138 * sepia.el (sepia-shared-map): adjust bindings.
139 (sepia-complete-symbol): Fix shortcut completion.
140 * sepia-snippet.el (sepia-snippet-abbrev): make snippet optional,
143 2007-12-20 Sean O'Rourke <seano@cs.ucla.edu>
145 * lib/Sepia.pm (who): don't apply regex to sigil.
146 (completions): fix multi-arg version (used by Emacs).
147 (html_module_list,html_package_list): return string if asked.
149 2007-12-17 Sean O'Rourke <seano@cs.ucla.edu>
151 * sepia.el (sepia-shared-map): bind cperl-perldoc.
153 2007-12-16 Sean O'Rourke <seano@cs.ucla.edu>
155 * Makefile.PL (test_for): use MakeMaker's prompt().
157 2007-12-13 Sean O'Rourke <seano@cs.ucla.edu>
159 * sepia.el (sepia-complete-symbol): add shortcut completion.
160 improve XEmacs compatibility.
161 * sepia-w3m.el (sepia-w3m-create-imenu): new function, disabled by
163 * lib/Sepia.pm (repl_*): don't look at return values; use "last
166 2007-11-29 Sean O'Rourke <seano@cs.ucla.edu>
168 * t/02completion.t: new completion tests.
169 * lib/Sepia.pm (completions): rewrote to simplify.
171 2007-11-28 Sean O'Rourke <seano@cs.ucla.edu>
173 * lib/Sepia.pm (printer): Don't sort arrays when printing.
175 * lib/sepia/Debug.pm (warn,die): use Carp for 5.10 compatibility.
176 * Makefile.PL (test_for): $|=1 if prompting.
178 2007-11-27 Sean O'Rourke <seano@cs.ucla.edu>
180 * sepia.el (sepia-perldoc-this): test for w3m when called.
183 * t/01basic.t (Sepia): fix tests w/o Module::Info.
185 2007-11-26 Sean O'Rourke <seano@cs.ucla.edu>
188 * lib/sepia/Debug.pm (add_repl_commands): use define_shortcut.
190 (add_debug_repl_commands): new function.
193 * lib/Sepia.pm (define_shortcut): new function.
194 (define_shortcut): new function.
195 (repl_help): auto-format help text; add arg.
196 (repl_reload): decrement $REPL_LEVEL.
197 (completions): fix abbrev completion.
198 (repl): read ~/.sepiarc; use define_shortcuts.
199 (repl_format): show current if no argument.
200 (module_info): optional dependency.
202 2007-11-08 Sean O'Rourke <seano@cs.ucla.edu>
205 * lib/Sepia/Xref.pm: POD fixup.
206 * sepia.el (sepia-ensure-process): fix stupid attachtty mistake.
208 2007-11-05 Sean O'Rourke <seano@cs.ucla.edu>
210 * lib/sepia/Debug.pm (repl_break): allow "0" as a break condition.
212 2007-10-31 Sean O'Rourke <seano@cs.ucla.edu>
214 * lib/Sepia.pm (repl_size): ",size" command to list variable sizes,
215 like Matlab's "whos".
217 2007-10-16 Sean O'Rourke <seano@cs.ucla.edu>
221 * lib/Sepia.pm (repl_pwd): add ",pwd" shortcut.
222 (repl_who): use current package when only regex given.
224 * sepia.el (sepia-repl,sepia-ensure-process): add remote
225 connection with attachtty.
226 (sepia-shared-map): bind \C-c\C-e to eval-expression.
227 (sepia-symbol-info): be more selective about "core version".
229 2007-09-25 Sean O'Rourke <sorourke@cs.ucsd.edu>
231 * lib/Sepia.pm (printer): remove "=>" -- it's annoying.
233 2007-09-21 Sean O'Rourke <sorourke@cs.ucsd.edu>
235 * sepia.el (sepia-load-file): disable debugger.
236 (sepia-symbol-info): be pickier about module core versions.
238 2007-09-20 Sean O'Rourke <sorourke@cs.ucsd.edu>
240 * lib/Sepia.pm (repl_who): use current package if only one arg
241 given, and it's not an existing package.
243 2007-09-18 Sean O'Rourke <sorourke@cs.ucsd.edu>
245 * sepia.el (sepia-watch-for-eval): fix hang with recursive sepia-eval.
247 2007-07-25 Sean O'Rourke <sorourke@cs.ucsd.edu>
249 * sepia.el (sepia-interactive-arg): use xref-completions rather
250 than xref-apropos for working completion.
252 2007-07-25 Ye Wenbin <wenbinye@gmail.com>
254 * sepia.el (sepia-defun-around-point): change the command to a
255 function, because as a command it does nothing.
256 (define-modinfo-function, sepia-maybe-echo): the interactive-p
257 is not true when call as function.
258 (define-modinfo-function, sepia-init): some modinfo-function
259 should eval in a list-context.
260 (sepia-mode): use cperl-mode-abbrev-table as current local-abbrev-table
262 2007-07-24 Ye Wenbin <wenbinye@gmail.com>
264 * sepia.el (sepia-set-found): Use (OFFSET . LIST) to represent
266 (sepia-next, sepia-previous): more generic move commands
267 (sepia-refiner): remove the test, because sometimes use the
268 same declaration, but found in difference place.
270 * sepia-tree.el (sepia-tree-button-cb): widget => pw and
271 xref-location return a list of posible locations.
272 (sepia-tree-tidy-buffer, sepia-tree-use-image): Let user
273 to choose whether use image or not. Set it to a buffer-local
274 variable, so that it didn't interference global values.
276 * sepia.el (sepia-extract-def): seem an argument is excessive
278 * sepia-tree.el (sepia-build-tree-buffer): In my emacs, it
279 doesn't work. The :dynargs didn't become the tree-widget
280 :expander. The tree-widget-convert-widget only receive the
281 'tree-widget, not the total list.
282 sepia-install-keys not defined.
284 * lib/Sepia/Xref.pm (file_modules): seem it is a typo error to use
285 Module::Include rather than Module::Info.
286 Module::Info::packages_inside return an array, the operator
287 || will force in a scalar context.
289 * sepia.el (sepia-lisp-to-perl): use "'" to quote string is not
290 enough, because the string may also contain "'" inside.
291 use (format "%S" string) instead.
292 (define-sepia-query): `sepia-set-found' accept a symbol as
293 argument, not (quote symbol).
295 2007-06-09 Sean O'Rourke <sorourke@cs.ucsd.edu>
298 * sepia.el (sepia-shared-map, etc.): fix keymap initialization.
300 2007-06-06 Sean O'Rourke <sorourke@cs.ucsd.edu>
302 * lib/Sepia/Debug.pm: eval in lexical env when in debugger.
303 * t/50expect.t: REPL tests if you have Test::Expect.
304 * lib/Sepia/Debug.pm: use correct level when none given.
305 * lib/Sepia.pm: No longer bring in exporter (why did we?).
306 * sepia.el (sepia-init): always reinitialize sepia-mode-map.
307 * Makefile.PL: require 5.006 for warnings to quiet stupid "make
310 2007-06-05 Sean O'Rourke <sorourke@cs.ucsd.edu>
312 * Sepia.html: generate single-page manual instead of split.
314 * sepia.el: docstring cleanup.
315 * lib/sepia/Debug.pm: misc usability improvements
317 2007-06-04 Sean O'Rourke <sorourke@cs.ucsd.edu>
320 * test.pl: disable Module::Info tests to avoid Module::Info bug.
322 2007-06-02 Sean O'Rourke <sorourke@cs.ucsd.edu>
325 * Major: replaced comint- with gud-based REPL, use real debugger.
326 * lib/Sepia/Debug.pm: "perl -d" support.
327 * lib/Sepia.pm (repl_shell): new command.
328 * sepia.el (sepia-eval-defun): detect errors, jump to first.
329 (sepia-comint-setup): don't set comint-use-prompt-regexp
330 (sepia-eval-defun,sepia-beginning-of-defun,sepia-end-of-defun): fix
332 2007-06-01 Sean O'Rourke <sorourke@cs.ucsd.edu>
334 * sepia.el (sepia-perldoc-this): don't mess up window
335 configuration when the page isn't found.
336 (sepia-location): use sepia-interactive-arg.
337 (sepia-perl-[np]e-region): fix.
340 (print_dumper): switch format based on size.
342 2007-05-30 Sean O'Rourke <sorourke@cs.ucsd.edu>
343 * sepia.texi: shiny new manual.
344 * lib/Sepia.pm (completions): add special 'VARIABLE' type.
345 (methods): add second $qualified arg.
346 (repl_reload): new function.
347 (sig_warn,repl): override __WARN__ (and __DIE__) cautiously.
348 (repl): nicer warning format.
350 * sepia.el (sepia-eval-raw): stopwarn -> STOPWARN.
351 (sepia-load-file): Fix pop-up error buffer.
352 (sepia-lisp-to-perl): fix quoting of strings.
354 (sepia-mode): make a real major mode.
355 (sepia-scratchpad-mode): ditto.
357 2007-05-29 Sean O'Rourke <sorourke@cs.ucsd.edu>
359 * lib/sepia/Xref.pm (pp_method_named): warn -> dprint.
360 * sepia.el (sepia-simple-method-before-point): new function.
361 (sepia-complete-symbol): use it to complete methods.
363 (sepia-perldoc-function,sepia-view-pod-function,
364 sepia-module-list-function): new variables.
365 (sepia-perldoc-this,sepia-view-pod): new functions.
366 * lib/Sepia.pm (repl): trim leading spaces.
367 (tolisp): escape metacharacters.
368 (repl): don't override "die" if someone has installed a
369 $SIG{__DIE__} handler
371 2007-05-28 Sean O'Rourke <sorourke@cs.ucsd.edu>
374 * sepia.el (sepia-core-version): new function.
375 (sepia-indent-or-complete): fix abbrev expansion.
376 (sepia-symbol-info): report core version in eldoc.
377 (sepia-ident-before-point): new function.
378 (sepia-complete-symbol): use it instead of *-at-point.
379 (sepia-complete-symbol): complete arrays and hashes when '$'
381 * lib/Sepia.pm (printer): Use @::__; distinguish "last as scalar"
382 $__ from printed representation.
383 ($PRINT_PRETTY): columnate lists if this is on.
385 (repl_methods): add regex argument.
387 (completions): Add in package names.
389 2007-05-27 Sean O'Rourke <sorourke@cs.ucsd.edu>
391 * lib/Sepia.pm (repl_methods): fixed.
393 2007-05-26 Sean O'Rourke <sorourke@cs.ucsd.edu>
396 * sepia.el (sepia-doc-scan-buffer): Better doc regex for
398 (sepia-indent-or-complete): try to expand abbrevs before
399 completion (try with snippet.el).
400 (sepia-indent-expand-abbrev): control the above feature.
401 (sepia-complete-symbol): scroll completion buffer; suggested by
403 * lib/Sepia.pm (html_package_list,html_module_list): new
405 (completions): '$'-completion only generates scalars.
406 * sepia-w3m.el: remove spurious sepia-module-list, improve
408 (sepia-module-list,sepia-package-list): better output.
409 (sepia-package-list,sepia-module-list): move Perl code to
410 Sepia.pm, generate list in inferior perl instead of shelling
413 2007-05-23 Sean O'Rourke <sorourke@cs.ucsd.edu>
415 * lib/Sepia.pm (_apropos_re): handle empty completions.
416 (columnate): pretty-print ",who" output.
417 * sepia.el (sepia-complete-symbol): bury stale completions buffer;
418 suggested by Hilko Bengen.
420 2007-05-17 Sean O'Rourke <sorourke@cs.ucsd.edu>
422 * lib/Sepia.pm (_completions1): Fix infinite recursion.
423 (repl): typo; clarify ambiguous vs. unrecognized shortcuts.
425 2007-05-15 Sean O'Rourke <sorourke@cs.ucsd.edu>
427 * sepia.el (sepia-dwim): don't try to jump to location when
428 looking up module docs.
429 * lib/Sepia.pm: use $::__ instead of $Sepia::__
430 (repl_quit): new command.
433 2007-05-12 Sean O'Rourke <sorourke@cs.ucsd.edu>
436 * Makefile.PL: add license.
438 2007-05-09 Sean O'Rourke <sorourke@cs.ucsd.edu>
441 * sepia.el (sepia-load-file): set inhibit-read-only when
443 * lib/Sepia.pm (repl_methods): walk ISA hierarchy looking for
444 functions (XXX: this is much too coarse).
445 (repl_help): use %REPL_DOC to hold command documentation for
447 (repl): display error on canceled continued statement.
449 2007-05-07 Sean O'Rourke <sorourke@cs.ucsd.edu>
451 * lib/Sepia.pm (repl_strict): add 'strict mode' (thanks to
452 Lexical::Persistence) for those who swing that way (I don't),
453 inspired by Devel::REPL.
454 (repl_wantarray): Fix logic.
456 2007-04-25 Sean O'Rourke <sorourke@cs.ucsd.edu>
459 * README: add license.
460 * Makefile.PL: remove dependency on Sub::Uplevel, make PadWalker
462 * lib/Sepia.pm (who): add optional regex filter.
463 (debug_inspect): fix non-scalar printing.
464 * sepia.el (sepia-dwim): fix staleness; change to find
465 documentation for modules.
466 (sepia-find-module-file): new function to try sepia- and xref-
467 module file-finding functions.
468 (sepia-next): use it.
469 (sepia-filter-by-module,sepia-filter-by-all): remove.
470 (sepia-keymap): use `sepia-dwim' for M-.
472 2007-04-15 Sean O'Rourke <sorourke@cs.ucsd.edu>
474 * lib/Sepia.pm (who): add optional regex argument.
476 2007-03-30 Sean O'Rourke <sorourke@cs.ucsd.edu>
478 * sepia-w3m.el (sepia-module-list, sepia-package-list): added
479 detailed index of installed modules.
482 2007-03-16 Sean O'Rourke <sorourke@cs.ucsd.edu>
484 * sepia.el (sepia-set-found): filter spurious nils (XXX: this
486 (sepia-symbol-info): avoid eldoc errors in ecase.
488 2007-03-15 Sean O'Rourke <sorourke@cs.ucsd.edu>
490 * sepia.el (sepia-complete-symbol): fallback completion of
492 * set COPY_EXTENDED_ATTRIBUTES_DISABLE=true to avoid creating ._*
495 2007-03-15 Sean O'Rourke <sorourke@cs.ucsd.edu>
498 * sepia-ido.el: clean up bitrot.
499 * lib/Sepia.pm (apropos): don't create new stashes during
501 * sepia.el (sepia-show-locations): bind inhibit-read-only; filter
503 * Makefile.PL: require PadWalker 1.0 (RT #25463)
505 2007-03-13 Sean O'Rourke <sorourke@cs.ucsd.edu>
508 * README (TODO): user-defined REPL abbrevs.
509 * lib/Sepia.pm (print_*): optional printing via YAML and
510 Data::Dump (from Shell::Perl).
511 (repl_wantarray): change eval context (same).
512 (repl_format): set formatter (same).
514 2007-03-09 Sean O'Rourke <sorourke@cs.ucsd.edu>
517 * sepia.el (sepia-keymap): add *-apropos, find-tag bindings.
518 * README: add organized function index.
519 * sepia.el (sepia-beginning-of-defun, sepia-end-of-defun):
520 fix argument to be prefix instead of point.
521 * sepia.el: documentation.
522 * sepia-ido.el: documentation.
523 * README: cleanup; note limitation of sepia-bodf and -eodf.
525 2007-02-25 Sean O'Rourke <sorourke@cs.ucsd.edu>
527 * Makefile.PL: add Scalar::Util as prereq.
528 * sepia.el (sepia-perl5lib): new variable holding extra PERL5LIB
530 * sepia.el (sepia-init): use it.
531 * sepia.el (sepia-comint-setup): don't clobber keymap.
532 * sepia.el (sepia-indent-or-complete): complete first time if at
534 * Sepia.pm (completions): enhanced completion -- e.g. "wtf"
535 matches "want_to_feed".
536 * Sepia.pm (printer): special-case PDL to use its stringification
537 (XXX: should test for overloaded "").
538 * Sepia.pm (who,repl_who): new functions.
540 2006-09-29 Sean O'Rourke <sorourke@cs.ucsd.edu>
542 * Sepia.pm (Dump): wrap with eval to prevent unexpected exits.
543 * Sepia.pm (repl_chdir): expand '~' and '$HOME'
545 2006-07-01 Sean O'Rourke <sorourke@cs.ucsd.edu>
547 * Sepia.pm (tolisp): undef -> nil
548 * sepia.el (sepia-eval-raw): guess package.
549 * sepia.el (sepia-init): don't pop-to-buffer with prefix argument.
550 * sepia.el (sepia-beginning-of-defun,sepia-end-of-defun): avoid
552 * sepia.el (sepia-buffer-package): look backward from point
553 instead of forward from point-min.
555 2006-05-24 Sean O'Rourke <sorourke@cs.ucsd.edu>
557 * Makefile.PL: added missing dependencies on PadWalker,
559 * Sepia.pm: improved ",command"
560 * sepia-w3m.el (sepia-w3m-perldoc-this): simplify.
561 * sepia.el (perl-*): rename to sepia-*.
562 * sepia.el: reorg and cleanup.
565 2006-05-19 Sean O'Rourke <sorourke@cs.ucsd.edu>
567 * sepia.el: fixed eldoc support. This only works with CVS Emacs,
568 relying on `eldoc-documentation-function'. Also fixed pod
571 2006-05-18 Sean O'Rourke <sorourke@cs.ucsd.edu>
573 * sepia.el, Sepia.pm: improved bulk-transfer protocol.
574 * Sepia.pm: override die with simple inspector/debugger.
575 * Sepia.pm: $__ and @__ now contain results of the last
577 * sepia.el, Sepia.pm: primitive support for evaluating elisp sent
578 from Perl. Turn on comint-use-prompt-regexp because the fields
579 stuff is flaky with this.
580 * sepia.el, Sepia.pm: ",cd" shortcut coordinates directory with
584 2006-04-14 Sean O'Rourke <sorourke@cs.ucsd.edu>
586 * generic-repl.el: replaced by comint.
587 * all: removed EPL dependency.
590 2005-07-12 Sean O'Rourke <sorourke@cs.ucsd.edu>
592 * sepia-w3m.el: fix function name so it's found.
593 * Xref.pm, Sepia.pm: cleanup and numerous bugfixes.
594 * Buffer.pm: new, but not ready for prime-time
595 * sepia.el: delete-thing-at-point removed; misc bugfixes.
596 * test.pl: disabled a bunch of location stuff.
599 2004-09-10 Sean O'Rourke <sorourke@cs.ucsd.edu>
601 * test.pl: some real tests.
602 * Sepia.pm, Xref.pm: Separate simple symbol-table searching from
603 Xref, making the former more reliable.
604 * Xref.pm: More reliable detection of (class) method calls.
605 * sepia.el: results are not displayed for expressions ending in
608 2004-04-12 Sean O'Rourke <seano@cs.ucsd.edu>
610 * sepia.el (sepia-doc-scan-buffer): Make regular expressions a
612 (sepia-ident-at-point): handle upper-case function and variable
613 names for completion (a bit hacky...).
614 (sepia-install-keys): fix keymap installation.
616 2004-04-11 Sean O'Rourke <seano@cs.ucsd.edu>
618 * Xref.pm (guess_module_file): do like Module::Info and trust
619 %INC more than our Xref info. But don't be _too_ smart about
620 this -- we were picking up lots of bogus exports.
621 (pp_method_named): add support for constant-named methods (cribbed
624 2004-04-10 Sean O'Rourke <seano@cs.ucsd.edu>
626 * Xref.pm: update $VERSION to track Sepia release.
628 * sepia.el (sepia-indent-or-complete): only complete on the
631 2004-04-09 Sean O'Rourke <seano@cs.ucsd.edu>
633 * sepia.el (sepia-refiner): tweak refining function a bit more.
634 I'm still not entirely happy with this, but it's getting better.
635 Time and experimentation are required.
637 * sepia-tree.el (sepia-calle[er]-tree): New file. Use
638 caller/callee information to generate tree-view using David
639 Ponce's wonderful tree-widget.
641 * Xref.pm (_apropos_re): Add that Emacs-style multipart-word
642 completion, so e.g. D:v_d -> Devel::Xref::var_defs. It's groovy,
644 (%firstline): gone. Just getting a line within the sub is good
645 enough -- we can fix it on the Emacs side of the fence later.
647 2004-04-08 Sean O'Rourke <seano@cs.ucsd.edu>
649 * sepia-w3m.el (sepia-w3m-perldoc-this): work for functions as
650 well as modules, and try to go to correct position in manpage.
652 * sepia.el (sepia-eval-buffer): use 'BEGIN{ die }' to do Xrefs
653 for scripts without loading them.
655 * Xref.pm: Localize a bunch of things instead of stomping on
656 package lexicals. This makes the module better handle repeated
657 use, for which it wasn't designed.
659 * Xref.pm (mod_subs): Rename package_subs for consistency.
660 (mod_decls): New function to generate decls for evaluation.
662 * sepia.el: misc bug-fixes, and better support for redefining
663 functions with sepia-eval-defun, especially preserving files and
665 (sepia-eval): remove newlines to make line-numbers make more
667 (sepia-interactive-arg): delay reading completions to speed up
669 (sepia-refiner): search both forward and backward, to adjust for
670 e.g. adding comments. Still not so good, but better.
672 2004-04-06 Sean O'Rourke <seano@cs.ucsd.edu>
674 * sepia-w3m.el: moved w3m-perldoc support here.
676 * README: added description, removed disclaimer
678 * sepia.el (sepia-symbol-info, sepia-doc-update): POD scanning
679 and cperl hackage for eldoc support.
681 2004-04-05 Sean O'Rourke <seano@cs.ucsd.edu>
683 * Xref.pm (redefined,forget): make them take a single sub at a
684 time, and pay attention to packages.
685 (_apropos): use package info to narrow choices.
687 * sepia.el (sepia-eval-defun,sepia-eval-buffer): new functions.
689 * test.pl: satisfy the cpants Fascists.
691 * Xref.pm (use_type): try to be smarter about when something's
692 being assigned to, vs. merely used as a reference.
694 * sepia.el (sepia-repl-header): keep up with generic-repl by
695 doing header line, working dir.
696 (sepia-complete-symbol): stupid bug with modules.
697 (sepia-install-keys): new function.
698 (sepia-var-assigns): assignments are more useful than defs.
699 (sepia-init): start REPL by default.
701 * generic-repl.el (repl-cd,repl-set-header): "new" function from
702 Slime to track working dir, update header line.
704 2004-04-04 Sean O'Rourke <seano@cs.ucsd.edu>
706 * Sepia.jpg: don't ask -- just look.
708 * sepia.el (sepia-ident-at-point): fixed bug with sigils.
709 (sepia-complete-symbol): fixed bug with undefined function
711 Always use Data::Dumper.
713 * any-repl.el: new file implementing REPL, basically stolen from
716 * pscope.el: renamed to sepia.el to go with name change.
718 2004-04-03 Sean O'Rourke <seano@cs.ucsd.edu>
720 * pscope.el (pscope-set-found): remove locations with no
721 file in package "main", which were causing errors before.
722 (pscope-dwim): new function. New functions
723 pscope-complete-symbol and pscope-indent-or-complete for
724 symbol completion. Not well-tested, but they seem to work.
725 The most annoying thing is that since the Xref db isn't
726 automatically updated, it won't always know as much as you
728 (pscope-load-file): new function.
730 * Xref.pm: update export lists to reflect new functions.
732 2004-04-02 Sean O'Rourke <seano@cs.ucsd.edu>
734 * Xref.pm: minor cleanup.
736 * pscope.el: pass module, file, line to Perl side (where it's
737 ignored for now); fix line number refinement to be a
738 little less over-eager; fix pscope-callees to go to sub
739 definitions instead of call sites.
741 * README: added TODO section.