Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

POD-Browser 0.01 released.

by gmpassos (Priest)
on May 02, 2003 at 09:37 UTC ( [id://254944]=perlnews: print w/replies, xml ) Need Help??

I have finished the POD-Browser tool. It's a POD browser based in HTML view. You can read the POD of Perl Modules directly, without the use of extrenal files or HTML version of your PM files. In other words, you read directly in the Perl library files.

The browser will do everything automatically, including the search for the files. You just point a module name (FOO::BAR) and it looks for the .pm or .pod file of it. Links inside the POD are handled too, just click that it search for it in the library and show the HTML in the screen.

It's a good tool to write your POD, since you can refresh (just click GO again), and it show your last changes.

Get it at:
http://www.inf.ufsc.br/~gmpassos/POD-Browser-0.01-win32.exe (source included)

Enjoy! ;-P

Graciliano M. P.
"The creativity is the expression of the liberty".

Replies are listed 'Best First'.
Re: POD-Browser 0.01 released.
by PodMaster (Abbot) on May 02, 2003 at 10:18 UTC
    Please use Pod::Find to find pod (there is no such thing as "Null POD"). Also, you should throw up a splash screen whilst searching for pod on startup, or simply don't search for it at all, just find perltoc and display it (or provide an option to not search on startup).

    Also, this is weird

    sub INC_AddPath { my( $this ) = shift ; my $dialog = Wx::DirDialog->new($this , "$TITLE - \@INC -> Add PATH" + , $LASTDIR ) ; my $dir ; if( $dialog->ShowModal == wxID_CANCEL ) { $dir = undef ;} else { $dir = $dialog->GetPath ;} $dir =~ s/[\\\/]+/\//gs ; push(@INC , $dir) ; Wx::MessageBox("Path Added:\n$dir", "\@INC -> New PATH", wxOK | wxIC +ON_INFORMATION, $this ); }
    Kindly rewrite it like
    sub INC_AddPath { my( $this ) = shift ; my $dialog = Wx::DirDialog->new($this , "$TITLE - \@INC -> Add PATH" + , $LASTDIR ) ; return if $dialog->ShowModal == wxID_CANCEL; my $dir = $dialog->GetPath ; $dir =~ s/[\\\/]+/\//gs ; # this is weird, but whatever push(@INC , $dir) ; Wx::MessageBox("Path Added:\n$dir", "\@INC -> New PATH", wxOK | wxI +CON_INFORMATION, $this ); }


    MJD says you can't just make shit up and expect the computer to know what you mean, retardo!
    I run a Win32 PPM repository for perl 5.6x+5.8x. I take requests.
    ** The Third rule of perl club is a statement of fact: pod is sexy.

      Will take a look in Pod::Find...

      I made a mistake in the INC_AddPath(). Forgot to check if the $dir isn't null before push it.

      Thanks again PodMaster. ;-P

      Graciliano M. P.
      "The creativity is the expression of the liberty".

Re: POD-Browser 0.01 released.
by PodMaster (Abbot) on May 02, 2003 at 11:08 UTC
    Also, due to a bug in Pod::POM, Begin nodes/commands aren't being handled correctly, so what you really want view_begin to look like is
    sub view_begin { my ($self, $begin) = @_; return '' unless $begin->format() =~ /\bhtml\b/; require Pod::POM::View::Text; return Pod::POM::View::Text->new($begin)->print; }
    That way =begin html <b>bolden</b> does indeed show up as bolden and not as <b>bolden</b>

    Since the above approach is theoretically flawed, you could try

    sub view_begin { my ($self, $begin) = @_; return '' unless $begin->format() =~ /\bhtml\b/; my $output = $begin->content->present($self); for($output){ s/&amp;/&/gi; s/&quot;/\"/gi; s/&gt;/>/gi; s/&lt;/</gi; } return $output; }
    but that one's not that much better either ;) I'm currently working on fixing this in Pod::POM

    update: s/=for/=begin/;#D LOL


    MJD says you can't just make shit up and expect the computer to know what you mean, retardo!
    I run a Win32 PPM repository for perl 5.6x+5.8x. I take requests.
    ** The Third rule of perl club is a statement of fact: pod is sexy.

      Pod::POM has another bug, where a =item without title crash the parser:
      =head1 TITLE bla bla bla =item bla bla bla

      Graciliano M. P.
      "The creativity is the expression of the liberty".

Re: POD-Browser 0.01 released.
by crenz (Priest) on May 02, 2003 at 10:07 UTC

    Nice tool! However, I find it somewhat unusual to distribute an installation package for that kind of tool. And, not everybody has a spare PC running Windows lying around :). Care to release a source package?

    Whoops: I see the tool is Win32 only. Still, a non-installer package would be nice.

      This is only the first version! I started to make this 2 days ago!

      About installation package. Well, to use it you need to install a lot of Modules, including wxPerl, Wx::ActiveX, Pod::POM and Regexp::Common.

      But the bigger problem is with the module Wx::ActiveX, that you need to compile it by your self, since you can't find PPM versions of it. And to compile you need to have wxPerl source compiled, and to Have wxPerl compile you need wxWindows (some about 15Mb)! And without tell that compile all of this on Win32 is sux, since you don't have a defalt gcc compiler, that you need to donwload. I'm just making the life easier for who want to use my tool.

      Now I'm taking a look in wxMozilla (a new project), to avoid the use of Internet Explorer, and can have it on Linux. ;-P

      The source?! Is only 2 files, pod2html.mod and PodBrowser.pl. But you have them in the package too! Take a look in the README.html, you will see that it still Open Source. And the part that convert POD to HTML I let it free from the GUI app, to the users can use it.

      Graciliano M. P.
      "The creativity is the expression of the liberty".

        Sorry if I expressed myself in a mistakable way :). I didn't mean to criticise your tool -- I really like it and find it very useful. I just criticised your using an installer. You can distribute a Perl app along with compiled modules just fine using PAR or the older App::Packer (see e.g. my Shipping standalone perl apps on Win32, but I'm not sure whether App::Packer is still a good choice). Just put the whole directory in a ZIP file and ship that. I didn't take a look at your package, but I guess you did just that -- only instead of putting it into a ZIP file, you used an installer. This is the very small nit I am picking :). This is probably just a personal preference of mine -- I work on a number of different PCs and usually install only what is necessary, keeping small tools like yours on a central server so I can just run them from there.

        Also, I second PodMaster's suggestion to use a SplashScreen on Startup.

Re: POD-Browser 0.01 released.
by Biker (Priest) on May 07, 2003 at 14:47 UTC

    Nice tool. I now regularly use it during day time. (At home I'm using Linux only. ;-)

    • Would it be possible to sign up for some kind of 'Anouncements' mailing list to be made aware of future releases?
       
    • Would it be possible to make the main window of PB refresh with the Ctrl-R keyboard sequence, just as major Web browsers do?


    Everything went worng, just as foreseen.

      Everything is possible! ;-P

      I don't know if I will make a project page for this tool (at SourceForge), since I don't have much time for one more free project.

      POD-Browser probably will be inside an Perl editor that I'm developing for GUI apps (and pure Perl code too), and will grow there.

      About 'Anouncements', see PerlMonks, since I alwasy announce here. ;-P

      Graciliano M. P.
      "The creativity is the expression of the liberty".

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlnews [id://254944]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (9)
As of 2024-04-23 14:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found