Tk-Pod
view release on metacpan or search on metacpan
So the user may add these menus to the context menu of the PodText
window.
*** Maybe have a new popup menu entry View -> Pod info which shows path and basic Pod information
*** If a Pod could not be found: add a button "Look at search.cpan.org" to the error dialog
*** "Open Pod by name" dialog could be done nicer
e.g. by using a rich Tk::Text instead of the label/message and use
"sans serif"+"monospace" fonts.
** Tk::More
*** A menu item for switching between popular encodings
Default probably to iso-8859-1 or maybe user's locale.
*** A menu item (and maybe also the keyboard equivalent -x) for changing the indentation level
*** If there are more configuration parameters resembling less, then maybe an environment variable like LESS could be useful for common configuration parameters
Question: should this only be valid if it's called as tkmore or
also if embedded in Tk::Pod?
*** Tk/More status bar: filename % line x
*** more 'more' like key bindings to Tk::More
*** search should scroll per page
*** search policies: regexp, glob, incremental (as in xmore) and 'normalized' as in perlindex
Should go into it's own Tk::Text::Util.pm module
Or: use Tk::FindBar (create it first by branching Tkx::FindBar)
for incremental search.
*** after switching between case sensitive/insensitive highlightning should be updated immediately
*** automatic case-sensitive search
if there is at least one uppercase character in the search string,
then do a case-sensitive search (like emacs)
*** scrolling is not as exact as it shoule be (i.e. scroll forw, then scroll back will not get to the same position as before)
*** use Tk::HistEntry for search entry
*** implement isearch
*** <Return> over a link opens the link
(but this needs some kind of "current link" feature, probably by
using <Tab> or similar to select the next link).
** Tk::Pod::Cache
*** use a LRU cache with $MAX_CACHE documents
*** maybe do not cache small documents at all
*** store modtime of POD files and flush cache automatically if the file changed
*** consider to cache per INC path, so user can use custom @INC/@PERLPOD and everything works as expected
e.g. ~/tkpod_cache/perlspec(abspathofconfig)/MD5orSHA1ofpath
~/tkpod_cache/perlspec(abspathofconfig)/.info
** Tk::Pod::Tree
*** Make tree busy while building first time
*** Show a progress bar or an indicator when refreshing the pod index
*** Build the tree in background, e.g. by using standard perl ipc (pipe+fork)
This already happens for Unix, but it would be nice if it also
implemented (and tested) on Windows systems.
*** Show old cached contents while rebuilding the tree
But show a notice that the tree is updated. Once the new tree is
available, it should be displayed (and the currently opened leaves
should be restored), and the update notice should be removed.
*** Some zoom functionality
Maybe depending on the zoom factor of the main window, and/or an
additional menu entry.
*** Should I include something similar to perlfunc for perlfaq (perldoc -q)?
Maybe a new menu item "Search FAQ"?
*** Implement C<-rememberopen> in C<Fill> method
*** Mark modules which appear multiple times in the @INC tree
e.g. with an exclamation mark, and maybe show the paths and
versions(?) of both/all versions
** tkpod
*** Instead of listening to a tcp socket, maybe one should use a unix domain socket
(security, a unix domain socket may be chown'ed and chmod'ed!)
*** tkpod -s: should probably reuse the Pod window instead of re-creating new ones
Maybe this should be controlled by another option.
*** handle "-" for stdin
* Expired problems
These bugs are probably fixed or not reproducable or apparent on old
systems only:
** Ctrl-O Exporter does not work?!
** What about the reported error on Suse Linux (see Tk-Pod entry on rt.cpan.org)?
I can't reproduce this bug...
** Dump does not always work on a RedHat 8.0 system, so I had to use a workaround.
Also, Tk::Pod very often dumps core on this system in conjuction
with perl5.8.0 and Tk800.025, but this might be a RedHat-related
issue.
* org-mode settings
#+LINK: cpanrt http://rt.cpan.org/Public/Bug/Display.html?id=%s
#+LINK: perlrt http://rt.perl.org/rt3/Ticket/Display.html?id=%s
( run in 0.672 second using v1.01-cache-2.11-cpan-5511b514fd6 )