#
# boxes - Command line filter to draw/remove ASCII boxes around text
# Copyright (c) 1999-2024 Thomas Jensen and the boxes contributors
#
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public
# License, version 3, as published by the Free Software Foundation.
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
# details.
# You should have received a copy of the GNU General Public License along with this program.
# If not, see <https://www.gnu.org/licenses/>.
#
# ___________________________________________________________________________________________________________________
#
# Character Encoding:  UTF-8
# Syntax of this file: https://boxes.thomasjensen.com/config-syntax.html
#
#====================================================================================================================


BOX c

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "programming", "box")

sample
    /*************/
    /*           */
    /*           */
    /*************/
ends

shapes {
    nw ("/*") n ("*") ne ("*/")
     w ("/*")          e ("*/")
    sw ("/*") s ("*") se ("*/")
}

delim ?"
replace "\*/" with "*\\/"         # escape closing comment tags
reverse "\*\\/" to "*/"

padding {
    horiz 1
}

elastic (n,e,s,w)

END c


# ============================================================================


BOX parchment

author   "Thomas Jensen"
tags     ("artwork", "box", "scroll")

sample
     ________________________
    /\                       \
    \_|                       |
      |                       |
      |                       |
      |   ____________________|_
       \_/_____________________/
ends

shapes {
    nw  (" __")
    nnw ()
    wnw ("/\\ ", "\\_|")
    w   ("  |")
    n   ("_")
    ne ("   ")
    ene ("\\  ")
    e   ("|  ")
    se  ("|_ ","__/")
    s   ("_","_")
    ssw ("   ", "\\_/")
    sw  ("  |","   ")
    ese ()
}

padding { top 1 h 1 }

elastic (n,e,s,w)

END parchment


# ============================================================================


BOX columns

author   "Thomas Jensen"
tags     ("artwork", "box")

sample
     __^__                 __^__
    ( ___ )---------------( ___ )
     | / |                 | \ |
     | / |                 | \ |
     | / |                 | \ |
     |___|                 |___|
    (_____)---------------(_____)
ends

shapes {
    nw  (" __^__", "( ___ ") nnw (" ",")")
    n   (" ","-")
    nne (" ","(") ne  ("__^__ ", " ___ )")

    w   (" | / |")
    wsw (" |___|")

    e   ("| \\ | ")
    ese ("|___| ")

    sw  ("(_____") ssw (")")
    s   ("-")
    sse ("(") se  ("_____)")
}

elastic (n, e, w, s)

padding { horiz 1 }

END columns


# ============================================================================


BOX whirly

author   "Thomas Jensen"
tags     ("artwork", "box")

sample
     .+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.
    (                                                             )
     )                                                           (
    (                                                             )
     "+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"+.+"
ends

shapes {
    nw  (" .")
    wnw ("( ")
    w   (" )", "( ")
    sw  (" \"")
    n   ("+\"+.")
    ne  (". ")
    ene (" )")
    e   ("( ", " )")
    s   ("+.+\"")
    nne ("+\"+")
    sse ("+.+")
    se  ("\" ")
}

padding {
    horizontal 2
    vertical 1
}
elastic (n, w, s, e)

END whirly


# ============================================================================


BOX scroll

author   "Thomas Jensen"
tags     ("artwork", "box", "scroll", "large")

SAMPLE
     / ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \
    |  /~~\                                           /~~\  |
    |\ \   |                                         |   / /|
    | \   /|                                         |\   / |
    |  ~~  |                                         |  ~~  |
    |      |                                         |      |
    |      |                                         |      |
    |      |                                         |      |
    |      |                                         |      |
    |      |                                         |      |
     \     |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|     /
      \   /                                           \   /
       ~~~                                             ~~~
ENDS

delimiter ?"
shapes {
    ne  ("~~~~~ \ ")
    ene (" /~~\  |",
         "|   / /|",
         "|\   / |",
         "|  ~~  |")
    e   ("|      |")
    se  ("|     / ",
         " \   /  ",
         "  ~~~   ")

    nw  (" / ~~~~~")
    wnw ("|  /~~\ ",
         "|\ \   |",
         "| \   /|",
         "|  ~~  |")
    w   ("|      |")
    sw  (" \     |",
         "  \   / ",
         "   ~~~  ")

    n   ("~")
    s   ("~"," "," ")
}

eLAStic (n, s, e, w)

padding { h 2 v 1 }

END scroll


# ============================================================================


BOX simple

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "box")

sample
    *************
    *           *
    *           *
    *************
ends

shapes { nw ("*") ne ("*") sw ("*") se ("*")
         n  ("*") e  ("*") s  ("*") w  ("*")
}

padding { horiz 1 }

elastic (n,e,s,W)

END simple


# ============================================================================


BOX c-cmt

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    /*                               */
    /*     regular C language        */
    /*     comments                  */
    /*                               */
ends

shapes {
    w ("/*")
    e ("*/")
}

replace "\\*\\/" with "*\\\\/"               # quote closing comment tags
reverse "\\*\\\\/" to "*\\/"

Padding { h 1 }

elastic (e, w)

END c-cmt


# ============================================================================


BOX c-cmt2

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    /*
     *  regular C language
     *  comments
     */
ends

shapes {
    nw ("/*")
     w (" *")
    sw (" *") ssw ("/") s (" ")          # note that S must be defined!
}

padding { left 2 }

delimiter ?"
replace "\*\/" with "*\\/"                 # quote closing comment tags
reverse "\*\\/" to "*\/"

elastic (s, w)

END c-cmt2


# ============================================================================


BOX javadoc

author   "Ted Berg <tedberg@spiritone.com>"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    /**
     *  Javadoc Comments
     *
     */
ends

shapes {
    nw ("/*") nnw ("*") n (" ")
     w (" *")
    sw (" *") ssw ("/") s (" ")
}

padding { left 1 }

delimiter ?"
replace "\*\/" with "*\\/"                 # quote closing comment tags
reverse "\*\\/" to "*\/"

elastic (s, w, n)

END javadoc


# ============================================================================


BOX html

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "programming", "box")

sample
    <!-- - - - - - - - - - - -->
    <!--                     -->
    <!--                     -->
    <!--                     -->
    <!-- - - - - - - - - - - -->
ends

shapes {
    nw ("<!--") nnw (" ") n ("- ") ne ("-->")
     w ("<!--")                     e ("-->")
    sw ("<!--") ssw (" ") s ("- ") se ("-->")
}

padding { h 1 }

delim ?"
replace "-->" with "-\\-\\>"
reverse "-\\-\\>" to "-->"

elastic (n,e,s,w)

END html


# ============================================================================


BOX html-cmt

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    <!--                                     -->
    <!-- regular comments used in HTML files -->
    <!--                                     -->
ends

shapes {
     w ("<!--")
     e ("-->")
}

elastic (e, w)

padding { h 1 }

delim ?"
replace "-->" with "-\\-\\>"
reverse "-\\-\\>" to "-->"

END html-cmt


# ============================================================================


BOX shell

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "programming", "box")

sample
    #############
    #           #
    #           #
    #############
ends

shapes {
    nw ("#") n ("#")
    se ("#") e ("#")
    sw ("#") s ("#")
    ne ("#") w ("#")
}

padding { h 1 }

elastic (n,s,e, w)

END shell


# ============================================================================


BOX nuke

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box")

sample
                            _ ._  _ , _ ._
                          (_ ' ( `  )_  .__)
                        ( (  (    )   `)  ) _)
                       (__ (_   (_ . _) _) ,__)
                           `~~`\ ' . /`~~`
                           ,::: ;   ; :::,
                          ':::::::::::::::'
     _________________jgs______/_ __ \________________________
    |                                                         |
    |                 BAD, BAD, BUG HERE :-)                  |
    |_________________________________________________________|
ends

shapes {
    nw  (" "," "," "," "," "," "," "," ")
    ne  (" "," "," "," "," "," "," "," ")
    nnw (" "," "," "," "," "," "," ","_")
    nne (" "," "," "," "," "," "," ","_")
    n   ("      _ ._  _ , _ ._     ",
         "    (_ ' ( `  )_  .__)   ",
         "  ( (  (    )   `)  ) _) ",
         " (__ (_   (_ . _) _) ,__)",
         "     `~~`\\ ' . /`~~`     ",
         "     ,::: ;   ; :::,     ",
         "    ':::::::::::::::'    ",
         "jgs______/_ __ \\_________")
    w   ("|")              e ("|")
    sw  ("|")   s ("_")   se ("|")
}

padding {
    all 1
    bottom 0
}

elastic (nne,nnw, s, e, w)

END nuke


# ============================================================================


BOX diamonds

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box")

Sample
           /\          /\          /\          /\
        /\//\\/\    /\//\\/\    /\//\\/\    /\//\\/\
     /\//\\\///\\/\//\\\///\\/\//\\\///\\/\//\\\///\\/\
    //\\\//\/\\///\\\//\/\\///\\\//\/\\///\\\//\/\\///\\
    \\//\/                                        \/\\//
     \/                                              \/
     /\                                              /\
    //\\      joan stark   spunk1111@juno.com       //\\
    \\//    http://www.geocities.com/SoHo/7373/     \\//
     \/                                              \/
     /\                                              /\
    //\\/\                                        /\//\\
    \\///\\/\//\\\///\\/\//\\\///\\/\//\\\///\\/\//\\\//
     \/\\///\\\//\/\\///\\\//\/\\///\\\//\/\\///\\\//\/
        \/\\//\/    \/\\//\/    \/\\//\/    \/\\//\/
           \/          \/          \/     jgs  \/
Ends

delimiter ?"

shapes {
    nw  ("      ", "    /\", " /\//\", "//\\\/")
    nnw (" /\     ", "//\\/\  ", "\\///\\/", "/\/\\///")
    n   ("     /\     ", "  /\//\\/\  ", "\//\\\///\\/",
         "\\\//\/\\///")
    nne ("     /\ ", "  /\//\\", "\//\\\//", "\\\//\/\")
    ne  ("      ", "/\    ", "/\\/\ ", "\///\\")

    ene ("\/\\//", "   \/ ")
    e   ("   /\ ", "  //\\", "  \\//", "   \/ ")
    ese ("   /\ ", "/\//\\")

    wnw ("\\//\/",
         " \/   ")
    w   (" /\   ",
         "//\\  ",
         "\\//  ",
         " \/   ")
    wsw (" /\   ",
         "//\\/\")

    sw  ("\\///\",
         " \/\\/",
         "    \/",
         "      ")

    ssw ("\/\//\\\",
         "//\\\//\",
         "\\//\/  ",
         " \/     ")

    s   ("///\\/\//\\\",
         "/\\///\\\//\",
         "  \/\\//\/  ",
         "     \/     ")

    sse ("///\\/\/",
         "/\\///\\",
         "  \/\\//",
         "jgs  \/ ")

    se  ("/\\\//",
         "\//\/ ",
         "\/    ",
         "      ")
}

elastic (n,s,e, w)

END diamonds


# ============================================================================


BOX mouse

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box", "sign")

sample
                .--,       .--,
               ( (  \.---./  ) )
                '.__/o   o\__.'
                   {=  ^  =}
                    >  -  <
     ___________.""`-------`"".____________
    /                                      \
    \ o          joan stark        O       /
    /          spunk1111@juno.com          \
    \          ascii art gallery           /
    / http://www.geocities.com/SoHo/7373/  \
    \______________________________________/
                  ___)( )(___  jgs
                 (((__) (__)))
ends

shapes {
    nnw (" ", " ", " ", " ", " ", "_")
    nne (" ", " ", " ", " ", " ", "_")
    ne  (" ", " ", " ", " ", " ", " ")
    nw  (" ", " ", " ", " ", " ", " ")

    sw  ("\\", " ", " ")
    se  ("/", " ", " ")
    ene ("\\")
    wnw ("/")
    e   ("/","\\")
    w   ("\\","/")
    n (" .--,       .--, ",
       "( (  \\.---./  ) )",
       " '.__/o   o\\__.' ",
       "    {=  ^  =}    ",
       "     >  -  <     ",
       "_.\"\"`-------`\"\"._")

    s ("_____________________",
       "     ___)( )(___  jgs",
       "    (((__) (__)))    ")

    ssw ("_"," "," ")
    sse ("_"," "," ")
}

elastic (nne,nnw, sse,ssw, e, w)

padding {
    top 1
    horiz 1
}

END mouse


# ============================================================================


BOX sunset

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box")

sample
                               .
                          .    |    .
                           \   |   /
                       '.   \  '  /   .'
                         '. .'```'. .'
     <>.............:::::::`.......`:::::::................<>
     <>:   ., .., . . .  . .  .  .  .  .  . joan stark    :<>
     <>:  :,  :.' : : :`.: :.'  `: `: `: `:  spunk1111    :<>
     <>:  ,.; :   `.' : `: : `.  :  :  :  :   @juno.com   :<>
     <>:..................................................:<> jgs
     <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
ends

shapes {
    e (":<>    ")
    w ("<>:")
    sw ("<>:", "<><")
    se (":<> jgs", "><>    ")
    s ("..", "><")
    nw ("   ", "   ", "   ", "   ", "   ", "<>.")
    ne ("       ", "       ", "       ", "       ", "       ", ".<>    ")
    nnw (" ", " ", " ", " ", " ", ".")
    nne (" ", " ", " ", " ", " ", ".")
    n ("           .           ",
       "      .    |    .      ",
      "       \\   |   /       ",
      "   '.   \\  '  /   .'   ",
       "     '. .'```'. .'     ",
       ":::::::`.......`:::::::")
}

padding {
    horizontal 2
    vertical 1
}
elastic (nne,nnw, s, e, w)

END sunset


# ============================================================================


BOX boy

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box", "sign")

sample
                    .-"""-.
                   / .===. \
                   \/ 6 6 \/
                   ( \___/ )
      _________ooo__\_____/______________
     /                                   \
    |   joan stark   spunk1111@juno.com   |
    |     VISIT MY ASCII ART GALLERY:     |
    | http://www.geocities.com/SoHo/7373/ |
     \_______________________ooo_________/
                    |  |  |
                    |_ | _|
                    |  |  |
                    |__|__|  jgs
                    /-'Y'-\
                   (__/ \__)
ends

shapes {
    e   (" |")
    w   ("| ")
    sw  (" \\", "  ", "  ", "  ", "  ", "  ", "  ")
    se  ("/ ", "  ", "  ", "  ", "  ", "  ", "  ")
    ssw ("_", " ", " ", " ", " ", " ", " ")
    sse ("_", " ", " ", " ", " ", " ", " ")
    nw  ("  ", "  ", "  ", "  ", "  ")
    nnw (" ", " ", " ", " ", "_")
    nne (" ", " ", " ", " ", "_")
    ne ("  ", "  ", "  ", "  ", "  ")
    ene ("\\ ")
    wnw (" /")
    n ("     .-\"\"\"-.     ",
       "    / .===. \\    ",
       "    \\/ 6 6 \\/    ",
       "    ( \\___/ )    ",
       "ooo__\\_____/_____")
    s ("______________ooo",
       "     |  |  |     ",
       "     |_ | _|     ",
       "     |  |  |     ",
       "     |__|__|  jgs",
       "     /-'Y'-\\     ",
       "    (__/ \\__)    ")
}

padding { top 1 }

#elastic (n,s,e, w)        # then we'd have to call this "boys"
elastic (nne,nnw, sse,ssw, e, w)

END boy


# ============================================================================


BOX girl

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box", "sign")

sample
                    .-"""-.
                   / .===. \
                  / / a a \ \
                 / ( \___/ ) \
      ________ooo\__\_____/__/___________
     /                                   \
    |   joan stark   spunk1111@juno.com   |
    |     VISIT MY ASCII ART GALLERY:     |
    | http://www.geocities.com/SoHo/7373/ |
     \________________________ooo________/
                 /           \
                /:.:.:.:.:.:.:\
                    |  |  |
                    \==|==/  jgs
                    /-'Y'-\
                   (__/ \__)
ends

shapes {
    n   ("      .-\"\"\"-.      ",
         "     / .===. \\     ",
         "    / / a a \\ \\    ",
         "   / ( \\___/ ) \\   ",
         "ooo\\__\\_____/__/___",
         "                   ")
    s   ("________________ooo",
         "   /           \\   ",
         "  /:.:.:.:.:.:.:\\  ",
         "      |  |  |      ",
         "      \\==|==/  jgs ",
         "      /-'Y'-\\      ",
         "     (__/ \\__)     ")
    e   (" |")
    w   ("| ")
    sw  (" \\", "  ", "  ", "  ", "  ", "  ", "  ")
    se  ("/ ", "  ", "  ", "  ", "  ", "  ", "  ")
    ssw ("_", " ", " ", " ", " ", " ", " ")
    sse ("_", " ", " ", " ", " ", " ", " ")
    nw  ("  ", "  ", "  ", "  ", "  ", " /")
    nnw (" ", " ", " ", " ", "_", " ")
    nne (" ", " ", " ", " ", "_", " ")
    ne ("  ", "  ", "  ", "  ", "  ", "\\ ")
}

elastic (nne,nnw, sse,ssw, e, w)

END girl


# ============================================================================


BOX xes

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box")

sample
            <\/><\/><\/>
        <\/></\></\></\><\/>
        </\>            </\>
     <\/>                  <\/>
     </\>                  </\>
    <\/>                    <\/>
    </\>                    </\>
     <\/>                  <\/>
     </\>                  </\>
        <\/>            <\/>
        </\><\/><\/><\/></\>
    jgs     </\></\></\>
ends

delim ?"

shapes {
    nw  ("     ", "    <", "    <")
    nnw ("   ", "\/>", "/\>")
    n   ("<\/>", "</\>", "    ")
    nne ("   ", "<\/", "</\")
    ne  ("     ", ">    ", ">    ")
    wnw (" <\/>", " </\>")
    w   ("<\/> ", "</\> ")
    wsw (" <\/>", " </\>")
    sw  ("    <", "    <", "jgs  ")
    ssw ("\/>", "/\>", "   ")
    s   ("    ", "<\/>", "</\>")
    sse ("<\/", "</\", "   ")
    se  (">    ", ">    ", "     ")
    ese ("<\/> ", "</\> ")
    e   (" <\/>", " </\>")
    ene ("<\/> ", "</\> ")
}

padding {
    horizontal 1
}
elastic (n, e, s, w)

END xes


# ============================================================================


BOX dog

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box", "sign")

sample
                __   _,--="=--,_   __
               /  \."    .-.    "./  \
              /  ,/  _   : :   _  \/` \
              \  `| /o\  :_:  /o\ |\__/
               `-'| :="~` _ `~"=: |
                  \`     (_)     `/ jgs
           .-"-.   \      |      /   .-"-.
    .-----{     }--|  /,.-'-.,\  |--{     }-----.
     )    (_)_)_)  \_/`~-===-~`\_/  (_(_(_)    (
    (                joan  stark                )
     )          < spunk1111@juno.com >         (
    (             ASCII ART GALLERY:            )
     ) < http://www.geocities.com/SoHo/7373/ > (
    '-------------------------------------------'
ends

shapes {
    nnw (" ", " ", " ", " ", " ", " ", " ", "-", " ")
    nne (" ", " ", " ", " ", " ", " ", " ", "-", " ")
    nw  ("   ", "   ", "   ", "   ", "   ", "   ", "   ", ".--", " ) ")
    ne  ("   ", "   ", "   ", "   ", "   ", "   ", "   ", "--.", " ( ")
    w   ("(  ", " ) ")
    e   ("  )", " ( ")
    sw  ("'--")
    se  ("--'")
    s   ("-")
    n   ("      __   _,--=\"=--,_   __      ",
         "     /  \\.\"    .-.    \"./  \\     ",
         "    /  ,/  _   : :   _  \\/` \\    ",
         "    \\  `| /o\\  :_:  /o\\ |\\__/    ",
         "     `-'| :=\"~` _ `~\"=: |        ",
         "        \\`     (_)     `/ jgs    ",
         " .-\"-.   \\      |      /   .-\"-. ",
         "{     }--|  /,.-'-.,\\  |--{     }",
         "(_)_)_)  \\_/`~-===-~`\\_/  (_(_(_)")
}

elastic (nnw, nne,e,s,w)

END dog


# ============================================================================


BOX cat

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box", "sign")

sample
                  /\             /\
                 |`\\_,--="=--,_//`|
                 \ ."  :'. .':  ". /
                ==)  _ :  '  : _  (==
                  |>/O\   _   /O\<|
                  | \-"~` _ `~"-/ |   jgs
                 >|`===. \_/ .===`|<
           .-"-.   \==='  |  '===/   .-"-.
    .-----{'. '`}---\,  .-'-.  ,/---{.'. '}-----.
     )    `"---"`     `~-===-~`     `"---"`    (
    (                 joan  stark               )
     )           < spunk1111@juno.com >        (
    (              ASCII ART GALLERY:           )
     ) < http://www.geocities.com/SoHo/7373/ > (
    '-------------------------------------------'
ends

shapes {
    nnw (" ", " ", " ", " ", " ", " ", " ", " ", "-", " ")
    nne (" ", " ", " ", " ", " ", " ", " ", " ", "-", " ")
    nw  ("   ", "   ", "   ", "   ", "   ", "   ", "   ", "   ", ".--", " ) ")
    ne  ("   ", "   ", "   ", "   ", "   ", "   ", "   ", "   ", "--.", " ( ")
    w   ("(  ", " ) ")
    e   ("  )", " ( ")
    sw  ("'--")
    se  ("--'")
    s   ("-")
    n  ("        /\\             /\\        ",
        "       |`\\\\_,--=\"=--,_//`|       ",
        "       \\ .\"  :'. .':  \". /       ",
        "      ==)  _ :  '  : _  (==      ",
        "        |>/O\\   _   /O\\<|        ",
        "        | \\-\"~` _ `~\"-/ |   jgs  ",
        "       >|`===. \\_/ .===`|<       ",
        " .-\"-.   \\==='  |  '===/   .-\"-. ",
        "{'. '`}---\\,  .-'-.  ,/---{.'. '}",
        "`\"---\"`     `~-===-~`     `\"---\"`")
}

elastic (nnw, nne,e,s,w)

END cat


# ============================================================================


BOX capgirl

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box", "sign")

sample
                    .-"```"-.
                   /_______; \
                  (_________)\|
                  / / a a \ \(_)
                 / ( \___/ ) \
      ________ooo\__\_____/__/___________
     /                                   \
    |   joan stark   spunk1111@juno.com   |
    |     VISIT MY ASCII ART GALLERY:     |
    |      http://www.ascii-art.com       |
     \________________________ooo________/
                 /           \
                /:.:.:.:.:.:.:\
                    |  |  |
                    \==|==/  jgs
                    /-'Y'-\
                   (__/ \__)
ends

shapes {
    n   ("      .-\"```\"-.    ",
         "     /_______; \\   ",
         "    (_________)\\|  ",
         "    / / a a \\ \\(_) ",
         "   / ( \\___/ ) \\   ",
         "ooo\\__\\_____/__/___",
         "                   ")
    s   ("________________ooo",
         "   /           \\   ",
         "  /:.:.:.:.:.:.:\\  ",
         "      |  |  |      ",
         "      \\==|==/  jgs ",
         "      /-'Y'-\\      ",
         "     (__/ \\__)     ")
    e   (" |")
    w   ("| ")
    sw  (" \\", "  ", "  ", "  ", "  ", "  ", "  ")
    se  ("/ ", "  ", "  ", "  ", "  ", "  ", "  ")
    ssw ("_", " ", " ", " ", " ", " ", " ")
    sse ("_", " ", " ", " ", " ", " ", " ")
    nw  ("  ", "  ", "  ", "  ", "  ", "  ", " /")
    nnw (" ", " ", " ", " ", " ", "_", " ")
    nne (" ", " ", " ", " ", " ", "_", " ")
    ne  ("  ", "  ", "  ", "  ", "  ", "  ", "\\ ")
}

elastic (nne,nnw, sse,ssw, e, w)

END capgirl


# ============================================================================


BOX santa

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box", "sign")

sample
                     .-"``"-.
                    /______; \
                   {_______}\|
                   (/ a a \)(_)
                   (.-.).-.)
      _______ooo__(    ^    )____________
     /             '-.___.-'             \
    |             joan stark              |
    |         spunk1111@juno.com          |
    |         ASCII ART GALLERY:          |
    |      http://www.ascii-art.com       |
     \________________________ooo________/
                   |_  |  _|  jgs
                   \___|___/
                   {___|___}
                    |_ | _|
                    /-'Y'-\
                   (__/ \__)
ends

shapes {
    n   ("        .-\"``\"-.    ",
         "       /______; \\   ",
         "      {_______}\\|   ",
         "      (/ a a \\)(_)  ",
         "      (.-.).-.)     ",
         "ooo__(    ^    )____",
         "      '-.___.-'     ")
    s   ("_________________ooo",
         "      |_  |  _|  jgs",
         "      \\___|___/     ",
         "      {___|___}     ",
         "       |_ | _|      ",
         "       /-'Y'-\\      ",
         "      (__/ \\__)     ")
    e   (" |")
    w   ("| ")
    sw  (" \\", "  ", "  ", "  ", "  ", "  ", "  ")
    se  ("/ ", "  ", "  ", "  ", "  ", "  ", "  ")
    ssw ("_", " ", " ", " ", " ", " ", " ")
    sse ("_", " ", " ", " ", " ", " ", " ")
    nw  ("  ", "  ", "  ", "  ", "  ", "  ", " /")
    nnw (" ", " ", " ", " ", " ", "_", " ")
    nne (" ", " ", " ", " ", " ", "_", " ")
    ne  ("  ", "  ", "  ", "  ", "  ", "  ", "\\ ")
}

elastic (nne,nnw, sse,ssw, e, w)

END santa


# ============================================================================


BOX spring

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork")

sample
          ,
      /\^/`\
     | \/   |
     | |    |               SPRING IS IN THE AIR!              jgs
     \ \    /                                                _ _
      '\\//'                                               _{ ' }_
        ||                      joan stark                { `.!.` }
        ||                  <spunk1111@juno.com>          ',_/Y\_,'
        ||  ,                                               {_,_}
    |\  ||  |\                                                |
    | | ||  | |              ASCII ART GALLERY:             (\|  /)
    | | || / /      <http://www.geocities.com/SoHo/7373/>    \| //
     \ \||/ /                                                 |//
      `\\//`   \\   \./    \\ /     //    \\./   \\   //   \\ |/ /
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ends

delim ?"

shapes {
    nw  ("      ,    ")
    wnw ("  /\^/`\   ",
         " | \/   |  ",
         " | |    |  ",
         " \ \    /  ",
         "  '\\//'   ")
    w   ("    ||     ")
    wsw ("    ||  ,  ",
         "|\  ||  |\ ",
         "| | ||  | |",
         "| | || / / ",
         " \ \||/ /  ")
    sw  ("  `\\//`   ",
         " ^^^^^^^^^^")
    ene ("         ",
         "         ",
         "     jgs ",
         "   _ _   ",
         " _{ ' }_ ",
         "{ `.!.` }",
         "',_/Y\_,'",
         "  {_,_}  ")
    e   ("    |    ")
    ese ("  (\|  /)",
         "   \| // ",
         "    |//  ")
    se  (" \\ |/ / ",
         "^^^^^^^^^")

    s   ("\   \./    \",
         "^^^^^^^^^^^^")
}

elastic (s,e,w)

END spring


# ============================================================================


BOX stark2

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box")

sample
    .:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@-:.
    .:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@-:.
    .:-@    ____        (_,      _,  _,  _,  _,                        @-:.
    .:-@   (-(__`,_    ,_ |_,     |   |   |   |    Spunk1111@juno.com  @-:.
    .:-@    ____)|_)|_|| || \__, _|_ _|_ _|_ _|_                       @-:.
    .:-@   (    _|       |_,                                           @-:.
    .:-@       (            ____,         ____        (_,              @-:.
    .:-@                   (-| _  _ ,_   (-(__`_|_ _ ,_ |_,            @-:.
    .:-@                  _  |(_)(_|| |   ____) | (_||  | \_,          @-:.
    .:-@                 (__/            (      |_,                    @-:.
    .:-@                                                               @-:.
    .:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@-:. jgs
    .:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@.:-@-:.
ends

shapes {
    nw  (".:-@", ".:-@")
    n   (".:-@", ".:-@")
    nne (".:-",  ".:-")
    ne  ("@-:.    ", "@-:.    ")
    e   ("@-:.    ")
    w   (".:-@")
    sw  (".:-@", ".:-@")
    s   (".:-@", ".:-@")
    sse (".:-",  ".:-")
    se  ("@-:. jgs", "@-:.    ")
}

padding {
    horizontal 2
    vertical 1
}
elastic (n,s,e, w)

END stark2


# ============================================================================


BOX stark1

author   "Thomas Jensen"
designer "Joan G. Stark <spunk1111@juno.com>"
tags     ("artwork", "box")

sample
    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    ^   -,                ,-. .          .    ^
    ^    | ,-. ,-. ;-.    `-, |- ,-. ;-. | '  ^
    ^  , | | | ,-| | |    , ; |  ,-| |   |`.  ^
    ^  `-' `-' `-^ ' ^    `-' `- `-^ '   ` `  ^
    ^          Spunk1111@juno.com             ^
    ^      ,-.             .   . . . .        ^
    ^      `-, ;-. . . ;-. | ' | | | |        ^
    ^      , ; | | | | | | |`. | | | |        ^
    ^      `-' |-' `-^ ' ^ ` ` ` ` ` `        ^
    ^          `                              ^
    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= jgs
ends

shapes {
    nw ("=") N ("-=") nne ("-") ne ("=    ")
    w  ("^")                     e ("^    ")
    sw ("=") ssw ("-") s ("=-") se ("= jgs")
}

padding {h 1}
elastic (n,s,e, w)

END stark1


# ============================================================================


BOX peek

author   "Thomas Jensen"
tags     ("programming", "box")

sample
    /*       _\|/_
             (o o)
     +----oOO-{_}-OOo---------------------+
     |                                    |
     | C function headers?                |
     |                                    |
     |                                    |
     +-----------------------------------*/
ends

shapes {
    nw  ("/*", "  ", " +")
    nnw ("       _\\|/_   ",
         "       (o o)   ",
         "----oOO-{_}-OOo")
    n   (" ", " ", "-")
    ne  (" ", " ", "+")
    e   ("|")
    w   (" |")
    sw  (" +")
    s   ("-")
    sse ("*")
    se  ("/")
}

replace "\\*\\/" with "*\\\\/"               # quote closing comment tags
reverse "\\*\\\\/" to "*\\/"

padding {h 1}
elastic (n,e,s,w)

END peek


# ============================================================================


BOX java-cmt

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    //
    // regular Java
    // comments
    //
ends

shapes {
     w ("//")
}

padding {lef 1}

elastic (w)

END java-cmt


# ============================================================================


BOX pound-cmt

author   "Thomas Jensen"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    #
    #  regular comments used in Perl, Shell scripts, etc.
    #
ends

shapes {
     w ("#")
}

padding { left 1}

elastic (w)

END pound-cmt


# ============================================================================


BOX vim-cmt

author   "Thomas Jensen"
designer "Bram Moolenaar"
tags     ("simple", "programming", "comment")

sample
    "
    " comments used in the vim editor's config file (.vimrc)
    "
ends

shapes {
     w ("\"")
}

padding {
    left 1
}

elastic ( w )

END vim-cmt


# ============================================================================


BOX right

author   "Thomas Jensen"
designer "Thomas Jensen"
tags     ("simple", "programming", "comment")

sample
    This can be used for marking code changes with your initials
    (I don't like it, but some people work this way):

    for (j=0; j<blank_count; ++j)        /* XX */
        fprintf (opt.outfile, "\n");     /* XX */
    blank_count = 0;                     /* XX */
ends

shapes {
    e ("/* XX */")
}

padding { right 4 }

elastic ( e )

END right


# ============================================================================


BOX ada-cmt, lua-cmt, sql-cmt

author   "Neil Bird <neil.bird@rdel.co.uk>"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    --
    -- regular Ada
    -- comments
    --
ends

shapes {
    w ("--")
}

padding {lef 1}

elastic (w)

END ada-cmt


# ============================================================================


BOX ada-box, lua-box, sql-box

author   "Neil Bird <neil.bird@rdel.co.uk>"
designer "(public domain)"
tags     ("simple", "programming", "box")

sample
    ---------------
    --           --
    --           --
    ---------------
ends

shapes {
    nw ("--") n ("-") ne ("--")
     w ("--")          e ("--")
    sw ("--") s ("-") se ("--")
}

padding {
    horiz 1
}

elastic (n,e,s,w)

END ada-box


# ============================================================================


BOX tex-cmt

author   "Nic H"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    %
    % regular TeX/LaTeX
    % comments
    %
ends

shapes {
    w ("%")
}

padding {lef 1}

elastic (w)

END tex-cmt


# ============================================================================


BOX tex-box

author   "Nic H"
designer "(public domain)"
tags     ("simple", "programming", "box")

sample
    %=============%
    % TeX is love %
    % Tex is life %
    %=============%
ends

shapes {
    nw ("%") n ("=") ne ("%")
     w ("%")          e ("%")
    sw ("%") s ("=") se ("%")
}

padding {
    horiz 1
}

elastic (n,e,s,w)

END tex-box


# ============================================================================


BOX boxquote

author   "Christian Molls <CMolls@gmx.net>"
designer "Christian Molls <CMolls@gmx.net>"
tags     ("simple", "artwork")

sample
    ,----[ mp3-wav ]
    | #!/bin/sh
    | # konvertiert im aktuellen Verzeichnis .mp3 in .wav
    | for i in *.mp3; do
    |   mpg123 -v  --stereo --rate 44100 -w "`basename "$i" .mp3`".wav "$i"
    | done
    `----
ends

shapes {
    nw (",")  nnw ("---- [  ]")  n (" ")
    w  ("|")
    sw ("`")  ssw ("----    ")   s (" ")
}

padding {
    horiz 1
}

elastic (w,n,s)

END boxquote


# ============================================================================


BOX cc

author   "Bas van Gils <bvg@linuxfan.com>"
designer "(public domain)"
tags     ("simple", "programming", "box")

sample
    /****************
     *              *
     *              *
     ****************/
ends

shapes {
    nw ("/*") n ("*") ne ("* ")
     w (" *")          e ("* ")
    sw (" *") s ("*") se ("*/")
}

delim ?"
replace "\*\/" with "*\\/"               # quote closing comment tags
reverse "\*\\/" to "*\/"

padding {
    horiz 1
}

elastic (n,e,s,w)

END cc


# ============================================================================


BOX stone

author   "Fredrik Steen <fsteen@stone.nu>"
designer "Fredrik Steen <fsteen@stone.nu>"
tags     ("simple", "artwork", "box")

sample
    +-------------+
    |    stone    |
    +-------------+
ends

shapes {
    nw ("+") n ("-") ne ("+")
     w ("|")          e ("|")
    sw ("+") s ("-") se ("+")
}

padding {
    horiz 1
}

elastic (n,e,s,w)

END stone


# ============================================================================


BOX headline

author   "Thomas Jensen"
designer "Thomas Jensen"
tags     ("programming", "box")

sample
    /*************/
    /*           */
    /*           */
    /*************/
ends

shapes {
    nw ("/*") n ("*") ne ("*/")
     w ("/*")          e ("*/")
    sw ("/*") s ("*") se ("*/")
}

delim ~"
replace "((?:\x1b\[[0-9;]*m)+(?!\x1b).(?!$))|((?:\x1b\[[0-9;]*m)+$)|([^\x1b](?!$))" with "$0 "
reverse "^        " to "          "
reverse "^      " to "        "
reverse "^    " to "      "
reverse "^  " to "    "
reverse "((?:\x1b\[[0-9;]*m)*(?!\x1b).) " to "$1"

padding {
    horizontal 2
}

elastic (n,e,s,w)

END headline


# ============================================================================


BOX lisp-cmt

author   "Vijay Lakshminarayanan <liyer.vijay@gmail.com>"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    ;;
    ;;  regular comments used in Lisp
    ;;
ends

shapes {
     w (";;")
}

padding { left 1 }

elastic (w)

END lisp-cmt


#============================================================================


BOX underline

author   "Elmar Loos <elInfo@gmx.net>"
designer "Elmar Loos <elInfo@gmx.net>"
tags     ("simple", "programming", "comment")

sample
    // Bla, foo bar!
    // ~~~~~~~~~~~~~
ends

shapes {
     w ("// ")
    sw ("// ") s ("~")
}

elastic (s,w)

END underline


#============================================================================


BOX ian_jones

author   "Karl E. Jorgensen <karl@jorgensen.com>"
tags     ("artwork", "box", "sign")

sample
                                \\\///
                               / _  _ \
                             (| (.)(.) |)
    .----------------------.OOOo--()--oOOO.-----------------.
    |                                                       |
    | Your Text Here Your Text Here Your Text Here Your Tex |
    | Your Text Here Your Text Here Your Text Here Your Tex |
    | Your Text Here Your Text Here Your Text Here Your Tex |
    | Your Text Here Your Text Here Your Text Here Your Tex |
    |                                                       |
    '--------------------.oooO------------------------------'
                          (   )   Oooo.
                           \ (    (   )
                            \_)    ) /
                                  (_/
ends

shapes {
    nw(" ",
       " ",
       " ",
       ".")
    w ("|")
    sw("'",
       " ",
       " ",
       " ",
       " ")

    nnw(" ",
        " ",
        " ",
        "-")
    n  ("     \\\\\\///     ",
        "    / _  _ \\    ",
        "  (| (.)(.) |)  ",
        ".OOOo--()--oOOO.")
    nne(" ",
        " ",
        " ",
        "-")

    ne (" ",
        " ",
        " ",
        ".")
     e ("|")
    se ("'",
        " ",
        " ",
        " ",
        " ")

    ssw("-",
        " ",
        " ",
        " ",
        " ")
     s (".oooO-----------",
        " (   )   Oooo.  ",
        "  \\ (    (   )  ",
        "   \\_)    ) /   ",
        "         (_/    ")
    sse("-",
        " ",
        " ",
        " ",
        " ")
}

elastic (w,e,nnw,nne,ssw,sse)

padding { all 1 }

END ian_jones


# ============================================================================


BOX unicornthink

author   "Mike Meyer <boxes@meyer.fm>"
tags     ("artwork", "speech")

sample
     _________________________________
    /                                 \
    |     E L E C T R O L Y T E S     |
    \______________________________ '\
                               ()    \\
                                 O    \\  .
                                   o  |\\/|
                                      / " '\
                                      . .   .
                                     /    ) |
                                    '  _.'  |
                                    '-'/    \
ends

shapes {
    nw  (" ")
    wnw ("/")
    w   ("|")
    sw  ("\\",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")

    n   ("_")

    s   ("_",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")

    ne  ("       ")
    ene ("\\      ")
    e   ("|      ")
    se  ("       ",
         "\\      ",
         "\\\\  .  ",
         "|\\\\/|  ",
         "/ \" '\\ ",
         ". .   .",
         "    ) |",
         " _.'  |",
         "'/    \\")

    sse ("____ '\\",
         "()    \\",
         "  O    ",
         "    o  ",
         "       ",
         "       ",
         "      /",
         "     ' ",
         "     '-")
}

elastic (n, s, e, w)

padding {
    horiz 2
    top 1
}

END unicornthink


# ============================================================================


BOX unicornsay

author   "Mike Meyer <boxes@meyer.fm>"
tags     ("artwork", "speech")

sample
     _________________________________
    /                                 \
    |     E L E C T R O L Y T E S     |
    \___________________________  __'\
                                |/   \\
                                 \    \\  .
                                      |\\/|
                                      / " '\
                                      . .   .
                                     /    ) |
                                    '  _.'  |
                                    '-'/    \
ends

shapes {
    nw  (" ",
         "/")
    n   ("_",
         " ")
    ne  ("__        ",
         "  \\       ")

    sw  ("\\",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")

    s   ("_",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")

    w   ("|")
    e   ("  |       ")
    se  ("'\\        ",
         " \\\\       ",
         "  \\\\  .   ",
         "  |\\\\/|   ",
         "  / \" '\\  ",
         "  . .   . ",
         " /    ) | ",
         "'  _.'  | ",
         "'-'/    \\ ")

    sse ("_  __",
         " |/  ",
         "  \\  ",
         "     ",
         "     ",
         "     ",
         "     ",
         "     ",
         "     ")
}

elastic (n, s, e, w)

padding {
    left 2
}

END unicornsay


# ============================================================================


BOX caml

author   "Michael Tiernan <Michael.Tiernan@gMail.com>"
designer "Michael Tiernan <Michael.Tiernan@gMail.com>"
tags     ("simple", "artwork", "box")

sample
    (*************)
    (*           *)
    (*           *)
    (*************)
ends

shapes {
    nw ("(*") n ("*") ne ("*)")
     w ("(*")          e ("*)")
    sw ("(*") s ("*") se ("*)")
}

elastic (n,e,s,w)

padding {
    horiz 1
}

replace "\\(\\*" with "(+*"
replace "\\*\\)" with "*+)"

reverse "\\(\\+\\*" to "(*"
reverse "\\*\\+\\)" to "*)"

END caml


# ============================================================================


BOX twisted

author   "Tristano Ajmone <tajmone@gmail.com>"
designer "Michael Naylor <mnaylor@math.fsu.edu>"
tags     ("artwork", "box", "large")

sample
    ._____. ._____. .________________________________________. ._____. ._____.
    | ._. | | ._. | | .____________________________________. | | ._. | | ._. |
    | !_| |_|_|_! | | !____________________________________! | | !_| |_|_|_! |
    !___| |_______! !________________________________________! !___| |_______!
    .___|_|_| |____________________________________________________|_|_| |___.
    | ._____| |________________________________________________________| |_. |
    | !_! | | |                                                    | | ! !_! |
    !_____! | | * * * * * * * * * * * TWISTED * * * * * * * * * *  | | !_____!
    ._____. | | -----------------------|-------------------------  | | ._____.
    | ._. | | | Just another cool ascii frame, brought to you by:  | | | ._. |
    | | | | | |                                                    | | | | | |
    | | | | | |              -~{ Tristano Ajmone }~-               | | | | | |
    | !_! | | | -----------------------|-------------------------  | | ! !_! |
    !_____! | | Derived from an ascii frame originally created by: | | !_____!
    ._____. | |                                                    | | ._____.
    | ._. | | |               -~{ Michael Naylor }~                | | | ._. |
    | !_| |_|_|____________________________________________________| |_|_|_! |
    !___| |________________________________________________________| |_______!
    .___|_|_| |___. .________________________________________. .___|_|_| |___.
    | ._____| |_. | | .____________________________________. | | ._____| |_. |
    | !_! | | !_! | | !____________________________________! | | !_! | | !_! |
    !_____! !_____! !________________________________________! !_____! !_____!
ends

shapes {

 NW ("._____. .__",
     "| ._. | | .",
     "| !_| |_|_|",
     "!___| |____",
     ".___|_|_| |",
     "| ._____| |")

WNW ("| !_! | | |",
     "!_____! | |",
     "._____. | |",
     "| ._. | | |")

  W ("| | | | | |")

WSW ("| !_! | | |",
     "!_____! | |",
     "._____. | |",
     "| ._. | | |")

 SW ("| !_| |_|_|",
     "!___| |____",
     ".___|_|_| |",
     "| ._____| |",
     "| !_! | | !",
     "!_____! !__")

NNW ("___. .___",
     "_. | | ._",
     "_! | | !_",
     "___! !___",
     "_________",
     "_________")

  N ("_",
     "_",
     "_",
     "_",
     "_",
     "_")

NNE ("___. .___",
     "_. | | ._",
     "_! | | !_",
     "___! !___",
     "_________",
     "_________")

 NE ("__. ._____.",
     ". | | ._. |",
     "| |_|_|_! |",
     "| |_______!",
     "|_|_| |___.",
     "____| |_. |")

ENE ("| | ! !_! |",
     "| | !_____!",
     "| | ._____.",
     "| | | ._. |")

  E ("| | | | | |")

ESE ("| | ! !_! |",
     "| | !_____!",
     "| | ._____.",
     "| | | ._. |")

 SE ("| |_|_|_! |",
     "| |_______!",
     "|_|_| |___.",
     "____| |_. |",
     "! | | !_! |",
     "__! !_____!")

  S ("_",
     "_",
     "_",
     "_",
     "_",
     "_")

SSE ("________",
     "________",
     "__. .___",
     ". | | ._",
     "! | | !_",
     "__! !___")

SSW ("_________",
     "_________",
     "___. .___",
     "_. | | ._",
     "_! | | !_",
     "___! !___")
}

padding {
    all 1
    bottom 0
}

elastic (n,e,s,w)

END twisted


# ============================================================================


BOX scroll-akn

author   "Tristano Ajmone <tajmone@gmail.com>"
designer "akn"
tags     ("artwork", "box", "scroll")

sample
     /"\/\_..---------------------------------._/\/"\
    (     _|| ||| Scroll-AKN...          ||| ||_     )
     \_/\/ || ------------------------------ || \/\_/
           || Original Design by "akn" (???) ||
           || Implemented in boxes by:       ||
           ||     -~{ Tristano Ajmone }~-    ||
     /"\/\_|----------------------------------|_/\/"\
    (     _|                                  |_     )
     \_/\/ `----------------------------------' \/\_/
ends

shapes {
    NW (" /\"\\/\\_..")
   WNW ("(     _||", " \\_/\\/ ||")
     W ("       ||")
    SW (" /\"\\/\\_|-", "(     _| ", " \\_/\\/ `-")

     N ("-")
     S ("-", " ", "-")

    NE ("-._/\\/\"\\ ")
   ENE ("||_     )", "|| \\/\\_/ ")
     E ("||       ")
    SE ("-|_/\\/\"\\ ", " |_     )", "-' \\/\\_/ ")
}

elastic (W,E,N,S)

padding {
    horizontal 1
    vertical 0
}

END scroll-akn


# ============================================================================


BOX face

author   "Dmitry Bolshakov <bdimych@protonmail.com>"
designer "Dmitry Bolshakov <bdimych@protonmail.com>"
tags     ("artwork", "box", "large")

sample
     .--(0)    (0)--.
    (       \/       )
    (     \____/     )
    (                )
    ( face face face )
    ( face face face )
     '--------------'
ends

shapes {
    nw (" .", "( ", "( ")
    nnw ("-", " ", " ")
    n (
      "(0)    (0)",
      "    \\/    ",
      "  \\____/  "
    )
    nne ("-", " ", " ")
    ne (". ", " )", " )")
    e (" )")
    se ("' ")
    s ("-")
    sw (" '")
    w ("( ")
}

padding { top 1 }

elastic (nnw, nne, e, s, w)

END face


# ============================================================================


BOX fence

designer "Dmitry Bolshakov <bdimych@protonmail.com>"
author   "Dmitry Bolshakov <bdimych@protonmail.com>"
tags     ("artwork", "box")

sample
     /\ /\ /\ /\ /\
    |__|__|__|__|__|
    |  |  |  |  |  |
    |  | fence  |  |
    |__|__|__|__|__|
    |__|__|__|__|__|
ends

delim @"

shapes {
    nw (   " /\ /"   ,
           "|__|_"   ,
           "|  | "   )
    w  (   "|  | "   )
    sw (   "|__|_"   ,
           "|__|_"   )

    ne (   "\ /\ "   ,
           "_|__|"   ,
           " |  |"   )
    e  (   " |  |"   )
    se (   "_|__|"   ,
           "_|__|"   )

    n (  "\ /"  ,
         "_|_"  ,
         " | "  )

    s (  "_|_"  ,
         "_|_"  )
}

elastic (n, e, s, w)

END fence


# ============================================================================


BOX important

designer "Dmitry Bolshakov <bdimych@protonmail.com>"
author   "Dmitry Bolshakov <bdimych@protonmail.com>"
tags     ("artwork", "box")

sample
     /\ !!!!!!!!!!! /\
    |! |           |! |
    |! | important |! |
    |__|           |__|
    (__)!!!!!!!!!!!(__)
ends

delim @"

shapes {
    nw (" /\ ")
    w  ("|! |")
    sw ("|__|",
        "(__)")

    ne (" /\ ")
    e  ("|! |")
    se ("|__|",
        "(__)")

    n ("!")
    s (" ", "!")
}

padding { left 1 top 1 right 1 }

elastic (n, e, s, w)

END important


# ============================================================================


BOX important2

designer "Dmitry Bolshakov <bdimych@protonmail.com>"
author   "Dmitry Bolshakov <bdimych@protonmail.com>"
tags     ("artwork", "box")

sample
     /\  /\ !!!!!!!!!!!! /\  /\
    |! ||! |!!!!!!!!!!!!|! ||! |
    |! ||! |            |! ||! |
    |! ||! | important2 |! ||! |
    |! ||! |            |! ||! |
    |__||__|!!!!!!!!!!!!|__||__|
    (__)(__)!!!!!!!!!!!!(__)(__)
ends

delim @"

shapes {
    nw (" /\  /\ ",
        "|! ||! |")
    w  ("|! ||! |")
    sw ("|__||__|",
        "(__)(__)")

    ne (" /\  /\ ",
        "|! ||! |")
    e  ("|! ||! |")
    se ("|__||__|",
        "(__)(__)")

    n ("!", "!")
    s ("!", "!")
}

padding { all 1 }

elastic (n, e, s, w)

END important2


# ============================================================================


BOX important3

designer "Dmitry Bolshakov <bdimych@protonmail.com>"
author   "Dmitry Bolshakov <bdimych@protonmail.com>"
tags     ("artwork", "box")

sample
     /\  /\  /\ !!!!!!!!!!!! /\  /\  /\
    |! ||! ||! |!!!!!!!!!!!!|! ||! ||! |
    |! ||! ||! |!!!!!!!!!!!!|! ||! ||! |
    |! ||! ||! |            |! ||! ||! |
    |! ||! ||! | important3 |! ||! ||! |
    |! ||! ||! |            |! ||! ||! |
    |! ||! ||! |!!!!!!!!!!!!|! ||! ||! |
    |__||__||__|!!!!!!!!!!!!|__||__||__|
    (__)(__)(__)!!!!!!!!!!!!(__)(__)(__)
ends

delim @"

shapes {
    nw (" /\  /\  /\ ",
        "|! ||! ||! |",
        "|! ||! ||! |")
    w  ("|! ||! ||! |")
    sw ("|! ||! ||! |",
        "|__||__||__|",
        "(__)(__)(__)")

    ne (" /\  /\  /\ ",
        "|! ||! ||! |",
        "|! ||! ||! |")
    e  ("|! ||! ||! |")
    se ("|! ||! ||! |",
        "|__||__||__|",
        "(__)(__)(__)")

    n ("!", "!", "!")
    s ("!", "!", "!")
}

padding { all 1 }

elastic (n, e, s, w)

END important3


# ============================================================================


BOX f90-box

author   "Matt Thompson <fortran(at)gmail(dot)com>"
designer "(public domain)"
tags     ("simple", "programming", "box")

sample
    !!!!!!!!!!!!!
    !           !
    !           !
    !!!!!!!!!!!!!
ends

shapes {
    nw ("!") n ("!")
    se ("!") e ("!")
    sw ("!") s ("!")
    ne ("!") w ("!")
}

padding { h 1 }

elastic (n, s, e, w)

END f90-box


# ============================================================================


BOX f90-cmt

author   "Matt Thompson <fortran(at)gmail(dot)com>"
designer "(public domain)"
tags     ("simple", "programming", "comment")

sample
    !
    !  regular comments used in Fortran 90+
    !
ends

shapes {
    w ("!")
}

padding { left 1 }

elastic (w)

END f90-cmt


# ============================================================================


BOX bear

designer "Hayley Jane Wakenshaw"
author   "Thomas Jensen"
tags     ("artwork", "box", "sign", "large")

sample
                         ,---.           ,---.
                        / /"`.\.--"""--./,'"\ \
                        \ \    _       _    / /
                         `./  / __   __ \  \,'
                          /    /_O)_(_O\    \
                          |  .-'  ___  `-.  |
                       .--|       \_/       |--.
                     ,'    \   \   |   /   /    `.
                    /       `.  `--^--'  ,'       \
                 .-"""""-.    `--.___.--'     .-"""""-.
    .-----------/         \------------------/         \--------------.
    | .---------\         /------------------\         /------------. |
    | |          `-`--`--'                    `--'--'-'             | |
    | |                                                             | |
    | |                                                             | |
    | |                                                             | |
    | |                                                             | |
    | |                                                             | |
    | |                                                             | |
    | |                                                             | |
    | |                                                             | |
    | |_____________________________________________________________| |
    |_________________________________________________________________|
                       )__________|__|__________(
                      |            ||            |
                      |____________||____________|
                        ),-----.(      ),-----.(  hjw
                      ,'   ==.   \    /  .==    `.
                     /            )  (            \
                     `==========='    `==========='
ends


shapes {
     nw ("   ", "   ", "   ", "   ", "   ", "   ", "   ", "   ", "   ", "   ", ".--", "| .", "| |")
    nnw (" ", " ", " ", " ", " ", " ", " ", " ", " ", " ", "-", "-", " ")

      n ("         ,---.           ,---.          ",
         "        / /\"`.\\.--\"\"\"--./,'\"\\ \\         ",
         "        \\ \\    _       _    / /         ",
         "         `./  / __   __ \\  \\,'          ",
         "          /    /_O)_(_O\\    \\           ",
         "          |  .-'  ___  `-.  |           ",
         "       .--|       \\_/       |--.        ",
         "     ,'    \\   \\   |   /   /    `.      ",
         "    /       `.  `--^--'  ,'       \\     ",
         " .-\"\"\"\"\"-.    `--.___.--'     .-\"\"\"\"\"-. ",
         "/         \\------------------/         \\",
         "\\         /------------------\\         /",
         " `-`--`--'                    `--'--'-' ")

    nne (" ", " ", " ", " ", " ", " ", " ", " ", " ", " ", "-", "-", " ")
     ne ("   ", "   ", "   ", "   ", "   ", "   ", "   ", "   ", "   ", "   ", "--.", ". |", "| |")

      w ("| |")
      e ("| |")

     sw ("| |", "|__", "   ", "   ", "   ", "   ", "   ", "   ", "   ")
    ssw ("_", "_", " ", " ", " ", " ", " ", " ", " ")

      s ("__________________________________",
         "__________________________________",
         "    )__________|__|__________(    ",
         "   |            ||            |   ",
         "   |____________||____________|   ",
         "     ),-----.(      ),-----.(  hjw",
         "   ,'   ==.   \\    /   .==   `.   ",
         "  /            )  (            \\  ",
         "  `==========='    `==========='  ")

    sse ("_", "_", " ", " ", " ", " ", " ", " ", " ")
     se ("| |", "__|", "   ", "   ", "   ", "   ", "   ", "   ", "   ")
}

elastic (nne, nnw, e, w, sse, ssw)

padding { horiz 1 }

END bear


# ============================================================================


BOX jstone

author   "Ed Schaller"
designer "schallee_@_darkmist.net"
tags     ("simple", "programming", "box")

sample
    /*----------------+
     | toast is yummy |
     +----------------*/
ends

shapes {
    nw ("/*")  n ("-")  ne ("+ ")
    w  (" |")            e ("| ")
    sw (" +")  s ("-")  se ("*/")
}

elastic (n, e, s, w)

delim ?"
replace "\*\/" with "*\\/"
reverse "\*\\/" to "*\/"

padding {
    horiz 1
}

END jstone


# ============================================================================


BOX vim-box

author   "Ricky Anderson <ricky.anderson2696@gmail.com>"
designer "Bram Moolenaar"
tags     ("simple", "programming", "box")

sample
    """""""""""""""""""""""""""""""""""""""""""""""""""""""
    " Header seperator on your vim config's file (.vimrc) "
    """""""""""""""""""""""""""""""""""""""""""""""""""""""
ends

delim \'

shapes {
    nw ('"') n ('"') ne ('"')
     w ('"')          e ('"')
    sw ('"') s ('"') se ('"')
}

padding {
    horiz 1
}

elastic (n, e, s, w)

END vim-box


# ============================================================================


BOX weave

author   "Thomas Jensen"
designer "dc"
tags     ("artwork", "box", "large")

sample
              _       _       _       _       _       _       _       _       _       _       _
     .-"-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-,_,-'_`-,.
    (  ,-'_,-<.>-'_,-<.>-'_,-<.>-'_,-<.>-'_,-<.>-'_,-<.>-'_,-<.>-'_,-<.>-'_,-<.>-'_,-<.>-'_,-~-} ;.
     \ \.'_>-._`-<_>-._`-<_>-._`-<_>-._`-<_>-._`-<_>-._`-<_>-._`-<_>-._`-<_>-._`-<_>-._`-._~--. \ .
     /\ \/ ,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._`./ \ \ .
    dc(`/ /                                                                                `/ /.) ) .
     \ \ / \                                                                               / / \ / .
      \ \') )                                                                             ( (,\ \ .
     / \ / /     Thank you for visiting https://asciiart.website/                          \ / \ \ .
    ( (`/ /      This ASCII pic can be found at                                             / /.) ) .
     \ \ / \     https://asciiart.website/index.php?art=art%20and%20design/borders         / / \ / .
      \ \') )                                                                             ( (,\ \ .
     / \ / /                                                                               \ / \ \ .
    ( (`/ /                                                                                 / /.) ) .
     \ \ / \       _       _       _       _       _       _       _       _       _       / / \ /.
      \ `.\ `-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_`-._,-'_/,\ \ .
     ( `. `,~-._`-<,>-._`-<,>-._`-<,>-._`-<,>-._`-<,>-._`-<,>-._`-<,>-._`-<,>-._`-<,>-._`-=,' ,\ \ .
      `. `'_,-<_>-'_,-<_>-'_,-<_>-'_,-<_>-'_,-<_>-'_,-<_>-'_,-<_>-'_,-<_>-'_,-<_>-'_,-<_>-'_,"-' ; .
        `-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-._,-' `-.-' .
ends

delim |"

shapes {
     nw ("         ",
         " .-|"-._,-",
         "(  ,-'_,-",
         " \ \.'_>-",
         " /\ \/ ,-")
    wnw ("dc(`/ /  ")
      w (" \ \ / \ ",
         "  \ \') )",
         " / \ / / ",
         "( (`/ /  ")
     sw (" \ \ / \ ",
         "  \ `.\ `",
         " ( `. `,~",
         "  `. `'_,",
         "    `-' `")

    nnw (" _   ",
         "'_`-.",
         "<.>-'",
         "._`-<",
         "' `-.")

      n ("    _   ",
         "_,-'_`-,",
         "_,-<.>-'",
         "_>-._`-.",
         "_,-' `-.")

     ne ("    _      ",
         "_,-'_`-,.  ",
         "_,-~-} ;.  ",
         "_~--. \ .  ",
         "_`./ \ \ . ")
    ene (" `/ /.) ) .")
      e (" / / \ / . ",
         "( (,\ \ .  ",
         " \ / \ \ . ",
         "  / /.) ) .")
     se (" / / \ /.  ",
         "'_/,\ \ .  ",
         "=,' ,\ \ . ",
         "'_,|"-' ; . ",
         "' `-.-' .  ")

    ssw ("     ",
         "-._,-",
         "-._`-",
         "-<_>-",
         "-._,-")

      s (" _      ",
         "'_`-._,-",
         "<,>-._`-",
         "'_,-<_>-",
         "' `-._,-")
}

padding {
    top 2
    bottom 1
    horizontal 4
}

elastic (n, e, s, w)

END weave


# ============================================================================


BOX normand

author   "Thomas Jensen"
designer "Normand Veilleux"
tags     ("artwork", "box", "large")

sample
            __,:,__               __,:,__               __,:,__    Normand    __,:,__
         ,ad88P`Y88ba,         ,ad88P`Y88ba,         ,ad88P`Y88ba,         ,ad88P`Y88ba,
       ad88888' `88888ba     ad88888' `88888ba     ad88888' `88888ba     ad88888' `88888ba
     ,d88888P'   `Y88888b, ,d88888P'   `Y88888b, ,d88888P'   `Y88888b, ,d88888P'   `Y88888b,
    ,d888P"'       `"Y888b,d888P"'       `"Y888b,d888P"'       `"Y888b,d888P"'       `"Y888b,
    :(["               ``":"''               ``":"''               ``":"''               "]):
    `Y88ba,                                                                           ,ad88P'
     `88888ba                                                                       ad88888'
      `Y88888b,                                                                   ,d88888P'
        `"Y888b,    Thank you for visiting https://asciiart.website/             ,d888P"'
            "]):    This ASCII pic can be found at                               :(["
         ,ad88P'    https://asciiart.website/?art=art%20and%20design/borders     `Y88ba,
       ad88888'                                                                   `88888ba
     ,d88888P'                                                                     `Y88888b,
    ,d888P"'                                                                         `"Y888b,
    :(["               __,:,__               __,:,__               __,:,__               "]):
    `Y88ba,         ,ad88P`Y88ba,         ,ad88P`Y88ba,         ,ad88P`Y88ba,         ,ad88P'
     `88888ba     ad88888' `88888ba     ad88888' `88888ba     ad88888' `88888ba     ad88888'
      `Y88888b, ,d88888P'   `Y88888b, ,d88888P'   `Y88888b, ,d88888P'   `Y88888b, ,d88888P'
        `"Y888b,d888P"'       `"Y888b,d888P"'       `"Y888b,d888P"'       `"Y888b,d888P"'
            ``":"''               ``":"''               ``":"''   Veilleux    ``":"''
ends

shapes {
     nw ("        __,:",
         "     ,ad88P`",
         "   ad88888' ",
         " ,d88888P'  ",
         ",d888P\"'    ",
         ":([\"        ")
      w ("`Y88ba,     ",
         " `88888ba   ",
         "  `Y88888b, ",
         "    `\"Y888b,",
         "        \"]):",
         "     ,ad88P'",
         "   ad88888' ",
         " ,d88888P'  ",
         ",d888P\"'    ")
     sw (":([\"        ",
         "`Y88ba,     ",
         " `88888ba   ",
         "  `Y88888b, ",
         "    `\"Y888b,",
         "        ``\":")

      n (",__               __,:",
         "Y88ba,         ,ad88P`",
         "`88888ba     ad88888' ",
         " `Y88888b, ,d88888P'  ",
         "   `\"Y888b,d888P\"'    ",
         "       ``\":\"''        ")

    nne (",__    Normand    __,",
         "Y88ba,         ,ad88P",
         "`88888ba     ad88888'",
         " `Y88888b, ,d88888P' ",
         "   `\"Y888b,d888P\"'   ",
         "       ``\":\"''       ")

     ne (":,__        ",
         "`Y88ba,     ",
         " `88888ba   ",
         "  `Y88888b, ",
         "    `\"Y888b,",
         "        \"]):")
      e ("     ,ad88P'",
         "   ad88888' ",
         " ,d88888P'  ",
         ",d888P\"'    ",
         ":([\"        ",
         "`Y88ba,     ",
         " `88888ba   ",
         "  `Y88888b, ",
         "    `\"Y888b,")
     se ("        \"]):",
         "     ,ad88P'",
         "   ad88888' ",
         " ,d88888P'  ",
         ",d888P\"'    ",
         ":\"''        ")

      s ("       __,:,__        ",
         "    ,ad88P`Y88ba,     ",
         "  ad88888' `88888ba   ",
         ",d88888P'   `Y88888b, ",
         "d888P\"'       `\"Y888b,",
         "\"''               ``\":")

    sse ("       __,:,__       ",
         "    ,ad88P`Y88ba,    ",
         "  ad88888' `88888ba  ",
         ",d88888P'   `Y88888b,",
         "d888P\"'       `\"Y888b",
         "\"''   Veilleux    ``\"")
}

padding {
    vertical 1
    horizontal 3
}

elastic (n, e, s, w)

END normand


# ============================================================================


BOX cowsay

author   "David Yang <davidyang6us@gmail.com>"
designer "Tony Monroe"
tags     ("artwork", "speech")

sample
     _____________________________
    /                             \
    |  Boxes can have the cow too |
    \                             /
     -----------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
ends

shapes {
    ssw  ("                       ",
         "-----------------------",
         "   \\   ^__^            ",
         "    \\  (oo)\\_______    ",
         "       (__)\\       )\\/\\",
         "           ||----w |   ",
         "           ||     ||   ")
    n   ("_",
         " ")
    s   (" ",
         "-",
         " ",
         " ",
         " ",
         " ",
         " ")
    sse (" ",
         "-",
         " ",
         " ",
         " ",
         " ",
         " ")
    nw  (" ",
         "/")
    sw  ("\\",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")
    ne  (" ",
         "\\")
    se  ("/",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")
    w   ("|")
    e   ("|")
    
}

elastic (n, s, e, w)

padding {
    left 2
    right 1
}

END cowsay


# ============================================================================


BOX tux

author   "David Yang <davidyang6us@gmail.com>"
designer "Tony Monroe"
tags     ("artwork", "speech")

sample
     _________________
    /                 \
    |  Tux talks too  |
    \                 /
     -----------------
        \
         \
             .--.
            |o_o |
            |:_/ |
           //   \ \
          (|     | )
         /'\_   _/`\
         \___)=(___/  
ends

shapes {
    ssw  ("               ",
         "---------------",
         "   \\           ",
         "    \\          ",
         "        .--.   ",
         "       |o_o |  ",
         "       |:_/ |  ",
         "      //   \\ \\ ",
         "     (|     | )",
         "    /'\\_   _/`\\",
         "    \\___)=(___/")
    n   ("_",
         " ")
    s   (" ",
         "-",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")
    sse (" ",
         "-",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")
    nw  (" ",
         "/")
    sw  ("\\",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")
    ne  (" ",
         "\\")
    se  ("/",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ",
         " ")
    w   ("|")
    e   ("|")
    
}

elastic (n, s, e, w)

padding {
    left 2
    right 1
}

END tux


# ============================================================================


BOX info

author   "Thomas Jensen"
designer "Thomas Jensen"
tags     ("box", "color", "simple", "unicode")

sample
    [34m▄▄[0m[37;44m INFO [0;34m▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄[0m
    [34m█[0m                                               [34m█[0m
    [34m█[0m  This is an informational message.            [34m█[0m
    [34m█[0m  Don't worry about it.                        [34m█[0m
    [34m█[0m                                               [34m█[0m
    [34m▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀[0m
ends

# Monochrome sample:
# ▄▄ INFO ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
# █                                               █
# █  This is an informational message.            █
# █  Don't worry about it.                        █
# █                                               █
# ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀

shapes {
    nw  ("[34m▄[0m")
    nnw ("[34m▄[0m[37;44m INFO [0m")
    n   ("[34m▄[0m")
    ne  ("[34m▄[0m")
    w   ("[34m█[0m")
    e   ("[34m█[0m")
    sw  ("[34m▀[0m")
    s   ("[34m▀[0m")
    se  ("[34m▀[0m")
}

elastic (n, s, e, w)

padding {
    horizontal 2
    vertical 1
}

END info


# ============================================================================


BOX warning

author   "Thomas Jensen"
designer "Thomas Jensen"
tags     ("box", "color", "simple", "unicode")

sample
    [33m▄▄[0m[30;43m WARNING [0;33m▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄[0m
    [33m█[0m                                               [33m█[0m
    [33m█[0m  Sub-zero temperatures expected.              [33m█[0m
    [33m█[0m  Please drive carefully.                      [33m█[0m
    [33m█[0m                                               [33m█[0m
    [33m▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀[0m
ends

# Monochrome sample:
# ▄▄ WARNING ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
# █                                               █
# █  Sub-zero temperatures expected.              █
# █  Please drive carefully.                      █
# █                                               █
# ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀

shapes {
    nw  ("[33m▄[0m")
    nnw ("[33m▄[0m[30;43m WARNING [0m")
    n   ("[33m▄[0m")
    ne  ("[33m▄[0m")
    w   ("[33m█[0m")
    e   ("[33m█[0m")
    sw  ("[33m▀[0m")
    s   ("[33m▀[0m")
    se  ("[33m▀[0m")
}

elastic (n, s, e, w)

padding {
    horizontal 2
    vertical 1
}

END warning


# ============================================================================


BOX critical

author   "Thomas Jensen"
designer "Thomas Jensen"
tags     ("box", "color", "simple", "unicode")

sample
    [31m▄▄[0m[37;41m CRITICAL [0;31m▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄[0m
    [31m█[37;48;2;128;0;0m                                               [31m█[0m
    [31m█[37;48;2;128;0;0m  Coolant levels below minimum.                [31m█[0m
    [31m█[37;48;2;128;0;0m  Disengage main drive and stop for repairs.   [31m█[0m
    [31m█[37;48;2;128;0;0m                                               [31m█[0m
    [31m▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀[0m
ends

# Monochrome sample:
# ▄▄ CRITICAL ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
# █                                               █
# █  Coolant levels below minimum.                █
# █  Disengage main drive and stop for repairs.   █
# █                                               █
# ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀

shapes {
    nw  ("[0;31m▄[0m")
    nnw ("[31m▄[0m[37;41m CRITICAL [0m")
    n   ("[31m▄[0m")
    ne  ("[31m▄[0m")
    w   ("[31m█[37;48;2;128;0;0m")
    e   ("[31m█[0m")
    sw  ("[31m▀[0m")
    s   ("[31m▀[0m")
    se  ("[31m▀[0m")
}

elastic (n, s, e, w)

padding {
    horizontal 2
    vertical 1
}

END critical


# ============================================================================


BOX ansi

author   "chorpler"
designer "(public domain)"
tags     ("box", "simple", "unicode")

sample
    ┌──────────────────────┐
    │                      │
    │                      │
    │                      │
    │                      │
    │                      │
    │                      │
    │                      │
    └──────────────────────┘
ends

shapes {
    nw  ("┌")
    n   ("─")
    ne ("┐")
    e   ("│")
    se  ("┘")
    s   ("─")
    sw  ("└")
    w   ("│")
}

padding { horiz 1 }

elastic (n,e,s,W)

END ansi


# ============================================================================


BOX ansi-rounded

author   "chorpler"
designer "(public domain)"
tags     ("box", "simple", "unicode")

sample
    ╭──────────────────────╮
    │                      │
    │                      │
    │                      │
    │                      │
    │                      │
    │                      │
    │                      │
    ╰──────────────────────╯
ends

shapes {
    nw  ("╭")
    n   ("─")
    ne ("╮")
    e   ("│")
    se  ("╯")
    s   ("─")
    sw  ("╰")
    w   ("│")
}

padding { horiz 1 }

elastic (n,e,s,W)

END ansi-rounded


# ============================================================================


BOX ansi-double

author   "chorpler"
designer "(public domain)"
tags     ("box", "simple", "unicode")

sample
    ╔══════════════════════╗
    ║                      ║
    ║                      ║
    ║                      ║
    ║                      ║
    ║                      ║
    ║                      ║
    ║                      ║
    ╚══════════════════════╝
ends

shapes {
    nw  ("╔")
    n   ("═")
    ne ("╗")
    e   ("║")
    se  ("╝")
    s   ("═")
    sw  ("╚")
    w   ("║")
}

padding { horiz 1 }

elastic (n,e,s,W)

END ansi-double


# ============================================================================


BOX ansi-heavy

author   "chorpler"
designer "(public domain)"
tags     ("box", "simple", "unicode")

sample
    ┏━━━━━━━━━━━━━━━━━━━━━━┓
    ┃                      ┃
    ┃                      ┃
    ┃                      ┃
    ┃                      ┃
    ┃                      ┃
    ┃                      ┃
    ┃                      ┃
    ┗━━━━━━━━━━━━━━━━━━━━━━┛
ends

shapes {
    nw  ("┏")
    n   ("━")
    ne ("┓")
    e   ("┃")
    se  ("┛")
    s   ("━")
    sw  ("┗")
    w   ("┃")
}

padding { horiz 1 }

elastic (n,e,s,W)

END ansi-heavy


# ============================================================================


BOX ansi-heavy-dashed

author   "chorpler"
designer "(public domain)"
tags     ("box", "simple", "unicode")

sample
    ┏╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍┓
    ┋                      ┋
    ┋                      ┋
    ┋                      ┋
    ┋                      ┋
    ┋                      ┋
    ┋                      ┋
    ┋                      ┋
    ┗╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍╍┛
ends

shapes {
    nw  ("┏")
    n   ("╍")
    ne ("┓")
    e   ("┋")
    se  ("┛")
    s   ("╍")
    sw  ("┗")
    w   ("┋")
}

padding { horiz 1 }

elastic (n,e,s,W)

END ansi-heavy-dashed


# ============================================================================


BOX ansi-dashed

author   "chorpler"
designer "(public domain)"
tags     ("box", "simple", "unicode")

sample
    ┌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┐
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    └╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┘
ends

shapes {
    nw  ("┌")
    n   ("╌")
    ne ("┐")
    e   ("┊")
    se  ("┘")
    s   ("╌")
    sw  ("└")
    w   ("┊")
}

padding { horiz 1 }

elastic (n,e,s,W)

END ansi-dashed


# ============================================================================


BOX ansi-rounded-dashed

author   "chorpler"
designer "(public domain)"
tags     ("box", "simple", "unicode")

sample
    ╭╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ┊                      ┊
    ╰╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯
ends

shapes {
    nw  ("╭")
    n   ("╌")
    ne ("╮")
    e   ("┊")
    se  ("╯")
    s   ("╌")
    sw  ("╰")
    w   ("┊")
}

padding { horiz 1 }

elastic (n,e,s,W)

END ansi-rounded-dashed


# ============================================================================


BOX dragon

author   "Thomas Jensen"
designer "Glory Py Yip (Glory Moon)"
tags     ("artwork")

sample
           ,                                                     .  ,
        ._/),                                                   .(\/),
        ii// )/)     ,-=-.       ,-=-.       ,-=-.       ,-=-.     (\/|/)
    ,^=-9 ,//) )=-="'     '"=-="'     '"=-="'     '"=-="'     '"=-="/ }/)
     ""_,),,/ "      ,-=-.       ,-=-.       ,-=-.       ,-=-.      ,/`~
      """ )))\))=-="'     '"=-="'     '"=-="'     '"=-="'     '"=-="
               <<  <<                             <<   <<
             ((( >((( >                         ((( > ((( >

                              HERE BE DRAGONS
              ,                                                     .  ,
           ._/),                                                   .(\/),
        ii// )/)     ,-=-.       ,-=-.       ,-=-.       ,-=-.     (\/|/)
    ,^=-9 ,//) )=-="'     '"=-="'     '"=-="'     '"=-="'     '"=-="/ }/)
     ""_,),,/ "      ,-=-.       ,-=-.       ,-=-.       ,-=-.      ,/`~
      """ )))\))=-="'     '"=-="'     '"=-="'     '"=-="'     '"=-="
               <<  <<                             <<   <<
     gpyy    ((( >((( >                         ((( > ((( >
ends

delim !~

shapes {
  nnw (~       ,                 ~,
       ~    ._/),                ~,
       ~    ii// )/)     ,-=-.   ~,
       ~,^=-9 ,//) )=-="'     '"=~,
       ~ ""_,),,/ "      ,-=-.   ~,
       ~  """ )))\))=-="'     '"=~,
       ~           <<  <<        ~,
       ~         ((( >((( >      ~)

    n (~            ~,
       ~            ~,
       ~    ,-=-.   ~,
       ~-="'     '"=~,
       ~    ,-=-.   ~,
       ~-="'     '"=~,
       ~            ~,
       ~            ~)

  nne (~                        .  ,    ~,
       ~                       .(\/),   ~,
       ~    ,-=-.       ,-=-.     (\/|/)~,
       ~-="'     '"=-="'     '"=-="/ }/)~,
       ~    ,-=-.       ,-=-.      ,/`!~ ~,
       ~-="'     '"=-="'     '"=-="     ~,
       ~         <<   <<                ~,
       ~       ((( > ((( >              ~)

  ssw (~       ,                 ~,
       ~    ._/),                ~,
       ~    ii// )/)     ,-=-.   ~,
       ~,^=-9 ,//) )=-="'     '"=~,
       ~ ""_,),,/ "      ,-=-.   ~,
       ~  """ )))\))=-="'     '"=~,
       ~           <<  <<        ~,
       ~ gpyy    ((( >((( >      ~)

    s (~            ~,
       ~            ~,
       ~    ,-=-.   ~,
       ~-="'     '"=~,
       ~    ,-=-.   ~,
       ~-="'     '"=~,
       ~            ~,
       ~            ~)

  sse (~                        .  ,    ~,
       ~                       .(\/),   ~,
       ~    ,-=-.       ,-=-.     (\/|/)~,
       ~-="'     '"=-="'     '"=-="/ }/)~,
       ~    ,-=-.       ,-=-.      ,/`!~ ~,
       ~-="'     '"=-="'     '"=-="     ~,
       ~         <<   <<                ~,
       ~       ((( > ((( >              ~)
}

padding {
    top 1
    horizontal 5
}

elastic (n, s, e, w)

END dragon


# ============================================================================


# vim: set ai sw=4 expandtab syn=boxes:
