.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Test::NoTabs 3pm" .TH Test::NoTabs 3pm "2012-06-25" "perl v5.14.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Test::NoTabs \- Check the presence of tabs in your project .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\f(CW\*(C`Test::NoTabs\*(C'\fR lets you check the presence of tabs in your perl code. It report its results in standard \f(CW\*(C`Test::Simple\*(C'\fR fashion: .PP .Vb 2 \& use Test::NoTabs tests => 1; \& notabs_ok( \*(Aqlib/Module.pm\*(Aq, \*(AqModule is tab free\*(Aq); .Ve .PP Module authors can include the following in a t/notabs.t and have \f(CW\*(C`Test::NoTabs\*(C'\fR automatically find and check all perl files in a module distribution: .PP .Vb 2 \& use Test::NoTabs; \& all_perl_files_ok(); .Ve .PP or .PP .Vb 2 \& use Test::NoTabs; \& all_perl_files_ok( @mydirs ); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module scans your project/distribution for any perl files (scripts, modules, etc) for the presence of tabs. .SH "EXPORT" .IX Header "EXPORT" A list of functions that can be exported. You can delete this section if you don't export anything, such as for a purely object-oriented module. .SH "FUNCTIONS" .IX Header "FUNCTIONS" .ie n .SS "all_perl_files_ok( [ @directories ] )" .el .SS "all_perl_files_ok( [ \f(CW@directories\fP ] )" .IX Subsection "all_perl_files_ok( [ @directories ] )" Applies \f(CW\*(C`notabs_ok()\*(C'\fR to all perl files found in \f(CW@directories\fR (and sub directories). If no <@directories> is given, the starting point is one level above the current running script, that should cover all the files of a typical \&\s-1CPAN\s0 distribution. A perl file is *.pl or *.pm or *.t or a file starting with \f(CW\*(C`#!...perl\*(C'\fR .PP If the test plan is defined: .PP .Vb 2 \& use Test::NoTabs tests => 3; \& all_perl_files_ok(); .Ve .PP the total number of files tested must be specified. .ie n .SS "notabs_ok( $file [, $text] )" .el .SS "notabs_ok( \f(CW$file\fP [, \f(CW$text\fP] )" .IX Subsection "notabs_ok( $file [, $text] )" Run a tab check on \f(CW$file\fR. For a module, the path (lib/My/Module.pm) or the name (My::Module) can be both used. .SH "AUTHOR" .IX Header "AUTHOR" Nick Gerakines, \f(CW\*(C`\*(C'\fR .SH "BUGS" .IX Header "BUGS" Please report any bugs or feature requests to \&\f(CW\*(C`bug\-test\-notabs at rt.cpan.org\*(C'\fR, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test\-NoTabs . I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. .SH "SUPPORT" .IX Header "SUPPORT" You can find documentation for this module with the perldoc command. .PP .Vb 1 \& perldoc Test::NoTabs .Ve .PP You can also look for information at: .IP "\(bu" 4 AnnoCPAN: Annotated \s-1CPAN\s0 documentation .Sp http://annocpan.org/dist/Test\-NoTabs .IP "\(bu" 4 \&\s-1CPAN\s0 Ratings .Sp http://cpanratings.perl.org/d/Test\-NoTabs .IP "\(bu" 4 \&\s-1RT:\s0 \s-1CPAN\s0's request tracker .Sp http://rt.cpan.org/NoAuth/Bugs.html?Dist=Test\-NoTabs .IP "\(bu" 4 Search \s-1CPAN\s0 .Sp http://search.cpan.org/dist/Test\-NoTabs .SH "ACKNOWLEDGEMENTS" .IX Header "ACKNOWLEDGEMENTS" Inspired by some code written by Paul Lindner. .PP Test::Strict was used as an example when creating this module and distribution. .PP Rick Myers and Emanuele Zeppieri also provided valuable feedback. .PP Patch to fix warnings provided by Florian Ragwitz (rafl) .PP Currently maintained by Tomas Doran (t0m) \f(CW\*(C`bobtfish@bobtfish.net\*(C'\fR .SH "SEE ALSO" .IX Header "SEE ALSO" Test::More, Test::Pod. Test::Distribution, .SH "COPYRIGHT & LICENSE" .IX Header "COPYRIGHT & LICENSE" Copyright 2006 Nick Gerakines, all rights reserved. .PP This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.