=begin pod A very simple Raku Pod document. All the other directives go here! =end pod B I U The function C is treated as verbatim. =head1 This is level 1 =head2 This is level 2 =head3 This is level 3 =head4 This is level 4 =head5 This is level 5 =head6 This is level 6 =head1 First level heading block =head2 Paragraph 1 This is an ordinary paragraph. Its text will be squeezed and short lines filled. It is terminated by the first blank line. =head2 Paragraph 2 This is another ordinary paragraph albeit shorter. =head1 First level heading block =head2 Paragraph 1 =para This is an ordinary paragraph. Its text will be squeezed and short lines filled. It is terminated by the first blank line. =head2 Paragraph 2 =para This is another ordinary paragraph albeit shorter. =item Item =item Item =item Another item =item1 Item one =item1 Item two =item1 Item three =item2 Sub-item =item2 Sub-item =item1 Item four =defn Beast of Bodmin A large feline inhabiting Bodmin Moor. =defn Morgawr A sea serpent. =defn Owlman A giant owl-like creature. #`( this is comment ) my $sum = -> $x, $y { $x + $y } say $sum(12, 5); In Raku, there are several functions/methods to output text. Some of them are C, C and C. =comment Add more here about the algorithm. =comment Pod comments are great for documenting the documentation. Pod is awesome Z. And Raku too! Raku homepage is L. L. L. L =begin table Option | Description ============|================ data | path to data files. engine | engine to be used for processing templates. ext | extension to be used for dest files. =end table =BLOCK_TYPE BLOCK_DATA =head1 Top level heading =begin BLOCK_TYPE BLOCK_DATA =end BLOCK_TYPE =begin head1 Top level heading =end head1 =begin item This is a paragraph in list item. This is another paragraph in the same list item. =end item =begin code #`( A non-efficient recursive implementation of a power function using multi subs. ) multi pow( Real $base, 0 ) { 1 } multi pow( Real $base, Int $exp where * ≥ 0) { $base * pow($base, $exp - 1) } multi pow( Real $base ) { pow($base, 2) } say pow(3, 0); #=> 1 say pow(4.2, 2); #=> 17.64 say pow(6); #=> 36 =end code =for BLOCK_TYPE BLOCK DATA =for head1 Top level heading =begin BLOCK_TYPE OPTIONAL_CONFIG_INFO = ADDITIONAL_CONFIG_INFO BLOCK_DATA =end BLOCK_TYPE =for BLOCK_TYPE OPTIONAL_CONFIG_INFO = ADDITIONAL_CONFIG_INFO BLOCK DATA =for head1 :numbered The Problem =for head1 :numbered The Solution =for head2 :numbered Analysis =for head3 :numbered Overview =begin code :allow('B', 'I') B greet( $name ) { B "Hello, $nameI"; } =end code =config BLOCK_TYPE CONFIG OPTIONS = ADDITIONAL_CONFIG_INFO =config head1 :formatted('B', 'U') :numbered =NAME =AUTHOR =VERSION =CREATED =SYNOPSIS =DESCRIPTION =USAGE =NAME B =begin DESCRIPTION This module helps you generate documentation automagically. Not source code needed! Most of it is outsourced from a black hole. =end DESCRIPTION =begin SYNOPSIS =begin code use Doc::Magic; my Doc::Magic $doc .= new(); my $result = $doc.create-documentation($fh); =end code =end SYNOPSIS =AUTHOR Authorius Docus =VERSION 42 In addition, the language is also multi-paradigmatic N Enter your name K Hello, T Raku makes considerable use of the E<171> and E<187> characters. Raku makes considerable use of the E and E characters. raku --doc=TARGET input.pod6 > output.html raku --doc=Markdown input.pod6 > output.html my %used-directives; for $=pod -> $pod-item { for $pod-item.contents -> $pod-block { next unless $pod-block ~~ Pod::Block::Named; %used-directives{$pod-block.name} = True; } } say %used-directives.keys.join("\n"); SYNOPSIS NAME VERSION AUTHOR DESCRIPTION