* document "sepl" a bit.
[sepia.git] / ChangeLog
blobde457f4f8379243fedec24d69ece125197efbeb8
1 2011-11-14  Sean O'Rourke  <seano@cpan.org>
3         * sepl: add some docs.
5 2011-11-10  Sean O'Rourke  <seano@cpan.org>
7         * lib/Sepia.pm (repl_who): list lexicals in strict-mode.
8         (repl_eval,repl_strict,call_strict): eliminate
9         Lexical::Persistence, which is more trouble than it's worth.
10         (repl_size): list lexical sizes in strict-mode.
12 2011-11-02  Sean O'Rourke  <seano@cpan.org>
14         * lib/Sepia/ReadLine.pm (rl_complete): Unify T:R:{Perl,GNU}
16 2011-10-24  Sean O'Rourke  <seano@cpan.org>
18         * sepia.el (sepia-[be]ol-from): use line-{beginning,end}-position.
19         (sepia-shared-map): remap C-c C-t to cperl-invert-if-unless.
21 2011-10-23  Sean O'Rourke  <seano@cpan.org>
23         * lib/Sepia/ReadLine.pm (repl): support Term::ReadLine::Perl.
25 2011-10-07  Sean O'Rourke  <seano@cpan.org>
27         * sepia.texi (Navigation): add sepia-pod-follow-link-at-point and
28         associated key-reshuffling.
29         * sepia.el (sepia-pod-follow-link-at-point): new function to
30         follow POD links from source.
31         (sepia-metapoint-map): shuffle keys for
32         sepia-pod-follow-link-at-point.
34 2011-03-20  Sean O'Rourke  <seano@cpan.org>
36         * lib/Sepia/Xref.pm: POD fix.
37         * Makefile.PL: don't install .elc files, since that breaks Debian.
38         Patches from Hilko Bengen.
40 2011-03-14  Sean O'Rourke  <seano@cpan.org>
42         * VERSION: 0.991_05 (testing).
43         * sepl: add to MANIFEST
45 2011-03-14  Sean O'Rourke  <seano@cpan.org>
47         * VERSION: 0.991_04 (testing).
48         * Makefile.PL (prompt_for_infodir): filter out Emacs-spam.
50 2010-11-05  Sean O'Rourke  <seano@cpan.org>
52         * sepia.el (sepia-next, sepia-show-locations,sepia-set-found):
53         Always use next-error.
54         * sepia-w3m.el (w3m-about-perldoc-buffer): let user know when
55         there are POD errors.
57 2010-10-04  Sean O'Rourke  <seano@cs.ucla.edu>
59         * sepia.el (sepia-perldoc-this): Display documentation in a less
60         annoying way.
61         (cperl-imenu--create-perl-index): Advise it to strip out some entries.
63         * Sepia.pm: dumpvar.pl and Devel::Peek format options.
65 2010-09-21  Sean O'Rourke  <seano@cs.ucla.edu>
67         * lib/Sepia.pm (track_requires): New function.
68         (file_list): New function.
69         Add 'dumpvar' flavor of output.
70         (repl_lsmod): New function.
71         (requires,users): Use track_requires.
73         * sepia.el (sepia-dired-package): New function.
74         (sepia-skip-doc-scan): New variable.
75         (sepia-doc-update): Use previous to skip confusing files.
76         (sepia-find-loaded-modules): New function.
77         (cperl-imenu--create-perl-index): Filter cruft.
79 2010-09-13  Sean O'Rourke  <seano@cs.ucla.edu>
81         * sepia.el (sepia-doc-scan-buffer): Avoid spurious matches.
82         (sepia-find-loaded-modules): New function.
84 2010-09-12  Sean O'Rourke  <seano@cs.ucla.edu>
86         * lib/Sepia.pm (repl_strict): Disable Lexical::Persistence's
87         stupid treatment of '_'.
89 2010-08-18  Sean O'Rourke  <seano@cs.ucla.edu>
91         * lib/Sepia.pm: remove useless @REPL_RESULT.  Fix _() to use @res.
93 2010-08-16  Sean O'Rourke  <seano@cs.ucla.edu>
95         * sepia.el (sepia-shared-map, sepia-eval-region): new function
96         bound to `C-c C-r', moving sepia-repl to `C-c C-t'.
97         * lib/Sepia.pm: disable deprecation warnings to avoid 5.12 lameness.
99 2010-02-08  Sean O'Rourke  <seano@cs.ucla.edu>
101         * sepia.el (sepia-looks-like-module): remove apropos-module check.
102         * lib/Sepia.pm (_apropos_re): make start anchor optional.
103         (inc_re): factor out @INC-removal.
104         (module_list): use inc_re().
105         (modules_matching): new function.
106         (apropos_module): rewrite.
108 2010-01-24  Sean O'Rourke  <seano@cs.ucla.edu>
110         * lib/Sepia.pm (repl_setup): load ~/.sepiarc in $Sepia::PACKAGE.
112 2010-01-23  Sean O'Rourke  <seano@cs.ucla.edu>
114         * README: add development information.
115         * lib/Sepia.pm (apropos_module): use "_apropos_re"
117 2009-12-15  Sean O'Rourke  <seano@cs.ucla.edu>
119         * lib/Sepia.pm (repl_package): always change packages, even if
120         empty.
122 2009-12-14  Sean O'Rourke  <seano@cs.ucla.edu>
124         * lib/Sepia/ReadLine.pm: readline interface.
125         * lib/Sepia.pm ($READLINE): next-input hook.
127 2009-12-08  Sean O'Rourke  <seano@cs.ucla.edu>
129         * lib/Sepia.pm (methods): uniquify.
130         * lib/Sepia.pm, lib/Sepia/Debug.pm: avoid deprecated
131         "defined %hash" in 5.11.x.
133 2009-12-02  Sean O'Rourke  <seano@cs.ucla.edu>
135         * lib/Sepia/Xref.pm (load_pad): work around pad weirdness with
136         threads.
137         * VERSION: 0.991_01
139 2009-11-29  Sean O'Rourke  <seano@cs.ucla.edu>
141         * Makefile.PL: make LWP::Simple optional.  It didn't do much.
142         * sepia-snippet.el (sepia-snippet-abbrev): de-dup, sort, add
143         given/when.
144         * sepia.el (sepia-shortcuts): update.
145         (sepia-complete-symbol): fix sigil duplication bug.
146         (sepia-symbol-info): use cperl's variable short-docs.
148 2009-11-26  Sean O'Rourke  <seano@cs.ucla.edu>
150         * lib/Sepia.pm: reorganize, add docs.
151         * sepia.texi (Shortcuts): document ,time
152         * Makefile.PL: optional BSD::Resource and Time::HiRes.
153         * lib/Sepia.pm (run_hook,add_hook,remove_hook): new functions.
154         (repl_time,time_pre_prompt*): print CPU times.
156 2009-11-25  Sean O'Rourke  <seano@cs.ucla.edu>
158         * sepia.el (sepia-ident-before-point): use s-i-at-point.
159         (sepia-ident-at-point): Handle punctuation variables.
160         (sepia-describe-object): add "perldoc -v" support.
162 2009-11-22  Sean O'Rourke  <seano@cs.ucla.edu>
164         * lib/Sepia.pm (location): handle special @INC entries.
165         * sepia.el (sepia-describe-object): Guess identifier-at-point in
166         the right order.
168 2009-11-18  Sean O'Rourke  <seano@cs.ucla.edu>
170         * sepia.el (sepia-describe-object): new function like
171         describe-function and friends.  Currently only "perldoc -f."
172         (sepia-init-perl-builtins): bugfix.
173         (sepia-repl-mode): turn on eldoc.
175 2009-11-02  Sean O'Rourke  <seano@cs.ucla.edu>
177         * lib/Sepia.pm (location): change to work on only one location,
178         since that's how it's used.
179         (define_shortcuts): tweak.
180         (repl_setup): fix $REPL_LEVEL bug.
181         (repl,repl_quit): make quitting from restarted REPLs.
183 2009-10-28  Sean O'Rourke  <seano@cs.ucla.edu>
185         * sepia.el (sepia-indent-or-complete): work around bug where
186         expand-abbrev returns nil even though it expanded.
187         (sepia-looks-like-module): use xref-apropos-module.
189 2009-10-19  Sean O'Rourke  <seano@cs.ucla.edu>
191         * sepia-cpan.el (sepia-cpan-mode-map): initialize in definition;
192         oops!
193         * VERSION: 0.991
195 2009-10-18  Sean O'Rourke  <seano@cs.ucla.edu>
197         * lib/Sepia/CPAN.pm (group_by_dist): better heuristic.
198         * lib/Sepia.pm (repl_reload, repl_full_reload, full_reload):
199         support "reload" and "freload" shortcuts.
200         * lib/Sepia/Debug.pm (xreturn, repl_xreturn): return-from-context,
201         not yet used.
202         * VERSION: 0.99
204 2009-10-12  Sean O'Rourke  <seano@cs.ucla.edu>
206         * sepia.el (sepia-symbol-info): tweak on module names.
207         (sepia-apropos-module): new function.
208         (sepia-perlize-region,sepia-perl-ne-region): interactive prompt fix
210 2009-07-22  Sean O'Rourke  <seano@cs.ucla.edu>
212         * sepia-cpan.el (sepia-cpan-doc): make browser pop up in other
213         window, like README.
215 2009-07-18  Sean O'Rourke  <seano@cs.ucla.edu>
217         * lib/Sepia.pm (filter_exact_prefix): new function to improve
218         completion behavior.
220 2009-07-07  Sean O'Rourke  <seano@cs.ucla.edu>
222         * lib/Sepia.pm (save,load,repl_save,repl_load): Persist
223         variables to a file.
224         * VERSION: 0.99_01
226 2009-07-05  Sean O'Rourke  <seano@cs.ucla.edu>
228         * sepia.el (sepia-rename-lexical): New function; a small wrapper
229         around query-replace(-regexp).
231 2009-05-03  Sean O'Rourke  <seano@cs.ucla.edu>
233         * t/02completion.t (ok_comp): adjust for completion changes.
234         * sepia.texi: Variable index.
236 2009-03-18  Sean O'Rourke  <seano@cs.ucla.edu>
238         * lib/Sepia.pm (repl_help): fix formatting with "help CMD"
239         (repl_size): sort by size
241 2008-12-17  Sean O'Rourke  <seano@cs.ucla.edu>
243         * sepia.texi (Completion): we do lexicals.
244         * lib/Sepia.pm (lexical_completions): new function.
245         (completions): use it.
246         * sepia.el (sepia-function-at-point): return nil outside subs.
247         (sepia-interactive-arg): fix call to xref-completions.
249 2008-07-22  Sean O'Rourke  <seano@cs.ucla.edu>
251         * sepia.el (sepia-scratch-send-line): change to use REPL printer.
253 2008-07-09  Sean O'Rourke  <seano@cs.ucla.edu>
254         * sepia.el (sepia-indent-line): new function.  Let-bind
255           beginning-of-defun-function for cperl-indent-line.
257 2008-06-29  Sean O'Rourke  <seano@cs.ucla.edu>
259         * sepia.el (sepia-cont-or-restart): new function to restart
260           quitted REPL.
261         * sepia-cpan.el (sepia-cpan-do-{desc,recommend}): oops.
262         (sepia-cpan-make-buffer): better column widths
263         * lib/Sepia.pm (repl_size): skip %SIG to avoid segfaults.
264         * lib/sepia/CPAN.pm (group_by_dist): only list "main" module in
265           each distribution, and sort them.
267 2008-06-20  Sean O'Rourke  <seano@cs.ucla.edu>
269         * VERSION: 0.97
270         * lib/Sepia.pm: fix use of defined().
272 2008-06-17  Sean O'Rourke  <seano@cs.ucla.edu>
274         * lib/Sepia.pm (repl_who,repl_size): turn off added 5.10 strictures.
276 2008-05-11  Sean O'Rourke  <seano@cs.ucla.edu>
278         * sepia.texi (Mutilation): updated CPAN documentation.
279         * sepia-cpan.el (sepia-cpan-desc): add search-by-description
280         (sepia-cpan-mode-map): fix keybindings.
281         * lib/Sepia/CPAN.pm: have ls/_ls, etc call interesting_parts
283 2008-05-10  Sean O'Rourke  <seano@cs.ucla.edu>
285         * VERSION: 0.96_02
286         * sepia-cpan.el (sepia-cpan-list, sepia-cpan-make-buffer)
287         (sepia-cpan-search): added list-by-author, refactored.
288         (sepia-cpan-readme): insert temp file rather than passing as
289         string.
290         * lib/Sepia/CPAN.pm (ls): new function to list author's modules.
291         * lib/Sepia/Debug.pm (repl_finish): mostly-working, by adding 0x10
292           to $^P and looking at sub's last line.
294 2008-01-10  Sean O'Rourke  <seano@cs.ucla.edu>
296         * lib/Sepia.pm (columnate): true -> defined
297         * VERSION: 0.96_01
298         * sepia-cpan.el: new file, experimental CPAN interface.
299         * lib/Sepia/CPAN.pm: new file.
301 2008-01-05  Sean O'Rourke  <seano@cs.ucla.edu>
303         * README: remove redundant/obsolete documentation
305 2008-01-02  Sean O'Rourke  <seano@cs.ucla.edu>
307         * lib/Sepia.pm (flow): get closer to margin.
309 2007-12-22  Sean O'Rourke  <seano@cs.ucla.edu>
311         * t/50expect.t: mysterious change to placate expect.
312         * sepia.el (sepia-shared-map): adjust bindings.
313         (sepia-complete-symbol): Fix shortcut completion.
314         * sepia-snippet.el (sepia-snippet-abbrev): make snippet optional,
315           but mention it.
317 2007-12-20  Sean O'Rourke  <seano@cs.ucla.edu>
319         * lib/Sepia.pm (who): don't apply regex to sigil.
320         (completions): fix multi-arg version (used by Emacs).
321         (html_module_list,html_package_list): return string if asked.
323 2007-12-17  Sean O'Rourke  <seano@cs.ucla.edu>
325         * sepia.el (sepia-shared-map): bind cperl-perldoc.
327 2007-12-16  Sean O'Rourke  <seano@cs.ucla.edu>
329         * Makefile.PL (test_for): use MakeMaker's prompt().
331 2007-12-13  Sean O'Rourke  <seano@cs.ucla.edu>
333         * sepia.el (sepia-complete-symbol): add shortcut completion.
334           improve XEmacs compatibility.
335         * sepia-w3m.el (sepia-w3m-create-imenu): new function, disabled by
336           default.
337         * lib/Sepia.pm (repl_*): don't look at return values; use "last
338           repl" to get out.
340 2007-11-29  Sean O'Rourke  <seano@cs.ucla.edu>
342         * t/02completion.t: new completion tests.
343         * lib/Sepia.pm (completions): rewrote to simplify.
345 2007-11-28  Sean O'Rourke  <seano@cs.ucla.edu>
347         * lib/Sepia.pm (printer): Don't sort arrays when printing.
348         * VERSION: 0.95_02
349         * lib/sepia/Debug.pm (warn,die): use Carp for 5.10 compatibility.
350         * Makefile.PL (test_for): $|=1 if prompting.
352 2007-11-27  Sean O'Rourke  <seano@cs.ucla.edu>
354         * sepia.el (sepia-perldoc-this): test for w3m when called.
356         * VERSION: 0.95_01
357         * t/01basic.t (Sepia): fix tests w/o Module::Info.
359 2007-11-26  Sean O'Rourke  <seano@cs.ucla.edu>
361         * VERSION: 0.95
362         * lib/sepia/Debug.pm (add_repl_commands): use define_shortcut.
363         (warn,die): same.
364         (add_debug_repl_commands): new function.
365         (repl): use it.
367         * lib/Sepia.pm (define_shortcut): new function.
368         (define_shortcut): new function.
369         (repl_help): auto-format help text; add arg.
370         (repl_reload): decrement $REPL_LEVEL.
371         (completions): fix abbrev completion.
372         (repl): read ~/.sepiarc; use define_shortcuts.
373         (repl_format): show current if no argument.
374         (module_info): optional dependency.
376 2007-11-08  Sean O'Rourke  <seano@cs.ucla.edu>
378         * VERSION: 0.94_01
379         * lib/Sepia/Xref.pm: POD fixup.
380         * sepia.el (sepia-ensure-process): fix stupid attachtty mistake.
382 2007-11-05  Sean O'Rourke  <seano@cs.ucla.edu>
384         * lib/sepia/Debug.pm (repl_break): allow "0" as a break condition.
386 2007-10-31  Sean O'Rourke  <seano@cs.ucla.edu>
388         * lib/Sepia.pm (repl_size): ",size" command to list variable sizes,
389         like Matlab's "whos".
391 2007-10-16  Sean O'Rourke  <seano@cs.ucla.edu>
393         * VERSION: 0.93
395         * lib/Sepia.pm (repl_pwd): add ",pwd" shortcut.
396         (repl_who): use current package when only regex given.
398         * sepia.el (sepia-repl,sepia-ensure-process): add remote
399           connection with attachtty.
400         (sepia-shared-map): bind \C-c\C-e to eval-expression.
401         (sepia-symbol-info): be more selective about "core version".
403 2007-09-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
405         * lib/Sepia.pm (printer): remove "=>" -- it's annoying.
407 2007-09-21  Sean O'Rourke  <sorourke@cs.ucsd.edu>
409         * sepia.el (sepia-load-file): disable debugger.
410         (sepia-symbol-info): be pickier about module core versions.
412 2007-09-20  Sean O'Rourke  <sorourke@cs.ucsd.edu>
414         * lib/Sepia.pm (repl_who): use current package if only one arg
415           given, and it's not an existing package.
417 2007-09-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
419         * sepia.el (sepia-watch-for-eval): fix hang with recursive sepia-eval.
421 2007-07-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
423         * sepia.el (sepia-interactive-arg): use xref-completions rather
424         than xref-apropos for working completion.
426 2007-07-25  Ye Wenbin  <wenbinye@gmail.com>
428         * sepia.el (sepia-defun-around-point): change the command to a
429         function, because as a command it does nothing.
430         (define-modinfo-function, sepia-maybe-echo): the interactive-p
431         is not true when call as function.
432         (define-modinfo-function, sepia-init): some modinfo-function
433         should eval in a list-context.
434         (sepia-mode): use cperl-mode-abbrev-table as current local-abbrev-table
436 2007-07-24  Ye Wenbin  <wenbinye@gmail.com>
438         * sepia.el (sepia-set-found): Use (OFFSET . LIST) to represent
439         things that found.
440         (sepia-next, sepia-previous): more generic move commands
441         (sepia-refiner): remove the test, because sometimes use the
442         same declaration, but found in difference place.
444         * sepia-tree.el (sepia-tree-button-cb): widget => pw and
445         xref-location return a list of posible locations.
446         (sepia-tree-tidy-buffer, sepia-tree-use-image): Let user
447         to choose whether use image or not. Set it to a buffer-local
448         variable, so that it didn't interference global values.
450         * sepia.el (sepia-extract-def): seem an argument is excessive
452         * sepia-tree.el (sepia-build-tree-buffer): In my emacs, it
453         doesn't work. The :dynargs didn't become the tree-widget
454         :expander. The tree-widget-convert-widget only receive the
455         'tree-widget, not the total list.
456         sepia-install-keys not defined.
458         * lib/Sepia/Xref.pm (file_modules): seem it is a typo error to use
459         Module::Include rather than Module::Info.
460         Module::Info::packages_inside return an array, the operator
461         || will force in a scalar context.
463         * sepia.el (sepia-lisp-to-perl): use "'" to quote string is not
464         enough, because the string may also contain "'" inside.
465         use (format "%S" string) instead.
466         (define-sepia-query): `sepia-set-found' accept a symbol as
467         argument, not (quote symbol).
469 2007-06-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
471         * VERSION: 0.92
472         * sepia.el (sepia-shared-map, etc.): fix keymap initialization.
474 2007-06-06  Sean O'Rourke  <sorourke@cs.ucsd.edu>
476         * lib/Sepia/Debug.pm: eval in lexical env when in debugger.
477         * t/50expect.t: REPL tests if you have Test::Expect.
478         * lib/Sepia/Debug.pm: use correct level when none given.
479         * lib/Sepia.pm: No longer bring in exporter (why did we?).
480         * sepia.el (sepia-init): always reinitialize sepia-mode-map.
481         * Makefile.PL: require 5.006 for warnings to quiet stupid "make
482           test".
484 2007-06-05  Sean O'Rourke  <sorourke@cs.ucsd.edu>
486         * Sepia.html: generate single-page manual instead of split.
487         * VERSION: 0.90
488         * sepia.el: docstring cleanup.
489         * lib/sepia/Debug.pm: misc usability improvements
491 2007-06-04  Sean O'Rourke  <sorourke@cs.ucsd.edu>
493         * VERSION 0.90_02
494         * test.pl: disable Module::Info tests to avoid Module::Info bug.
496 2007-06-02  Sean O'Rourke  <sorourke@cs.ucsd.edu>
498         * VERSION 0.90_01
499         * Major: replaced comint- with gud-based REPL, use real debugger.
500         * lib/Sepia/Debug.pm: "perl -d" support.
501         * lib/Sepia.pm (repl_shell): new command.
502         * sepia.el (sepia-eval-defun): detect errors, jump to first.
503         (sepia-comint-setup): don't set comint-use-prompt-regexp
504         (sepia-eval-defun,sepia-beginning-of-defun,sepia-end-of-defun): fix
506 2007-06-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
508         * sepia.el (sepia-perldoc-this): don't mess up window
509           configuration when the page isn't found.
510         (sepia-location): use sepia-interactive-arg.
511         (sepia-perl-[np]e-region): fix.
513         * lib/Sepia.pm: fix.
514         (print_dumper): switch format based on size.
516 2007-05-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
517         * sepia.texi: shiny new manual.
518         * lib/Sepia.pm (completions): add special 'VARIABLE' type.
519         (methods): add second $qualified arg.
520         (repl_reload): new function.
521         (sig_warn,repl): override __WARN__ (and __DIE__) cautiously.
522         (repl): nicer warning format.
524         * sepia.el (sepia-eval-raw): stopwarn -> STOPWARN.
525         (sepia-load-file): Fix pop-up error buffer.
526         (sepia-lisp-to-perl): fix quoting of strings.
527         Good citizenship:
528         (sepia-mode): make a real major mode.
529         (sepia-scratchpad-mode): ditto.
531 2007-05-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
533         * lib/sepia/Xref.pm (pp_method_named): warn -> dprint.
534         * sepia.el (sepia-simple-method-before-point): new function.
535         (sepia-complete-symbol): use it to complete methods.
536         make w3m optional:
537         (sepia-perldoc-function,sepia-view-pod-function,
538           sepia-module-list-function): new variables.
539         (sepia-perldoc-this,sepia-view-pod): new functions.
540         * lib/Sepia.pm (repl): trim leading spaces.
541         (tolisp): escape metacharacters.
542         (repl): don't override "die" if someone has installed a
543         $SIG{__DIE__} handler
545 2007-05-28  Sean O'Rourke  <sorourke@cs.ucsd.edu>
547         * VERSION: 0.75+
548         * sepia.el (sepia-core-version): new function.
549         (sepia-indent-or-complete): fix abbrev expansion.
550         (sepia-symbol-info): report core version in eldoc.
551         (sepia-ident-before-point): new function.
552         (sepia-complete-symbol): use it instead of *-at-point.
553         (sepia-complete-symbol): complete arrays and hashes when '$'
554         starts a word.
555         * lib/Sepia.pm (printer): Use @::__; distinguish "last as scalar"
556           $__ from printed representation.
557         ($PRINT_PRETTY): columnate lists if this is on.
558         (columnate): fixed.
559         (repl_methods): add regex argument.
560         (repl_who): fix.
561         (completions): Add in package names.
563 2007-05-27  Sean O'Rourke  <sorourke@cs.ucsd.edu>
565         * lib/Sepia.pm (repl_methods): fixed.
567 2007-05-26  Sean O'Rourke  <sorourke@cs.ucsd.edu>
569         * VERSION: 0.74
570         * sepia.el (sepia-doc-scan-buffer): Better doc regex for
571           variables.
572         (sepia-indent-or-complete): try to expand abbrevs before
573           completion (try with snippet.el).
574         (sepia-indent-expand-abbrev): control the above feature.
575         (sepia-complete-symbol): scroll completion buffer; suggested by
576           Hilko Bengen.
577         * lib/Sepia.pm (html_package_list,html_module_list): new
578           functions.
579         (completions): '$'-completion only generates scalars.
580         * sepia-w3m.el: remove spurious sepia-module-list, improve
581           documentation.
582         (sepia-module-list,sepia-package-list): better output.
583         (sepia-package-list,sepia-module-list): move Perl code to
584           Sepia.pm, generate list in inferior perl instead of shelling
585           out.
587 2007-05-23  Sean O'Rourke  <sorourke@cs.ucsd.edu>
589         * lib/Sepia.pm (_apropos_re): handle empty completions.
590         (columnate): pretty-print ",who" output.
591         * sepia.el (sepia-complete-symbol): bury stale completions buffer;
592           suggested by Hilko Bengen.
594 2007-05-17  Sean O'Rourke  <sorourke@cs.ucsd.edu>
596         * lib/Sepia.pm (_completions1): Fix infinite recursion.
597         (repl): typo; clarify ambiguous vs. unrecognized shortcuts.
599 2007-05-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
601         * sepia.el (sepia-dwim): don't try to jump to location when
602           looking up module docs.
603         * lib/Sepia.pm: use $::__ instead of $Sepia::__
604         (repl_quit): new command.
605         (repl): add banner.
607 2007-05-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
609         * VERSION: 0.72
610         * Makefile.PL: add license.
612 2007-05-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
614         * VERSION: 0.71
615         * sepia.el (sepia-load-file): set inhibit-read-only when
616           displaying errors.
617         * lib/Sepia.pm (repl_methods): walk ISA hierarchy looking for
618           functions (XXX: this is much too coarse).
619         (repl_help): use %REPL_DOC to hold command documentation for
620         easier extension.
621         (repl): display error on canceled continued statement.
623 2007-05-07  Sean O'Rourke  <sorourke@cs.ucsd.edu>
625         * lib/Sepia.pm (repl_strict): add 'strict mode' (thanks to
626           Lexical::Persistence) for those who swing that way (I don't),
627           inspired by Devel::REPL.
628         (repl_wantarray): Fix logic.
630 2007-04-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
632         * VERSION: 0.70
633         * README: add license.
634         * Makefile.PL: remove dependency on Sub::Uplevel, make PadWalker
635           optional.
636         * lib/Sepia.pm (who): add optional regex filter.
637         (debug_inspect): fix non-scalar printing.
638         * sepia.el (sepia-dwim): fix staleness; change to find
639           documentation for modules.
640         (sepia-find-module-file): new function to try sepia- and xref-
641         module file-finding functions.
642         (sepia-next): use it.
643         (sepia-filter-by-module,sepia-filter-by-all): remove.
644         (sepia-keymap): use `sepia-dwim' for M-.
646 2007-04-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
648         * lib/Sepia.pm (who): add optional regex argument.
650 2007-03-30  Sean O'Rourke  <sorourke@cs.ucsd.edu>
652         * sepia-w3m.el (sepia-module-list, sepia-package-list): added
653           detailed index of installed modules.
654         * VERSION: 0.68
656 2007-03-16  Sean O'Rourke  <sorourke@cs.ucsd.edu>
658         * sepia.el (sepia-set-found): filter spurious nils (XXX: this
659           really needs a fix).
660           (sepia-symbol-info): avoid eldoc errors in ecase.
662 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
664         * sepia.el (sepia-complete-symbol): fallback completion of
665           builtins.
666         * set COPY_EXTENDED_ATTRIBUTES_DISABLE=true to avoid creating ._*
667           files (RT #25490).
669 2007-03-15  Sean O'Rourke  <sorourke@cs.ucsd.edu>
671         * VERSION: 0.67
672         * sepia-ido.el: clean up bitrot.
673         * lib/Sepia.pm (apropos): don't create new stashes during
674           completion.
675         * sepia.el (sepia-show-locations): bind inhibit-read-only; filter
676           out mysterious NILs.
677         * Makefile.PL: require PadWalker 1.0 (RT #25463)
679 2007-03-13  Sean O'Rourke  <sorourke@cs.ucsd.edu>
681         * VERSION: 0.66
682         * README (TODO): user-defined REPL abbrevs.
683         * lib/Sepia.pm (print_*): optional printing via YAML and
684           Data::Dump (from Shell::Perl).
685         (repl_wantarray): change eval context (same).
686         (repl_format): set formatter (same).
688 2007-03-09  Sean O'Rourke  <sorourke@cs.ucsd.edu>
690         * VERSION: 0.65
691         * sepia.el (sepia-keymap): add *-apropos, find-tag bindings.
692         * README: add organized function index.
693         * sepia.el (sepia-beginning-of-defun, sepia-end-of-defun):
694           fix argument to be prefix instead of point.
695         * sepia.el: documentation.
696         * sepia-ido.el: documentation.
697         * README: cleanup; note limitation of sepia-bodf and -eodf.
699 2007-02-25  Sean O'Rourke  <sorourke@cs.ucsd.edu>
701         * Makefile.PL: add Scalar::Util as prereq.
702         * sepia.el (sepia-perl5lib): new variable holding extra PERL5LIB
703           entry.
704         * sepia.el (sepia-init): use it.
705         * sepia.el (sepia-comint-setup): don't clobber keymap.
706         * sepia.el (sepia-indent-or-complete): complete first time if at
707           end of word.
708         * Sepia.pm (completions): enhanced completion -- e.g. "wtf"
709           matches "want_to_feed".
710         * Sepia.pm (printer): special-case PDL to use its stringification
711           (XXX: should test for overloaded "").
712         * Sepia.pm (who,repl_who): new functions.
714 2006-09-29  Sean O'Rourke  <sorourke@cs.ucsd.edu>
716         * Sepia.pm (Dump): wrap with eval to prevent unexpected exits.
717         * Sepia.pm (repl_chdir): expand '~' and '$HOME'
719 2006-07-01  Sean O'Rourke  <sorourke@cs.ucsd.edu>
721         * Sepia.pm (tolisp): undef -> nil
722         * sepia.el (sepia-eval-raw): guess package.
723         * sepia.el (sepia-init): don't pop-to-buffer with prefix argument.
724         * sepia.el (sepia-beginning-of-defun,sepia-end-of-defun): avoid
725           recursion.
726         * sepia.el (sepia-buffer-package): look backward from point
727           instead of forward from point-min.
729 2006-05-24  Sean O'Rourke  <sorourke@cs.ucsd.edu>
731         * Makefile.PL: added missing dependencies on PadWalker,
732           Sub::Uplevel.
733         * Sepia.pm: improved ",command"
734         * sepia-w3m.el (sepia-w3m-perldoc-this): simplify.
735         * sepia.el (perl-*): rename to sepia-*.
736         * sepia.el: reorg and cleanup.
737         * VERSION: 0.63
739 2006-05-19  Sean O'Rourke  <sorourke@cs.ucsd.edu>
741         * sepia.el: fixed eldoc support.  This only works with CVS Emacs,
742           relying on `eldoc-documentation-function'.  Also fixed pod
743           scanning for eldoc.
745 2006-05-18  Sean O'Rourke  <sorourke@cs.ucsd.edu>
747         * sepia.el, Sepia.pm: improved bulk-transfer protocol.
748         * Sepia.pm: override die with simple inspector/debugger.
749         * Sepia.pm: $__ and @__ now contain results of the last
750           expression.
751         * sepia.el, Sepia.pm: primitive support for evaluating elisp sent
752           from Perl.  Turn on comint-use-prompt-regexp because the fields
753           stuff is flaky with this.
754         * sepia.el, Sepia.pm: ",cd" shortcut coordinates directory with
755           Emacs.
756         * VERSION 0.61, 0.62
758 2006-04-14  Sean O'Rourke  <sorourke@cs.ucsd.edu>
760         * generic-repl.el: replaced by comint.
761         * all: removed EPL dependency.
762         * VERSION 0.59
764 2005-07-12  Sean O'Rourke  <sorourke@cs.ucsd.edu>
766         * sepia-w3m.el: fix function name so it's found.
767         * Xref.pm, Sepia.pm: cleanup and numerous bugfixes.
768         * Buffer.pm: new, but not ready for prime-time
769         * sepia.el: delete-thing-at-point removed; misc bugfixes.
770         * test.pl: disabled a bunch of location stuff.
771         * VERSION 0.58
773 2004-09-10  Sean O'Rourke  <sorourke@cs.ucsd.edu>
775         * test.pl: some real tests.
776         * Sepia.pm, Xref.pm: Separate simple symbol-table searching from
777           Xref, making the former more reliable.
778         * Xref.pm: More reliable detection of (class) method calls.
779         * sepia.el: results are not displayed for expressions ending in
780           ';' (c.f. Octave).
782 2004-04-12  Sean O'Rourke  <seano@cs.ucsd.edu>
784         * sepia.el (sepia-doc-scan-buffer): Make regular expressions a
785         bit better.
786         (sepia-ident-at-point): handle upper-case function and variable
787         names for completion (a bit hacky...).
788         (sepia-install-keys): fix keymap installation.
790 2004-04-11  Sean O'Rourke  <seano@cs.ucsd.edu>
792         * Xref.pm (guess_module_file): do like Module::Info and trust
793         %INC more than our Xref info.  But don't be _too_ smart about
794         this -- we were picking up lots of bogus exports.
795         (pp_method_named): add support for constant-named methods (cribbed
796         from B::Concise).
798 2004-04-10  Sean O'Rourke  <seano@cs.ucsd.edu>
800         * Xref.pm: update $VERSION to track Sepia release.
802         * sepia.el (sepia-indent-or-complete): only complete on the
803         second TAB.
805 2004-04-09  Sean O'Rourke  <seano@cs.ucsd.edu>
807         * sepia.el (sepia-refiner): tweak refining function a bit more.
808         I'm still not entirely happy with this, but it's getting better.
809         Time and experimentation are required.
811         * sepia-tree.el (sepia-calle[er]-tree): New file.  Use
812         caller/callee information to generate tree-view using David
813         Ponce's wonderful tree-widget.
815         * Xref.pm (_apropos_re): Add that Emacs-style multipart-word
816         completion, so e.g. D:v_d -> Devel::Xref::var_defs.  It's groovy,
817         man.
818         (%firstline): gone.  Just getting a line within the sub is good
819         enough -- we can fix it on the Emacs side of the fence later.
821 2004-04-08  Sean O'Rourke  <seano@cs.ucsd.edu>
823         * sepia-w3m.el (sepia-w3m-perldoc-this): work for functions as
824         well as modules, and try to go to correct position in manpage.
826         * sepia.el (sepia-eval-buffer): use 'BEGIN{ die }' to do Xrefs
827         for scripts without loading them.
829         * Xref.pm: Localize a bunch of things instead of stomping on
830         package lexicals.  This makes the module better handle repeated
831         use, for which it wasn't designed.
833         * Xref.pm (mod_subs): Rename package_subs for consistency.
834         (mod_decls): New function to generate decls for evaluation.
836         * sepia.el: misc bug-fixes, and better support for redefining
837         functions with sepia-eval-defun, especially preserving files and
838         line numbers.
839         (sepia-eval): remove newlines to make line-numbers make more
840         sense to user.
841         (sepia-interactive-arg): delay reading completions to speed up
842         \M-. functions.
843         (sepia-refiner): search both forward and backward, to adjust for
844         e.g. adding comments.  Still not so good, but better.
846 2004-04-06  Sean O'Rourke  <seano@cs.ucsd.edu>
848         * sepia-w3m.el: moved w3m-perldoc support here.
850         * README: added description, removed disclaimer
852         * sepia.el (sepia-symbol-info, sepia-doc-update): POD scanning
853         and cperl hackage for eldoc support.
855 2004-04-05  Sean O'Rourke  <seano@cs.ucsd.edu>
857         * Xref.pm (redefined,forget): make them take a single sub at a
858         time, and pay attention to packages.
859         (_apropos): use package info to narrow choices.
861         * sepia.el (sepia-eval-defun,sepia-eval-buffer): new functions.
863         * test.pl: satisfy the cpants Fascists.
865         * Xref.pm (use_type): try to be smarter about when something's
866         being assigned to, vs. merely used as a reference.
868         * sepia.el (sepia-repl-header): keep up with generic-repl by
869         doing header line, working dir.
870         (sepia-complete-symbol): stupid bug with modules.
871         (sepia-install-keys): new function.
872         (sepia-var-assigns): assignments are more useful than defs.
873         (sepia-init): start REPL by default.
875         * generic-repl.el (repl-cd,repl-set-header): "new" function from
876         Slime to track working dir, update header line.
878 2004-04-04  Sean O'Rourke  <seano@cs.ucsd.edu>
880         * Sepia.jpg: don't ask -- just look.
882         * sepia.el (sepia-ident-at-point): fixed bug with sigils.
883         (sepia-complete-symbol): fixed bug with undefined function
884         sepia-end-of-word.
885         Always use Data::Dumper.
887         * any-repl.el: new file implementing REPL, basically stolen from
888         Slime.
890         * pscope.el: renamed to sepia.el to go with name change.
892 2004-04-03  Sean O'Rourke  <seano@cs.ucsd.edu>
894         * pscope.el (pscope-set-found): remove locations with no
895         file in package "main", which were causing errors before.
896         (pscope-dwim): new function.  New functions
897         pscope-complete-symbol and pscope-indent-or-complete for
898         symbol completion.  Not well-tested, but they seem to work.
899         The most annoying thing is that since the Xref db isn't
900         automatically updated, it won't always know as much as you
901         expect.
902         (pscope-load-file): new function.
904         * Xref.pm: update export lists to reflect new functions.
906 2004-04-02  Sean O'Rourke  <seano@cs.ucsd.edu>
908         * Xref.pm: minor cleanup.
910         * pscope.el: pass module, file, line to Perl side (where it's
911         ignored for now); fix line number refinement to be a
912         little less over-eager; fix pscope-callees to go to sub
913         definitions instead of call sites.
915         * README: added TODO section.