see ChangeLog
[sepia.git] / ChangeLog
blobf7e7118c3151321482982d8e6a6fce6c87f79807
1 2010-10-04  Sean O'Rourke  <seano@cs.ucla.edu>
3         * sepia.el (sepia-perldoc-this): Display documentation in a less
4         annoying way.
5         (cperl-imenu--create-perl-index): Advise it to strip out some entries.
7         * Sepia.pm: dumpvar.pl and Devel::Peek format options.
9 2010-09-21  Sean O'Rourke  <seano@cs.ucla.edu>
11         * lib/Sepia.pm (track_requires): New function.
12         (file_list): New function.
13         Add 'dumpvar' flavor of output.
14         (repl_lsmod): New function.
15         (requires,users): Use track_requires.
17         * sepia.el (sepia-dired-package): New function.
18         (sepia-skip-doc-scan): New variable.
19         (sepia-doc-update): Use previous to skip confusing files.
20         (sepia-find-loaded-modules): New function.
21         (cperl-imenu--create-perl-index): Filter cruft.
23 2010-09-13  Sean O'Rourke  <seano@cs.ucla.edu>
25         * sepia.el (sepia-doc-scan-buffer): Avoid spurious matches.
26         (sepia-find-loaded-modules): New function.
28 2010-09-12  Sean O'Rourke  <seano@cs.ucla.edu>
30         * lib/Sepia.pm (repl_strict): Disable Lexical::Persistence's
31         stupid treatment of '_'.
33 2010-08-18  Sean O'Rourke  <seano@cs.ucla.edu>
35         * lib/Sepia.pm: remove useless @REPL_RESULT.  Fix _() to use @res.
37 2010-08-16  Sean O'Rourke  <seano@cs.ucla.edu>
39         * sepia.el (sepia-shared-map, sepia-eval-region): new function
40         bound to `C-c C-r', moving sepia-repl to `C-c C-t'.
41         * lib/Sepia.pm: disable deprecation warnings to avoid 5.12 lameness.
43 2010-02-08  Sean O'Rourke  <seano@cs.ucla.edu>
45         * sepia.el (sepia-looks-like-module): remove apropos-module check.
46         * lib/Sepia.pm (_apropos_re): make start anchor optional.
47         (inc_re): factor out @INC-removal.
48         (module_list): use inc_re().
49         (modules_matching): new function.
50         (apropos_module): rewrite.
52 2010-01-24  Sean O'Rourke  <seano@cs.ucla.edu>
54         * lib/Sepia.pm (repl_setup): load ~/.sepiarc in $Sepia::PACKAGE.
56 2010-01-23  Sean O'Rourke  <seano@cs.ucla.edu>
58         * README: add development information.
59         * lib/Sepia.pm (apropos_module): use "_apropos_re"
61 2009-12-15  Sean O'Rourke  <seano@cs.ucla.edu>
63         * lib/Sepia.pm (repl_package): always change packages, even if
64         empty.
66 2009-12-14  Sean O'Rourke  <seano@cs.ucla.edu>
68         * lib/Sepia/ReadLine.pm: readline interface.
69         * lib/Sepia.pm ($READLINE): next-input hook.
71 2009-12-08  Sean O'Rourke  <seano@cs.ucla.edu>
73         * lib/Sepia.pm (methods): uniquify.
74         * lib/Sepia.pm, lib/Sepia/Debug.pm: avoid deprecated
75         "defined %hash" in 5.11.x.
77 2009-12-02  Sean O'Rourke  <seano@cs.ucla.edu>
79         * lib/Sepia/Xref.pm (load_pad): work around pad weirdness with
80         threads.
81         * VERSION: 0.991_01
83 2009-11-29  Sean O'Rourke  <seano@cs.ucla.edu>
85         * Makefile.PL: make LWP::Simple optional.  It didn't do much.
86         * sepia-snippet.el (sepia-snippet-abbrev): de-dup, sort, add
87         given/when.
88         * sepia.el (sepia-shortcuts): update.
89         (sepia-complete-symbol): fix sigil duplication bug.
90         (sepia-symbol-info): use cperl's variable short-docs.
92 2009-11-26  Sean O'Rourke  <seano@cs.ucla.edu>
94         * lib/Sepia.pm: reorganize, add docs.
95         * sepia.texi (Shortcuts): document ,time
96         * Makefile.PL: optional BSD::Resource and Time::HiRes.
97         * lib/Sepia.pm (run_hook,add_hook,remove_hook): new functions.
98         (repl_time,time_pre_prompt*): print CPU times.
100 2009-11-25  Sean O'Rourke  <seano@cs.ucla.edu>
102         * sepia.el (sepia-ident-before-point): use s-i-at-point.
103         (sepia-ident-at-point): Handle punctuation variables.
104         (sepia-describe-object): add "perldoc -v" support.
106 2009-11-22  Sean O'Rourke  <seano@cs.ucla.edu>
108         * lib/Sepia.pm (location): handle special @INC entries.
109         * sepia.el (sepia-describe-object): Guess identifier-at-point in
110         the right order.
112 2009-11-18  Sean O'Rourke  <seano@cs.ucla.edu>
114         * sepia.el (sepia-describe-object): new function like
115         describe-function and friends.  Currently only "perldoc -f."
116         (sepia-init-perl-builtins): bugfix.
117         (sepia-repl-mode): turn on eldoc.
119 2009-11-02  Sean O'Rourke  <seano@cs.ucla.edu>
121         * lib/Sepia.pm (location): change to work on only one location,
122         since that's how it's used.
123         (define_shortcuts): tweak.
124         (repl_setup): fix $REPL_LEVEL bug.
125         (repl,repl_quit): make quitting from restarted REPLs.
127 2009-10-28  Sean O'Rourke  <seano@cs.ucla.edu>
129         * sepia.el (sepia-indent-or-complete): work around bug where
130         expand-abbrev returns nil even though it expanded.
131         (sepia-looks-like-module): use xref-apropos-module.
133 2009-10-19  Sean O'Rourke  <seano@cs.ucla.edu>
135         * sepia-cpan.el (sepia-cpan-mode-map): initialize in definition;
136         oops!
137         * VERSION: 0.991
139 2009-10-18  Sean O'Rourke  <seano@cs.ucla.edu>
141         * lib/Sepia/CPAN.pm (group_by_dist): better heuristic.
142         * lib/Sepia.pm (repl_reload, repl_full_reload, full_reload):
143         support "reload" and "freload" shortcuts.
144         * lib/Sepia/Debug.pm (xreturn, repl_xreturn): return-from-context,
145         not yet used.
146         * VERSION: 0.99
148 2009-10-12  Sean O'Rourke  <seano@cs.ucla.edu>
150         * sepia.el (sepia-symbol-info): tweak on module names.
151         (sepia-apropos-module): new function.
152         (sepia-perlize-region,sepia-perl-ne-region): interactive prompt fix
154 2009-07-22  Sean O'Rourke  <seano@cs.ucla.edu>
156         * sepia-cpan.el (sepia-cpan-doc): make browser pop up in other
157         window, like README.
159 2009-07-18  Sean O'Rourke  <seano@cs.ucla.edu>
161         * lib/Sepia.pm (filter_exact_prefix): new function to improve
162         completion behavior.
164 2009-07-07  Sean O'Rourke  <seano@cs.ucla.edu>
166         * lib/Sepia.pm (save,load,repl_save,repl_load): Persist
167         variables to a file.
168         * VERSION: 0.99_01
170 2009-07-05  Sean O'Rourke  <seano@cs.ucla.edu>
172         * sepia.el (sepia-rename-lexical): New function; a small wrapper
173         around query-replace(-regexp).
175 2009-05-03  Sean O'Rourke  <seano@cs.ucla.edu>
177         * t/02completion.t (ok_comp): adjust for completion changes.
178         * sepia.texi: Variable index.
180 2009-03-18  Sean O'Rourke  <seano@cs.ucla.edu>
182         * lib/Sepia.pm (repl_help): fix formatting with "help CMD"
183         (repl_size): sort by size
185 2008-12-17  Sean O'Rourke  <seano@cs.ucla.edu>
187         * sepia.texi (Completion): we do lexicals.
188         * lib/Sepia.pm (lexical_completions): new function.
189         (completions): use it.
190         * sepia.el (sepia-function-at-point): return nil outside subs.
191         (sepia-interactive-arg): fix call to xref-completions.
193 2008-07-22  Sean O'Rourke  <seano@cs.ucla.edu>
195         * sepia.el (sepia-scratch-send-line): change to use REPL printer.
197 2008-07-09  Sean O'Rourke  <seano@cs.ucla.edu>
198         * sepia.el (sepia-indent-line): new function.  Let-bind
199           beginning-of-defun-function for cperl-indent-line.
201 2008-06-29  Sean O'Rourke  <seano@cs.ucla.edu>
203         * sepia.el (sepia-cont-or-restart): new function to restart
204           quitted REPL.
205         * sepia-cpan.el (sepia-cpan-do-{desc,recommend}): oops.
206         (sepia-cpan-make-buffer): better column widths
207         * lib/Sepia.pm (repl_size): skip %SIG to avoid segfaults.
208         * lib/sepia/CPAN.pm (group_by_dist): only list "main" module in
209           each distribution, and sort them.
211 2008-06-20  Sean O'Rourke  <seano@cs.ucla.edu>
213         * VERSION: 0.97
214         * lib/Sepia.pm: fix use of defined().
216 2008-06-17  Sean O'Rourke  <seano@cs.ucla.edu>
218         * lib/Sepia.pm (repl_who,repl_size): turn off added 5.10 strictures.
220 2008-05-11  Sean O'Rourke  <seano@cs.ucla.edu>
222         * sepia.texi (Mutilation): updated CPAN documentation.
223         * sepia-cpan.el (sepia-cpan-desc): add search-by-description
224         (sepia-cpan-mode-map): fix keybindings.
225         * lib/Sepia/CPAN.pm: have ls/_ls, etc call interesting_parts
227 2008-05-10  Sean O'Rourke  <seano@cs.ucla.edu>
229         * VERSION: 0.96_02
230         * sepia-cpan.el (sepia-cpan-list, sepia-cpan-make-buffer)
231         (sepia-cpan-search): added list-by-author, refactored.
232         (sepia-cpan-readme): insert temp file rather than passing as
233         string.
234         * lib/Sepia/CPAN.pm (ls): new function to list author's modules.
235         * lib/Sepia/Debug.pm (repl_finish): mostly-working, by adding 0x10
236           to $^P and looking at sub's last line.
238 2008-01-10  Sean O'Rourke  <seano@cs.ucla.edu>
240         * lib/Sepia.pm (columnate): true -> defined
241         * VERSION: 0.96_01
242         * sepia-cpan.el: new file, experimental CPAN interface.
243         * lib/Sepia/CPAN.pm: new file.
245 2008-01-05  Sean O'Rourke  <seano@cs.ucla.edu>
247         * README: remove redundant/obsolete documentation
249 2008-01-02  Sean O'Rourke  <seano@cs.ucla.edu>
251         * lib/Sepia.pm (flow): get closer to margin.
253 2007-12-22  Sean O'Rourke  <seano@cs.ucla.edu>
255         * t/50expect.t: mysterious change to placate expect.
256         * sepia.el (sepia-shared-map): adjust bindings.
257         (sepia-complete-symbol): Fix shortcut completion.
258         * sepia-snippet.el (sepia-snippet-abbrev): make snippet optional,
259           but mention it.
261 2007-12-20  Sean O'Rourke  <seano@cs.ucla.edu>
263         * lib/Sepia.pm (who): don't apply regex to sigil.
264         (completions): fix multi-arg version (used by Emacs).
265         (html_module_list,html_package_list): return string if asked.
267 2007-12-17  Sean O'Rourke  <seano@cs.ucla.edu>
269         * sepia.el (sepia-shared-map): bind cperl-perldoc.
271 2007-12-16  Sean O'Rourke  <seano@cs.ucla.edu>
273         * Makefile.PL (test_for): use MakeMaker's prompt().
275 2007-12-13  Sean O'Rourke  <seano@cs.ucla.edu>
277         * sepia.el (sepia-complete-symbol): add shortcut completion.
278           improve XEmacs compatibility.
279         * sepia-w3m.el (sepia-w3m-create-imenu): new function, disabled by
280           default.
281         * lib/Sepia.pm (repl_*): don't look at return values; use "last
282           repl" to get out.
284 2007-11-29  Sean O'Rourke  <seano@cs.ucla.edu>
286         * t/02completion.t: new completion tests.
287         * lib/Sepia.pm (completions): rewrote to simplify.
289 2007-11-28  Sean O'Rourke  <seano@cs.ucla.edu>
291         * lib/Sepia.pm (printer): Don't sort arrays when printing.
292         * VERSION: 0.95_02
293         * lib/sepia/Debug.pm (warn,die): use Carp for 5.10 compatibility.
294         * Makefile.PL (test_for): $|=1 if prompting.
296 2007-11-27  Sean O'Rourke  <seano@cs.ucla.edu>
298         * sepia.el (sepia-perldoc-this): test for w3m when called.
300         * VERSION: 0.95_01
301         * t/01basic.t (Sepia): fix tests w/o Module::Info.
303 2007-11-26  Sean O'Rourke  <seano@cs.ucla.edu>
305         * VERSION: 0.95
306         * lib/sepia/Debug.pm (add_repl_commands): use define_shortcut.
307         (warn,die): same.
308         (add_debug_repl_commands): new function.
309         (repl): use it.
311         * lib/Sepia.pm (define_shortcut): new function.
312         (define_shortcut): new function.
313         (repl_help): auto-format help text; add arg.
314         (repl_reload): decrement $REPL_LEVEL.
315         (completions): fix abbrev completion.
316         (repl): read ~/.sepiarc; use define_shortcuts.
317         (repl_format): show current if no argument.
318         (module_info): optional dependency.
320 2007-11-08  Sean O'Rourke  <seano@cs.ucla.edu>
322         * VERSION: 0.94_01
323         * lib/Sepia/Xref.pm: POD fixup.
324         * sepia.el (sepia-ensure-process): fix stupid attachtty mistake.
326 2007-11-05  Sean O'Rourke  <seano@cs.ucla.edu>
328         * lib/sepia/Debug.pm (repl_break): allow "0" as a break condition.
330 2007-10-31  Sean O'Rourke  <seano@cs.ucla.edu>
332         * lib/Sepia.pm (repl_size): ",size" command to list variable sizes,
333         like Matlab's "whos".
335 2007-10-16  Sean O'Rourke  <seano@cs.ucla.edu>
337         * VERSION: 0.93
339         * lib/Sepia.pm (repl_pwd): add ",pwd" shortcut.
340         (repl_who): use current package when only regex given.
342         * sepia.el (sepia-repl,sepia-ensure-process): add remote
343           connection with attachtty.
344         (sepia-shared-map): bind \C-c\C-e to eval-expression.
345         (sepia-symbol-info): be more selective about "core version".
347 2007-09-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
349         * lib/Sepia.pm (printer): remove "=>" -- it's annoying.
351 2007-09-21  Sean O'Rourke  <sorourke@cs.ucsd.edu>
353         * sepia.el (sepia-load-file): disable debugger.
354         (sepia-symbol-info): be pickier about module core versions.
356 2007-09-20  Sean O'Rourke  <sorourke@cs.ucsd.edu>
358         * lib/Sepia.pm (repl_who): use current package if only one arg
359           given, and it's not an existing package.
361 2007-09-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
363         * sepia.el (sepia-watch-for-eval): fix hang with recursive sepia-eval.
365 2007-07-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
367         * sepia.el (sepia-interactive-arg): use xref-completions rather
368         than xref-apropos for working completion.
370 2007-07-25  Ye Wenbin  <wenbinye@gmail.com>
372         * sepia.el (sepia-defun-around-point): change the command to a
373         function, because as a command it does nothing.
374         (define-modinfo-function, sepia-maybe-echo): the interactive-p
375         is not true when call as function.
376         (define-modinfo-function, sepia-init): some modinfo-function
377         should eval in a list-context.
378         (sepia-mode): use cperl-mode-abbrev-table as current local-abbrev-table
380 2007-07-24  Ye Wenbin  <wenbinye@gmail.com>
382         * sepia.el (sepia-set-found): Use (OFFSET . LIST) to represent
383         things that found.
384         (sepia-next, sepia-previous): more generic move commands
385         (sepia-refiner): remove the test, because sometimes use the
386         same declaration, but found in difference place.
388         * sepia-tree.el (sepia-tree-button-cb): widget => pw and
389         xref-location return a list of posible locations.
390         (sepia-tree-tidy-buffer, sepia-tree-use-image): Let user
391         to choose whether use image or not. Set it to a buffer-local
392         variable, so that it didn't interference global values.
394         * sepia.el (sepia-extract-def): seem an argument is excessive
396         * sepia-tree.el (sepia-build-tree-buffer): In my emacs, it
397         doesn't work. The :dynargs didn't become the tree-widget
398         :expander. The tree-widget-convert-widget only receive the
399         'tree-widget, not the total list.
400         sepia-install-keys not defined.
402         * lib/Sepia/Xref.pm (file_modules): seem it is a typo error to use
403         Module::Include rather than Module::Info.
404         Module::Info::packages_inside return an array, the operator
405         || will force in a scalar context.
407         * sepia.el (sepia-lisp-to-perl): use "'" to quote string is not
408         enough, because the string may also contain "'" inside.
409         use (format "%S" string) instead.
410         (define-sepia-query): `sepia-set-found' accept a symbol as
411         argument, not (quote symbol).
413 2007-06-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
415         * VERSION: 0.92
416         * sepia.el (sepia-shared-map, etc.): fix keymap initialization.
418 2007-06-06  Sean O'Rourke  <sorourke@cs.ucsd.edu>
420         * lib/Sepia/Debug.pm: eval in lexical env when in debugger.
421         * t/50expect.t: REPL tests if you have Test::Expect.
422         * lib/Sepia/Debug.pm: use correct level when none given.
423         * lib/Sepia.pm: No longer bring in exporter (why did we?).
424         * sepia.el (sepia-init): always reinitialize sepia-mode-map.
425         * Makefile.PL: require 5.006 for warnings to quiet stupid "make
426           test".
428 2007-06-05  Sean O'Rourke  <sorourke@cs.ucsd.edu>
430         * Sepia.html: generate single-page manual instead of split.
431         * VERSION: 0.90
432         * sepia.el: docstring cleanup.
433         * lib/sepia/Debug.pm: misc usability improvements
435 2007-06-04  Sean O'Rourke  <sorourke@cs.ucsd.edu>
437         * VERSION 0.90_02
438         * test.pl: disable Module::Info tests to avoid Module::Info bug.
440 2007-06-02  Sean O'Rourke  <sorourke@cs.ucsd.edu>
442         * VERSION 0.90_01
443         * Major: replaced comint- with gud-based REPL, use real debugger.
444         * lib/Sepia/Debug.pm: "perl -d" support.
445         * lib/Sepia.pm (repl_shell): new command.
446         * sepia.el (sepia-eval-defun): detect errors, jump to first.
447         (sepia-comint-setup): don't set comint-use-prompt-regexp
448         (sepia-eval-defun,sepia-beginning-of-defun,sepia-end-of-defun): fix
450 2007-06-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
452         * sepia.el (sepia-perldoc-this): don't mess up window
453           configuration when the page isn't found.
454         (sepia-location): use sepia-interactive-arg.
455         (sepia-perl-[np]e-region): fix.
457         * lib/Sepia.pm: fix.
458         (print_dumper): switch format based on size.
460 2007-05-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
461         * sepia.texi: shiny new manual.
462         * lib/Sepia.pm (completions): add special 'VARIABLE' type.
463         (methods): add second $qualified arg.
464         (repl_reload): new function.
465         (sig_warn,repl): override __WARN__ (and __DIE__) cautiously.
466         (repl): nicer warning format.
468         * sepia.el (sepia-eval-raw): stopwarn -> STOPWARN.
469         (sepia-load-file): Fix pop-up error buffer.
470         (sepia-lisp-to-perl): fix quoting of strings.
471         Good citizenship:
472         (sepia-mode): make a real major mode.
473         (sepia-scratchpad-mode): ditto.
475 2007-05-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
477         * lib/sepia/Xref.pm (pp_method_named): warn -> dprint.
478         * sepia.el (sepia-simple-method-before-point): new function.
479         (sepia-complete-symbol): use it to complete methods.
480         make w3m optional:
481         (sepia-perldoc-function,sepia-view-pod-function,
482           sepia-module-list-function): new variables.
483         (sepia-perldoc-this,sepia-view-pod): new functions.
484         * lib/Sepia.pm (repl): trim leading spaces.
485         (tolisp): escape metacharacters.
486         (repl): don't override "die" if someone has installed a
487         $SIG{__DIE__} handler
489 2007-05-28  Sean O'Rourke  <sorourke@cs.ucsd.edu>
491         * VERSION: 0.75+
492         * sepia.el (sepia-core-version): new function.
493         (sepia-indent-or-complete): fix abbrev expansion.
494         (sepia-symbol-info): report core version in eldoc.
495         (sepia-ident-before-point): new function.
496         (sepia-complete-symbol): use it instead of *-at-point.
497         (sepia-complete-symbol): complete arrays and hashes when '$'
498         starts a word.
499         * lib/Sepia.pm (printer): Use @::__; distinguish "last as scalar"
500           $__ from printed representation.
501         ($PRINT_PRETTY): columnate lists if this is on.
502         (columnate): fixed.
503         (repl_methods): add regex argument.
504         (repl_who): fix.
505         (completions): Add in package names.
507 2007-05-27  Sean O'Rourke  <sorourke@cs.ucsd.edu>
509         * lib/Sepia.pm (repl_methods): fixed.
511 2007-05-26  Sean O'Rourke  <sorourke@cs.ucsd.edu>
513         * VERSION: 0.74
514         * sepia.el (sepia-doc-scan-buffer): Better doc regex for
515           variables.
516         (sepia-indent-or-complete): try to expand abbrevs before
517           completion (try with snippet.el).
518         (sepia-indent-expand-abbrev): control the above feature.
519         (sepia-complete-symbol): scroll completion buffer; suggested by
520           Hilko Bengen.
521         * lib/Sepia.pm (html_package_list,html_module_list): new
522           functions.
523         (completions): '$'-completion only generates scalars.
524         * sepia-w3m.el: remove spurious sepia-module-list, improve
525           documentation.
526         (sepia-module-list,sepia-package-list): better output.
527         (sepia-package-list,sepia-module-list): move Perl code to
528           Sepia.pm, generate list in inferior perl instead of shelling
529           out.
531 2007-05-23  Sean O'Rourke  <sorourke@cs.ucsd.edu>
533         * lib/Sepia.pm (_apropos_re): handle empty completions.
534         (columnate): pretty-print ",who" output.
535         * sepia.el (sepia-complete-symbol): bury stale completions buffer;
536           suggested by Hilko Bengen.
538 2007-05-17  Sean O'Rourke  <sorourke@cs.ucsd.edu>
540         * lib/Sepia.pm (_completions1): Fix infinite recursion.
541         (repl): typo; clarify ambiguous vs. unrecognized shortcuts.
543 2007-05-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
545         * sepia.el (sepia-dwim): don't try to jump to location when
546           looking up module docs.
547         * lib/Sepia.pm: use $::__ instead of $Sepia::__
548         (repl_quit): new command.
549         (repl): add banner.
551 2007-05-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
553         * VERSION: 0.72
554         * Makefile.PL: add license.
556 2007-05-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
558         * VERSION: 0.71
559         * sepia.el (sepia-load-file): set inhibit-read-only when
560           displaying errors.
561         * lib/Sepia.pm (repl_methods): walk ISA hierarchy looking for
562           functions (XXX: this is much too coarse).
563         (repl_help): use %REPL_DOC to hold command documentation for
564         easier extension.
565         (repl): display error on canceled continued statement.
567 2007-05-07  Sean O'Rourke  <sorourke@cs.ucsd.edu>
569         * lib/Sepia.pm (repl_strict): add 'strict mode' (thanks to
570           Lexical::Persistence) for those who swing that way (I don't),
571           inspired by Devel::REPL.
572         (repl_wantarray): Fix logic.
574 2007-04-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
576         * VERSION: 0.70
577         * README: add license.
578         * Makefile.PL: remove dependency on Sub::Uplevel, make PadWalker
579           optional.
580         * lib/Sepia.pm (who): add optional regex filter.
581         (debug_inspect): fix non-scalar printing.
582         * sepia.el (sepia-dwim): fix staleness; change to find
583           documentation for modules.
584         (sepia-find-module-file): new function to try sepia- and xref-
585         module file-finding functions.
586         (sepia-next): use it.
587         (sepia-filter-by-module,sepia-filter-by-all): remove.
588         (sepia-keymap): use `sepia-dwim' for M-.
590 2007-04-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
592         * lib/Sepia.pm (who): add optional regex argument.
594 2007-03-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
596         * sepia-w3m.el (sepia-module-list, sepia-package-list): added
597           detailed index of installed modules.
598         * VERSION: 0.68
600 2007-03-16  Sean O'Rourke  <sorourke@cs.ucsd.edu>
602         * sepia.el (sepia-set-found): filter spurious nils (XXX: this
603           really needs a fix).
604           (sepia-symbol-info): avoid eldoc errors in ecase.
606 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
608         * sepia.el (sepia-complete-symbol): fallback completion of
609           builtins.
610         * set COPY_EXTENDED_ATTRIBUTES_DISABLE=true to avoid creating ._*
611           files (RT #25490).
613 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
615         * VERSION: 0.67
616         * sepia-ido.el: clean up bitrot.
617         * lib/Sepia.pm (apropos): don't create new stashes during
618           completion.
619         * sepia.el (sepia-show-locations): bind inhibit-read-only; filter
620           out mysterious NILs.
621         * Makefile.PL: require PadWalker 1.0 (RT #25463)
623 2007-03-13  Sean O'Rourke  <sorourke@cs.ucsd.edu>
625         * VERSION: 0.66
626         * README (TODO): user-defined REPL abbrevs.
627         * lib/Sepia.pm (print_*): optional printing via YAML and
628           Data::Dump (from Shell::Perl).
629         (repl_wantarray): change eval context (same).
630         (repl_format): set formatter (same).
632 2007-03-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
634         * VERSION: 0.65
635         * sepia.el (sepia-keymap): add *-apropos, find-tag bindings.
636         * README: add organized function index.
637         * sepia.el (sepia-beginning-of-defun, sepia-end-of-defun):
638           fix argument to be prefix instead of point.
639         * sepia.el: documentation.
640         * sepia-ido.el: documentation.
641         * README: cleanup; note limitation of sepia-bodf and -eodf.
643 2007-02-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
645         * Makefile.PL: add Scalar::Util as prereq.
646         * sepia.el (sepia-perl5lib): new variable holding extra PERL5LIB
647           entry.
648         * sepia.el (sepia-init): use it.
649         * sepia.el (sepia-comint-setup): don't clobber keymap.
650         * sepia.el (sepia-indent-or-complete): complete first time if at
651           end of word.
652         * Sepia.pm (completions): enhanced completion -- e.g. "wtf"
653           matches "want_to_feed".
654         * Sepia.pm (printer): special-case PDL to use its stringification
655           (XXX: should test for overloaded "").
656         * Sepia.pm (who,repl_who): new functions.
658 2006-09-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
660         * Sepia.pm (Dump): wrap with eval to prevent unexpected exits.
661         * Sepia.pm (repl_chdir): expand '~' and '$HOME'
663 2006-07-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
665         * Sepia.pm (tolisp): undef -> nil
666         * sepia.el (sepia-eval-raw): guess package.
667         * sepia.el (sepia-init): don't pop-to-buffer with prefix argument.
668         * sepia.el (sepia-beginning-of-defun,sepia-end-of-defun): avoid
669           recursion.
670         * sepia.el (sepia-buffer-package): look backward from point
671           instead of forward from point-min.
673 2006-05-24  Sean O'Rourke  <sorourke@cs.ucsd.edu>
675         * Makefile.PL: added missing dependencies on PadWalker,
676           Sub::Uplevel.
677         * Sepia.pm: improved ",command"
678         * sepia-w3m.el (sepia-w3m-perldoc-this): simplify.
679         * sepia.el (perl-*): rename to sepia-*.
680         * sepia.el: reorg and cleanup.
681         * VERSION: 0.63
683 2006-05-19  Sean O'Rourke  <sorourke@cs.ucsd.edu>
685         * sepia.el: fixed eldoc support.  This only works with CVS Emacs,
686           relying on `eldoc-documentation-function'.  Also fixed pod
687           scanning for eldoc.
689 2006-05-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
691         * sepia.el, Sepia.pm: improved bulk-transfer protocol.
692         * Sepia.pm: override die with simple inspector/debugger.
693         * Sepia.pm: $__ and @__ now contain results of the last
694           expression.
695         * sepia.el, Sepia.pm: primitive support for evaluating elisp sent
696           from Perl.  Turn on comint-use-prompt-regexp because the fields
697           stuff is flaky with this.
698         * sepia.el, Sepia.pm: ",cd" shortcut coordinates directory with
699           Emacs.
700         * VERSION 0.61, 0.62
702 2006-04-14  Sean O'Rourke  <sorourke@cs.ucsd.edu>
704         * generic-repl.el: replaced by comint.
705         * all: removed EPL dependency.
706         * VERSION 0.59
708 2005-07-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
710         * sepia-w3m.el: fix function name so it's found.
711         * Xref.pm, Sepia.pm: cleanup and numerous bugfixes.
712         * Buffer.pm: new, but not ready for prime-time
713         * sepia.el: delete-thing-at-point removed; misc bugfixes.
714         * test.pl: disabled a bunch of location stuff.
715         * VERSION 0.58
717 2004-09-10  Sean O'Rourke  <sorourke@cs.ucsd.edu>
719         * test.pl: some real tests.
720         * Sepia.pm, Xref.pm: Separate simple symbol-table searching from
721           Xref, making the former more reliable.
722         * Xref.pm: More reliable detection of (class) method calls.
723         * sepia.el: results are not displayed for expressions ending in
724           ';' (c.f. Octave).
726 2004-04-12  Sean O'Rourke  <seano@cs.ucsd.edu>
728         * sepia.el (sepia-doc-scan-buffer): Make regular expressions a
729         bit better.
730         (sepia-ident-at-point): handle upper-case function and variable
731         names for completion (a bit hacky...).
732         (sepia-install-keys): fix keymap installation.
734 2004-04-11  Sean O'Rourke  <seano@cs.ucsd.edu>
736         * Xref.pm (guess_module_file): do like Module::Info and trust
737         %INC more than our Xref info.  But don't be _too_ smart about
738         this -- we were picking up lots of bogus exports.
739         (pp_method_named): add support for constant-named methods (cribbed
740         from B::Concise).
742 2004-04-10  Sean O'Rourke  <seano@cs.ucsd.edu>
744         * Xref.pm: update $VERSION to track Sepia release.
746         * sepia.el (sepia-indent-or-complete): only complete on the
747         second TAB.
749 2004-04-09  Sean O'Rourke  <seano@cs.ucsd.edu>
751         * sepia.el (sepia-refiner): tweak refining function a bit more.
752         I'm still not entirely happy with this, but it's getting better.
753         Time and experimentation are required.
755         * sepia-tree.el (sepia-calle[er]-tree): New file.  Use
756         caller/callee information to generate tree-view using David
757         Ponce's wonderful tree-widget.
759         * Xref.pm (_apropos_re): Add that Emacs-style multipart-word
760         completion, so e.g. D:v_d -> Devel::Xref::var_defs.  It's groovy,
761         man.
762         (%firstline): gone.  Just getting a line within the sub is good
763         enough -- we can fix it on the Emacs side of the fence later.
765 2004-04-08  Sean O'Rourke  <seano@cs.ucsd.edu>
767         * sepia-w3m.el (sepia-w3m-perldoc-this): work for functions as
768         well as modules, and try to go to correct position in manpage.
770         * sepia.el (sepia-eval-buffer): use 'BEGIN{ die }' to do Xrefs
771         for scripts without loading them.
773         * Xref.pm: Localize a bunch of things instead of stomping on
774         package lexicals.  This makes the module better handle repeated
775         use, for which it wasn't designed.
777         * Xref.pm (mod_subs): Rename package_subs for consistency.
778         (mod_decls): New function to generate decls for evaluation.
780         * sepia.el: misc bug-fixes, and better support for redefining
781         functions with sepia-eval-defun, especially preserving files and
782         line numbers.
783         (sepia-eval): remove newlines to make line-numbers make more
784         sense to user.
785         (sepia-interactive-arg): delay reading completions to speed up
786         \M-. functions.
787         (sepia-refiner): search both forward and backward, to adjust for
788         e.g. adding comments.  Still not so good, but better.
790 2004-04-06  Sean O'Rourke  <seano@cs.ucsd.edu>
792         * sepia-w3m.el: moved w3m-perldoc support here.
794         * README: added description, removed disclaimer
796         * sepia.el (sepia-symbol-info, sepia-doc-update): POD scanning
797         and cperl hackage for eldoc support.
799 2004-04-05  Sean O'Rourke  <seano@cs.ucsd.edu>
801         * Xref.pm (redefined,forget): make them take a single sub at a
802         time, and pay attention to packages.
803         (_apropos): use package info to narrow choices.
805         * sepia.el (sepia-eval-defun,sepia-eval-buffer): new functions.
807         * test.pl: satisfy the cpants Fascists.
809         * Xref.pm (use_type): try to be smarter about when something's
810         being assigned to, vs. merely used as a reference.
812         * sepia.el (sepia-repl-header): keep up with generic-repl by
813         doing header line, working dir.
814         (sepia-complete-symbol): stupid bug with modules.
815         (sepia-install-keys): new function.
816         (sepia-var-assigns): assignments are more useful than defs.
817         (sepia-init): start REPL by default.
819         * generic-repl.el (repl-cd,repl-set-header): "new" function from
820         Slime to track working dir, update header line.
822 2004-04-04  Sean O'Rourke  <seano@cs.ucsd.edu>
824         * Sepia.jpg: don't ask -- just look.
826         * sepia.el (sepia-ident-at-point): fixed bug with sigils.
827         (sepia-complete-symbol): fixed bug with undefined function
828         sepia-end-of-word.
829         Always use Data::Dumper.
831         * any-repl.el: new file implementing REPL, basically stolen from
832         Slime.
834         * pscope.el: renamed to sepia.el to go with name change.
836 2004-04-03  Sean O'Rourke  <seano@cs.ucsd.edu>
838         * pscope.el (pscope-set-found): remove locations with no
839         file in package "main", which were causing errors before.
840         (pscope-dwim): new function.  New functions
841         pscope-complete-symbol and pscope-indent-or-complete for
842         symbol completion.  Not well-tested, but they seem to work.
843         The most annoying thing is that since the Xref db isn't
844         automatically updated, it won't always know as much as you
845         expect.
846         (pscope-load-file): new function.
848         * Xref.pm: update export lists to reflect new functions.
850 2004-04-02  Sean O'Rourke  <seano@cs.ucsd.edu>
852         * Xref.pm: minor cleanup.
854         * pscope.el: pass module, file, line to Perl side (where it's
855         ignored for now); fix line number refinement to be a
856         little less over-eager; fix pscope-callees to go to sub
857         definitions instead of call sites.
859         * README: added TODO section.