Solved

How to I add CGI::small()?

Posted on 1997-09-10
9
540 Views
Last Modified: 2013-12-25
Most html tags can be generated by CGI.pm methods. The <SMALL></SMALL> tag is missing, however, How can I add it, without creating a derived class.

Max.
0
Comment
Question by:dwater
  • 5
  • 4
9 Comments
 
LVL 84

Expert Comment

by:ozo
ID: 1830215
You could always just
print "<SMALL>...</SMALL>";

0
 

Author Comment

by:dwater
ID: 1830216
Yes, this is what I've done, but it doesn't fit in with the rest of the script which uses the CGI:: methods. I wanted to make it all clean. I'm sure there are other html tags which aren't in the module but this is the only one I need which isn't.

Max.
0
 
LVL 84

Expert Comment

by:ozo
ID: 1830217
You could also just add it to the module.
(even submit it to L. Stein so you'll be portable when he adds it)
0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 

Author Comment

by:dwater
ID: 1830218
OK. I may well do this. I'm guessing this is the only way of doing it.

Thanks.

Max.
0
 
LVL 84

Expert Comment

by:ozo
ID: 1830219
In Perl?  Surely not the "only way of doing it":-)

use CGI;
sub CGI::small {
          my $self = shift;
          print "<SMALL>@_</SMALL>\n";
}

0
 

Author Comment

by:dwater
ID: 1830220
Great! Just what I'm after.

Although, I guess I don't want it to print the string, just return it. Correct?

Thanks.

Max.
0
 
LVL 84

Expert Comment

by:ozo
ID: 1830221
Yes, return instead of print would fit in better with the other methods.
I only wanted to illustrate that it was possible, and got careless.
I'll check the CGI.pm source to if it wants a prototype to fit in, then post it as an answer.
0
 
LVL 84

Accepted Solution

by:
ozo earned 100 total points
ID: 1830222
One way to do it:

sub CGI::small {
          my($self,@p) = CGI::self_or_default(@_);
          return "<SMALL>@p</SMALL>\n";
}

0
 

Author Comment

by:dwater
ID: 1830223
Actually, I found a preferable solution, which is documented in the CGI.pm file and read using the command 'pod2text CGI.pm' - pod2text is one of a family supplied with CPAN which consists of pod2html, pod2latex, pod2man, pod2text.

The relevant part of the text is :-

  Generating new HTML tags

    Since no mere mortal can keep up with Netscape and Microsoft
    as they battle it out for control of HTML, the code that
    generates HTML tags is general and extensible. You can create
    new HTML tags freely just by referring to them on the import
    line:

            use CGI shortcuts,winkin,blinkin,nod;

    Now, in addition to the standard CGI shortcuts, you've
    created HTML tags named "winkin", "blinkin" and "nod". You
    can use them like this:

            print blinkin {color=>'blue',rate=>'fast'},"Yahoo!";
            # <blinkin COLOR="blue" RATE="fast">Yahoo!</blinkin>

I supplied this information, just for the record.

Max.
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

If you get a (Blue Screen of Death), your system writes a small file called a minidump. Your first step is to make certain your computer is setup to record memory dumps. Right click My Computer, choose properties. Click on the advanced tab, an…
This article is meant to give a basic understanding of how to use R Sweave as a way to merge LaTeX and R code seamlessly into one presentable document.
Learn the basics of while and for loops in Python.  while loops are used for testing while, or until, a condition is met: The structure of a while loop is as follows:     while <condition>:         do something         repeate: The break statement m…
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question