.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" 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" '' . ds C` . ds C' '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 >0, 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. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" 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 "Lintian::Tag::Info 3" .TH Lintian::Tag::Info 3 "2019-05-26" "Lintian v2.15.0" "Debian Package Checker" .\" 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" Lintian::Tag::Info \- Lintian interface to tag metadata .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 7 \& my $cs = Lintian::CheckScript\->new ("$ENV{\*(AqLINTIAN_ROOT\*(Aq}/checks/", \& \*(Aqfiles\*(Aq); \& my $tag_info = $cs\->get_tag (\*(Aqsome\-tag\*(Aq); \& print "Tag info is:\en"; \& print $tag_info\->description(\*(Aqtext\*(Aq, \*(Aq \*(Aq); \& print "\enTag info in HTML is:\en"; \& print $tag_info\->description(\*(Aqhtml\*(Aq, \*(Aq \*(Aq); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module provides an interface to tag metadata as gleaned from the *.desc files describing the checks. It can be used to retrieve specific metadata elements or to format the tag description. .SH "CLASS METHODS" .IX Header "CLASS METHODS" .IP "new(\s-1HASH, SCRIPT_NAME, SCRIPT_TYPE\s0)" 4 .IX Item "new(HASH, SCRIPT_NAME, SCRIPT_TYPE)" Creates a new Lintian::Tag:Info. .SH "INSTANCE METHODS" .IX Header "INSTANCE METHODS" .IP "\fBcertainty()\fR" 4 .IX Item "certainty()" Returns the certainty of the tag. .IP "\fBcode()\fR" 4 .IX Item "code()" Returns the one-letter code for the tag. This will be a letter chosen from \f(CW\*(C`E\*(C'\fR, \f(CW\*(C`W\*(C'\fR, \f(CW\*(C`I\*(C'\fR, or \f(CW\*(C`P\*(C'\fR, based on the tag severity, certainty, and other attributes (such as whether experimental is set). This code will never be \f(CW\*(C`O\*(C'\fR or \f(CW\*(C`X\*(C'\fR; overrides and experimental tags are handled separately. .IP "description([\s-1FORMAT\s0 [, \s-1INDENT\s0]])" 4 .IX Item "description([FORMAT [, INDENT]])" Returns the formatted description (the Info field) for a tag. \s-1FORMAT\s0 must be either \f(CW\*(C`text\*(C'\fR or \f(CW\*(C`html\*(C'\fR and defaults to \f(CW\*(C`text\*(C'\fR if no format is specified. If \f(CW\*(C`text\*(C'\fR, returns wrapped paragraphs formatted in plain text with a right margin matching the Text::Wrap default, preserving as verbatim paragraphs that begin with whitespace. If \f(CW\*(C`html\*(C'\fR, return paragraphs formatted in \s-1HTML.\s0 .Sp If \s-1INDENT\s0 is specified, the string \s-1INDENT\s0 is prepended to each line of the formatted output. .IP "\fBexperimental()\fR" 4 .IX Item "experimental()" Returns true if this tag is experimental, false otherwise. .IP "severity([$real])" 4 .IX Item "severity([$real])" Returns the severity of the tag; if \f(CW$real\fR is a truth value the real (original) severity is returned, otherwise the effective severity is returned. .Sp See \fBset_severity()\fR .IP "set_severity($severity)" 4 .IX Item "set_severity($severity)" Modifies the effective severity of the tag. .IP "\fBscript()\fR" 4 .IX Item "script()" Returns the check script corresponding to this tag. .IP "\fBsources()\fR" 4 .IX Item "sources()" Returns, as a list, the keywords for the sources of this tag from the references header. This is only the top-level source, not any more-specific section or chapter. .IP "\fBtag()\fR" 4 .IX Item "tag()" Returns the tag name. .SH "DIAGNOSTICS" .IX Header "DIAGNOSTICS" The following exceptions may be thrown: .IP "no tag specified" 4 .IX Item "no tag specified" The Lintian::Tag::Info::new constructor was called without passing a tag as an argument. .ie n .IP "unknown output format %s" 4 .el .IP "unknown output format \f(CW%s\fR" 4 .IX Item "unknown output format %s" An unknown output format was passed as the \s-1FORMAT\s0 argument of \&\fBdescription()\fR. \s-1FORMAT\s0 must be either \f(CW\*(C`text\*(C'\fR or \f(CW\*(C`html\*(C'\fR. .PP The following fatal internal errors may be reported: .ie n .IP "can't open %s: %s" 4 .el .IP "can't open \f(CW%s:\fR \f(CW%s\fR" 4 .IX Item "can't open %s: %s" The specified file, which should be part of the standard Lintian data files, could not be opened. The file may be missing or have the wrong permissions. .ie n .IP "missing Check-Script field in %s" 4 .el .IP "missing Check-Script field in \f(CW%s\fR" 4 .IX Item "missing Check-Script field in %s" The specified check description file has no Check-Script field in its header section. This probably indicates the file doesn't exist or has some significant formatting error. .ie n .IP "missing Tag field in %s" 4 .el .IP "missing Tag field in \f(CW%s\fR" 4 .IX Item "missing Tag field in %s" The specified check description file has a tag section that has no Tag field. .SH "FILES" .IX Header "FILES" .IP "LINTIAN_ROOT/checks/*.desc" 4 .IX Item "LINTIAN_ROOT/checks/*.desc" The tag description files, from which tag metadata is read. All files matching this shell glob expression will be read looking for tag data. .IP "LINTIAN_ROOT/data/output/manual\-references" 4 .IX Item "LINTIAN_ROOT/data/output/manual-references" Information about manual references. Each non-comment, non-empty line of this file contains four fields separated by \f(CW\*(C`::\*(C'\fR. The first field is the name of the manual, the second field is the section or empty for data about the whole manual, the third field is the title, and the fourth field is the \s-1URL.\s0 The \s-1URL\s0 is optional. .SH "ENVIRONMENT" .IX Header "ENVIRONMENT" .IP "\s-1LINTIAN_ROOT\s0" 4 .IX Item "LINTIAN_ROOT" This variable specifies Lintian's root directory. It defaults to \&\fI/usr/share/lintian\fR if not set. The \fBlintian\fR program normally takes care of setting it. .SH "AUTHOR" .IX Header "AUTHOR" Originally written by Russ Allbery for Lintian. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fBlintian\fR\|(1)