My pride for Image::DecodeQR::WeChat I have just submitted on CPAN inspired
this blitz-style QR japh. Lame as it may be, enjoy.

Said module is my first to use XS and a significant milestone for
me as I have managed finally to port OpenCV API into Perl.

It's been adjusted for PM's rendering particularities and hopefully copy+pasting
the text from the Download link will produce the correct output.
Tested on a Linux unicode-enabled terminal. If there is no download link for below code
then click on Download code below
https://perlmonks.org/?node_id=11142119;displaytype=displaycode

If anyone has suggestions on how to fix this monstrosity
between code tags let me know
(edit: pre tags shows the unicode but breaks other things).
Apropos the QR-code below: ideally I would just use the black brick
and a white space but unfortunately whatever i do the space gets shrinked
i tried various unicode spaces but nothing worked, they all got shrinked
below I am using a thin horizontal line as space which will most likely
confuse the decoder.

██████████████▁▁▁▁▁▁██▁▁▁▁▁▁██████▁▁██████████████
██▁▁▁▁▁▁▁▁▁▁██▁▁██████▁▁▁▁▁▁▁▁████▁▁██▁▁▁▁▁▁▁▁▁▁██
██▁▁██████▁▁██▁▁██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██▁▁██████▁▁██
██▁▁██████▁▁██▁▁▁▁██▁▁▁▁██▁▁██▁▁▁▁▁▁██▁▁██████▁▁██
██▁▁██████▁▁██▁▁██████▁▁██▁▁██████▁▁██▁▁██████▁▁██
██▁▁▁▁▁▁▁▁▁▁██▁▁██▁▁██▁▁████████▁▁▁▁██▁▁▁▁▁▁▁▁▁▁██
██████████████▁▁██▁▁██▁▁██▁▁██▁▁██▁▁██████████████
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██▁▁████▁▁▁▁▁▁▁▁██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
████▁▁██▁▁▁▁████▁▁▁▁▁▁████████▁▁▁▁▁▁██████▁▁████▁▁
████▁▁██████▁▁██████▁▁██████▁▁▁▁██████▁▁▁▁██▁▁▁▁██
▁▁▁▁▁▁▁▁▁▁▁▁██████▁▁▁▁████████▁▁██▁▁▁▁████████████
▁▁▁▁▁▁▁▁██▁▁▁▁██████████████▁▁████▁▁▁▁▁▁██▁▁▁▁██▁▁
▁▁▁▁████▁▁████████▁▁████▁▁██▁▁▁▁████████▁▁██▁▁████
▁▁▁▁████████▁▁██▁▁██▁▁██▁▁▁▁▁▁▁▁▁▁██████▁▁▁▁██▁▁██
██▁▁██▁▁██▁▁██▁▁████▁▁██▁▁██▁▁▁▁██▁▁██████▁▁██▁▁██
▁▁██▁▁▁▁▁▁▁▁▁▁▁▁▁▁██████▁▁██████▁▁▁▁▁▁▁▁████▁▁████
████▁▁██▁▁████▁▁██▁▁██▁▁██▁▁▁▁▁▁██████████▁▁██▁▁▁▁
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██████▁▁██▁▁██▁▁██▁▁▁▁▁▁████▁▁▁▁▁▁
██████████████▁▁████▁▁████████▁▁██▁▁██▁▁██▁▁██████
██▁▁▁▁▁▁▁▁▁▁██▁▁▁▁████▁▁██▁▁██▁▁██▁▁▁▁▁▁██▁▁████▁▁
██▁▁██████▁▁██▁▁▁▁████▁▁██████▁▁██████████▁▁▁▁██▁▁
██▁▁██████▁▁██▁▁██▁▁▁▁██▁▁██▁▁██▁▁▁▁▁▁██████▁▁▁▁▁▁
██▁▁██████▁▁██▁▁▁▁▁▁▁▁▁▁████▁▁▁▁▁▁██▁▁▁▁████▁▁▁▁██
██▁▁▁▁▁▁▁▁▁▁██▁▁██▁▁▁▁██▁▁██▁▁████▁▁▁▁██▁▁▁▁▁▁▁▁▁▁
██████████████▁▁████▁▁▁▁▁▁██▁▁▁▁██▁▁▁▁██▁▁▁▁▁▁████

use utf8; eval join'', map{ $_->[0]=~s/[\x{2588}\n]//gr =~s/&#9608;//gr =~s/&amp;/&/gr =~s/&lt;/</gr =~s/&gt;/>/gr =~s/&#91;/[/gr =~s/&#93;/]/gr } ([<<'EOP']); &#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;use&#9608; &#9608;Tex +&#9608;t:&#9608;:&#9608;QRC&#9608;o&#9608;de&#9608;;&#9608; us&#9608;e&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608; &#9608; utf8&#9608;;&#9608; bi&#9608;n&#9608;&#9608;&#9608;m&#9608;od&#9608;&#9608;e&#9608;(&#9608 +;&#9608;&#9608;ST&#9608;D&#9608;O&#9608;UT&#9608;, ':e&#9608; &#9608;n&#9608;&#9608;&#9608;c&#9608;od&#9608;ing&#9608;&#9608;(&#9608 +;&#9608;utf8)'&#9608;&#9608;)&#9608;&#9608;&#9608;; &#9608;&#9608;m&#9608;y &#9608;@&#9608;&#9608;&#9608;a&#9608; &#9608; &#9608;&#9608;&#9608;=&#9608; &#9608;&#9608;m&#9608;ap &#9608; +&#9608;&#9608;&#9608;{&#9608;&#9608;&#9608;&#9608; &#9608;&#9608;&amp +;#91;spl&#9608;i&#9608;t&#9608;&#9608;/&#9608;/&#9608;&#9608;&#9608;, +&#9608; &#9608;$&#9608;&#9608;&#9608;_&#9608;&amp;#93; } &#9608;split("&#9608; +&#9608;&#9608;&#9608;&#9608;&#9608; ",&#9608;&#9608;&#9608;&#9608; "& +#9608;&#9608;&#9608;a&#9608;n&#9608;&#9608;&#9608;o&#9608; &#9608;phele&#9608;s&#9608;&#9608; &#9608;cog&#9608;&#9608;, t&#9608;r +ue&#9608; &#9608;a&#9608;rcho&#9608;n of&#9608; junk&#9608; &#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;"&#9608;)&#9608;;&#96 +08; &#9608; &#9608;p&#9608;r&#9608;i&#9608;n&#9608;t&#9608; &#9608;j&#9608;o&#9608 +;i&#9608;n&#9608; &#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608; "\n", map&#9608;&#9608; &#9608;{ &#9608; y&#9608;/* &#9608;&#9608;/&#9608;&#9608;\&#9608;x&#9608 +;{2&#9608;588}\x{25 &#9608;&#9608;&#9608;&#9608;&#9608;9&#9608;&#9608;&#9608;&#9608;&#9608 +;&#9608;1}/; &#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608; +&#9608;$_ &#9608;&#9608;} map&#9608; &#9608;{&#9608; &#9608;j oi&#9608;&#9608;n '', &#9608;ma&#9608;p&#9608; &#9608;{ $&#9608;_&#960 +8;.&#9608;$&#9608;_&#9608;&#9608;&#9608;&#9608;&#9608; &#9608;&#9608; +&#9608;} &#9608;@&#9608;&#9608;&#9608; &#9608;&#9608;$_&#9608; &#9608;}&#9608; @{Te&#9608;xt::Q&#9608;&#9608; +R&#9608;&#9608;C&#9608;&#9608;ode&#9608;&#9608;&#9608;&#9608;&#9608;& +#9608;-&#9608;&#9608;&amp;gt;&#9608;n&#9608;e w(&#9608;&#9608;)-&amp;gt;plo&#9608;t( &#9608;&#9608; j&#9608;oin &#9608;&#9608;&#9608;&#9608;&#9608;&#960 +8;&#9608;""&#9608;&#9608;,&#9608;&#9608;&#9608; &#9608;&#9608;&#9608; +&#9608;&#9608;&#9608; &#9608;&#9608;&#9608;ma&#9608;&#9608;p {&#9608; &#9608; &#9608;&#9608;&#9608;&#9608;j&#9608;o&#9608;i&#9608;n(" +"&#9608;,&#9608;@&#9608;$_)&#9608; =~ m&#9608;&#9608; (&amp;#91;&#9608;&#9608;&#9608;^^&#9608;&#9608;&#9608;&amp;gt;&amp;gt; +&amp;#93;*&#9608;(.)(&#9608;.&#9608;)(.)&amp;#91;&amp;lt;&#9608;&#960 +8;&#9608;&amp;lt;&#9608;^^&#9608;&#9608;&amp;#93;?(oO&#9608;(&#9608; i&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;ou&#9608;uu&#9608;&# +9608;u)&#9608;&#9608;&#9608;&#9608;)&#9608;?&#9608;)&#9608;&#9608; &# +9608;an&#9608;&#9608;&#9608;&#9608;d &#9608; j&#9608;&#9608;o i&#9608;&#9608;&#9608;n "&#9608;&#9608;"&#9608;&#9608;&#9608;,&#9608; +m&#9608;&#9608;&#9608;ap &#9608;{&#9608;&#9608; &#9608;($1&#9608;&#96 +08;+&#9608;$&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;3= &#9608;=&#9608;&#9608;&#9608;&#9608;&#9608;4-&#9608;$&#9608;&#9608;&#9 +608;&#9608;&#9608;2&#9608;&#9608;&#9608;)&#9608;&#9608;&#9608;&#9608; + ? " "&#9608; &#9608;:&#9608; &#9608;&#9608;(42%11 -$&#9608;&#9608;2&#9608;==&#9608;$1+$3) &#9608;? uc : l&#9608;c &#9608 +;&#9608;&#9608;} ($&#9608;&#9608;&#9608;a&#9608;&amp;#91;&#9608;$2&#9 +608; &#9608;&amp;#93;&#9608;-&amp;gt;&amp;#91;&#9608;&#9608;&#9608;$3&amp;# +93;&#9608;) &#9608;&#9608;&#9608; }&#9608;&#9608; &#9608;&#9608;m&#9608;a&#9608 +;&#9608;p {&#9608;&#9608; &amp;#91;m&#9608;&#9608;$&#9608;&amp;#91;&# +9608;9 &#9608;50&#9608;618371&#9608;&#9608;&#9608;&#9608;&amp;gt;&amp;gt;&#96 +08;&#9608;!&#9608;42!&amp;lt;&#9608;&amp;lt;1&#9608;&#9608;7&#9608;38 +6&#9608;1&#9608;059&#9608;&#9608;&#9608;&amp;#93;&#9608; &#9608;$&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608 +;g&amp;#93;&#9608; }&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608; +&#9608;&#9608; "450&#9608;222&#9608;5&#9608;&#9608;&#9608;&#9608;&#96 +08;08&#9608;&#9608; 5&#9608;&#9608;&#9608;&#9608;201&#9608;0&#9608;350&#9608;0101&#9608;&# +9608;302&#9608;&#9608;3&#9608;2&#9608;&#9608;&#9608;&#9608;07&#9608;& +#9608;331&#9608;051&#9608; 31&#9608;&#9608;&#9608;2&#9608;2&#9608;06&#9608;&#9608;03&#9608;&#9608 +;&#9608;1&#9608;&#9608;2&#9608;3&#9608;&#9608;&#9608;&#9608;2315&#960 +8;&#9608;&#9608;&#9608;&#9608;0&#9608;6&#9608;4&#9608;00 5&#9608;&#9608;3&#9608;370&#9608;07&#9608;&#9608;&#9608;1&#9608;&#9608 +;03&#9608;&#9608;531&#9608;&#9608;2&#9608;&#9608;&#9608;&#9608;3&#960 +8;&#9608;33&#9608;1" &#9608;&#9608;&#9608;&#9608;&#9608; &#9608;=&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608;&#9608 +;~&#9608; m$x&#9608;&#9608;?&#9608;&#9608;&#9608;&#9608;&#9608;&#9608 +;.y?&#9608;&#9608;.z?.&amp;#91;&#9608;&#9608;&#9608;&#9608;&#9608;wro +n &#9608;&#9608;g&#9608;&amp;#93;&#9608;?$&#9608;&#9608;&#9608;&#9608;g& +#9608; &#9608;)} EOP

here is the more readable japh (Above I am "shaping" perl script as a QR code):

use Text::QRCode; use utf8; binmode(STDOUT, ':encoding(utf8)'); binmode(STDERR, ':encoding(utf8)'); my @a = map { [split//,$_] } split(" ", "anopheles cog, true archon of + junk"); print join "\n", map { y/* /\x{2588}\x{2591}/; $_ } map { join undef, map { $_.$_ } @$_ } @{Text::QRCode->new()->plo +t( join "", map { join("",@$_) =~ m([^^>>]*(.)(.)(.)[<<^^]?(oO(iouuuu))?) and join "", map { ($1+$3==4-$2) ? " " : (42%11-$2==$1+$3) ? uc : +lc } ($a[$2]->[$3]) } map { [m$[950618371>>!42!<<173861059]$g] } "45022250852010350010130232073310513122060312323150640053370 +0710353123331" =~ m$x?.y?.z?.[wrong]?$g )} ;

bw, bliako


In reply to Shameless plug and QR japh by bliako

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.