Let's see if cpantesters picks this up...
[sepia.git] / ChangeLog
blob6d04c221ae7a530e7f075afa834609d9f0c057bb
1 2009-12-02  Sean O'Rourke  <seano@cs.ucla.edu>
3         * lib/Sepia/Xref.pm (load_pad): work around pad weirdness with
4         threads.
5         * VERSION: 0.991_01
7 2009-11-29  Sean O'Rourke  <seano@cs.ucla.edu>
9         * Makefile.PL: make LWP::Simple optional.  It didn't do much.
10         * sepia-snippet.el (sepia-snippet-abbrev): de-dup, sort, add
11         given/when.
12         * sepia.el (sepia-shortcuts): update.
13         (sepia-complete-symbol): fix sigil duplication bug.
14         (sepia-symbol-info): use cperl's variable short-docs.
16 2009-11-26  Sean O'Rourke  <seano@cs.ucla.edu>
18         * lib/Sepia.pm: reorganize, add docs.
19         * sepia.texi (Shortcuts): document ,time
20         * Makefile.PL: optional BSD::Resource and Time::HiRes.
21         * lib/Sepia.pm (run_hook,add_hook,remove_hook): new functions.
22         (repl_time,time_pre_prompt*): print CPU times.
24 2009-11-25  Sean O'Rourke  <seano@cs.ucla.edu>
26         * sepia.el (sepia-ident-before-point): use s-i-at-point.
27         (sepia-ident-at-point): Handle punctuation variables.
28         (sepia-describe-object): add "perldoc -v" support.
30 2009-11-22  Sean O'Rourke  <seano@cs.ucla.edu>
32         * lib/Sepia.pm (location): handle special @INC entries.
33         * sepia.el (sepia-describe-object): Guess identifier-at-point in
34         the right order.
36 2009-11-18  Sean O'Rourke  <seano@cs.ucla.edu>
38         * sepia.el (sepia-describe-object): new function like
39         describe-function and friends.  Currently only "perldoc -f."
40         (sepia-init-perl-builtins): bugfix.
41         (sepia-repl-mode): turn on eldoc.
43 2009-11-02  Sean O'Rourke  <seano@cs.ucla.edu>
45         * lib/Sepia.pm (location): change to work on only one location,
46         since that's how it's used.
47         (define_shortcuts): tweak.
48         (repl_setup): fix $REPL_LEVEL bug.
49         (repl,repl_quit): make quitting from restarted REPLs.
51 2009-10-28  Sean O'Rourke  <seano@cs.ucla.edu>
53         * sepia.el (sepia-indent-or-complete): work around bug where
54         expand-abbrev returns nil even though it expanded.
55         (sepia-looks-like-module): use xref-apropos-module.
57 2009-10-19  Sean O'Rourke  <seano@cs.ucla.edu>
59         * sepia-cpan.el (sepia-cpan-mode-map): initialize in definition;
60         oops!
61         * VERSION: 0.991
63 2009-10-18  Sean O'Rourke  <seano@cs.ucla.edu>
65         * lib/Sepia/CPAN.pm (group_by_dist): better heuristic.
66         * lib/Sepia.pm (repl_reload, repl_full_reload, full_reload):
67         support "reload" and "freload" shortcuts.
68         * lib/Sepia/Debug.pm (xreturn, repl_xreturn): return-from-context,
69         not yet used.
70         * VERSION: 0.99
72 2009-10-12  Sean O'Rourke  <seano@cs.ucla.edu>
74         * sepia.el (sepia-symbol-info): tweak on module names.
75         (sepia-apropos-module): new function.
76         (sepia-perlize-region,sepia-perl-ne-region): interactive prompt fix
78 2009-07-22  Sean O'Rourke  <seano@cs.ucla.edu>
80         * sepia-cpan.el (sepia-cpan-doc): make browser pop up in other
81         window, like README.
83 2009-07-18  Sean O'Rourke  <seano@cs.ucla.edu>
85         * lib/Sepia.pm (filter_exact_prefix): new function to improve
86         completion behavior.
88 2009-07-07  Sean O'Rourke  <seano@cs.ucla.edu>
90         * lib/Sepia.pm (save,load,repl_save,repl_load): Persist
91         variables to a file.
92         * VERSION: 0.99_01
94 2009-07-05  Sean O'Rourke  <seano@cs.ucla.edu>
96         * sepia.el (sepia-rename-lexical): New function; a small wrapper
97         around query-replace(-regexp).
99 2009-05-03  Sean O'Rourke  <seano@cs.ucla.edu>
101         * t/02completion.t (ok_comp): adjust for completion changes.
102         * sepia.texi: Variable index.
104 2009-03-18  Sean O'Rourke  <seano@cs.ucla.edu>
106         * lib/Sepia.pm (repl_help): fix formatting with "help CMD"
107         (repl_size): sort by size
109 2008-12-17  Sean O'Rourke  <seano@cs.ucla.edu>
111         * sepia.texi (Completion): we do lexicals.
112         * lib/Sepia.pm (lexical_completions): new function.
113         (completions): use it.
114         * sepia.el (sepia-function-at-point): return nil outside subs.
115         (sepia-interactive-arg): fix call to xref-completions.
117 2008-07-22  Sean O'Rourke  <seano@cs.ucla.edu>
119         * sepia.el (sepia-scratch-send-line): change to use REPL printer.
121 2008-07-09  Sean O'Rourke  <seano@cs.ucla.edu>
122         * sepia.el (sepia-indent-line): new function.  Let-bind
123           beginning-of-defun-function for cperl-indent-line.
125 2008-06-29  Sean O'Rourke  <seano@cs.ucla.edu>
127         * sepia.el (sepia-cont-or-restart): new function to restart
128           quitted REPL.
129         * sepia-cpan.el (sepia-cpan-do-{desc,recommend}): oops.
130         (sepia-cpan-make-buffer): better column widths
131         * lib/Sepia.pm (repl_size): skip %SIG to avoid segfaults.
132         * lib/sepia/CPAN.pm (group_by_dist): only list "main" module in
133           each distribution, and sort them.
135 2008-06-20  Sean O'Rourke  <seano@cs.ucla.edu>
137         * VERSION: 0.97
138         * lib/Sepia.pm: fix use of defined().
140 2008-06-17  Sean O'Rourke  <seano@cs.ucla.edu>
142         * lib/Sepia.pm (repl_who,repl_size): turn off added 5.10 strictures.
144 2008-05-11  Sean O'Rourke  <seano@cs.ucla.edu>
146         * sepia.texi (Mutilation): updated CPAN documentation.
147         * sepia-cpan.el (sepia-cpan-desc): add search-by-description
148         (sepia-cpan-mode-map): fix keybindings.
149         * lib/Sepia/CPAN.pm: have ls/_ls, etc call interesting_parts
151 2008-05-10  Sean O'Rourke  <seano@cs.ucla.edu>
153         * VERSION: 0.96_02
154         * sepia-cpan.el (sepia-cpan-list, sepia-cpan-make-buffer)
155         (sepia-cpan-search): added list-by-author, refactored.
156         (sepia-cpan-readme): insert temp file rather than passing as
157         string.
158         * lib/Sepia/CPAN.pm (ls): new function to list author's modules.
159         * lib/Sepia/Debug.pm (repl_finish): mostly-working, by adding 0x10
160           to $^P and looking at sub's last line.
162 2008-01-10  Sean O'Rourke  <seano@cs.ucla.edu>
164         * lib/Sepia.pm (columnate): true -> defined
165         * VERSION: 0.96_01
166         * sepia-cpan.el: new file, experimental CPAN interface.
167         * lib/Sepia/CPAN.pm: new file.
169 2008-01-05  Sean O'Rourke  <seano@cs.ucla.edu>
171         * README: remove redundant/obsolete documentation
173 2008-01-02  Sean O'Rourke  <seano@cs.ucla.edu>
175         * lib/Sepia.pm (flow): get closer to margin.
177 2007-12-22  Sean O'Rourke  <seano@cs.ucla.edu>
179         * t/50expect.t: mysterious change to placate expect.
180         * sepia.el (sepia-shared-map): adjust bindings.
181         (sepia-complete-symbol): Fix shortcut completion.
182         * sepia-snippet.el (sepia-snippet-abbrev): make snippet optional,
183           but mention it.
185 2007-12-20  Sean O'Rourke  <seano@cs.ucla.edu>
187         * lib/Sepia.pm (who): don't apply regex to sigil.
188         (completions): fix multi-arg version (used by Emacs).
189         (html_module_list,html_package_list): return string if asked.
191 2007-12-17  Sean O'Rourke  <seano@cs.ucla.edu>
193         * sepia.el (sepia-shared-map): bind cperl-perldoc.
195 2007-12-16  Sean O'Rourke  <seano@cs.ucla.edu>
197         * Makefile.PL (test_for): use MakeMaker's prompt().
199 2007-12-13  Sean O'Rourke  <seano@cs.ucla.edu>
201         * sepia.el (sepia-complete-symbol): add shortcut completion.
202           improve XEmacs compatibility.
203         * sepia-w3m.el (sepia-w3m-create-imenu): new function, disabled by
204           default.
205         * lib/Sepia.pm (repl_*): don't look at return values; use "last
206           repl" to get out.
208 2007-11-29  Sean O'Rourke  <seano@cs.ucla.edu>
210         * t/02completion.t: new completion tests.
211         * lib/Sepia.pm (completions): rewrote to simplify.
213 2007-11-28  Sean O'Rourke  <seano@cs.ucla.edu>
215         * lib/Sepia.pm (printer): Don't sort arrays when printing.
216         * VERSION: 0.95_02
217         * lib/sepia/Debug.pm (warn,die): use Carp for 5.10 compatibility.
218         * Makefile.PL (test_for): $|=1 if prompting.
220 2007-11-27  Sean O'Rourke  <seano@cs.ucla.edu>
222         * sepia.el (sepia-perldoc-this): test for w3m when called.
224         * VERSION: 0.95_01
225         * t/01basic.t (Sepia): fix tests w/o Module::Info.
227 2007-11-26  Sean O'Rourke  <seano@cs.ucla.edu>
229         * VERSION: 0.95
230         * lib/sepia/Debug.pm (add_repl_commands): use define_shortcut.
231         (warn,die): same.
232         (add_debug_repl_commands): new function.
233         (repl): use it.
235         * lib/Sepia.pm (define_shortcut): new function.
236         (define_shortcut): new function.
237         (repl_help): auto-format help text; add arg.
238         (repl_reload): decrement $REPL_LEVEL.
239         (completions): fix abbrev completion.
240         (repl): read ~/.sepiarc; use define_shortcuts.
241         (repl_format): show current if no argument.
242         (module_info): optional dependency.
244 2007-11-08  Sean O'Rourke  <seano@cs.ucla.edu>
246         * VERSION: 0.94_01
247         * lib/Sepia/Xref.pm: POD fixup.
248         * sepia.el (sepia-ensure-process): fix stupid attachtty mistake.
250 2007-11-05  Sean O'Rourke  <seano@cs.ucla.edu>
252         * lib/sepia/Debug.pm (repl_break): allow "0" as a break condition.
254 2007-10-31  Sean O'Rourke  <seano@cs.ucla.edu>
256         * lib/Sepia.pm (repl_size): ",size" command to list variable sizes,
257         like Matlab's "whos".
259 2007-10-16  Sean O'Rourke  <seano@cs.ucla.edu>
261         * VERSION: 0.93
263         * lib/Sepia.pm (repl_pwd): add ",pwd" shortcut.
264         (repl_who): use current package when only regex given.
266         * sepia.el (sepia-repl,sepia-ensure-process): add remote
267           connection with attachtty.
268         (sepia-shared-map): bind \C-c\C-e to eval-expression.
269         (sepia-symbol-info): be more selective about "core version".
271 2007-09-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
273         * lib/Sepia.pm (printer): remove "=>" -- it's annoying.
275 2007-09-21  Sean O'Rourke  <sorourke@cs.ucsd.edu>
277         * sepia.el (sepia-load-file): disable debugger.
278         (sepia-symbol-info): be pickier about module core versions.
280 2007-09-20  Sean O'Rourke  <sorourke@cs.ucsd.edu>
282         * lib/Sepia.pm (repl_who): use current package if only one arg
283           given, and it's not an existing package.
285 2007-09-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
287         * sepia.el (sepia-watch-for-eval): fix hang with recursive sepia-eval.
289 2007-07-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
291         * sepia.el (sepia-interactive-arg): use xref-completions rather
292         than xref-apropos for working completion.
294 2007-07-25  Ye Wenbin  <wenbinye@gmail.com>
296         * sepia.el (sepia-defun-around-point): change the command to a
297         function, because as a command it does nothing.
298         (define-modinfo-function, sepia-maybe-echo): the interactive-p
299         is not true when call as function.
300         (define-modinfo-function, sepia-init): some modinfo-function
301         should eval in a list-context.
302         (sepia-mode): use cperl-mode-abbrev-table as current local-abbrev-table
304 2007-07-24  Ye Wenbin  <wenbinye@gmail.com>
306         * sepia.el (sepia-set-found): Use (OFFSET . LIST) to represent
307         things that found.
308         (sepia-next, sepia-previous): more generic move commands
309         (sepia-refiner): remove the test, because sometimes use the
310         same declaration, but found in difference place.
312         * sepia-tree.el (sepia-tree-button-cb): widget => pw and
313         xref-location return a list of posible locations.
314         (sepia-tree-tidy-buffer, sepia-tree-use-image): Let user
315         to choose whether use image or not. Set it to a buffer-local
316         variable, so that it didn't interference global values.
318         * sepia.el (sepia-extract-def): seem an argument is excessive
320         * sepia-tree.el (sepia-build-tree-buffer): In my emacs, it
321         doesn't work. The :dynargs didn't become the tree-widget
322         :expander. The tree-widget-convert-widget only receive the
323         'tree-widget, not the total list.
324         sepia-install-keys not defined.
326         * lib/Sepia/Xref.pm (file_modules): seem it is a typo error to use
327         Module::Include rather than Module::Info.
328         Module::Info::packages_inside return an array, the operator
329         || will force in a scalar context.
331         * sepia.el (sepia-lisp-to-perl): use "'" to quote string is not
332         enough, because the string may also contain "'" inside.
333         use (format "%S" string) instead.
334         (define-sepia-query): `sepia-set-found' accept a symbol as
335         argument, not (quote symbol).
337 2007-06-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
339         * VERSION: 0.92
340         * sepia.el (sepia-shared-map, etc.): fix keymap initialization.
342 2007-06-06  Sean O'Rourke  <sorourke@cs.ucsd.edu>
344         * lib/Sepia/Debug.pm: eval in lexical env when in debugger.
345         * t/50expect.t: REPL tests if you have Test::Expect.
346         * lib/Sepia/Debug.pm: use correct level when none given.
347         * lib/Sepia.pm: No longer bring in exporter (why did we?).
348         * sepia.el (sepia-init): always reinitialize sepia-mode-map.
349         * Makefile.PL: require 5.006 for warnings to quiet stupid "make
350           test".
352 2007-06-05  Sean O'Rourke  <sorourke@cs.ucsd.edu>
354         * Sepia.html: generate single-page manual instead of split.
355         * VERSION: 0.90
356         * sepia.el: docstring cleanup.
357         * lib/sepia/Debug.pm: misc usability improvements
359 2007-06-04  Sean O'Rourke  <sorourke@cs.ucsd.edu>
361         * VERSION 0.90_02
362         * test.pl: disable Module::Info tests to avoid Module::Info bug.
364 2007-06-02  Sean O'Rourke  <sorourke@cs.ucsd.edu>
366         * VERSION 0.90_01
367         * Major: replaced comint- with gud-based REPL, use real debugger.
368         * lib/Sepia/Debug.pm: "perl -d" support.
369         * lib/Sepia.pm (repl_shell): new command.
370         * sepia.el (sepia-eval-defun): detect errors, jump to first.
371         (sepia-comint-setup): don't set comint-use-prompt-regexp
372         (sepia-eval-defun,sepia-beginning-of-defun,sepia-end-of-defun): fix
374 2007-06-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
376         * sepia.el (sepia-perldoc-this): don't mess up window
377           configuration when the page isn't found.
378         (sepia-location): use sepia-interactive-arg.
379         (sepia-perl-[np]e-region): fix.
381         * lib/Sepia.pm: fix.
382         (print_dumper): switch format based on size.
384 2007-05-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
385         * sepia.texi: shiny new manual.
386         * lib/Sepia.pm (completions): add special 'VARIABLE' type.
387         (methods): add second $qualified arg.
388         (repl_reload): new function.
389         (sig_warn,repl): override __WARN__ (and __DIE__) cautiously.
390         (repl): nicer warning format.
392         * sepia.el (sepia-eval-raw): stopwarn -> STOPWARN.
393         (sepia-load-file): Fix pop-up error buffer.
394         (sepia-lisp-to-perl): fix quoting of strings.
395         Good citizenship:
396         (sepia-mode): make a real major mode.
397         (sepia-scratchpad-mode): ditto.
399 2007-05-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
401         * lib/sepia/Xref.pm (pp_method_named): warn -> dprint.
402         * sepia.el (sepia-simple-method-before-point): new function.
403         (sepia-complete-symbol): use it to complete methods.
404         make w3m optional:
405         (sepia-perldoc-function,sepia-view-pod-function,
406           sepia-module-list-function): new variables.
407         (sepia-perldoc-this,sepia-view-pod): new functions.
408         * lib/Sepia.pm (repl): trim leading spaces.
409         (tolisp): escape metacharacters.
410         (repl): don't override "die" if someone has installed a
411         $SIG{__DIE__} handler
413 2007-05-28  Sean O'Rourke  <sorourke@cs.ucsd.edu>
415         * VERSION: 0.75+
416         * sepia.el (sepia-core-version): new function.
417         (sepia-indent-or-complete): fix abbrev expansion.
418         (sepia-symbol-info): report core version in eldoc.
419         (sepia-ident-before-point): new function.
420         (sepia-complete-symbol): use it instead of *-at-point.
421         (sepia-complete-symbol): complete arrays and hashes when '$'
422         starts a word.
423         * lib/Sepia.pm (printer): Use @::__; distinguish "last as scalar"
424           $__ from printed representation.
425         ($PRINT_PRETTY): columnate lists if this is on.
426         (columnate): fixed.
427         (repl_methods): add regex argument.
428         (repl_who): fix.
429         (completions): Add in package names.
431 2007-05-27  Sean O'Rourke  <sorourke@cs.ucsd.edu>
433         * lib/Sepia.pm (repl_methods): fixed.
435 2007-05-26  Sean O'Rourke  <sorourke@cs.ucsd.edu>
437         * VERSION: 0.74
438         * sepia.el (sepia-doc-scan-buffer): Better doc regex for
439           variables.
440         (sepia-indent-or-complete): try to expand abbrevs before
441           completion (try with snippet.el).
442         (sepia-indent-expand-abbrev): control the above feature.
443         (sepia-complete-symbol): scroll completion buffer; suggested by
444           Hilko Bengen.
445         * lib/Sepia.pm (html_package_list,html_module_list): new
446           functions.
447         (completions): '$'-completion only generates scalars.
448         * sepia-w3m.el: remove spurious sepia-module-list, improve
449           documentation.
450         (sepia-module-list,sepia-package-list): better output.
451         (sepia-package-list,sepia-module-list): move Perl code to
452           Sepia.pm, generate list in inferior perl instead of shelling
453           out.
455 2007-05-23  Sean O'Rourke  <sorourke@cs.ucsd.edu>
457         * lib/Sepia.pm (_apropos_re): handle empty completions.
458         (columnate): pretty-print ",who" output.
459         * sepia.el (sepia-complete-symbol): bury stale completions buffer;
460           suggested by Hilko Bengen.
462 2007-05-17  Sean O'Rourke  <sorourke@cs.ucsd.edu>
464         * lib/Sepia.pm (_completions1): Fix infinite recursion.
465         (repl): typo; clarify ambiguous vs. unrecognized shortcuts.
467 2007-05-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
469         * sepia.el (sepia-dwim): don't try to jump to location when
470           looking up module docs.
471         * lib/Sepia.pm: use $::__ instead of $Sepia::__
472         (repl_quit): new command.
473         (repl): add banner.
475 2007-05-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
477         * VERSION: 0.72
478         * Makefile.PL: add license.
480 2007-05-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
482         * VERSION: 0.71
483         * sepia.el (sepia-load-file): set inhibit-read-only when
484           displaying errors.
485         * lib/Sepia.pm (repl_methods): walk ISA hierarchy looking for
486           functions (XXX: this is much too coarse).
487         (repl_help): use %REPL_DOC to hold command documentation for
488         easier extension.
489         (repl): display error on canceled continued statement.
491 2007-05-07  Sean O'Rourke  <sorourke@cs.ucsd.edu>
493         * lib/Sepia.pm (repl_strict): add 'strict mode' (thanks to
494           Lexical::Persistence) for those who swing that way (I don't),
495           inspired by Devel::REPL.
496         (repl_wantarray): Fix logic.
498 2007-04-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
500         * VERSION: 0.70
501         * README: add license.
502         * Makefile.PL: remove dependency on Sub::Uplevel, make PadWalker
503           optional.
504         * lib/Sepia.pm (who): add optional regex filter.
505         (debug_inspect): fix non-scalar printing.
506         * sepia.el (sepia-dwim): fix staleness; change to find
507           documentation for modules.
508         (sepia-find-module-file): new function to try sepia- and xref-
509         module file-finding functions.
510         (sepia-next): use it.
511         (sepia-filter-by-module,sepia-filter-by-all): remove.
512         (sepia-keymap): use `sepia-dwim' for M-.
514 2007-04-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
516         * lib/Sepia.pm (who): add optional regex argument.
518 2007-03-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
520         * sepia-w3m.el (sepia-module-list, sepia-package-list): added
521           detailed index of installed modules.
522         * VERSION: 0.68
524 2007-03-16  Sean O'Rourke  <sorourke@cs.ucsd.edu>
526         * sepia.el (sepia-set-found): filter spurious nils (XXX: this
527           really needs a fix).
528           (sepia-symbol-info): avoid eldoc errors in ecase.
530 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
532         * sepia.el (sepia-complete-symbol): fallback completion of
533           builtins.
534         * set COPY_EXTENDED_ATTRIBUTES_DISABLE=true to avoid creating ._*
535           files (RT #25490).
537 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
539         * VERSION: 0.67
540         * sepia-ido.el: clean up bitrot.
541         * lib/Sepia.pm (apropos): don't create new stashes during
542           completion.
543         * sepia.el (sepia-show-locations): bind inhibit-read-only; filter
544           out mysterious NILs.
545         * Makefile.PL: require PadWalker 1.0 (RT #25463)
547 2007-03-13  Sean O'Rourke  <sorourke@cs.ucsd.edu>
549         * VERSION: 0.66
550         * README (TODO): user-defined REPL abbrevs.
551         * lib/Sepia.pm (print_*): optional printing via YAML and
552           Data::Dump (from Shell::Perl).
553         (repl_wantarray): change eval context (same).
554         (repl_format): set formatter (same).
556 2007-03-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
558         * VERSION: 0.65
559         * sepia.el (sepia-keymap): add *-apropos, find-tag bindings.
560         * README: add organized function index.
561         * sepia.el (sepia-beginning-of-defun, sepia-end-of-defun):
562           fix argument to be prefix instead of point.
563         * sepia.el: documentation.
564         * sepia-ido.el: documentation.
565         * README: cleanup; note limitation of sepia-bodf and -eodf.
567 2007-02-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
569         * Makefile.PL: add Scalar::Util as prereq.
570         * sepia.el (sepia-perl5lib): new variable holding extra PERL5LIB
571           entry.
572         * sepia.el (sepia-init): use it.
573         * sepia.el (sepia-comint-setup): don't clobber keymap.
574         * sepia.el (sepia-indent-or-complete): complete first time if at
575           end of word.
576         * Sepia.pm (completions): enhanced completion -- e.g. "wtf"
577           matches "want_to_feed".
578         * Sepia.pm (printer): special-case PDL to use its stringification
579           (XXX: should test for overloaded "").
580         * Sepia.pm (who,repl_who): new functions.
582 2006-09-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
584         * Sepia.pm (Dump): wrap with eval to prevent unexpected exits.
585         * Sepia.pm (repl_chdir): expand '~' and '$HOME'
587 2006-07-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
589         * Sepia.pm (tolisp): undef -> nil
590         * sepia.el (sepia-eval-raw): guess package.
591         * sepia.el (sepia-init): don't pop-to-buffer with prefix argument.
592         * sepia.el (sepia-beginning-of-defun,sepia-end-of-defun): avoid
593           recursion.
594         * sepia.el (sepia-buffer-package): look backward from point
595           instead of forward from point-min.
597 2006-05-24  Sean O'Rourke  <sorourke@cs.ucsd.edu>
599         * Makefile.PL: added missing dependencies on PadWalker,
600           Sub::Uplevel.
601         * Sepia.pm: improved ",command"
602         * sepia-w3m.el (sepia-w3m-perldoc-this): simplify.
603         * sepia.el (perl-*): rename to sepia-*.
604         * sepia.el: reorg and cleanup.
605         * VERSION: 0.63
607 2006-05-19  Sean O'Rourke  <sorourke@cs.ucsd.edu>
609         * sepia.el: fixed eldoc support.  This only works with CVS Emacs,
610           relying on `eldoc-documentation-function'.  Also fixed pod
611           scanning for eldoc.
613 2006-05-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
615         * sepia.el, Sepia.pm: improved bulk-transfer protocol.
616         * Sepia.pm: override die with simple inspector/debugger.
617         * Sepia.pm: $__ and @__ now contain results of the last
618           expression.
619         * sepia.el, Sepia.pm: primitive support for evaluating elisp sent
620           from Perl.  Turn on comint-use-prompt-regexp because the fields
621           stuff is flaky with this.
622         * sepia.el, Sepia.pm: ",cd" shortcut coordinates directory with
623           Emacs.
624         * VERSION 0.61, 0.62
626 2006-04-14  Sean O'Rourke  <sorourke@cs.ucsd.edu>
628         * generic-repl.el: replaced by comint.
629         * all: removed EPL dependency.
630         * VERSION 0.59
632 2005-07-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
634         * sepia-w3m.el: fix function name so it's found.
635         * Xref.pm, Sepia.pm: cleanup and numerous bugfixes.
636         * Buffer.pm: new, but not ready for prime-time
637         * sepia.el: delete-thing-at-point removed; misc bugfixes.
638         * test.pl: disabled a bunch of location stuff.
639         * VERSION 0.58
641 2004-09-10  Sean O'Rourke  <sorourke@cs.ucsd.edu>
643         * test.pl: some real tests.
644         * Sepia.pm, Xref.pm: Separate simple symbol-table searching from
645           Xref, making the former more reliable.
646         * Xref.pm: More reliable detection of (class) method calls.
647         * sepia.el: results are not displayed for expressions ending in
648           ';' (c.f. Octave).
650 2004-04-12  Sean O'Rourke  <seano@cs.ucsd.edu>
652         * sepia.el (sepia-doc-scan-buffer): Make regular expressions a
653         bit better.
654         (sepia-ident-at-point): handle upper-case function and variable
655         names for completion (a bit hacky...).
656         (sepia-install-keys): fix keymap installation.
658 2004-04-11  Sean O'Rourke  <seano@cs.ucsd.edu>
660         * Xref.pm (guess_module_file): do like Module::Info and trust
661         %INC more than our Xref info.  But don't be _too_ smart about
662         this -- we were picking up lots of bogus exports.
663         (pp_method_named): add support for constant-named methods (cribbed
664         from B::Concise).
666 2004-04-10  Sean O'Rourke  <seano@cs.ucsd.edu>
668         * Xref.pm: update $VERSION to track Sepia release.
670         * sepia.el (sepia-indent-or-complete): only complete on the
671         second TAB.
673 2004-04-09  Sean O'Rourke  <seano@cs.ucsd.edu>
675         * sepia.el (sepia-refiner): tweak refining function a bit more.
676         I'm still not entirely happy with this, but it's getting better.
677         Time and experimentation are required.
679         * sepia-tree.el (sepia-calle[er]-tree): New file.  Use
680         caller/callee information to generate tree-view using David
681         Ponce's wonderful tree-widget.
683         * Xref.pm (_apropos_re): Add that Emacs-style multipart-word
684         completion, so e.g. D:v_d -> Devel::Xref::var_defs.  It's groovy,
685         man.
686         (%firstline): gone.  Just getting a line within the sub is good
687         enough -- we can fix it on the Emacs side of the fence later.
689 2004-04-08  Sean O'Rourke  <seano@cs.ucsd.edu>
691         * sepia-w3m.el (sepia-w3m-perldoc-this): work for functions as
692         well as modules, and try to go to correct position in manpage.
694         * sepia.el (sepia-eval-buffer): use 'BEGIN{ die }' to do Xrefs
695         for scripts without loading them.
697         * Xref.pm: Localize a bunch of things instead of stomping on
698         package lexicals.  This makes the module better handle repeated
699         use, for which it wasn't designed.
701         * Xref.pm (mod_subs): Rename package_subs for consistency.
702         (mod_decls): New function to generate decls for evaluation.
704         * sepia.el: misc bug-fixes, and better support for redefining
705         functions with sepia-eval-defun, especially preserving files and
706         line numbers.
707         (sepia-eval): remove newlines to make line-numbers make more
708         sense to user.
709         (sepia-interactive-arg): delay reading completions to speed up
710         \M-. functions.
711         (sepia-refiner): search both forward and backward, to adjust for
712         e.g. adding comments.  Still not so good, but better.
714 2004-04-06  Sean O'Rourke  <seano@cs.ucsd.edu>
716         * sepia-w3m.el: moved w3m-perldoc support here.
718         * README: added description, removed disclaimer
720         * sepia.el (sepia-symbol-info, sepia-doc-update): POD scanning
721         and cperl hackage for eldoc support.
723 2004-04-05  Sean O'Rourke  <seano@cs.ucsd.edu>
725         * Xref.pm (redefined,forget): make them take a single sub at a
726         time, and pay attention to packages.
727         (_apropos): use package info to narrow choices.
729         * sepia.el (sepia-eval-defun,sepia-eval-buffer): new functions.
731         * test.pl: satisfy the cpants Fascists.
733         * Xref.pm (use_type): try to be smarter about when something's
734         being assigned to, vs. merely used as a reference.
736         * sepia.el (sepia-repl-header): keep up with generic-repl by
737         doing header line, working dir.
738         (sepia-complete-symbol): stupid bug with modules.
739         (sepia-install-keys): new function.
740         (sepia-var-assigns): assignments are more useful than defs.
741         (sepia-init): start REPL by default.
743         * generic-repl.el (repl-cd,repl-set-header): "new" function from
744         Slime to track working dir, update header line.
746 2004-04-04  Sean O'Rourke  <seano@cs.ucsd.edu>
748         * Sepia.jpg: don't ask -- just look.
750         * sepia.el (sepia-ident-at-point): fixed bug with sigils.
751         (sepia-complete-symbol): fixed bug with undefined function
752         sepia-end-of-word.
753         Always use Data::Dumper.
755         * any-repl.el: new file implementing REPL, basically stolen from
756         Slime.
758         * pscope.el: renamed to sepia.el to go with name change.
760 2004-04-03  Sean O'Rourke  <seano@cs.ucsd.edu>
762         * pscope.el (pscope-set-found): remove locations with no
763         file in package "main", which were causing errors before.
764         (pscope-dwim): new function.  New functions
765         pscope-complete-symbol and pscope-indent-or-complete for
766         symbol completion.  Not well-tested, but they seem to work.
767         The most annoying thing is that since the Xref db isn't
768         automatically updated, it won't always know as much as you
769         expect.
770         (pscope-load-file): new function.
772         * Xref.pm: update export lists to reflect new functions.
774 2004-04-02  Sean O'Rourke  <seano@cs.ucsd.edu>
776         * Xref.pm: minor cleanup.
778         * pscope.el: pass module, file, line to Perl side (where it's
779         ignored for now); fix line number refinement to be a
780         little less over-eager; fix pscope-callees to go to sub
781         definitions instead of call sites.
783         * README: added TODO section.