implement sepia-apropos-module
[sepia.git] / ChangeLog
bloba7b024093eb865518ba493732aeb1d397eb40ccc
1 2009-10-28  Sean O'Rourke  <seano@cs.ucla.edu>
3         * sepia.el (sepia-indent-or-complete): work around bug where
4         expand-abbrev returns nil even though it expanded.
6 2009-10-19  Sean O'Rourke  <seano@cs.ucla.edu>
8         * sepia-cpan.el (sepia-cpan-mode-map): initialize in definition;
9         oops!
10         * VERSION: 0.991
12 2009-10-18  Sean O'Rourke  <seano@cs.ucla.edu>
14         * lib/Sepia/CPAN.pm (group_by_dist): better heuristic.
15         * lib/Sepia.pm (repl_reload, repl_full_reload, full_reload):
16         support "reload" and "freload" shortcuts.
17         * lib/Sepia/Debug.pm (xreturn, repl_xreturn): return-from-context,
18         not yet used.
19         * VERSION: 0.99
21 2009-10-12  Sean O'Rourke  <seano@cs.ucla.edu>
23         * sepia.el (sepia-symbol-info): tweak on module names.
24         (sepia-apropos-module): new function.
25         (sepia-perlize-region,sepia-perl-ne-region): interactive prompt fix
27 2009-07-22  Sean O'Rourke  <seano@cs.ucla.edu>
29         * sepia-cpan.el (sepia-cpan-doc): make browser pop up in other
30         window, like README.
32 2009-07-18  Sean O'Rourke  <seano@cs.ucla.edu>
34         * lib/Sepia.pm (filter_exact_prefix): new function to improve
35         completion behavior.
37 2009-07-07  Sean O'Rourke  <seano@cs.ucla.edu>
39         * lib/Sepia.pm (save,load,repl_save,repl_load): Persist
40         variables to a file.
41         * VERSION: 0.99_01
43 2009-07-05  Sean O'Rourke  <seano@cs.ucla.edu>
45         * sepia.el (sepia-rename-lexical): New function; a small wrapper
46         around query-replace(-regexp).
48 2009-05-03  Sean O'Rourke  <seano@cs.ucla.edu>
50         * t/02completion.t (ok_comp): adjust for completion changes.
51         * sepia.texi: Variable index.
53 2009-03-18  Sean O'Rourke  <seano@cs.ucla.edu>
55         * lib/Sepia.pm (repl_help): fix formatting with "help CMD"
56         (repl_size): sort by size
58 2008-12-17  Sean O'Rourke  <seano@cs.ucla.edu>
60         * sepia.texi (Completion): we do lexicals.
61         * lib/Sepia.pm (lexical_completions): new function.
62         (completions): use it.
63         * sepia.el (sepia-function-at-point): return nil outside subs.
64         (sepia-interactive-arg): fix call to xref-completions.
66 2008-07-22  Sean O'Rourke  <seano@cs.ucla.edu>
68         * sepia.el (sepia-scratch-send-line): change to use REPL printer.
70 2008-07-09  Sean O'Rourke  <seano@cs.ucla.edu>
71         * sepia.el (sepia-indent-line): new function.  Let-bind
72           beginning-of-defun-function for cperl-indent-line.
74 2008-06-29  Sean O'Rourke  <seano@cs.ucla.edu>
76         * sepia.el (sepia-cont-or-restart): new function to restart
77           quitted REPL.
78         * sepia-cpan.el (sepia-cpan-do-{desc,recommend}): oops.
79         (sepia-cpan-make-buffer): better column widths
80         * lib/Sepia.pm (repl_size): skip %SIG to avoid segfaults.
81         * lib/sepia/CPAN.pm (group_by_dist): only list "main" module in
82           each distribution, and sort them.
84 2008-06-20  Sean O'Rourke  <seano@cs.ucla.edu>
86         * VERSION: 0.97
87         * lib/Sepia.pm: fix use of defined().
89 2008-06-17  Sean O'Rourke  <seano@cs.ucla.edu>
91         * lib/Sepia.pm (repl_who,repl_size): turn off added 5.10 strictures.
93 2008-05-11  Sean O'Rourke  <seano@cs.ucla.edu>
95         * sepia.texi (Mutilation): updated CPAN documentation.
96         * sepia-cpan.el (sepia-cpan-desc): add search-by-description
97         (sepia-cpan-mode-map): fix keybindings.
98         * lib/Sepia/CPAN.pm: have ls/_ls, etc call interesting_parts
100 2008-05-10  Sean O'Rourke  <seano@cs.ucla.edu>
102         * VERSION: 0.96_02
103         * sepia-cpan.el (sepia-cpan-list, sepia-cpan-make-buffer)
104         (sepia-cpan-search): added list-by-author, refactored.
105         (sepia-cpan-readme): insert temp file rather than passing as
106         string.
107         * lib/Sepia/CPAN.pm (ls): new function to list author's modules.
108         * lib/Sepia/Debug.pm (repl_finish): mostly-working, by adding 0x10
109           to $^P and looking at sub's last line.
111 2008-01-10  Sean O'Rourke  <seano@cs.ucla.edu>
113         * lib/Sepia.pm (columnate): true -> defined
114         * VERSION: 0.96_01
115         * sepia-cpan.el: new file, experimental CPAN interface.
116         * lib/Sepia/CPAN.pm: new file.
118 2008-01-05  Sean O'Rourke  <seano@cs.ucla.edu>
120         * README: remove redundant/obsolete documentation
122 2008-01-02  Sean O'Rourke  <seano@cs.ucla.edu>
124         * lib/Sepia.pm (flow): get closer to margin.
126 2007-12-22  Sean O'Rourke  <seano@cs.ucla.edu>
128         * t/50expect.t: mysterious change to placate expect.
129         * sepia.el (sepia-shared-map): adjust bindings.
130         (sepia-complete-symbol): Fix shortcut completion.
131         * sepia-snippet.el (sepia-snippet-abbrev): make snippet optional,
132           but mention it.
134 2007-12-20  Sean O'Rourke  <seano@cs.ucla.edu>
136         * lib/Sepia.pm (who): don't apply regex to sigil.
137         (completions): fix multi-arg version (used by Emacs).
138         (html_module_list,html_package_list): return string if asked.
140 2007-12-17  Sean O'Rourke  <seano@cs.ucla.edu>
142         * sepia.el (sepia-shared-map): bind cperl-perldoc.
144 2007-12-16  Sean O'Rourke  <seano@cs.ucla.edu>
146         * Makefile.PL (test_for): use MakeMaker's prompt().
148 2007-12-13  Sean O'Rourke  <seano@cs.ucla.edu>
150         * sepia.el (sepia-complete-symbol): add shortcut completion.
151           improve XEmacs compatibility.
152         * sepia-w3m.el (sepia-w3m-create-imenu): new function, disabled by
153           default.
154         * lib/Sepia.pm (repl_*): don't look at return values; use "last
155           repl" to get out.
157 2007-11-29  Sean O'Rourke  <seano@cs.ucla.edu>
159         * t/02completion.t: new completion tests.
160         * lib/Sepia.pm (completions): rewrote to simplify.
162 2007-11-28  Sean O'Rourke  <seano@cs.ucla.edu>
164         * lib/Sepia.pm (printer): Don't sort arrays when printing.
165         * VERSION: 0.95_02
166         * lib/sepia/Debug.pm (warn,die): use Carp for 5.10 compatibility.
167         * Makefile.PL (test_for): $|=1 if prompting.
169 2007-11-27  Sean O'Rourke  <seano@cs.ucla.edu>
171         * sepia.el (sepia-perldoc-this): test for w3m when called.
173         * VERSION: 0.95_01
174         * t/01basic.t (Sepia): fix tests w/o Module::Info.
176 2007-11-26  Sean O'Rourke  <seano@cs.ucla.edu>
178         * VERSION: 0.95
179         * lib/sepia/Debug.pm (add_repl_commands): use define_shortcut.
180         (warn,die): same.
181         (add_debug_repl_commands): new function.
182         (repl): use it.
184         * lib/Sepia.pm (define_shortcut): new function.
185         (define_shortcut): new function.
186         (repl_help): auto-format help text; add arg.
187         (repl_reload): decrement $REPL_LEVEL.
188         (completions): fix abbrev completion.
189         (repl): read ~/.sepiarc; use define_shortcuts.
190         (repl_format): show current if no argument.
191         (module_info): optional dependency.
193 2007-11-08  Sean O'Rourke  <seano@cs.ucla.edu>
195         * VERSION: 0.94_01
196         * lib/Sepia/Xref.pm: POD fixup.
197         * sepia.el (sepia-ensure-process): fix stupid attachtty mistake.
199 2007-11-05  Sean O'Rourke  <seano@cs.ucla.edu>
201         * lib/sepia/Debug.pm (repl_break): allow "0" as a break condition.
203 2007-10-31  Sean O'Rourke  <seano@cs.ucla.edu>
205         * lib/Sepia.pm (repl_size): ",size" command to list variable sizes,
206         like Matlab's "whos".
208 2007-10-16  Sean O'Rourke  <seano@cs.ucla.edu>
210         * VERSION: 0.93
212         * lib/Sepia.pm (repl_pwd): add ",pwd" shortcut.
213         (repl_who): use current package when only regex given.
215         * sepia.el (sepia-repl,sepia-ensure-process): add remote
216           connection with attachtty.
217         (sepia-shared-map): bind \C-c\C-e to eval-expression.
218         (sepia-symbol-info): be more selective about "core version".
220 2007-09-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
222         * lib/Sepia.pm (printer): remove "=>" -- it's annoying.
224 2007-09-21  Sean O'Rourke  <sorourke@cs.ucsd.edu>
226         * sepia.el (sepia-load-file): disable debugger.
227         (sepia-symbol-info): be pickier about module core versions.
229 2007-09-20  Sean O'Rourke  <sorourke@cs.ucsd.edu>
231         * lib/Sepia.pm (repl_who): use current package if only one arg
232           given, and it's not an existing package.
234 2007-09-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
236         * sepia.el (sepia-watch-for-eval): fix hang with recursive sepia-eval.
238 2007-07-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
240         * sepia.el (sepia-interactive-arg): use xref-completions rather
241         than xref-apropos for working completion.
243 2007-07-25  Ye Wenbin  <wenbinye@gmail.com>
245         * sepia.el (sepia-defun-around-point): change the command to a
246         function, because as a command it does nothing.
247         (define-modinfo-function, sepia-maybe-echo): the interactive-p
248         is not true when call as function.
249         (define-modinfo-function, sepia-init): some modinfo-function
250         should eval in a list-context.
251         (sepia-mode): use cperl-mode-abbrev-table as current local-abbrev-table
253 2007-07-24  Ye Wenbin  <wenbinye@gmail.com>
255         * sepia.el (sepia-set-found): Use (OFFSET . LIST) to represent
256         things that found.
257         (sepia-next, sepia-previous): more generic move commands
258         (sepia-refiner): remove the test, because sometimes use the
259         same declaration, but found in difference place.
261         * sepia-tree.el (sepia-tree-button-cb): widget => pw and
262         xref-location return a list of posible locations.
263         (sepia-tree-tidy-buffer, sepia-tree-use-image): Let user
264         to choose whether use image or not. Set it to a buffer-local
265         variable, so that it didn't interference global values.
267         * sepia.el (sepia-extract-def): seem an argument is excessive
269         * sepia-tree.el (sepia-build-tree-buffer): In my emacs, it
270         doesn't work. The :dynargs didn't become the tree-widget
271         :expander. The tree-widget-convert-widget only receive the
272         'tree-widget, not the total list.
273         sepia-install-keys not defined.
275         * lib/Sepia/Xref.pm (file_modules): seem it is a typo error to use
276         Module::Include rather than Module::Info.
277         Module::Info::packages_inside return an array, the operator
278         || will force in a scalar context.
280         * sepia.el (sepia-lisp-to-perl): use "'" to quote string is not
281         enough, because the string may also contain "'" inside.
282         use (format "%S" string) instead.
283         (define-sepia-query): `sepia-set-found' accept a symbol as
284         argument, not (quote symbol).
286 2007-06-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
288         * VERSION: 0.92
289         * sepia.el (sepia-shared-map, etc.): fix keymap initialization.
291 2007-06-06  Sean O'Rourke  <sorourke@cs.ucsd.edu>
293         * lib/Sepia/Debug.pm: eval in lexical env when in debugger.
294         * t/50expect.t: REPL tests if you have Test::Expect.
295         * lib/Sepia/Debug.pm: use correct level when none given.
296         * lib/Sepia.pm: No longer bring in exporter (why did we?).
297         * sepia.el (sepia-init): always reinitialize sepia-mode-map.
298         * Makefile.PL: require 5.006 for warnings to quiet stupid "make
299           test".
301 2007-06-05  Sean O'Rourke  <sorourke@cs.ucsd.edu>
303         * Sepia.html: generate single-page manual instead of split.
304         * VERSION: 0.90
305         * sepia.el: docstring cleanup.
306         * lib/sepia/Debug.pm: misc usability improvements
308 2007-06-04  Sean O'Rourke  <sorourke@cs.ucsd.edu>
310         * VERSION 0.90_02
311         * test.pl: disable Module::Info tests to avoid Module::Info bug.
313 2007-06-02  Sean O'Rourke  <sorourke@cs.ucsd.edu>
315         * VERSION 0.90_01
316         * Major: replaced comint- with gud-based REPL, use real debugger.
317         * lib/Sepia/Debug.pm: "perl -d" support.
318         * lib/Sepia.pm (repl_shell): new command.
319         * sepia.el (sepia-eval-defun): detect errors, jump to first.
320         (sepia-comint-setup): don't set comint-use-prompt-regexp
321         (sepia-eval-defun,sepia-beginning-of-defun,sepia-end-of-defun): fix
323 2007-06-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
325         * sepia.el (sepia-perldoc-this): don't mess up window
326           configuration when the page isn't found.
327         (sepia-location): use sepia-interactive-arg.
328         (sepia-perl-[np]e-region): fix.
330         * lib/Sepia.pm: fix.
331         (print_dumper): switch format based on size.
333 2007-05-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
334         * sepia.texi: shiny new manual.
335         * lib/Sepia.pm (completions): add special 'VARIABLE' type.
336         (methods): add second $qualified arg.
337         (repl_reload): new function.
338         (sig_warn,repl): override __WARN__ (and __DIE__) cautiously.
339         (repl): nicer warning format.
341         * sepia.el (sepia-eval-raw): stopwarn -> STOPWARN.
342         (sepia-load-file): Fix pop-up error buffer.
343         (sepia-lisp-to-perl): fix quoting of strings.
344         Good citizenship:
345         (sepia-mode): make a real major mode.
346         (sepia-scratchpad-mode): ditto.
348 2007-05-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
350         * lib/sepia/Xref.pm (pp_method_named): warn -> dprint.
351         * sepia.el (sepia-simple-method-before-point): new function.
352         (sepia-complete-symbol): use it to complete methods.
353         make w3m optional:
354         (sepia-perldoc-function,sepia-view-pod-function,
355           sepia-module-list-function): new variables.
356         (sepia-perldoc-this,sepia-view-pod): new functions.
357         * lib/Sepia.pm (repl): trim leading spaces.
358         (tolisp): escape metacharacters.
359         (repl): don't override "die" if someone has installed a
360         $SIG{__DIE__} handler
362 2007-05-28  Sean O'Rourke  <sorourke@cs.ucsd.edu>
364         * VERSION: 0.75+
365         * sepia.el (sepia-core-version): new function.
366         (sepia-indent-or-complete): fix abbrev expansion.
367         (sepia-symbol-info): report core version in eldoc.
368         (sepia-ident-before-point): new function.
369         (sepia-complete-symbol): use it instead of *-at-point.
370         (sepia-complete-symbol): complete arrays and hashes when '$'
371         starts a word.
372         * lib/Sepia.pm (printer): Use @::__; distinguish "last as scalar"
373           $__ from printed representation.
374         ($PRINT_PRETTY): columnate lists if this is on.
375         (columnate): fixed.
376         (repl_methods): add regex argument.
377         (repl_who): fix.
378         (completions): Add in package names.
380 2007-05-27  Sean O'Rourke  <sorourke@cs.ucsd.edu>
382         * lib/Sepia.pm (repl_methods): fixed.
384 2007-05-26  Sean O'Rourke  <sorourke@cs.ucsd.edu>
386         * VERSION: 0.74
387         * sepia.el (sepia-doc-scan-buffer): Better doc regex for
388           variables.
389         (sepia-indent-or-complete): try to expand abbrevs before
390           completion (try with snippet.el).
391         (sepia-indent-expand-abbrev): control the above feature.
392         (sepia-complete-symbol): scroll completion buffer; suggested by
393           Hilko Bengen.
394         * lib/Sepia.pm (html_package_list,html_module_list): new
395           functions.
396         (completions): '$'-completion only generates scalars.
397         * sepia-w3m.el: remove spurious sepia-module-list, improve
398           documentation.
399         (sepia-module-list,sepia-package-list): better output.
400         (sepia-package-list,sepia-module-list): move Perl code to
401           Sepia.pm, generate list in inferior perl instead of shelling
402           out.
404 2007-05-23  Sean O'Rourke  <sorourke@cs.ucsd.edu>
406         * lib/Sepia.pm (_apropos_re): handle empty completions.
407         (columnate): pretty-print ",who" output.
408         * sepia.el (sepia-complete-symbol): bury stale completions buffer;
409           suggested by Hilko Bengen.
411 2007-05-17  Sean O'Rourke  <sorourke@cs.ucsd.edu>
413         * lib/Sepia.pm (_completions1): Fix infinite recursion.
414         (repl): typo; clarify ambiguous vs. unrecognized shortcuts.
416 2007-05-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
418         * sepia.el (sepia-dwim): don't try to jump to location when
419           looking up module docs.
420         * lib/Sepia.pm: use $::__ instead of $Sepia::__
421         (repl_quit): new command.
422         (repl): add banner.
424 2007-05-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
426         * VERSION: 0.72
427         * Makefile.PL: add license.
429 2007-05-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
431         * VERSION: 0.71
432         * sepia.el (sepia-load-file): set inhibit-read-only when
433           displaying errors.
434         * lib/Sepia.pm (repl_methods): walk ISA hierarchy looking for
435           functions (XXX: this is much too coarse).
436         (repl_help): use %REPL_DOC to hold command documentation for
437         easier extension.
438         (repl): display error on canceled continued statement.
440 2007-05-07  Sean O'Rourke  <sorourke@cs.ucsd.edu>
442         * lib/Sepia.pm (repl_strict): add 'strict mode' (thanks to
443           Lexical::Persistence) for those who swing that way (I don't),
444           inspired by Devel::REPL.
445         (repl_wantarray): Fix logic.
447 2007-04-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
449         * VERSION: 0.70
450         * README: add license.
451         * Makefile.PL: remove dependency on Sub::Uplevel, make PadWalker
452           optional.
453         * lib/Sepia.pm (who): add optional regex filter.
454         (debug_inspect): fix non-scalar printing.
455         * sepia.el (sepia-dwim): fix staleness; change to find
456           documentation for modules.
457         (sepia-find-module-file): new function to try sepia- and xref-
458         module file-finding functions.
459         (sepia-next): use it.
460         (sepia-filter-by-module,sepia-filter-by-all): remove.
461         (sepia-keymap): use `sepia-dwim' for M-.
463 2007-04-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
465         * lib/Sepia.pm (who): add optional regex argument.
467 2007-03-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
469         * sepia-w3m.el (sepia-module-list, sepia-package-list): added
470           detailed index of installed modules.
471         * VERSION: 0.68
473 2007-03-16  Sean O'Rourke  <sorourke@cs.ucsd.edu>
475         * sepia.el (sepia-set-found): filter spurious nils (XXX: this
476           really needs a fix).
477           (sepia-symbol-info): avoid eldoc errors in ecase.
479 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
481         * sepia.el (sepia-complete-symbol): fallback completion of
482           builtins.
483         * set COPY_EXTENDED_ATTRIBUTES_DISABLE=true to avoid creating ._*
484           files (RT #25490).
486 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
488         * VERSION: 0.67
489         * sepia-ido.el: clean up bitrot.
490         * lib/Sepia.pm (apropos): don't create new stashes during
491           completion.
492         * sepia.el (sepia-show-locations): bind inhibit-read-only; filter
493           out mysterious NILs.
494         * Makefile.PL: require PadWalker 1.0 (RT #25463)
496 2007-03-13  Sean O'Rourke  <sorourke@cs.ucsd.edu>
498         * VERSION: 0.66
499         * README (TODO): user-defined REPL abbrevs.
500         * lib/Sepia.pm (print_*): optional printing via YAML and
501           Data::Dump (from Shell::Perl).
502         (repl_wantarray): change eval context (same).
503         (repl_format): set formatter (same).
505 2007-03-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
507         * VERSION: 0.65
508         * sepia.el (sepia-keymap): add *-apropos, find-tag bindings.
509         * README: add organized function index.
510         * sepia.el (sepia-beginning-of-defun, sepia-end-of-defun):
511           fix argument to be prefix instead of point.
512         * sepia.el: documentation.
513         * sepia-ido.el: documentation.
514         * README: cleanup; note limitation of sepia-bodf and -eodf.
516 2007-02-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
518         * Makefile.PL: add Scalar::Util as prereq.
519         * sepia.el (sepia-perl5lib): new variable holding extra PERL5LIB
520           entry.
521         * sepia.el (sepia-init): use it.
522         * sepia.el (sepia-comint-setup): don't clobber keymap.
523         * sepia.el (sepia-indent-or-complete): complete first time if at
524           end of word.
525         * Sepia.pm (completions): enhanced completion -- e.g. "wtf"
526           matches "want_to_feed".
527         * Sepia.pm (printer): special-case PDL to use its stringification
528           (XXX: should test for overloaded "").
529         * Sepia.pm (who,repl_who): new functions.
531 2006-09-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
533         * Sepia.pm (Dump): wrap with eval to prevent unexpected exits.
534         * Sepia.pm (repl_chdir): expand '~' and '$HOME'
536 2006-07-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
538         * Sepia.pm (tolisp): undef -> nil
539         * sepia.el (sepia-eval-raw): guess package.
540         * sepia.el (sepia-init): don't pop-to-buffer with prefix argument.
541         * sepia.el (sepia-beginning-of-defun,sepia-end-of-defun): avoid
542           recursion.
543         * sepia.el (sepia-buffer-package): look backward from point
544           instead of forward from point-min.
546 2006-05-24  Sean O'Rourke  <sorourke@cs.ucsd.edu>
548         * Makefile.PL: added missing dependencies on PadWalker,
549           Sub::Uplevel.
550         * Sepia.pm: improved ",command"
551         * sepia-w3m.el (sepia-w3m-perldoc-this): simplify.
552         * sepia.el (perl-*): rename to sepia-*.
553         * sepia.el: reorg and cleanup.
554         * VERSION: 0.63
556 2006-05-19  Sean O'Rourke  <sorourke@cs.ucsd.edu>
558         * sepia.el: fixed eldoc support.  This only works with CVS Emacs,
559           relying on `eldoc-documentation-function'.  Also fixed pod
560           scanning for eldoc.
562 2006-05-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
564         * sepia.el, Sepia.pm: improved bulk-transfer protocol.
565         * Sepia.pm: override die with simple inspector/debugger.
566         * Sepia.pm: $__ and @__ now contain results of the last
567           expression.
568         * sepia.el, Sepia.pm: primitive support for evaluating elisp sent
569           from Perl.  Turn on comint-use-prompt-regexp because the fields
570           stuff is flaky with this.
571         * sepia.el, Sepia.pm: ",cd" shortcut coordinates directory with
572           Emacs.
573         * VERSION 0.61, 0.62
575 2006-04-14  Sean O'Rourke  <sorourke@cs.ucsd.edu>
577         * generic-repl.el: replaced by comint.
578         * all: removed EPL dependency.
579         * VERSION 0.59
581 2005-07-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
583         * sepia-w3m.el: fix function name so it's found.
584         * Xref.pm, Sepia.pm: cleanup and numerous bugfixes.
585         * Buffer.pm: new, but not ready for prime-time
586         * sepia.el: delete-thing-at-point removed; misc bugfixes.
587         * test.pl: disabled a bunch of location stuff.
588         * VERSION 0.58
590 2004-09-10  Sean O'Rourke  <sorourke@cs.ucsd.edu>
592         * test.pl: some real tests.
593         * Sepia.pm, Xref.pm: Separate simple symbol-table searching from
594           Xref, making the former more reliable.
595         * Xref.pm: More reliable detection of (class) method calls.
596         * sepia.el: results are not displayed for expressions ending in
597           ';' (c.f. Octave).
599 2004-04-12  Sean O'Rourke  <seano@cs.ucsd.edu>
601         * sepia.el (sepia-doc-scan-buffer): Make regular expressions a
602         bit better.
603         (sepia-ident-at-point): handle upper-case function and variable
604         names for completion (a bit hacky...).
605         (sepia-install-keys): fix keymap installation.
607 2004-04-11  Sean O'Rourke  <seano@cs.ucsd.edu>
609         * Xref.pm (guess_module_file): do like Module::Info and trust
610         %INC more than our Xref info.  But don't be _too_ smart about
611         this -- we were picking up lots of bogus exports.
612         (pp_method_named): add support for constant-named methods (cribbed
613         from B::Concise).
615 2004-04-10  Sean O'Rourke  <seano@cs.ucsd.edu>
617         * Xref.pm: update $VERSION to track Sepia release.
619         * sepia.el (sepia-indent-or-complete): only complete on the
620         second TAB.
622 2004-04-09  Sean O'Rourke  <seano@cs.ucsd.edu>
624         * sepia.el (sepia-refiner): tweak refining function a bit more.
625         I'm still not entirely happy with this, but it's getting better.
626         Time and experimentation are required.
628         * sepia-tree.el (sepia-calle[er]-tree): New file.  Use
629         caller/callee information to generate tree-view using David
630         Ponce's wonderful tree-widget.
632         * Xref.pm (_apropos_re): Add that Emacs-style multipart-word
633         completion, so e.g. D:v_d -> Devel::Xref::var_defs.  It's groovy,
634         man.
635         (%firstline): gone.  Just getting a line within the sub is good
636         enough -- we can fix it on the Emacs side of the fence later.
638 2004-04-08  Sean O'Rourke  <seano@cs.ucsd.edu>
640         * sepia-w3m.el (sepia-w3m-perldoc-this): work for functions as
641         well as modules, and try to go to correct position in manpage.
643         * sepia.el (sepia-eval-buffer): use 'BEGIN{ die }' to do Xrefs
644         for scripts without loading them.
646         * Xref.pm: Localize a bunch of things instead of stomping on
647         package lexicals.  This makes the module better handle repeated
648         use, for which it wasn't designed.
650         * Xref.pm (mod_subs): Rename package_subs for consistency.
651         (mod_decls): New function to generate decls for evaluation.
653         * sepia.el: misc bug-fixes, and better support for redefining
654         functions with sepia-eval-defun, especially preserving files and
655         line numbers.
656         (sepia-eval): remove newlines to make line-numbers make more
657         sense to user.
658         (sepia-interactive-arg): delay reading completions to speed up
659         \M-. functions.
660         (sepia-refiner): search both forward and backward, to adjust for
661         e.g. adding comments.  Still not so good, but better.
663 2004-04-06  Sean O'Rourke  <seano@cs.ucsd.edu>
665         * sepia-w3m.el: moved w3m-perldoc support here.
667         * README: added description, removed disclaimer
669         * sepia.el (sepia-symbol-info, sepia-doc-update): POD scanning
670         and cperl hackage for eldoc support.
672 2004-04-05  Sean O'Rourke  <seano@cs.ucsd.edu>
674         * Xref.pm (redefined,forget): make them take a single sub at a
675         time, and pay attention to packages.
676         (_apropos): use package info to narrow choices.
678         * sepia.el (sepia-eval-defun,sepia-eval-buffer): new functions.
680         * test.pl: satisfy the cpants Fascists.
682         * Xref.pm (use_type): try to be smarter about when something's
683         being assigned to, vs. merely used as a reference.
685         * sepia.el (sepia-repl-header): keep up with generic-repl by
686         doing header line, working dir.
687         (sepia-complete-symbol): stupid bug with modules.
688         (sepia-install-keys): new function.
689         (sepia-var-assigns): assignments are more useful than defs.
690         (sepia-init): start REPL by default.
692         * generic-repl.el (repl-cd,repl-set-header): "new" function from
693         Slime to track working dir, update header line.
695 2004-04-04  Sean O'Rourke  <seano@cs.ucsd.edu>
697         * Sepia.jpg: don't ask -- just look.
699         * sepia.el (sepia-ident-at-point): fixed bug with sigils.
700         (sepia-complete-symbol): fixed bug with undefined function
701         sepia-end-of-word.
702         Always use Data::Dumper.
704         * any-repl.el: new file implementing REPL, basically stolen from
705         Slime.
707         * pscope.el: renamed to sepia.el to go with name change.
709 2004-04-03  Sean O'Rourke  <seano@cs.ucsd.edu>
711         * pscope.el (pscope-set-found): remove locations with no
712         file in package "main", which were causing errors before.
713         (pscope-dwim): new function.  New functions
714         pscope-complete-symbol and pscope-indent-or-complete for
715         symbol completion.  Not well-tested, but they seem to work.
716         The most annoying thing is that since the Xref db isn't
717         automatically updated, it won't always know as much as you
718         expect.
719         (pscope-load-file): new function.
721         * Xref.pm: update export lists to reflect new functions.
723 2004-04-02  Sean O'Rourke  <seano@cs.ucsd.edu>
725         * Xref.pm: minor cleanup.
727         * pscope.el: pass module, file, line to Perl side (where it's
728         ignored for now); fix line number refinement to be a
729         little less over-eager; fix pscope-callees to go to sub
730         definitions instead of call sites.
732         * README: added TODO section.