summaryrefslogtreecommitdiffstats
path: root/upstream/mageia-cauldron/man1/perlcheat.1
diff options
context:
space:
mode:
Diffstat (limited to 'upstream/mageia-cauldron/man1/perlcheat.1')
-rw-r--r--upstream/mageia-cauldron/man1/perlcheat.1157
1 files changed, 157 insertions, 0 deletions
diff --git a/upstream/mageia-cauldron/man1/perlcheat.1 b/upstream/mageia-cauldron/man1/perlcheat.1
new file mode 100644
index 00000000..17b3dca2
--- /dev/null
+++ b/upstream/mageia-cauldron/man1/perlcheat.1
@@ -0,0 +1,157 @@
+.\" -*- mode: troff; coding: utf-8 -*-
+.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
+.\"
+.\" 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
+..
+.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
+.ie n \{\
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. 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
+.\" ========================================================================
+.\"
+.IX Title "PERLCHEAT 1"
+.TH PERLCHEAT 1 2023-11-28 "perl v5.38.2" "Perl Programmers Reference Guide"
+.\" 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
+perlcheat \- Perl 5 Cheat Sheet
+.SH DESCRIPTION
+.IX Header "DESCRIPTION"
+This 'cheat sheet' is a handy reference, meant for beginning Perl
+programmers. Not everything is mentioned, but 195 features may
+already be overwhelming.
+.SS "The sheet"
+.IX Subsection "The sheet"
+.Vb 10
+\& CONTEXTS SIGILS ref ARRAYS HASHES
+\& void $scalar SCALAR @array %hash
+\& scalar @array ARRAY @array[0, 2] @hash{\*(Aqa\*(Aq, \*(Aqb\*(Aq}
+\& list %hash HASH $array[0] $hash{\*(Aqa\*(Aq}
+\& &sub CODE
+\& *glob GLOB SCALAR VALUES
+\& FORMAT number, string, ref, glob, undef
+\& REFERENCES
+\& \e reference $$foo[1] aka $foo\->[1]
+\& $@%&* dereference $$foo{bar} aka $foo\->{bar}
+\& [] anon. arrayref ${$$foo[1]}[2] aka $foo\->[1]\->[2]
+\& {} anon. hashref ${$$foo[1]}[2] aka $foo\->[1][2]
+\& \e() list of refs
+\& SYNTAX
+\& OPERATOR PRECEDENCE foreach (LIST) { } for (a;b;c) { }
+\& \-> while (e) { } until (e) { }
+\& ++ \-\- if (e) { } elsif (e) { } else { }
+\& ** unless (e) { } elsif (e) { } else { }
+\& ! ~ \e u+ u\- given (e) { when (e) {} default {} }
+\& =~ !~
+\& * / % x NUMBERS vs STRINGS FALSE vs TRUE
+\& + \- . = = undef, "", 0, "0"
+\& << >> + . anything else
+\& named uops == != eq ne
+\& < > <= >= lt gt le ge < > <= >= lt gt le ge
+\& == != <=> eq ne cmp ~~ <=> cmp
+\& &
+\& | ^ REGEX MODIFIERS REGEX METACHARS
+\& && /i case insensitive ^ string begin
+\& || // /m line based ^$ $ str end (bfr \en)
+\& .. ... /s . includes \en + one or more
+\& ?: /x /xx ign. wh.space * zero or more
+\& = += last goto /p preserve ? zero or one
+\& , => /a ASCII /aa safe {3,7} repeat in range
+\& list ops /l locale /d dual | alternation
+\& not /u Unicode [] character class
+\& and /e evaluate /ee rpts \eb boundary
+\& or xor /g global \ez string end
+\& /o compile pat once () capture
+\& DEBUG (?:p) no capture
+\& \-MO=Deparse REGEX CHARCLASSES (?#t) comment
+\& \-MO=Terse . [^\en] (?=p) ZW pos ahead
+\& \-D## \es whitespace (?!p) ZW neg ahead
+\& \-d:Trace \ew word chars (?<=p) ZW pos behind \eK
+\& \ed digits (?<!p) ZW neg behind
+\& CONFIGURATION \epP named property (?>p) no backtrack
+\& perl \-V:ivsize \eh horiz.wh.space (?|p|p)branch reset
+\& \eR linebreak (?<n>p)named capture
+\& \eS \eW \eD \eH negate \eg{n} ref to named cap
+\& \eK keep left part
+\& FUNCTION RETURN LISTS
+\& stat localtime caller SPECIAL VARIABLES
+\& 0 dev 0 second 0 package $_ default variable
+\& 1 ino 1 minute 1 filename $0 program name
+\& 2 mode 2 hour 2 line $/ input separator
+\& 3 nlink 3 day 3 subroutine $\e output separator
+\& 4 uid 4 month\-1 4 hasargs $| autoflush
+\& 5 gid 5 year\-1900 5 wantarray $! sys/libcall error
+\& 6 rdev 6 weekday 6 evaltext $@ eval error
+\& 7 size 7 yearday 7 is_require $$ process ID
+\& 8 atime 8 is_dst 8 hints $. line number
+\& 9 mtime 9 bitmask @ARGV command line args
+\& 10 ctime 10 hinthash @INC include paths
+\& 11 blksz 3..10 only @_ subroutine args
+\& 12 blcks with EXPR %ENV environment
+.Ve
+.SH ACKNOWLEDGEMENTS
+.IX Header "ACKNOWLEDGEMENTS"
+The first version of this document appeared on Perl Monks, where several
+people had useful suggestions. Thank you, Perl Monks.
+.PP
+A special thanks to Damian Conway, who didn't only suggest important changes,
+but also took the time to count the number of listed features and make a
+Raku version to show that Perl will stay Perl.
+.SH AUTHOR
+.IX Header "AUTHOR"
+Juerd Waalboer <#####@juerd.nl>, with the help of many Perl Monks.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+.IP \(bu 4
+<https://perlmonks.org/?node_id=216602> \- the original PM post
+.IP \(bu 4
+<https://perlmonks.org/?node_id=238031> \- Damian Conway's Raku version
+.IP \(bu 4
+<https://juerd.nl/site.plp/perlcheat> \- home of the Perl Cheat Sheet