2011-11-16 Sean O'Rourke * VERSION: 0.992 2011-11-14 Sean O'Rourke * sepl: add some docs. 2011-11-10 Sean O'Rourke * lib/Sepia.pm (repl_who): list lexicals in strict-mode. (repl_eval,repl_strict,call_strict): eliminate Lexical::Persistence, which is more trouble than it's worth. (repl_size): list lexical sizes in strict-mode. 2011-11-02 Sean O'Rourke * lib/Sepia/ReadLine.pm (rl_complete): Unify T:R:{Perl,GNU} 2011-10-24 Sean O'Rourke * sepia.el (sepia-[be]ol-from): use line-{beginning,end}-position. (sepia-shared-map): remap C-c C-t to cperl-invert-if-unless. 2011-10-23 Sean O'Rourke * lib/Sepia/ReadLine.pm (repl): support Term::ReadLine::Perl. 2011-10-07 Sean O'Rourke * sepia.texi (Navigation): add sepia-pod-follow-link-at-point and associated key-reshuffling. * sepia.el (sepia-pod-follow-link-at-point): new function to follow POD links from source. (sepia-metapoint-map): shuffle keys for sepia-pod-follow-link-at-point. 2011-03-20 Sean O'Rourke * lib/Sepia/Xref.pm: POD fix. * Makefile.PL: don't install .elc files, since that breaks Debian. Patches from Hilko Bengen. 2011-03-14 Sean O'Rourke * VERSION: 0.991_05 (testing). * sepl: add to MANIFEST 2011-03-14 Sean O'Rourke * VERSION: 0.991_04 (testing). * Makefile.PL (prompt_for_infodir): filter out Emacs-spam. 2010-11-05 Sean O'Rourke * sepia.el (sepia-next, sepia-show-locations,sepia-set-found): Always use next-error. * sepia-w3m.el (w3m-about-perldoc-buffer): let user know when there are POD errors. 2010-10-04 Sean O'Rourke * sepia.el (sepia-perldoc-this): Display documentation in a less annoying way. (cperl-imenu--create-perl-index): Advise it to strip out some entries. * Sepia.pm: dumpvar.pl and Devel::Peek format options. 2010-09-21 Sean O'Rourke * lib/Sepia.pm (track_requires): New function. (file_list): New function. Add 'dumpvar' flavor of output. (repl_lsmod): New function. (requires,users): Use track_requires. * sepia.el (sepia-dired-package): New function. (sepia-skip-doc-scan): New variable. (sepia-doc-update): Use previous to skip confusing files. (sepia-find-loaded-modules): New function. (cperl-imenu--create-perl-index): Filter cruft. 2010-09-13 Sean O'Rourke * sepia.el (sepia-doc-scan-buffer): Avoid spurious matches. (sepia-find-loaded-modules): New function. 2010-09-12 Sean O'Rourke * lib/Sepia.pm (repl_strict): Disable Lexical::Persistence's stupid treatment of '_'. 2010-08-18 Sean O'Rourke * lib/Sepia.pm: remove useless @REPL_RESULT. Fix _() to use @res. 2010-08-16 Sean O'Rourke * sepia.el (sepia-shared-map, sepia-eval-region): new function bound to `C-c C-r', moving sepia-repl to `C-c C-t'. * lib/Sepia.pm: disable deprecation warnings to avoid 5.12 lameness. 2010-02-08 Sean O'Rourke * sepia.el (sepia-looks-like-module): remove apropos-module check. * lib/Sepia.pm (_apropos_re): make start anchor optional. (inc_re): factor out @INC-removal. (module_list): use inc_re(). (modules_matching): new function. (apropos_module): rewrite. 2010-01-24 Sean O'Rourke * lib/Sepia.pm (repl_setup): load ~/.sepiarc in $Sepia::PACKAGE. 2010-01-23 Sean O'Rourke * README: add development information. * lib/Sepia.pm (apropos_module): use "_apropos_re" 2009-12-15 Sean O'Rourke * lib/Sepia.pm (repl_package): always change packages, even if empty. 2009-12-14 Sean O'Rourke * lib/Sepia/ReadLine.pm: readline interface. * lib/Sepia.pm ($READLINE): next-input hook. 2009-12-08 Sean O'Rourke * lib/Sepia.pm (methods): uniquify. * lib/Sepia.pm, lib/Sepia/Debug.pm: avoid deprecated "defined %hash" in 5.11.x. 2009-12-02 Sean O'Rourke * lib/Sepia/Xref.pm (load_pad): work around pad weirdness with threads. * VERSION: 0.991_01 2009-11-29 Sean O'Rourke * Makefile.PL: make LWP::Simple optional. It didn't do much. * sepia-snippet.el (sepia-snippet-abbrev): de-dup, sort, add given/when. * sepia.el (sepia-shortcuts): update. (sepia-complete-symbol): fix sigil duplication bug. (sepia-symbol-info): use cperl's variable short-docs. 2009-11-26 Sean O'Rourke * lib/Sepia.pm: reorganize, add docs. * sepia.texi (Shortcuts): document ,time * Makefile.PL: optional BSD::Resource and Time::HiRes. * lib/Sepia.pm (run_hook,add_hook,remove_hook): new functions. (repl_time,time_pre_prompt*): print CPU times. 2009-11-25 Sean O'Rourke * sepia.el (sepia-ident-before-point): use s-i-at-point. (sepia-ident-at-point): Handle punctuation variables. (sepia-describe-object): add "perldoc -v" support. 2009-11-22 Sean O'Rourke * lib/Sepia.pm (location): handle special @INC entries. * sepia.el (sepia-describe-object): Guess identifier-at-point in the right order. 2009-11-18 Sean O'Rourke * sepia.el (sepia-describe-object): new function like describe-function and friends. Currently only "perldoc -f." (sepia-init-perl-builtins): bugfix. (sepia-repl-mode): turn on eldoc. 2009-11-02 Sean O'Rourke * lib/Sepia.pm (location): change to work on only one location, since that's how it's used. (define_shortcuts): tweak. (repl_setup): fix $REPL_LEVEL bug. (repl,repl_quit): make quitting from restarted REPLs. 2009-10-28 Sean O'Rourke * sepia.el (sepia-indent-or-complete): work around bug where expand-abbrev returns nil even though it expanded. (sepia-looks-like-module): use xref-apropos-module. 2009-10-19 Sean O'Rourke * sepia-cpan.el (sepia-cpan-mode-map): initialize in definition; oops! * VERSION: 0.991 2009-10-18 Sean O'Rourke * lib/Sepia/CPAN.pm (group_by_dist): better heuristic. * lib/Sepia.pm (repl_reload, repl_full_reload, full_reload): support "reload" and "freload" shortcuts. * lib/Sepia/Debug.pm (xreturn, repl_xreturn): return-from-context, not yet used. * VERSION: 0.99 2009-10-12 Sean O'Rourke * sepia.el (sepia-symbol-info): tweak on module names. (sepia-apropos-module): new function. (sepia-perlize-region,sepia-perl-ne-region): interactive prompt fix 2009-07-22 Sean O'Rourke * sepia-cpan.el (sepia-cpan-doc): make browser pop up in other window, like README. 2009-07-18 Sean O'Rourke * lib/Sepia.pm (filter_exact_prefix): new function to improve completion behavior. 2009-07-07 Sean O'Rourke * lib/Sepia.pm (save,load,repl_save,repl_load): Persist variables to a file. * VERSION: 0.99_01 2009-07-05 Sean O'Rourke * sepia.el (sepia-rename-lexical): New function; a small wrapper around query-replace(-regexp). 2009-05-03 Sean O'Rourke * t/02completion.t (ok_comp): adjust for completion changes. * sepia.texi: Variable index. 2009-03-18 Sean O'Rourke * lib/Sepia.pm (repl_help): fix formatting with "help CMD" (repl_size): sort by size 2008-12-17 Sean O'Rourke * sepia.texi (Completion): we do lexicals. * lib/Sepia.pm (lexical_completions): new function. (completions): use it. * sepia.el (sepia-function-at-point): return nil outside subs. (sepia-interactive-arg): fix call to xref-completions. 2008-07-22 Sean O'Rourke * sepia.el (sepia-scratch-send-line): change to use REPL printer. 2008-07-09 Sean O'Rourke * sepia.el (sepia-indent-line): new function. Let-bind beginning-of-defun-function for cperl-indent-line. 2008-06-29 Sean O'Rourke * sepia.el (sepia-cont-or-restart): new function to restart quitted REPL. * sepia-cpan.el (sepia-cpan-do-{desc,recommend}): oops. (sepia-cpan-make-buffer): better column widths * lib/Sepia.pm (repl_size): skip %SIG to avoid segfaults. * lib/sepia/CPAN.pm (group_by_dist): only list "main" module in each distribution, and sort them. 2008-06-20 Sean O'Rourke * VERSION: 0.97 * lib/Sepia.pm: fix use of defined(). 2008-06-17 Sean O'Rourke * lib/Sepia.pm (repl_who,repl_size): turn off added 5.10 strictures. 2008-05-11 Sean O'Rourke * sepia.texi (Mutilation): updated CPAN documentation. * sepia-cpan.el (sepia-cpan-desc): add search-by-description (sepia-cpan-mode-map): fix keybindings. * lib/Sepia/CPAN.pm: have ls/_ls, etc call interesting_parts 2008-05-10 Sean O'Rourke * VERSION: 0.96_02 * sepia-cpan.el (sepia-cpan-list, sepia-cpan-make-buffer) (sepia-cpan-search): added list-by-author, refactored. (sepia-cpan-readme): insert temp file rather than passing as string. * lib/Sepia/CPAN.pm (ls): new function to list author's modules. * lib/Sepia/Debug.pm (repl_finish): mostly-working, by adding 0x10 to $^P and looking at sub's last line. 2008-01-10 Sean O'Rourke * lib/Sepia.pm (columnate): true -> defined * VERSION: 0.96_01 * sepia-cpan.el: new file, experimental CPAN interface. * lib/Sepia/CPAN.pm: new file. 2008-01-05 Sean O'Rourke * README: remove redundant/obsolete documentation 2008-01-02 Sean O'Rourke * lib/Sepia.pm (flow): get closer to margin. 2007-12-22 Sean O'Rourke * t/50expect.t: mysterious change to placate expect. * sepia.el (sepia-shared-map): adjust bindings. (sepia-complete-symbol): Fix shortcut completion. * sepia-snippet.el (sepia-snippet-abbrev): make snippet optional, but mention it. 2007-12-20 Sean O'Rourke * lib/Sepia.pm (who): don't apply regex to sigil. (completions): fix multi-arg version (used by Emacs). (html_module_list,html_package_list): return string if asked. 2007-12-17 Sean O'Rourke * sepia.el (sepia-shared-map): bind cperl-perldoc. 2007-12-16 Sean O'Rourke * Makefile.PL (test_for): use MakeMaker's prompt(). 2007-12-13 Sean O'Rourke * sepia.el (sepia-complete-symbol): add shortcut completion. improve XEmacs compatibility. * sepia-w3m.el (sepia-w3m-create-imenu): new function, disabled by default. * lib/Sepia.pm (repl_*): don't look at return values; use "last repl" to get out. 2007-11-29 Sean O'Rourke * t/02completion.t: new completion tests. * lib/Sepia.pm (completions): rewrote to simplify. 2007-11-28 Sean O'Rourke * lib/Sepia.pm (printer): Don't sort arrays when printing. * VERSION: 0.95_02 * lib/sepia/Debug.pm (warn,die): use Carp for 5.10 compatibility. * Makefile.PL (test_for): $|=1 if prompting. 2007-11-27 Sean O'Rourke * sepia.el (sepia-perldoc-this): test for w3m when called. * VERSION: 0.95_01 * t/01basic.t (Sepia): fix tests w/o Module::Info. 2007-11-26 Sean O'Rourke * VERSION: 0.95 * lib/sepia/Debug.pm (add_repl_commands): use define_shortcut. (warn,die): same. (add_debug_repl_commands): new function. (repl): use it. * lib/Sepia.pm (define_shortcut): new function. (define_shortcut): new function. (repl_help): auto-format help text; add arg. (repl_reload): decrement $REPL_LEVEL. (completions): fix abbrev completion. (repl): read ~/.sepiarc; use define_shortcuts. (repl_format): show current if no argument. (module_info): optional dependency. 2007-11-08 Sean O'Rourke * VERSION: 0.94_01 * lib/Sepia/Xref.pm: POD fixup. * sepia.el (sepia-ensure-process): fix stupid attachtty mistake. 2007-11-05 Sean O'Rourke * lib/sepia/Debug.pm (repl_break): allow "0" as a break condition. 2007-10-31 Sean O'Rourke * lib/Sepia.pm (repl_size): ",size" command to list variable sizes, like Matlab's "whos". 2007-10-16 Sean O'Rourke * VERSION: 0.93 * lib/Sepia.pm (repl_pwd): add ",pwd" shortcut. (repl_who): use current package when only regex given. * sepia.el (sepia-repl,sepia-ensure-process): add remote connection with attachtty. (sepia-shared-map): bind \C-c\C-e to eval-expression. (sepia-symbol-info): be more selective about "core version". 2007-09-25 Sean O'Rourke * lib/Sepia.pm (printer): remove "=>" -- it's annoying. 2007-09-21 Sean O'Rourke * sepia.el (sepia-load-file): disable debugger. (sepia-symbol-info): be pickier about module core versions. 2007-09-20 Sean O'Rourke * lib/Sepia.pm (repl_who): use current package if only one arg given, and it's not an existing package. 2007-09-18 Sean O'Rourke * sepia.el (sepia-watch-for-eval): fix hang with recursive sepia-eval. 2007-07-25 Sean O'Rourke * sepia.el (sepia-interactive-arg): use xref-completions rather than xref-apropos for working completion. 2007-07-25 Ye Wenbin * sepia.el (sepia-defun-around-point): change the command to a function, because as a command it does nothing. (define-modinfo-function, sepia-maybe-echo): the interactive-p is not true when call as function. (define-modinfo-function, sepia-init): some modinfo-function should eval in a list-context. (sepia-mode): use cperl-mode-abbrev-table as current local-abbrev-table 2007-07-24 Ye Wenbin * sepia.el (sepia-set-found): Use (OFFSET . LIST) to represent things that found. (sepia-next, sepia-previous): more generic move commands (sepia-refiner): remove the test, because sometimes use the same declaration, but found in difference place. * sepia-tree.el (sepia-tree-button-cb): widget => pw and xref-location return a list of posible locations. (sepia-tree-tidy-buffer, sepia-tree-use-image): Let user to choose whether use image or not. Set it to a buffer-local variable, so that it didn't interference global values. * sepia.el (sepia-extract-def): seem an argument is excessive * sepia-tree.el (sepia-build-tree-buffer): In my emacs, it doesn't work. The :dynargs didn't become the tree-widget :expander. The tree-widget-convert-widget only receive the 'tree-widget, not the total list. sepia-install-keys not defined. * lib/Sepia/Xref.pm (file_modules): seem it is a typo error to use Module::Include rather than Module::Info. Module::Info::packages_inside return an array, the operator || will force in a scalar context. * sepia.el (sepia-lisp-to-perl): use "'" to quote string is not enough, because the string may also contain "'" inside. use (format "%S" string) instead. (define-sepia-query): `sepia-set-found' accept a symbol as argument, not (quote symbol). 2007-06-09 Sean O'Rourke * VERSION: 0.92 * sepia.el (sepia-shared-map, etc.): fix keymap initialization. 2007-06-06 Sean O'Rourke * lib/Sepia/Debug.pm: eval in lexical env when in debugger. * t/50expect.t: REPL tests if you have Test::Expect. * lib/Sepia/Debug.pm: use correct level when none given. * lib/Sepia.pm: No longer bring in exporter (why did we?). * sepia.el (sepia-init): always reinitialize sepia-mode-map. * Makefile.PL: require 5.006 for warnings to quiet stupid "make test". 2007-06-05 Sean O'Rourke * Sepia.html: generate single-page manual instead of split. * VERSION: 0.90 * sepia.el: docstring cleanup. * lib/sepia/Debug.pm: misc usability improvements 2007-06-04 Sean O'Rourke * VERSION 0.90_02 * test.pl: disable Module::Info tests to avoid Module::Info bug. 2007-06-02 Sean O'Rourke * VERSION 0.90_01 * Major: replaced comint- with gud-based REPL, use real debugger. * lib/Sepia/Debug.pm: "perl -d" support. * lib/Sepia.pm (repl_shell): new command. * sepia.el (sepia-eval-defun): detect errors, jump to first. (sepia-comint-setup): don't set comint-use-prompt-regexp (sepia-eval-defun,sepia-beginning-of-defun,sepia-end-of-defun): fix 2007-06-01 Sean O'Rourke * sepia.el (sepia-perldoc-this): don't mess up window configuration when the page isn't found. (sepia-location): use sepia-interactive-arg. (sepia-perl-[np]e-region): fix. * lib/Sepia.pm: fix. (print_dumper): switch format based on size. 2007-05-30 Sean O'Rourke * sepia.texi: shiny new manual. * lib/Sepia.pm (completions): add special 'VARIABLE' type. (methods): add second $qualified arg. (repl_reload): new function. (sig_warn,repl): override __WARN__ (and __DIE__) cautiously. (repl): nicer warning format. * sepia.el (sepia-eval-raw): stopwarn -> STOPWARN. (sepia-load-file): Fix pop-up error buffer. (sepia-lisp-to-perl): fix quoting of strings. Good citizenship: (sepia-mode): make a real major mode. (sepia-scratchpad-mode): ditto. 2007-05-29 Sean O'Rourke * lib/sepia/Xref.pm (pp_method_named): warn -> dprint. * sepia.el (sepia-simple-method-before-point): new function. (sepia-complete-symbol): use it to complete methods. make w3m optional: (sepia-perldoc-function,sepia-view-pod-function, sepia-module-list-function): new variables. (sepia-perldoc-this,sepia-view-pod): new functions. * lib/Sepia.pm (repl): trim leading spaces. (tolisp): escape metacharacters. (repl): don't override "die" if someone has installed a $SIG{__DIE__} handler 2007-05-28 Sean O'Rourke * VERSION: 0.75+ * sepia.el (sepia-core-version): new function. (sepia-indent-or-complete): fix abbrev expansion. (sepia-symbol-info): report core version in eldoc. (sepia-ident-before-point): new function. (sepia-complete-symbol): use it instead of *-at-point. (sepia-complete-symbol): complete arrays and hashes when '$' starts a word. * lib/Sepia.pm (printer): Use @::__; distinguish "last as scalar" $__ from printed representation. ($PRINT_PRETTY): columnate lists if this is on. (columnate): fixed. (repl_methods): add regex argument. (repl_who): fix. (completions): Add in package names. 2007-05-27 Sean O'Rourke * lib/Sepia.pm (repl_methods): fixed. 2007-05-26 Sean O'Rourke * VERSION: 0.74 * sepia.el (sepia-doc-scan-buffer): Better doc regex for variables. (sepia-indent-or-complete): try to expand abbrevs before completion (try with snippet.el). (sepia-indent-expand-abbrev): control the above feature. (sepia-complete-symbol): scroll completion buffer; suggested by Hilko Bengen. * lib/Sepia.pm (html_package_list,html_module_list): new functions. (completions): '$'-completion only generates scalars. * sepia-w3m.el: remove spurious sepia-module-list, improve documentation. (sepia-module-list,sepia-package-list): better output. (sepia-package-list,sepia-module-list): move Perl code to Sepia.pm, generate list in inferior perl instead of shelling out. 2007-05-23 Sean O'Rourke * lib/Sepia.pm (_apropos_re): handle empty completions. (columnate): pretty-print ",who" output. * sepia.el (sepia-complete-symbol): bury stale completions buffer; suggested by Hilko Bengen. 2007-05-17 Sean O'Rourke * lib/Sepia.pm (_completions1): Fix infinite recursion. (repl): typo; clarify ambiguous vs. unrecognized shortcuts. 2007-05-15 Sean O'Rourke * sepia.el (sepia-dwim): don't try to jump to location when looking up module docs. * lib/Sepia.pm: use $::__ instead of $Sepia::__ (repl_quit): new command. (repl): add banner. 2007-05-12 Sean O'Rourke * VERSION: 0.72 * Makefile.PL: add license. 2007-05-09 Sean O'Rourke * VERSION: 0.71 * sepia.el (sepia-load-file): set inhibit-read-only when displaying errors. * lib/Sepia.pm (repl_methods): walk ISA hierarchy looking for functions (XXX: this is much too coarse). (repl_help): use %REPL_DOC to hold command documentation for easier extension. (repl): display error on canceled continued statement. 2007-05-07 Sean O'Rourke * lib/Sepia.pm (repl_strict): add 'strict mode' (thanks to Lexical::Persistence) for those who swing that way (I don't), inspired by Devel::REPL. (repl_wantarray): Fix logic. 2007-04-25 Sean O'Rourke * VERSION: 0.70 * README: add license. * Makefile.PL: remove dependency on Sub::Uplevel, make PadWalker optional. * lib/Sepia.pm (who): add optional regex filter. (debug_inspect): fix non-scalar printing. * sepia.el (sepia-dwim): fix staleness; change to find documentation for modules. (sepia-find-module-file): new function to try sepia- and xref- module file-finding functions. (sepia-next): use it. (sepia-filter-by-module,sepia-filter-by-all): remove. (sepia-keymap): use `sepia-dwim' for M-. 2007-04-15 Sean O'Rourke * lib/Sepia.pm (who): add optional regex argument. 2007-03-30 Sean O'Rourke * sepia-w3m.el (sepia-module-list, sepia-package-list): added detailed index of installed modules. * VERSION: 0.68 2007-03-16 Sean O'Rourke * sepia.el (sepia-set-found): filter spurious nils (XXX: this really needs a fix). (sepia-symbol-info): avoid eldoc errors in ecase. 2007-03-15 Sean O'Rourke * sepia.el (sepia-complete-symbol): fallback completion of builtins. * set COPY_EXTENDED_ATTRIBUTES_DISABLE=true to avoid creating ._* files (RT #25490). 2007-03-15 Sean O'Rourke * VERSION: 0.67 * sepia-ido.el: clean up bitrot. * lib/Sepia.pm (apropos): don't create new stashes during completion. * sepia.el (sepia-show-locations): bind inhibit-read-only; filter out mysterious NILs. * Makefile.PL: require PadWalker 1.0 (RT #25463) 2007-03-13 Sean O'Rourke * VERSION: 0.66 * README (TODO): user-defined REPL abbrevs. * lib/Sepia.pm (print_*): optional printing via YAML and Data::Dump (from Shell::Perl). (repl_wantarray): change eval context (same). (repl_format): set formatter (same). 2007-03-09 Sean O'Rourke * VERSION: 0.65 * sepia.el (sepia-keymap): add *-apropos, find-tag bindings. * README: add organized function index. * sepia.el (sepia-beginning-of-defun, sepia-end-of-defun): fix argument to be prefix instead of point. * sepia.el: documentation. * sepia-ido.el: documentation. * README: cleanup; note limitation of sepia-bodf and -eodf. 2007-02-25 Sean O'Rourke * Makefile.PL: add Scalar::Util as prereq. * sepia.el (sepia-perl5lib): new variable holding extra PERL5LIB entry. * sepia.el (sepia-init): use it. * sepia.el (sepia-comint-setup): don't clobber keymap. * sepia.el (sepia-indent-or-complete): complete first time if at end of word. * Sepia.pm (completions): enhanced completion -- e.g. "wtf" matches "want_to_feed". * Sepia.pm (printer): special-case PDL to use its stringification (XXX: should test for overloaded ""). * Sepia.pm (who,repl_who): new functions. 2006-09-29 Sean O'Rourke * Sepia.pm (Dump): wrap with eval to prevent unexpected exits. * Sepia.pm (repl_chdir): expand '~' and '$HOME' 2006-07-01 Sean O'Rourke * Sepia.pm (tolisp): undef -> nil * sepia.el (sepia-eval-raw): guess package. * sepia.el (sepia-init): don't pop-to-buffer with prefix argument. * sepia.el (sepia-beginning-of-defun,sepia-end-of-defun): avoid recursion. * sepia.el (sepia-buffer-package): look backward from point instead of forward from point-min. 2006-05-24 Sean O'Rourke * Makefile.PL: added missing dependencies on PadWalker, Sub::Uplevel. * Sepia.pm: improved ",command" * sepia-w3m.el (sepia-w3m-perldoc-this): simplify. * sepia.el (perl-*): rename to sepia-*. * sepia.el: reorg and cleanup. * VERSION: 0.63 2006-05-19 Sean O'Rourke * sepia.el: fixed eldoc support. This only works with CVS Emacs, relying on `eldoc-documentation-function'. Also fixed pod scanning for eldoc. 2006-05-18 Sean O'Rourke * sepia.el, Sepia.pm: improved bulk-transfer protocol. * Sepia.pm: override die with simple inspector/debugger. * Sepia.pm: $__ and @__ now contain results of the last expression. * sepia.el, Sepia.pm: primitive support for evaluating elisp sent from Perl. Turn on comint-use-prompt-regexp because the fields stuff is flaky with this. * sepia.el, Sepia.pm: ",cd" shortcut coordinates directory with Emacs. * VERSION 0.61, 0.62 2006-04-14 Sean O'Rourke * generic-repl.el: replaced by comint. * all: removed EPL dependency. * VERSION 0.59 2005-07-12 Sean O'Rourke * sepia-w3m.el: fix function name so it's found. * Xref.pm, Sepia.pm: cleanup and numerous bugfixes. * Buffer.pm: new, but not ready for prime-time * sepia.el: delete-thing-at-point removed; misc bugfixes. * test.pl: disabled a bunch of location stuff. * VERSION 0.58 2004-09-10 Sean O'Rourke * test.pl: some real tests. * Sepia.pm, Xref.pm: Separate simple symbol-table searching from Xref, making the former more reliable. * Xref.pm: More reliable detection of (class) method calls. * sepia.el: results are not displayed for expressions ending in ';' (c.f. Octave). 2004-04-12 Sean O'Rourke * sepia.el (sepia-doc-scan-buffer): Make regular expressions a bit better. (sepia-ident-at-point): handle upper-case function and variable names for completion (a bit hacky...). (sepia-install-keys): fix keymap installation. 2004-04-11 Sean O'Rourke * Xref.pm (guess_module_file): do like Module::Info and trust %INC more than our Xref info. But don't be _too_ smart about this -- we were picking up lots of bogus exports. (pp_method_named): add support for constant-named methods (cribbed from B::Concise). 2004-04-10 Sean O'Rourke * Xref.pm: update $VERSION to track Sepia release. * sepia.el (sepia-indent-or-complete): only complete on the second TAB. 2004-04-09 Sean O'Rourke * sepia.el (sepia-refiner): tweak refining function a bit more. I'm still not entirely happy with this, but it's getting better. Time and experimentation are required. * sepia-tree.el (sepia-calle[er]-tree): New file. Use caller/callee information to generate tree-view using David Ponce's wonderful tree-widget. * Xref.pm (_apropos_re): Add that Emacs-style multipart-word completion, so e.g. D:v_d -> Devel::Xref::var_defs. It's groovy, man. (%firstline): gone. Just getting a line within the sub is good enough -- we can fix it on the Emacs side of the fence later. 2004-04-08 Sean O'Rourke * sepia-w3m.el (sepia-w3m-perldoc-this): work for functions as well as modules, and try to go to correct position in manpage. * sepia.el (sepia-eval-buffer): use 'BEGIN{ die }' to do Xrefs for scripts without loading them. * Xref.pm: Localize a bunch of things instead of stomping on package lexicals. This makes the module better handle repeated use, for which it wasn't designed. * Xref.pm (mod_subs): Rename package_subs for consistency. (mod_decls): New function to generate decls for evaluation. * sepia.el: misc bug-fixes, and better support for redefining functions with sepia-eval-defun, especially preserving files and line numbers. (sepia-eval): remove newlines to make line-numbers make more sense to user. (sepia-interactive-arg): delay reading completions to speed up \M-. functions. (sepia-refiner): search both forward and backward, to adjust for e.g. adding comments. Still not so good, but better. 2004-04-06 Sean O'Rourke * sepia-w3m.el: moved w3m-perldoc support here. * README: added description, removed disclaimer * sepia.el (sepia-symbol-info, sepia-doc-update): POD scanning and cperl hackage for eldoc support. 2004-04-05 Sean O'Rourke * Xref.pm (redefined,forget): make them take a single sub at a time, and pay attention to packages. (_apropos): use package info to narrow choices. * sepia.el (sepia-eval-defun,sepia-eval-buffer): new functions. * test.pl: satisfy the cpants Fascists. * Xref.pm (use_type): try to be smarter about when something's being assigned to, vs. merely used as a reference. * sepia.el (sepia-repl-header): keep up with generic-repl by doing header line, working dir. (sepia-complete-symbol): stupid bug with modules. (sepia-install-keys): new function. (sepia-var-assigns): assignments are more useful than defs. (sepia-init): start REPL by default. * generic-repl.el (repl-cd,repl-set-header): "new" function from Slime to track working dir, update header line. 2004-04-04 Sean O'Rourke * Sepia.jpg: don't ask -- just look. * sepia.el (sepia-ident-at-point): fixed bug with sigils. (sepia-complete-symbol): fixed bug with undefined function sepia-end-of-word. Always use Data::Dumper. * any-repl.el: new file implementing REPL, basically stolen from Slime. * pscope.el: renamed to sepia.el to go with name change. 2004-04-03 Sean O'Rourke * pscope.el (pscope-set-found): remove locations with no file in package "main", which were causing errors before. (pscope-dwim): new function. New functions pscope-complete-symbol and pscope-indent-or-complete for symbol completion. Not well-tested, but they seem to work. The most annoying thing is that since the Xref db isn't automatically updated, it won't always know as much as you expect. (pscope-load-file): new function. * Xref.pm: update export lists to reflect new functions. 2004-04-02 Sean O'Rourke * Xref.pm: minor cleanup. * pscope.el: pass module, file, line to Perl side (where it's ignored for now); fix line number refinement to be a little less over-eager; fix pscope-callees to go to sub definitions instead of call sites. * README: added TODO section.