Compare commits

...

No commits in common. 'master' and 'pages' have entirely different histories.

@ -1,66 +0,0 @@
name: CI
on:
- push
- pull_request
jobs:
test:
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
version:
- '1.0' # old LTS
- '1.6' # new LTS
- '1' # Latest stable
- 'nightly' # 'nuf said
os:
- ubuntu-latest
arch:
- x64
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
- uses: actions/cache@v1
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
- uses: julia-actions/julia-processcoverage@v1
- uses: codecov/codecov-action@v1
with:
file: lcov.info
docs:
name: Documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: '1'
- run: |
julia --project=docs -e '
using Pkg
Pkg.develop(PackageSpec(path=pwd()))
Pkg.instantiate()'
- run: |
julia --project=docs -e '
using Documenter: DocMeta, doctest
using Cowsay
DocMeta.setdocmeta!(Cowsay, :DocTestSetup, :(using Cowsay); recursive=true)
doctest(Cowsay)'
- run: julia --project=docs docs/make.jl
env:
JULIA_PKG_SERVER: ""
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}

@ -1,16 +0,0 @@
name: CompatHelper
on:
schedule:
- cron: 0 0 * * *
workflow_dispatch:
jobs:
CompatHelper:
runs-on: ubuntu-latest
steps:
- name: Pkg.add("CompatHelper")
run: julia -e 'using Pkg; Pkg.add("CompatHelper")'
- name: CompatHelper.main()
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }}
run: julia -e 'using CompatHelper; CompatHelper.main()'

@ -1,15 +0,0 @@
name: TagBot
on:
issue_comment:
types:
- created
workflow_dispatch:
jobs:
TagBot:
if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot'
runs-on: ubuntu-latest
steps:
- uses: JuliaRegistries/TagBot@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
ssh: ${{ secrets.DOCUMENTER_KEY }}

@ -1,14 +0,0 @@
name: Register Package
on:
workflow_dispatch:
inputs:
version:
description: Version to register or component to bump
required: true
jobs:
register:
runs-on: ubuntu-latest
steps:
- uses: julia-actions/RegisterAction@latest
with:
token: ${{ secrets.GITHUB_TOKEN }}

5
.gitignore vendored

@ -1,5 +0,0 @@
*.jl.*.cov
*.jl.cov
*.jl.mem
/Manifest.toml
/docs/build/

@ -1,34 +0,0 @@
clone:
git:
image: woodpeckerci/plugin-git
settings:
partial: false
depth: 0
matrix:
JULIA_VERSION:
- "1.0"
- "1.6"
- "1"
- "rc"
steps:
test:
image: julia:${JULIA_VERSION}
pull: true
when:
event: [pull_request, push]
commands:
- julia --color=yes -e 'using Pkg; Pkg.activate(pwd()); Pkg.instantiate()'
- julia --color=yes -e 'using Pkg; Pkg.activate(pwd()); Pkg.test(;coverage=true)'
docs:
image: julia
when:
branch: master
secrets:
- project_access_token
commands:
- julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()'
- julia --project=docs/ docs/make.jl

@ -1,91 +0,0 @@
# Changelog
All notable changes to Cowsay.jl will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic
Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased
### Added
- Cow "modes" (Borg, dead, greedy, etc.)
## [v0.3.1] - 2022-02-01
### Fixed
- Newlines in input message are no longer stripped out during text wrapping
## [v0.3.0] - 2022-02-01
### Added
- `cowsaid` and `cowthunk` functions for getting cow art without printing it
- Optional IO choice for `cowsay` and `cowthink` functions
- Automatic text wrapping
## [v0.2.1] - 2022-01-11
### Added
- `cowthink` function
## [v0.2.0] - 2021-11-29
### Added
- Unit testing via `jldoctest`
- Ability to customize cow art
- Ability to customize cow eyes
- Ability to customize cow tongue
- New cow artwork
- blowfish
- bunny
- cower
- dragon_and_cow
- dragon
- elephant_in_snake
- elephant
- eyes
- flaming_sheep
- fox
- kitty
- koala
- mech_and_cow
- meow
- moofasa
- moose
- mutilated
- sheep
- skeleton
- small
- stegosaurus
- supermilker
- surgery
- three_eyes
- turkey
- turtle
- tux
- udder
- vader_koala
- vader
- www
### Changed
- Default cow abstracted to `Cowsay.default` function
## [v0.1.0] - 2021-09-23 (Unregistered)
### Added
- `cowsay` function for Julia in package format
[unreleased]: https://github.com/MillironX/Cowsay.jl/compare/v0.3.1...HEAD
[v0.3.0]: https://github.com/MillironX/Cowsay.jl/compare/v0.3.0...v0.3.1
[v0.3.0]: https://github.com/MillironX/Cowsay.jl/compare/v0.2.1...v0.3.0
[v0.2.1]: https://github.com/MillironX/Cowsay.jl/compare/v0.2.0...v0.2.1
[v0.2.0]: https://github.com/MillironX/Cowsay.jl/compare/v0.1.0...v0.2.0
[v0.1.0]: https://github.com/MillironX/Cowsay.jl/releases/tag/v0.1.0

@ -1,21 +0,0 @@
MIT License
Copyright (c) 2021 Thomas A. Christensen II <25492070+MillironX@users.noreply.github.com> and contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

@ -1,18 +0,0 @@
name = "Cowsay"
uuid = "b6370f49-8ad1-4651-ad9e-3639b35da0e9"
authors = ["Thomas A. Christensen II <25492070+MillironX@users.noreply.github.com> and contributors"]
version = "1.0.0"
[deps]
TextWrap = "b718987f-49a8-5099-9789-dcd902bef87d"
[compat]
julia = "1"
TextWrap = "1"
[extras]
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
[targets]
test = ["Test", "Documenter"]

@ -1,141 +0,0 @@
# Cowsay.jl
```plaintext
___________________
< Cowsay for Juila! >
-------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
```
[![Stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://millironx.com/Cowsay.jl/stable)
[![Dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://millironx.com/Cowsay.jl/dev)
[![Build Status](https://github.com/MillironX/Cowsay.jl/workflows/CI/badge.svg)](https://github.com/MillironX/Cowsay.jl/actions)
[![Coverage](https://codecov.io/gh/MillironX/Cowsay.jl/branch/master/graph/badge.svg)](https://codecov.io/gh/MillironX/Cowsay.jl)
[![Genie Downloads](https://shields.io/endpoint?url=https://pkgs.genieframework.com/api/v1/badge/Cowsay)](https://pkgs.genieframework.com?packages=Cowsay)
A talking cow library for Julia, based on the [Fedora release of
cowsay](https://src.fedoraproject.org/rpms/cowsay).
## Installation
You can install straight from the [Julia REPL]. Press `]` to enter [pkg mode],
then:
```julia
add Cowsay
```
## Usage
Complete usage info can be found in [the documentation]. Cowsay.jl exports two
functions: `cowsay` and `cowthink`, which print an ASCII cow saying or thinking
a message, respectively.
```julia-repl
julia> using Cowsay
julia> cowsay("Bessie the heifer\nthe queen of all the cows.")
____________________________
/ Bessie the heifer: \
\ the queen of all the cows. /
----------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
julia> cowthink("The farmers who have no livestock,\ntheir lives simply aren't the best")
____________________________________
( The farmers who have no livestock, )
( their lives simply aren't the best )
------------------------------------
o ^__^
o (oo)\_______
(__)\ )\/\
||----w |
|| ||
```
If you want to use talking cows in your program, use the `cowsaid` and
`cowthunk` functions to get strings of the cow art.
```julia-repl
julia> @info string("\n", cowsaid("And the longhorns lowed him a welcome\nAs a new voice cried from the buckboard"))
┌ Info:
│ _________________________________________
│ / And the longhorns lowed him a welcome \
│ \ As a new voice cried from the buckboard /
│ -----------------------------------------
│ \ ^__^
│ \ (oo)\_______
│ (__)\ )\/\
│ ||----w |
└ || ||
```
There are also plenty of [unexported Cowfiles] that you can use to customize
your art.
```julia-repl
julia> cowsay("This heifer must be empty\n'Cuz she ain't puttin' out", cow=Cowsay.udder)
____________________________
/ This heifer must be empty \
\ 'Cuz she ain't puttin' out /
----------------------------
\
\ (__)
o o\
('') \---------
\ \
| |\
||---( )_|| *
|| UU ||
== ==
```
You can also change the eyeballs and tongue of your cow.
```julia-repl
julia> cowsay("You better watch your step\nwhen you know the chips are down!", tongue=" U", eyes="00")
___________________________________
/ You better watch your step \
\ when you know the chips are down! /
-----------------------------------
\ ^__^
\ (00)\_______
(__)\ )\/\
U ||----w |
|| ||
```
And even change its emotional or physical state using modes.
```julia-repl
julia> cowsay("He mooed we must fight\nEscape or we'll die\nCows gathered around\n'Cause the steaks were so high"; dead=true)
________________________________
/ He mooed we must fight \
| Escape or we'll die |
| Cows gathered around |
\ 'Cause the steaks were so high /
--------------------------------
\ ^__^
\ (xx)\_______
(__)\ )\/\
U ||----w |
|| ||
```
## Contributing
If you find a bug in Cowsay.jl, please [file an issue]. I will not be accepting
any requests for new cowfiles in this repo, though.
[file an issue]: https://github.com/MillironX/Cowsay.jl/issues
[julia repl]: https://docs.julialang.org/en/v1/manual/getting-started/
[pkg mode]: https://docs.julialang.org/en/v1/stdlib/Pkg/
[the documentation]: https://millironx.com/Cowsay.jl/stable
[unexported cowfiles]: https://millironx.com/Cowsay.jl/stable/cows/

@ -0,0 +1,264 @@
// Generated by Documenter.jl
requirejs.config({
paths: {
'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/languages/julia.min',
'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min',
'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min',
'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/contrib/auto-render.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min',
'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min',
'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min',
'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/highlight.min',
'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/languages/julia-repl.min',
},
shim: {
"highlight-julia": {
"deps": [
"highlight"
]
},
"katex-auto-render": {
"deps": [
"katex"
]
},
"headroom-jquery": {
"deps": [
"jquery",
"headroom"
]
},
"highlight-julia-repl": {
"deps": [
"highlight"
]
}
}
});
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'katex', 'katex-auto-render'], function($, katex, renderMathInElement) {
$(document).ready(function() {
renderMathInElement(
document.body,
{
"delimiters": [
{
"left": "$",
"right": "$",
"display": false
},
{
"left": "$$",
"right": "$$",
"display": true
},
{
"left": "\\[",
"right": "\\]",
"display": true
}
]
}
);
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'highlight', 'highlight-julia', 'highlight-julia-repl'], function($) {
$(document).ready(function() {
hljs.highlightAll();
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) {
// Manages the top navigation bar (hides it when the user starts scrolling down on the
// mobile).
window.Headroom = Headroom; // work around buggy module loading?
$(document).ready(function() {
$('#documenter .docs-navbar').headroom({
"tolerance": {"up": 10, "down": 10},
});
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// Modal settings dialog
$(document).ready(function() {
var settings = $('#documenter-settings');
$('#documenter-settings-button').click(function(){
settings.toggleClass('is-active');
});
// Close the dialog if X is clicked
$('#documenter-settings button.delete').click(function(){
settings.removeClass('is-active');
});
// Close dialog if ESC is pressed
$(document).keyup(function(e) {
if (e.keyCode == 27) settings.removeClass('is-active');
});
});
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// Manages the showing and hiding of the sidebar.
$(document).ready(function() {
var sidebar = $("#documenter > .docs-sidebar");
var sidebar_button = $("#documenter-sidebar-button")
sidebar_button.click(function(ev) {
ev.preventDefault();
sidebar.toggleClass('visible');
if (sidebar.hasClass('visible')) {
// Makes sure that the current menu item is visible in the sidebar.
$("#documenter .docs-menu a.is-active").focus();
}
});
$("#documenter > .docs-main").bind('click', function(ev) {
if ($(ev.target).is(sidebar_button)) {
return;
}
if (sidebar.hasClass('visible')) {
sidebar.removeClass('visible');
}
});
})
// Resizes the package name / sitename in the sidebar if it is too wide.
// Inspired by: https://github.com/davatron5000/FitText.js
$(document).ready(function() {
e = $("#documenter .docs-autofit");
function resize() {
var L = parseInt(e.css('max-width'), 10);
var L0 = e.width();
if(L0 > L) {
var h0 = parseInt(e.css('font-size'), 10);
e.css('font-size', L * h0 / L0);
// TODO: make sure it survives resizes?
}
}
// call once and then register events
resize();
$(window).resize(resize);
$(window).on('orientationchange', resize);
});
// Scroll the navigation bar to the currently selected menu item
$(document).ready(function() {
var sidebar = $("#documenter .docs-menu").get(0);
var active = $("#documenter .docs-menu .is-active").get(0);
if(typeof active !== 'undefined') {
sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15;
}
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
function set_theme(theme) {
var active = null;
var disabled = [];
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
var themename = ss.ownerNode.getAttribute("data-theme-name");
if(themename === null) continue; // ignore non-theme stylesheets
// Find the active theme
if(themename === theme) active = ss;
else disabled.push(ss);
}
if(active !== null) {
active.disabled = false;
if(active.ownerNode.getAttribute("data-theme-primary") === null) {
document.getElementsByTagName('html')[0].className = "theme--" + theme;
} else {
document.getElementsByTagName('html')[0].className = "";
}
disabled.forEach(function(ss){
ss.disabled = true;
});
}
// Store the theme in localStorage
if(typeof(window.localStorage) !== "undefined") {
window.localStorage.setItem("documenter-theme", theme);
} else {
console.error("Browser does not support window.localStorage");
}
}
// Theme picker setup
$(document).ready(function() {
// onchange callback
$('#documenter-themepicker').change(function themepick_callback(ev){
var themename = $('#documenter-themepicker option:selected').attr('value');
set_theme(themename);
});
// Make sure that the themepicker displays the correct theme when the theme is retrieved
// from localStorage
if(typeof(window.localStorage) !== "undefined") {
var theme = window.localStorage.getItem("documenter-theme");
if(theme !== null) {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = (e.value === theme);
})
} else {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = $("html").hasClass(`theme--${e.value}`);
})
}
}
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// update the version selector with info from the siteinfo.js and ../versions.js files
$(document).ready(function() {
var version_selector = $("#documenter .docs-version-selector");
var version_selector_select = $("#documenter .docs-version-selector select");
version_selector_select.change(function(x) {
target_href = version_selector_select.children("option:selected").get(0).value;
window.location.href = target_href;
});
// add the current version to the selector based on siteinfo.js, but only if the selector is empty
if (typeof DOCUMENTER_CURRENT_VERSION !== 'undefined' && $('#version-selector > option').length == 0) {
var option = $("<option value='#' selected='selected'>" + DOCUMENTER_CURRENT_VERSION + "</option>");
version_selector_select.append(option);
}
if (typeof DOC_VERSIONS !== 'undefined') {
var existing_versions = version_selector_select.children("option");
var existing_versions_texts = existing_versions.map(function(i,x){return x.text});
DOC_VERSIONS.forEach(function(each) {
var version_url = documenterBaseURL + "/../" + each;
var existing_id = $.inArray(each, existing_versions_texts);
// if not already in the version selector, add it as a new option,
// otherwise update the old option with the URL and enable it
if (existing_id == -1) {
var option = $("<option value='" + version_url + "'>" + each + "</option>");
version_selector_select.append(option);
} else {
var option = existing_versions[existing_id];
option.value = version_url;
option.disabled = false;
}
});
}
// only show the version selector if the selector has been populated
if (version_selector_select.children("option").length > 0) {
version_selector.toggleClass("visible");
}
})
})

@ -0,0 +1,251 @@
// Generated by Documenter.jl
requirejs.config({
paths: {
'lunr': 'https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.9/lunr.min',
'lodash': 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min',
}
});
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'lunr', 'lodash'], function($, lunr, _) {
$(document).ready(function() {
// parseUri 1.2.2
// (c) Steven Levithan <stevenlevithan.com>
// MIT License
function parseUri (str) {
var o = parseUri.options,
m = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
uri = {},
i = 14;
while (i--) uri[o.key[i]] = m[i] || "";
uri[o.q.name] = {};
uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
if ($1) uri[o.q.name][$1] = $2;
});
return uri;
};
parseUri.options = {
strictMode: false,
key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
q: {
name: "queryKey",
parser: /(?:^|&)([^&=]*)=?([^&]*)/g
},
parser: {
strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
}
};
$("#search-form").submit(function(e) {
e.preventDefault()
})
// list below is the lunr 2.1.3 list minus the intersect with names(Base)
// (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with)
// ideally we'd just filter the original list but it's not available as a variable
lunr.stopWordFilter = lunr.generateStopWordFilter([
'a',
'able',
'about',
'across',
'after',
'almost',
'also',
'am',
'among',
'an',
'and',
'are',
'as',
'at',
'be',
'because',
'been',
'but',
'by',
'can',
'cannot',
'could',
'dear',
'did',
'does',
'either',
'ever',
'every',
'from',
'got',
'had',
'has',
'have',
'he',
'her',
'hers',
'him',
'his',
'how',
'however',
'i',
'if',
'into',
'it',
'its',
'just',
'least',
'like',
'likely',
'may',
'me',
'might',
'most',
'must',
'my',
'neither',
'no',
'nor',
'not',
'of',
'off',
'often',
'on',
'or',
'other',
'our',
'own',
'rather',
'said',
'say',
'says',
'she',
'should',
'since',
'so',
'some',
'than',
'that',
'the',
'their',
'them',
'then',
'there',
'these',
'they',
'this',
'tis',
'to',
'too',
'twas',
'us',
'wants',
'was',
'we',
'were',
'what',
'when',
'who',
'whom',
'why',
'will',
'would',
'yet',
'you',
'your'
])
// add . as a separator, because otherwise "title": "Documenter.Anchors.add!"
// would not find anything if searching for "add!", only for the entire qualification
lunr.tokenizer.separator = /[\s\-\.]+/
// custom trimmer that doesn't strip @ and !, which are used in julia macro and function names
lunr.trimmer = function (token) {
return token.update(function (s) {
return s.replace(/^[^a-zA-Z0-9@!]+/, '').replace(/[^a-zA-Z0-9@!]+$/, '')
})
}
lunr.Pipeline.registerFunction(lunr.stopWordFilter, 'juliaStopWordFilter')
lunr.Pipeline.registerFunction(lunr.trimmer, 'juliaTrimmer')
var index = lunr(function () {
this.ref('location')
this.field('title',{boost: 100})
this.field('text')
documenterSearchIndex['docs'].forEach(function(e) {
this.add(e)
}, this)
})
var store = {}
documenterSearchIndex['docs'].forEach(function(e) {
store[e.location] = {title: e.title, category: e.category, page: e.page}
})
$(function(){
searchresults = $('#documenter-search-results');
searchinfo = $('#documenter-search-info');
searchbox = $('#documenter-search-query');
function update_search(querystring) {
tokens = lunr.tokenizer(querystring)
results = index.query(function (q) {
tokens.forEach(function (t) {
q.term(t.toString(), {
fields: ["title"],
boost: 100,
usePipeline: true,
editDistance: 0,
wildcard: lunr.Query.wildcard.NONE
})
q.term(t.toString(), {
fields: ["title"],
boost: 10,
usePipeline: true,
editDistance: 2,
wildcard: lunr.Query.wildcard.NONE
})
q.term(t.toString(), {
fields: ["text"],
boost: 1,
usePipeline: true,
editDistance: 0,
wildcard: lunr.Query.wildcard.NONE
})
})
})
searchinfo.text("Number of results: " + results.length)
searchresults.empty()
results.forEach(function(result) {
data = store[result.ref]
link = $('<a class="docs-label">'+data.title+'</a>')
link.attr('href', documenterBaseURL+'/'+result.ref)
if (data.category != "page"){
cat = $('<span class="docs-category">('+data.category+', '+data.page+')</span>')
} else {
cat = $('<span class="docs-category">('+data.category+')</span>')
}
li = $('<li>').append(link).append(" ").append(cat)
searchresults.append(li)
})
}
function update_search_box() {
querystring = searchbox.val()
update_search(querystring)
}
searchbox.keyup(_.debounce(update_search_box, 250))
searchbox.change(update_search_box)
search_query_uri = parseUri(window.location).queryKey["q"]
if(search_query_uri !== undefined) {
search_query = decodeURIComponent(search_query_uri.replace(/\+/g, '%20'))
searchbox.val(search_query)
}
update_search_box();
})
})
})

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -0,0 +1,66 @@
// Small function to quickly swap out themes. Gets put into the <head> tag..
function set_theme_from_local_storage() {
// Intialize the theme to null, which means default
var theme = null;
// If the browser supports the localstorage and is not disabled then try to get the
// documenter theme
if(window.localStorage != null) {
// Get the user-picked theme from localStorage. May be `null`, which means the default
// theme.
theme = window.localStorage.getItem("documenter-theme");
}
// Check if the browser supports user color preference
var darkPreference = false;
// Check if the users preference is for dark color scheme
if(window.matchMedia('(prefers-color-scheme: dark)').matches === true) {
darkPreference = true;
}
// Initialize a few variables for the loop:
//
// - active: will contain the index of the theme that should be active. Note that there
// is no guarantee that localStorage contains sane values. If `active` stays `null`
// we either could not find the theme or it is the default (primary) theme anyway.
// Either way, we then need to stick to the primary theme.
//
// - disabled: style sheets that should be disabled (i.e. all the theme style sheets
// that are not the currently active theme)
var active = null; var disabled = []; var darkTheme = null;
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
// The <link> tag of each style sheet is expected to have a data-theme-name attribute
// which must contain the name of the theme. The names in localStorage much match this.
var themename = ss.ownerNode.getAttribute("data-theme-name");
// attribute not set => non-theme stylesheet => ignore
if(themename === null) continue;
// To distinguish the default (primary) theme, it needs to have the data-theme-primary
// attribute set.
var isprimary = (ss.ownerNode.getAttribute("data-theme-primary") !== null);
// Check if the theme is primary dark theme
var isDarkTheme = (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null);
// If ss is for dark theme then set the value of darkTheme to the name of the theme
if(isDarkTheme) darkTheme = themename;
// If we find a matching theme (and it's not the default), we'll set active to non-null
if(themename === theme) active = i;
// Store the style sheets of inactive themes so that we could disable them
if(themename !== theme) disabled.push(ss);
}
if(active !== null) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + theme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
ss.disabled = true;
});
}
else if(darkTheme !== null && darkPreference === true) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + darkTheme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
if (ss.ownerNode.getAttribute("data-theme-name") !== darkTheme) {
ss.disabled = true;
}
});
}
}
set_theme_from_local_storage();

@ -0,0 +1,49 @@
function maybeAddWarning () {
// DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE
// in siteinfo.js.
// If either of these are undefined something went horribly wrong, so we abort.
if (
window.DOCUMENTER_NEWEST === undefined ||
window.DOCUMENTER_CURRENT_VERSION === undefined ||
window.DOCUMENTER_STABLE === undefined
) {
return
};
// Current version is not a version number, so we can't tell if it's the newest version. Abort.
if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) {
return
};
// Current version is newest version, so no need to add a warning.
if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) {
return
};
// Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs.
if (document.body.querySelector('meta[name="robots"]') === null) {
const meta = document.createElement('meta');
meta.name = 'robots';
meta.content = 'noindex';
document.getElementsByTagName('head')[0].appendChild(meta);
};
const div = document.createElement('div');
div.classList.add('outdated-warning-overlay');
const closer = document.createElement('button');
closer.classList.add('outdated-warning-closer', 'delete');
closer.addEventListener('click', function () {
document.body.removeChild(div);
});
const href = window.documenterBaseURL + '/../' + window.DOCUMENTER_STABLE;
div.innerHTML = 'This documentation is not for the latest version. <br> <a href="' + href + '">Go to the latest documentation</a>.';
div.appendChild(closer);
document.body.appendChild(div);
};
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', maybeAddWarning);
} else {
maybeAddWarning();
};

File diff suppressed because one or more lines are too long

@ -0,0 +1,441 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Available Cowfiles · cowsay.jl</title><script data-outdated-warner src="../assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/cows/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../">cowsay.jl</a></span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li class="is-active"><a class="tocitem" href>Available Cowfiles</a><ul class="internal"><li><a class="tocitem" href="#Bovine"><span>Bovine</span></a></li><li><a class="tocitem" href="#Mascots"><span>Mascots</span></a></li><li><a class="tocitem" href="#Cows-and-friends"><span>Cows and friends</span></a></li><li><a class="tocitem" href="#Other"><span>Other</span></a></li></ul></li><li><a class="tocitem" href="../cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Available Cowfiles</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Available Cowfiles</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/MillironX/cowsay.jl/blob/master/docs/src/cows.md#" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Cows"><a class="docs-heading-anchor" href="#Cows">Cows</a><a id="Cows-1"></a><a class="docs-heading-anchor-permalink" href="#Cows" title="Permalink"></a></h1><p>Examples of all the cowfiles available.</p><h2 id="Bovine"><a class="docs-heading-anchor" href="#Bovine">Bovine</a><a id="Bovine-1"></a><a class="docs-heading-anchor-permalink" href="#Bovine" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.default" href="#Cowsay.default"><code>Cowsay.default</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function default()</code></pre><p>The original cowfile</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Moo&quot;, cow=Cowsay.default)
_____
&lt; Moo &gt;
-----
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/default.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.cower" href="#Cowsay.cower"><code>Cowsay.cower</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function cower()</code></pre><p>A cowering cow</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Is it safe to come out yet?&quot;, cow=Cowsay.cower)
_____________________________
&lt; Is it safe to come out yet? &gt;
-----------------------------
\
\
,__, | |
(oo)\| |___
(__)\| | )\_
| |_w | \
| | || *
Cower....
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/cower.cow.jl#L4-L27">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.moofasa" href="#Cowsay.moofasa"><code>Cowsay.moofasa</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function moofasa()</code></pre><p>MOOfasa</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;It&#39;s the circle of life&quot;, cow=Cowsay.moofasa)
_________________________
&lt; It&#39;s the circle of life &gt;
-------------------------
\ ____
\ / \
| ^__^ |
| (oo) |______
| (__) | )\/\
\____/|----w |
|| ||
Moofasa</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/moofasa.cow.jl#L4-L25">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.mutilated" href="#Cowsay.mutilated"><code>Cowsay.mutilated</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function mutilated()</code></pre><p>A mutilated cow, from aspolito@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;I wouldn&#39;t have been so eager to make head cheese...&quot;, cow=Cowsay.mutilated)
_______________________________________
/ I wouldn&#39;t have been so eager to make \
\ head cheese... /
---------------------------------------
\ \_______
v__v \ \ O )
(oo) ||----w |
(__) || || \/\</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/mutilated.cow.jl#L1-L18">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.skeleton" href="#Cowsay.skeleton"><code>Cowsay.skeleton</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function skeleton()</code></pre><p>This &#39;Scowleton&#39; brought to you by one of {appel,kube,rowe}@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;All T-Bone, no steak&quot;, cow=Cowsay.skeleton)
______________________
&lt; All T-Bone, no steak &gt;
----------------------
\ (__)
\ /oo|
\ (_&quot;_)*+++++++++*
//I#\\\\\\\\I\
I[I|I|||||I I `
I`I&#39;///&#39;&#39; I I
I I I I
~ ~ ~ ~
Scowleton</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/skeleton.cow.jl#L4-L26">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.small" href="#Cowsay.small"><code>Cowsay.small</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function small()</code></pre><p>A small cow, artist unknown</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;A calf&quot;, cow=Cowsay.small)
________
&lt; A calf &gt;
--------
\ ,__,
\ (..)____
(__) )\
||--|| *</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/small.cow.jl#L1-L17">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.supermilker" href="#Cowsay.supermilker"><code>Cowsay.supermilker</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function supermilker()</code></pre><p>A cow being milked, probably from Lars Smith (lars@csua.berkeley.edu)</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Paying the bills&quot;, cow=Cowsay.supermilker)
__________________
&lt; Paying the bills &gt;
------------------
\ ^__^
\ (oo)\_______ ________
(__)\ )\/\ |Super |
||----W | |Milker|
|| UDDDDDDDDD|______|</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/supermilker.cow.jl#L1-L18">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.three_eyes" href="#Cowsay.three_eyes"><code>Cowsay.three_eyes</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function three_eyes()</code></pre><p>A cow with three eyes, brought to you by dpetrou@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;The better to see you with...&quot;, cow=Cowsay.three_eyes)
_______________________________
&lt; The better to see you with... &gt;
-------------------------------
\ ^___^
\ (ooo)\_______
(___)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/three-eyes.cow.jl#L1-L19">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.udder" href="#Cowsay.udder"><code>Cowsay.udder</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function udder()</code></pre><p>The cow from a file called cow-n-horn, artist unknown.</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Milking time!&quot;, cow=Cowsay.udder)
_______________
&lt; Milking time! &gt;
---------------
\
\ (__)
o o\
(&#39;&#39;) \---------
\ \
| |\
||---( )_|| *
|| UU ||
== ==</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/udder.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.vader" href="#Cowsay.vader"><code>Cowsay.vader</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function vader()</code></pre><p>Cowth Vader, from geordan@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Luke, I am your father!&quot;, cow=Cowsay.vader)
_________________________
&lt; Luke, I am your father! &gt;
-------------------------
\ ,-^-.
\ !oYo!
\ /./=\.\______
## )\/\
||-----w||
|| ||
Cowth Vader</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/vader.cow.jl#L1-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.www" href="#Cowsay.www"><code>Cowsay.www</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function www()</code></pre><p>A cow wadvertising the World Wide Web, from lim@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;My favorite site is MooTube&quot;, cow=Cowsay.www)
_____________________________
&lt; My favorite site is MooTube &gt;
-----------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||--WWW |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/www.cow.jl#L1-L19">source</a></section></article><h2 id="Mascots"><a class="docs-heading-anchor" href="#Mascots">Mascots</a><a id="Mascots-1"></a><a class="docs-heading-anchor-permalink" href="#Mascots" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.blowfish" href="#Cowsay.blowfish"><code>Cowsay.blowfish</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function blowfish()</code></pre><p>A blowfish.</p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Bloop, bloop&quot;, cow=Cowsay.blowfish)
______________
&lt; Bloop, bloop &gt;
--------------
\
\
| .
. |L /|
_ . |\ _| \--+._/| .
/ ||\| Y J ) / |/| ./
J |)&#39;( | ` F`.&#39;/
-&lt;| F __ .-&lt;
| / .-&#39;. `. /-. L___
J \ &lt; \ | | O\|.-&#39;
_J \ .- \/ O | | \ |F
&#39;-F -&lt;_. \ .-&#39; `-&#39; L__
__J _ _. &gt;-&#39; )._. |-&#39;
`-|.&#39; /_. \_| F
/.- . _.&lt;
/&#39; /.&#39; .&#39; `\
/L /&#39; |/ _.-&#39;-\
/&#39;J ___.---&#39;\|
|\ .--&#39; V | `. `
|/`. `-. `._)
/ .-.\
VK \ ( `\
`.\
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/blowfish.cow.jl#L1-L38">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.elephant" href="#Cowsay.elephant"><code>Cowsay.elephant</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function elephant()</code></pre><p>An elephant out and about</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Toot!&quot;, cow=Cowsay.elephant)
_______
&lt; Toot! &gt;
-------
\ /\ ___ /\
\ // \/ \/ \\
(( O O ))
\\ / \ //
\/ | | \/
| | | |
| | | |
| o |
| | | |
|m| |m|</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/elephant.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.tux" href="#Cowsay.tux"><code>Cowsay.tux</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function tux()</code></pre><p>TuX (c) pborys@p-soft.silesia.linux.org.pl</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Talk is cheap. Show me the code.&quot;, cow=Cowsay.tux)
__________________________________
&lt; Talk is cheap. Show me the code. &gt;
----------------------------------
\
\
.--.
|o_o |
|:_/ |
// \ \
(| | )
/&#39;\_ _/`\
\___)=(___/</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/tux.cow.jl#L4-L26">source</a></section></article><h2 id="Cows-and-friends"><a class="docs-heading-anchor" href="#Cows-and-friends">Cows and friends</a><a id="Cows-and-friends-1"></a><a class="docs-heading-anchor-permalink" href="#Cows-and-friends" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.dragon_and_cow" href="#Cowsay.dragon_and_cow"><code>Cowsay.dragon_and_cow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function dragon_and_cow()</code></pre><p>A dragon smiting a cow, possible credit to kube@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Roast beef: it&#39;s what&#39;s for dinner&quot;, cow=Cowsay.dragon_and_cow)
____________________________________
&lt; Roast beef: it&#39;s what&#39;s for dinner &gt;
------------------------------------
\ ^ /^
\ / \ // \
\ |\___/| / \// .\
\ /O O \__ / // | \ \ *----*
/ / \/_/ // | \ \ \ |
@___@` \/_ // | \ \ \/\ \
0/0/| \/_ // | \ \ \ \
0/0/0/0/| \/// | \ \ | |
0/0/0/0/0/_|_ / ( // | \ _\ | /
0/0/0/0/0/0/`/,_ _ _/ ) ; -. | _ _\.-~ / /
,-} _ *-.|.-~-. .~ ~
\ \__/ `/\ / ~-. _ .-~ /
\____(oo) *. } { /
( (--) .----~-.\ \-` .~
//__\\ \__ Ack! ///.----..&lt; \ _ -~
// \\ ///-._ _ _ _ _ _ _{^ - - - - ~</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/dragon-and-cow.cow.jl#L1-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.mech_and_cow" href="#Cowsay.mech_and_cow"><code>Cowsay.mech_and_cow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function mech_and_cow()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Do you ever get that feeling...?&quot;, cow=Cowsay.mech_and_cow)
__________________________________
&lt; Do you ever get that feeling...? &gt;
----------------------------------
\ ,-----.
/ | |
\ ,--| |-.
/ __,----| | | |
\ ,;:: | `_____&#39; |
/ `._______| i^i |
\ `----| |---&#39;| .
/ ,-------._| |== ||//
\ | |_|P`. /&#39;/
/ `-------&#39; &#39;Y Y/&#39;/&#39;
\ .==\ /_\
^__^ / /&#39;| `i
(oo)\_______ /&#39; / | |
(__)\ )\/\ /&#39; / | `i
||----w|| ___,;`----&#39;.___L_,-&#39;`\__
|| || i_____;----\.____i&quot;&quot;\____\</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/mech-and-cow.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.surgery" href="#Cowsay.surgery"><code>Cowsay.surgery</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function surgery()</code></pre><p>A cow operation, artist unknown</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Removing the last bit of net wrap now&quot;, cow=Cowsay.surgery)
_______________________________________
&lt; Removing the last bit of net wrap now &gt;
---------------------------------------
\ \ /
\ \/
(__) /\
(oo) O O
_\/_ //
* ( ) //
\ (\\ //
\( \\ )
( \\ ) /\
___[\______/^^^^^^^\__/) o-)__
|\__[=======______//________)__\
\|_______________//____________|
||| || //|| |||
||| || @.|| |||
|| \/ .\/ ||
. .
&#39;.&#39;.`
COW-OPERATION</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/surgery.cow.jl#L4-L35">source</a></section></article><h2 id="Other"><a class="docs-heading-anchor" href="#Other">Other</a><a id="Other-1"></a><a class="docs-heading-anchor-permalink" href="#Other" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.bunny" href="#Cowsay.bunny"><code>Cowsay.bunny</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function bunny()</code></pre><p>A cute little wabbit</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Look at that tortoise way off in the distance.&quot;, cow=Cowsay.bunny)
______________________________________
/ Look at that tortoise way off in the \
\ distance. /
--------------------------------------
\
\ \
\ /\
( )
.( o ).
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/bunny.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.dragon" href="#Cowsay.dragon"><code>Cowsay.dragon</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function dragon()</code></pre><p>The Whitespace Dragon</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Roar!&quot;, cow=Cowsay.dragon)
_______
&lt; Roar! &gt;
-------
\ / \ //\
\ |\___/| / \// \\
/0 0 \__ / // | \ \
/ / \/_/ // | \ \
@_^_@&#39;/ \/_ // | \ \
//_^_/ \/_ // | \ \
( //) | \/// | \ \
( / /) _|_ / ) // | \ _\
( // /) &#39;/,_ _ _/ ( ; -. | _ _\.-~ .-~~~^-.
(( / / )) ,-{ _ `-.|.-~-. .~ `.
(( // / )) &#39;/\ / ~-. _ .-~ .-~^-. \
(( /// )) `. { } / \ \
(( / )) .----~-.\ \-&#39; .~ \ `. \^-.
///.----..&gt; \ _ -~ `. ^-` ^-_
///-._ _ _ _ _ _ _}^ - - - - ~ ~-- ,.-~
/.-~
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/dragon.cow.jl#L4-L34">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.elephant_in_snake" href="#Cowsay.elephant_in_snake"><code>Cowsay.elephant_in_snake</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function elephant_in_snake()</code></pre><p>Do we need to explain this?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Help!&quot;, cow=Cowsay.elephant_in_snake)
_______
&lt; Help! &gt;
-------
\
\ ....
........ .
. .
. .
......... .......
..............................
Elephant inside ASCII snake
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/elephant-in-snake.cow.jl#L1-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.eyes" href="#Cowsay.eyes"><code>Cowsay.eyes</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function eyes()</code></pre><p>Evil-looking eyes</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Mwah, ha, ha!&quot;, cow=Cowsay.eyes)
_______________
&lt; Mwah, ha, ha! &gt;
---------------
\
\
.::!!!!!!!:.
.!!!!!:. .:!!!!!!!!!!!!
~~~~!!!!!!. .:!!!!!!!!!UWWW$$$
:$$NWX!!: .:!!!!!!XUWW$$$$$$$$$P
$$$$$##WX!: .&lt;!!!!UW$$$$&quot; $$$$$$$$#
$$$$$ $$$UX :!!UW$$$$$$$$$ 4$$$$$*
^$$$B $$$$\ $$$$$$$$$$$$ d$$R&quot;
&quot;*$bd$$$$ &#39;*$$$$$$$$$$$o+#&quot;
&quot;&quot;&quot;&quot; &quot;&quot;&quot;&quot;&quot;&quot;&quot;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/eyes.cow.jl#L1-L25">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.flaming_sheep" href="#Cowsay.flaming_sheep"><code>Cowsay.flaming_sheep</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function flaming_sheep()</code></pre><p>The flaming sheep, contributed by Geordan Rosario (geordan@csua.berkeley.edu)</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Baaahhh!&quot;, cow=Cowsay.flaming_sheep)
__________
&lt; Baaahhh! &gt;
----------
\ . . .
\ . . . ` ,
\ .; . : .&#39; : : : .
\ i..`: i` i.i.,i i .
\ `,--.|i |i|ii|ii|i:
UooU\.&#39;@@@@@@`.||&#39;
\__/(@@@@@@@@@@)&#39;
(@@@@@@@@)
`YY~~~~YY&#39;
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/flaming-sheep.cow.jl#L4-L27">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.fox" href="#Cowsay.fox"><code>Cowsay.fox</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function fox()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;What does the fox say?&quot;, cow=Cowsay.fox)
________________________
&lt; What does the fox say? &gt;
------------------------
\ ,-. .-,
\ |-.\ __ /.-|
\ \ ` ` /
/_ _ \
&lt; _`q p _ &gt;
&lt;.._=/ \=_. &gt;
{`\()/`}`\
{ } \
|{ } \
\ &#39;--&#39; .- \
|- / \
| | | | | ;
| | |.;.,..__ |
.-&quot;&quot;;` `|
/ | /
`-../____,..---&#39;`</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/fox.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.kitty" href="#Cowsay.kitty"><code>Cowsay.kitty</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function kitty()</code></pre><p>A kitten of sorts, I think</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Meow&quot;, cow=Cowsay.kitty)
______
&lt; Meow &gt;
------
\
\
(&quot;`-&#39; &#39;-/&quot;) .___..--&#39; &#39; &quot;`-._
` *_ * ) `-. ( ) .`-.__. `)
(_Y_.) &#39; ._ ) `._` ; `` -. .-&#39;
_.. `--&#39;_..-_/ /--&#39; _ .&#39; ,4
( i l ),-&#39;&#39; ( l i),&#39; ( ( ! .-&#39;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/kitty.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.koala" href="#Cowsay.koala"><code>Cowsay.koala</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function koala</code></pre><p>From the canonical koala collection</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Welcome to Down Under&quot;, cow=Cowsay.koala)
_______________________
&lt; Welcome to Down Under &gt;
-----------------------
\
\
___
{~._.~}
( Y )
()~*~()
(_)-(_)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/koala.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.meow" href="#Cowsay.meow"><code>Cowsay.meow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function meow()</code></pre><p>A meowing tiger?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;We&#39;re kind of stupid that way&quot;, cow=Cowsay.meow)
_______________________________
&lt; We&#39;re kind of stupid that way &gt;
-------------------------------
\
\ , _ ___.--&#39;&#39;&#39;`--&#39;&#39;//-,-_--_.
\`&quot;&#39; ` || \\ \ \\/ / // / ,-\\`,_
/&#39;` \ \ || Y | \|/ / // / - |__ `-,
/@&quot;\ ` \ `\ | | ||/ // | \/ \ `-._`-,_.,
/ _.-. `.-\,___/\ _/|_/_\_\/|_/ | `-._._)
`-&#39;``/ / | // \__/\__ / \__/ \
`-&#39; /-\/ | -| \__ \ |-&#39; |
__/\ / _/ \/ __,-&#39; ) ,&#39; _|&#39;
(((__/(((_.&#39; ((___..-&#39;((__,&#39;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/meow.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.moose" href="#Cowsay.moose"><code>Cowsay.moose</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function moose()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Time to vamoose&quot;, cow=Cowsay.moose)
_________________
&lt; Time to vamoose &gt;
-----------------
\
\ \_\_ _/_/
\ \__/
(oo)\_______
(__)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/moose.cow.jl#L1-L18">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.sheep" href="#Cowsay.sheep"><code>Cowsay.sheep</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function sheep()</code></pre><p>The non-flaming sheep.</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Baa&quot;, cow=Cowsay.sheep)
_____
&lt; Baa &gt;
-----
\
\
__
UooU\.&#39;@@@@@@`.
\__/(@@@@@@@@@@)
(@@@@@@@@)
`YY~~~~YY&#39;
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/sheep.cow.jl#L4-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.stegosaurus" href="#Cowsay.stegosaurus"><code>Cowsay.stegosaurus</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function stegosaurus()</code></pre><p>A stegosaur with a top hat?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;How do you do?&quot;, cow=Cowsay.stegosaurus)
________________
&lt; How do you do? &gt;
----------------
\ . .
\ / `. .&#39; &quot;
\ .---. &lt; &gt; &lt; &gt; .---.
\ | \ \ - ~ ~ - / / |
_____ ..-~ ~-..-~
| | \~~~\.&#39; `./~~~/
--------- \__/ \__/
.&#39; O \ / / \ &quot;
(_____, `._.&#39; | } \/~~~/
`----. / } | / \__/
`-. | / | / `. ,~~|
~-.__| /_ - ~ ^| /- _ `..-&#39;
| / | / ~-. `-. _ _ _
|_____| |_____| ~ - . _ _ _ _ _&gt;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/stegosaurus.cow.jl#L4-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.turkey" href="#Cowsay.turkey"><code>Cowsay.turkey</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function turkey()</code></pre><p>Turkey!</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Gobble, gobble&quot;, cow=Cowsay.turkey)
________________
&lt; Gobble, gobble &gt;
----------------
\ ,+*^^*+___+++_
\ ,*^^^^ )
\ _+* ^**+_
\ +^ _ _++*+_+++_, )
_+^^*+_ ( ,+*^ ^ \+_ )
{ ) ( ,( ,_+--+--, ^) ^\
{ (@) } f ,( ,+-^ __*_*_ ^^\_ ^\ )
{:;-/ (_+*-+^^^^^+*+*&lt;_ _++_)_ ) ) /
( / ( ( ,___ ^*+_+* ) &lt; &lt; \
U _/ ) *--&lt; ) ^\-----++__) ) ) )
( ) _(^)^^)) ) )\^^^^^))^*+/ / /
( / (_))_^)) ) ) ))^^^^^))^^^)__/ +^^
( ,/ (^))^)) ) ) ))^^^^^^^))^^) _)
*+__+* (_))^) ) ) ))^^^^^^))^^^^^)____*^
\ \_)^)_)) ))^^^^^^^^^^))^^^^)
(_ ^\__^^^^^^^^^^^^))^^^^^^^)
^\___ ^\__^^^^^^))^^^^^^^^)\\
^^^^^\uuu/^^\uuu/^^^^\^\^\^\^\^\^\^\
___) &gt;____) &gt;___ ^\_\_\_\_\_\_\)
^^^//\\_^^//\\_^ ^(\_\_\_\)
^^^ ^^ ^^^ ^</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/turkey.cow.jl#L4-L37">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.turtle" href="#Cowsay.turtle"><code>Cowsay.turtle</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function turtle()</code></pre><p>A mysterious turtle...</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Where is that pesky rabbit?&quot;, cow=Cowsay.turtle)
_____________________________
&lt; Where is that pesky rabbit? &gt;
-----------------------------
\ ___-------___
\ _-~~ ~~-_
\ _-~ /~-_
/^\__/^\ /~ \ / \
/| O|| O| / \_______________/ \
| |___||__| / / \ \
| \ / / \ \
| (_______) /______/ \_________ \
| / / \ / \
\ \^\\ \ / \ /
\ || \______________/ _-_ //\__//
\ ||------_-~~-_ ------------- \ --/~ ~\ || __/
~-----||====/~ |==================| |/~~~~~
(_(__/ ./ / \_\ \.
(_(___/ \_____)_)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/turtle.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.vader_koala" href="#Cowsay.vader_koala"><code>Cowsay.vader_koala</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function vader_koala</code></pre><p>Another canonical koala?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Luke, you are my joey!&quot;, cow=Cowsay.vader_koala)
________________________
&lt; Luke, you are my joey! &gt;
------------------------
\
\ .
.---. //
Y|o o|Y//
/_(i=i)K/
~()~*~()~
(_)-(_)
Darth
Vader
koala</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/cows/vader-koala.cow.jl#L1-L25">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../">« Home</a><a class="docs-footer-nextpage" href="../cowfiles/">Make your own Cowfile »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Wednesday 11 May 2022 01:06">Wednesday 11 May 2022</span>. Using Julia version 1.7.2.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>

@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Home · cowsay.jl</title><script data-outdated-warner src="assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href>cowsay.jl</a></span></div><form class="docs-search" action="search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li class="is-active"><a class="tocitem" href>Home</a><ul class="internal"><li><a class="tocitem" href="#Usage"><span>Usage</span></a></li></ul></li><li><a class="tocitem" href="cows/">Available Cowfiles</a></li><li><a class="tocitem" href="cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Home</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Home</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/MillironX/cowsay.jl/blob/master/docs/src/index.md#" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Cowsay.jl"><a class="docs-heading-anchor" href="#Cowsay.jl">Cowsay.jl</a><a id="Cowsay.jl-1"></a><a class="docs-heading-anchor-permalink" href="#Cowsay.jl" title="Permalink"></a></h1><p>A Julia package that lets you use <a href="https://en.wikipedia.org/wiki/Cowsay">cowsay</a> in your Julia programs!</p><h2 id="Usage"><a class="docs-heading-anchor" href="#Usage">Usage</a><a id="Usage-1"></a><a class="docs-heading-anchor-permalink" href="#Usage" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.cowsay" href="#Cowsay.cowsay"><code>Cowsay.cowsay</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">cowsay([io,] message::AbstractString; kwargs...)
cowthink([io,] message::AbstractString; kwargs...)</code></pre><p>Print an ASCII picture of a cow saying/thinking <code>message</code></p><p><strong>Arguments</strong></p><ul><li><code>message::AbstractString</code>: Tell the cow what to say</li></ul><p><strong>Keywords</strong></p><ul><li><code>cow=default</code>: Specify a particular function handle to print the ASCII art. See below for more details on what constitutes a valid function handle.</li><li><code>eyes::AbstractString=&quot;oo&quot;</code>: A two-character string to be drawn in for the eyes. Not all cowfiles support this, though.</li><li><code>tongue::AbstractString=&quot; &quot;</code>: A two-character string to be drawn in for the tongue. Not all cowfiles support this.</li><li><code>wrap::Int=40</code>: The number of characters at which to wrap <code>message</code> to a new line</li><li><code>nowrap::Bool=false</code>: Don&#39;t perform text wrapping on <code>message</code></li></ul><p><strong>Cow appearance Keywords</strong></p><ul><li><code>borg::Bool=false</code>: Initiates Borg mode</li><li><code>dead::Bool=false</code>: Causes the cow to appear dead</li><li><code>greedy::Bool=false</code>: Invokes greedy mode</li><li><code>paranoid::Bool=false</code>: Causes a state of paranoia to come over the cow</li><li><code>stoned::Bool=false</code>: Makes the cow appear thoroughly stoned</li><li><code>tired::Bool=false</code>: Yields a tired cow</li><li><code>wired::Bool=false</code>: Somewhat the opposite of <code>tired</code>, and initiates wired mode</li><li><code>young::Bool=false</code>: Brings on the cow&#39;s youthful appearance</li></ul><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Have you mooed today?&quot;)
_______________________
&lt; Have you mooed today? &gt;
-----------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
julia&gt; cowthink(&quot;Have I mooed today?&quot;)
_____________________
( Have I mooed today? )
---------------------
o ^__^
o (oo)\_______
(__)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/Cowsay.jl#L43-L94">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.cowsaid" href="#Cowsay.cowsaid"><code>Cowsay.cowsaid</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">cowsaid(message::AbstractString; kwargs...)
cowthunk(message::AbstractString; kwargs...)</code></pre><p>Constructs cow art and returns it as a string instead of printing it. See <a href="#Cowsay.cowsay"><code>cowsay</code></a> for implementation details.</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsaid(&quot;Have you mooed today?&quot;)
&quot; _______________________\n&lt; Have you mooed today? &gt;\n -----------------------\n \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\/\\\n ||----w |\n || ||\n&quot;</code></pre><pre><code class="language-julia-repl hljs">julia&gt; cowthunk(&quot;Have I mooed today?&quot;)
&quot; _____________________\n( Have I mooed today? )\n ---------------------\n o ^__^\n o (oo)\\_______\n (__)\\ )\\/\\\n ||----w |\n || ||\n&quot;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/e1a1447918b2f11710797878da236775bc2986bc/src/Cowsay.jl#L118-L136">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="cows/">Available Cowfiles »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Wednesday 11 May 2022 01:06">Wednesday 11 May 2022</span>. Using Julia version 1.7.2.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>

@ -0,0 +1,2 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Search · cowsay.jl</title><script data-outdated-warner src="../assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/search/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../">cowsay.jl</a></span></div><form class="docs-search" action><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../cows/">Available Cowfiles</a></li><li><a class="tocitem" href="../cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Search</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Search</a></li></ul></nav><div class="docs-right"><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article><p id="documenter-search-info">Loading search...</p><ul id="documenter-search-results"></ul></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Wednesday 11 May 2022 01:06">Wednesday 11 May 2022</span>. Using Julia version 1.7.2.</p></section><footer class="modal-card-foot"></footer></div></div></div></body><script src="../search_index.js"></script><script src="../assets/search.js"></script></html>

File diff suppressed because one or more lines are too long

@ -0,0 +1 @@
var DOCUMENTER_CURRENT_VERSION = "dev";

@ -1,3 +0,0 @@
[deps]
Cowsay = "b6370f49-8ad1-4651-ad9e-3639b35da0e9"
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"

@ -1,26 +0,0 @@
using Cowsay
using Documenter
DocMeta.setdocmeta!(Cowsay, :DocTestSetup, :(using Cowsay); recursive=true)
makedocs(;
modules=[Cowsay],
authors="Thomas A. Christensen II <25492070+MillironX@users.noreply.github.com> and contributors",
repo="https://code.millironx.com/millironx/Cowsay.jl/blob/{commit}{path}#{line}",
sitename="Cowsay.jl",
format=Documenter.HTML(;
prettyurls=get(ENV, "CI", "false") == "true",
canonical="https://cowsay-jl.millironx.com/",
assets=String[],
),
pages=[
"Home" => "index.md",
"Available Cowfiles" => "cows.md",
"Make your own Cowfile" => "cowfiles.md",
],
)
deploydocs(;
repo="code.millironx.com/millironx/Cowsay.jl",
devbranch="master",
)

@ -1,39 +0,0 @@
# Making a cow function
The original cowsay used Perl scripts (called 'cowfiles') to allow for creating more ASCII
cow art. Cowsay.jl uses Julia functions, instead. In order to be usable by `Cowsay.cowsay`,
a cow function **must**
1. Take the correct arguments
The function must take three (3)
[keyword arguments](https://docs.julialang.org/en/v1/manual/functions/#Keyword-Arguments)
of the form
- `eyes::AbstractString="oo"`
- `tongue::AbstractString=" "`
- `thoughts::AbstractString="\\"`
When drawing the cow artwork, you may then use the variables `eyes` in place of the
eyes, `tongue` in place of the tongue, and `thoughts` in place of the speech ballon
trail. Use of these variables in constructing the cow is optional (but makes the use of
your cow function far more fun), but all three arguments must be present in the
signature, regardless.
2. Return a string
The cow artwork must be returned from the function as a string. This is distinctly
different from how the original cowsay modified the `$the_cow` variable.
## Helpful hints for making cow functions
1. Include one function per file, with the extension `.cow.jl`
2. Do not indent within a `.cow.jl` file to better see the artwork
3. Make use of string literals (`"""`) and string interpolation (`$`) to build the cow
art
4. Be sure to escape backslashes (`\`) and dollar signs (`$`) within your artwork
5. When converting from Perl cowfiles, _unescape_ at symbols (`@`), as these are
**not** special in Julia strings
6. Split the `eyes` variable to get individual left- and right-eye when creating large cow
functions
7. Have fun!

@ -1,55 +0,0 @@
# Cows
Examples of all the cowfiles available.
## Bovine
```@docs
Cowsay.default
Cowsay.cower
Cowsay.moofasa
Cowsay.mutilated
Cowsay.skeleton
Cowsay.small
Cowsay.supermilker
Cowsay.three_eyes
Cowsay.udder
Cowsay.vader
Cowsay.www
```
## Mascots
```@docs
Cowsay.blowfish
Cowsay.elephant
Cowsay.tux
```
## Cows and friends
```@docs
Cowsay.dragon_and_cow
Cowsay.mech_and_cow
Cowsay.surgery
```
## Other
```@docs
Cowsay.bunny
Cowsay.dragon
Cowsay.elephant_in_snake
Cowsay.eyes
Cowsay.flaming_sheep
Cowsay.fox
Cowsay.kitty
Cowsay.koala
Cowsay.meow
Cowsay.moose
Cowsay.sheep
Cowsay.stegosaurus
Cowsay.turkey
Cowsay.turtle
Cowsay.vader_koala
```

@ -1,15 +0,0 @@
```@meta
CurrentModule = Cowsay
```
# Cowsay.jl
A Julia package that lets you use
[cowsay](https://en.wikipedia.org/wiki/Cowsay) in your Julia programs!
## Usage
```@docs
Cowsay.cowsay
Cowsay.cowsaid
```

@ -0,0 +1,2 @@
<!--This file is automatically generated by Documenter.jl-->
<meta http-equiv="refresh" content="0; url=./stable/"/>

@ -1,348 +0,0 @@
module Cowsay
using TextWrap
export cowsay
export cowthink
export cowsaid
export cowthunk
include("cows/blowfish.cow.jl")
include("cows/bunny.cow.jl")
include("cows/cower.cow.jl")
include("cows/default.cow.jl")
include("cows/dragon-and-cow.cow.jl")
include("cows/dragon.cow.jl")
include("cows/elephant-in-snake.cow.jl")
include("cows/elephant.cow.jl")
include("cows/eyes.cow.jl")
include("cows/flaming-sheep.cow.jl")
include("cows/fox.cow.jl")
include("cows/kitty.cow.jl")
include("cows/koala.cow.jl")
include("cows/mech-and-cow.cow.jl")
include("cows/meow.cow.jl")
include("cows/moofasa.cow.jl")
include("cows/moose.cow.jl")
include("cows/mutilated.cow.jl")
include("cows/sheep.cow.jl")
include("cows/skeleton.cow.jl")
include("cows/small.cow.jl")
include("cows/stegosaurus.cow.jl")
include("cows/supermilker.cow.jl")
include("cows/surgery.cow.jl")
include("cows/three-eyes.cow.jl")
include("cows/turkey.cow.jl")
include("cows/turtle.cow.jl")
include("cows/tux.cow.jl")
include("cows/udder.cow.jl")
include("cows/vader-koala.cow.jl")
include("cows/vader.cow.jl")
include("cows/www.cow.jl")
"""
cowsay([io,] message::AbstractString; kwargs...)
cowthink([io,] message::AbstractString; kwargs...)
Print an ASCII picture of a cow saying/thinking `message`
# Arguments
- `message::AbstractString`: Tell the cow what to say
# Keywords
- `cow=default`: Specify a particular function handle to print the ASCII art. See below for
more details on what constitutes a valid function handle.
- `eyes::AbstractString="oo"`: A two-character string to be drawn in for the eyes. Not all
cowfiles support this, though.
- `tongue::AbstractString=" "`: A two-character string to be drawn in for the tongue. Not
all cowfiles support this.
- `wrap::Int=40`: The number of characters at which to wrap `message` to a new line
- `nowrap::Bool=false`: Don't perform text wrapping on `message`
## Cow appearance Keywords
- `borg::Bool=false`: Initiates Borg mode
- `dead::Bool=false`: Causes the cow to appear dead
- `greedy::Bool=false`: Invokes greedy mode
- `paranoid::Bool=false`: Causes a state of paranoia to come over the cow
- `stoned::Bool=false`: Makes the cow appear thoroughly stoned
- `tired::Bool=false`: Yields a tired cow
- `wired::Bool=false`: Somewhat the opposite of `tired`, and initiates wired mode
- `young::Bool=false`: Brings on the cow's youthful appearance
# Example
```jldoctest
julia> cowsay("Have you mooed today?")
_______________________
< Have you mooed today? >
-----------------------
\\ ^__^
\\ (oo)\\_______
(__)\\ )\\/\\
||----w |
|| ||
julia> cowthink("Have I mooed today?")
_____________________
( Have I mooed today? )
---------------------
o ^__^
o (oo)\\_______
(__)\\ )\\/\\
||----w |
|| ||
```
"""
function cowsay(message::AbstractString; kwargs...)
cowsay(stdout, message; kwargs...)
end
function cowsay(io::IO, message::AbstractString; kwargs...)
println(io, cowsaid(message; kwargs...))
end
"""
cowthink([io,] message::AbstractString; kwargs...)
Print an ASCII picture of a cow thinking `message`
See [`cowsay`](@ref)
"""
function cowthink(message::AbstractString; kwargs...)
cowthink(stdout, message; kwargs...)
end
function cowthink(io::IO, message::AbstractString; kwargs...)
println(io, cowthunk(message; kwargs...))
end
"""
cowsaid(message::AbstractString; kwargs...)
cowthunk(message::AbstractString; kwargs...)
Constructs cow art and returns it as a string instead of printing it. See [`cowsay`](@ref)
for implementation details.
# Example
```jldoctest
julia> cowsaid("Have you mooed today?")
" _______________________\\n< Have you mooed today? >\\n -----------------------\\n \\\\ ^__^\\n \\\\ (oo)\\\\_______\\n (__)\\\\ )\\\\/\\\\\\n ||----w |\\n || ||\\n"
```
```jldoctest
julia> cowthunk("Have I mooed today?")
" _____________________\\n( Have I mooed today? )\\n ---------------------\\n o ^__^\\n o (oo)\\\\_______\\n (__)\\\\ )\\\\/\\\\\\n ||----w |\\n || ||\\n"
```
"""
function cowsaid(message::AbstractString; kwargs...)
return cowmoo(message, :say; kwargs...)
end
"""
cowthunk(message::AbstractString; kwargs...)
Construct art of a cow thinking `message`.
See [`cowsaid`](@ref) and [`cowsay`](@ref)
"""
function cowthunk(message::AbstractString; kwargs...)
return cowmoo(message, :think; kwargs...)
end
"""
cowmoo(message::AbstractString, mode, kwargs...)
Converts `message` into either saying or thinking art based on the value of `mode`. All of
the default values for `kwargs` for pretty much every other function live here. See
[`cowsay`](@ref) for their descriptions.
"""
function cowmoo(message::AbstractString, mode; kwargs...)
cow = dict_or_default(kwargs, :cow, Cowsay.default)
eyes = dict_or_default(kwargs, :eyes, "oo")
tongue = dict_or_default(kwargs, :tongue, " ")
wrap = dict_or_default(kwargs, :wrap, 40)
nowrap = dict_or_default(kwargs, :nowrap, false)
eyes, tongue = construct_face!(eyes, tongue; kwargs...)
# Default to 'say' mode
if mode == :think
balloon = thinkballoon
thoughts = "o"
else
balloon = sayballoon
thoughts = "\\"
end
wrapped_message = !nowrap ? TextWrap.wrap(message, width=wrap, replace_whitespace=false) : message
speechbubble = balloon(wrapped_message)
return string(speechbubble, cow(eyes=eyes, tongue=tongue, thoughts=thoughts))
end
function construct_face!(eyes, tongue; kwargs...)
borg = dict_or_default(kwargs, :borg, false)
dead = dict_or_default(kwargs, :dead, false)
greedy = dict_or_default(kwargs, :greedy, false)
paranoid = dict_or_default(kwargs, :paranoid, false)
stoned = dict_or_default(kwargs, :stoned, false)
tired = dict_or_default(kwargs, :tired, false)
wired = dict_or_default(kwargs, :wired, false)
young = dict_or_default(kwargs, :young, false)
if borg
eyes = "=="
end
if dead
eyes = "xx"
tongue = "U "
end
if greedy
eyes = "\$\$"
end
if paranoid
eyes = "@@"
end
if stoned
eyes = "**"
tongue = "U "
end
if tired
eyes = "--"
end
if wired
eyes = "OO"
end
if young
eyes = ".."
end
return eyes, tongue
end
"""
dict_or_default(dict, key, value)
If `key` is present in `dict`, then return `dict[key]`, otherwise return `value`
# Example
```jldoctest
julia> dict = Dict(:holstein => "lotsa milk", :jersey => "butterfat", :shorthorn => "worthless");
julia> Cowsay.dict_or_default(dict, :holstein, "fluid")
"lotsa milk"
julia> Cowsay.dict_or_default(dict, :brown_swiss, "cheese")
"cheese"
```
"""
function dict_or_default(dict, key, value)
if haskey(dict, key)
return dict[key]
else
return value
end
end
"""
function sayballoon(message::AbstractString)
Creates the balloon portion of the art for [`cowsay`](@ref)
See also [`cowsay`](@ref), [`thinkballoon`](@ref)
"""
function sayballoon(message::AbstractString)
messagelines = split(message, "\n")
nlines = length(messagelines)
linelength = max(length.(messagelines)...)
paddinglength = linelength + 2
if nlines == 1
balloon = string(
" ",
repeat("_", paddinglength),
"\n< ",
message,
" >\n ",
repeat("-", paddinglength),
"\n"
)
else
balloon = string(
" ",
repeat("_", paddinglength),
"\n/ ",
rpad(messagelines[1], linelength),
" \\\n"
)
if nlines > 2
for i = 2:nlines-1
balloon = string(
balloon,
"| ",
rpad(messagelines[i], linelength),
" |\n"
)
end
end
balloon = string(
balloon,
"\\ ",
rpad(messagelines[end], linelength),
" /\n ",
repeat("-", paddinglength),
"\n"
)
end
return balloon
end #function
"""
function thinkballoon(message::AbstractString)
Creates the balloon portion of the art for [`cowthink`](@ref)
See also [`cowthink`](@ref), [`sayballoon`](@ref)
"""
function thinkballoon(message::AbstractString)
messagelines = split(message, "\n")
nlines = length(messagelines)
linelength = max(length.(messagelines)...)
paddinglength = linelength + 2
balloon = string(
" ",
repeat("_", paddinglength),
"\n"
)
for i in 1:nlines
balloon = string(
balloon,
"( ",
rpad(messagelines[i], linelength),
" )\n"
)
end #for
balloon = string(
balloon,
" ",
repeat("-", paddinglength),
"\n"
)
return balloon
end #function
end

@ -1,68 +0,0 @@
"""
function blowfish()
A blowfish.
```jldoctest
julia> cowsay("Bloop, bloop", cow=Cowsay.blowfish)
______________
< Bloop, bloop >
--------------
\\
\\
| .
. |L /|
_ . |\\ _| \\--+._/| .
/ ||\\| Y J ) / |/| ./
J |)'( | ` F`.'/
-<| F __ .-<
| / .-'. `. /-. L___
J \\ < \\ | | O\\|.-'
_J \\ .- \\/ O | | \\ |F
'-F -<_. \\ .-' `-' L__
__J _ _. >-' )._. |-'
`-|.' /_. \\_| F
/.- . _.<
/' /.' .' `\\
/L /' |/ _.-'-\\
/'J ___.---'\\|
|\\ .--' V | `. `
|/`. `-. `._)
/ .-.\\
VK \\ ( `\\
`.\\
```
"""
function blowfish(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts
| .
. |L /|
_ . |\\ _| \\--+._/| .
/ ||\\| Y J ) / |/| ./
J |)'( | ` F`.'/
-<| F __ .-<
| / .-'. `. /-. L___
J \\ < \\ | | O\\|.-'
_J \\ .- \\/ O | | \\ |F
'-F -<_. \\ .-' `-' L__
__J _ _. >-' )._. |-'
`-|.' /_. \\_| F
/.- . _.<
/' /.' .' `\\
/L /' |/ _.-'-\\
/'J ___.---'\\|
|\\ .--' V | `. `
|/`. `-. `._)
/ .-.\\
VK \\ ( `\\
`.\\
"""
return the_cow
end

@ -1,32 +0,0 @@
"""
function bunny()
A cute little wabbit
# Example
```jldoctest
julia> cowsay("Look at that tortoise way off in the distance.", cow=Cowsay.bunny)
______________________________________
/ Look at that tortoise way off in the \\
\\ distance. /
--------------------------------------
\\
\\ \\
\\ /\\
( )
.( o ).
```
"""
function bunny(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts \\
\\ /\\
( )
.( o ).
"""
return the_cow
end

@ -1,42 +0,0 @@
##
## A cowering cow
##
"""
function cower()
A cowering cow
# Example
```jldoctest
julia> cowsay("Is it safe to come out yet?", cow=Cowsay.cower)
_____________________________
< Is it safe to come out yet? >
-----------------------------
\\
\\
,__, | |
(oo)\\| |___
(__)\\| | )\\_
| |_w | \\
| | || *
Cower....
```
"""
function cower(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts
,__, | |
(oo)\\| |___
(__)\\| | )\\_
| |_w | \\
| | || *
Cower....
"""
return the_cow
end

@ -1,32 +0,0 @@
"""
function default()
The original cowfile
# Example
```jldoctest
julia> cowsay("Moo", cow=Cowsay.default)
_____
< Moo >
-----
\\ ^__^
\\ (oo)\\_______
(__)\\ )\\/\\
||----w |
|| ||
```
"""
function default(;eyes="oo", tongue=" ", thoughts="\\")
thecow =
"""
$thoughts ^__^
$thoughts ($eyes)\\_______
(__)\\ )\\/\\
$tongue ||----w |
|| ||
"""
return thecow
end

@ -1,52 +0,0 @@
"""
function dragon_and_cow()
A dragon smiting a cow, possible credit to kube@csua.berkeley.edu
# Example
```jldoctest
julia> cowsay("Roast beef: it's what's for dinner", cow=Cowsay.dragon_and_cow)
____________________________________
< Roast beef: it's what's for dinner >
------------------------------------
\\ ^ /^
\\ / \\ // \\
\\ |\\___/| / \\// .\\
\\ /O O \\__ / // | \\ \\ *----*
/ / \\/_/ // | \\ \\ \\ |
@___@` \\/_ // | \\ \\ \\/\\ \\
0/0/| \\/_ // | \\ \\ \\ \\
0/0/0/0/| \\/// | \\ \\ | |
0/0/0/0/0/_|_ / ( // | \\ _\\ | /
0/0/0/0/0/0/`/,_ _ _/ ) ; -. | _ _\\.-~ / /
,-} _ *-.|.-~-. .~ ~
\\ \\__/ `/\\ / ~-. _ .-~ /
\\____(oo) *. } { /
( (--) .----~-.\\ \\-` .~
//__\\\\ \\__ Ack! ///.----..< \\ _ -~
// \\\\ ///-._ _ _ _ _ _ _{^ - - - - ~
```
"""
function dragon_and_cow(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts ^ /^
$thoughts / \\ // \\
$thoughts |\\___/| / \\// .\\
$thoughts /O O \\__ / // | \\ \\ *----*
/ / \\/_/ // | \\ \\ \\ |
@___@` \\/_ // | \\ \\ \\/\\ \\
0/0/| \\/_ // | \\ \\ \\ \\
0/0/0/0/| \\/// | \\ \\ | |
0/0/0/0/0/_|_ / ( // | \\ _\\ | /
0/0/0/0/0/0/\`/,_ _ _/ ) ; -. | _ _\\.-~ / /
,-} _ *-.|.-~-. .~ ~
\\ \\__/ \`/\\ / ~-. _ .-~ /
\\____($eyes) *. } { /
( (--) .----~-.\\ \\-\` .~
//__\\\\ \\__ Ack! ///.----..< \\ _ -~
// \\\\ ///-._ _ _ _ _ _ _{^ - - - - ~
"""
return the_cow
end

@ -1,56 +0,0 @@
##
## The Whitespace Dragon
##
"""
function dragon()
The Whitespace Dragon
# Example
```jldoctest
julia> cowsay("Roar!", cow=Cowsay.dragon)
_______
< Roar! >
-------
\\ / \\ //\\
\\ |\\___/| / \\// \\\\
/0 0 \\__ / // | \\ \\
/ / \\/_/ // | \\ \\
@_^_@'/ \\/_ // | \\ \\
//_^_/ \\/_ // | \\ \\
( //) | \\/// | \\ \\
( / /) _|_ / ) // | \\ _\\
( // /) '/,_ _ _/ ( ; -. | _ _\\.-~ .-~~~^-.
(( / / )) ,-{ _ `-.|.-~-. .~ `.
(( // / )) '/\\ / ~-. _ .-~ .-~^-. \\
(( /// )) `. { } / \\ \\
(( / )) .----~-.\\ \\-' .~ \\ `. \\^-.
///.----..> \\ _ -~ `. ^-` ^-_
///-._ _ _ _ _ _ _}^ - - - - ~ ~-- ,.-~
/.-~
```
"""
function dragon(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts / \\ //\\
$thoughts |\\___/| / \\// \\\\
/0 0 \\__ / // | \\ \\
/ / \\/_/ // | \\ \\
@_^_@'/ \\/_ // | \\ \\
//_^_/ \\/_ // | \\ \\
( //) | \\/// | \\ \\
( / /) _|_ / ) // | \\ _\\
( // /) '/,_ _ _/ ( ; -. | _ _\\.-~ .-~~~^-.
(( / / )) ,-{ _ `-.|.-~-. .~ `.
(( // / )) '/\\ / ~-. _ .-~ .-~^-. \\
(( /// )) `. { } / \\ \\
(( / )) .----~-.\\ \\-' .~ \\ `. \\^-.
///.----..> \\ _ -~ `. ^-` ^-_
///-._ _ _ _ _ _ _}^ - - - - ~ ~-- ,.-~
/.-~
"""
return the_cow
end

@ -1,38 +0,0 @@
"""
function elephant_in_snake()
Do we need to explain this?
# Example
```jldoctests
julia> cowsay("Help!", cow=Cowsay.elephant_in_snake)
_______
< Help! >
-------
\\
\\ ....
........ .
. .
. .
......... .......
..............................
Elephant inside ASCII snake
```
"""
function elephant_in_snake(;eyes="oo", tongue=" ", thoughts="\\")
the_cow = """
$thoughts
$thoughts ....
........ .
. .
. .
......... .......
..............................
Elephant inside ASCII snake
"""
return the_cow
end

@ -1,39 +0,0 @@
"""
function elephant()
An elephant out and about
# Example
```jldoctest
julia> cowsay("Toot!", cow=Cowsay.elephant)
_______
< Toot! >
-------
\\ /\\ ___ /\\
\\ // \\/ \\/ \\\\
(( O O ))
\\\\ / \\ //
\\/ | | \\/
| | | |
| | | |
| o |
| | | |
|m| |m|
```
"""
function elephant(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts /\\ ___ /\\
$thoughts // \\/ \\/ \\\\
(( O O ))
\\\\ / \\ //
\\/ | | \\/
| | | |
| | | |
| o |
| | | |
|m| |m|
"""
return the_cow
end

@ -1,42 +0,0 @@
"""
function eyes()
Evil-looking eyes
# Example
```jldoctest
julia> cowsay("Mwah, ha, ha!", cow=Cowsay.eyes)
_______________
< Mwah, ha, ha! >
---------------
\\
\\
.::!!!!!!!:.
.!!!!!:. .:!!!!!!!!!!!!
~~~~!!!!!!. .:!!!!!!!!!UWWW\$\$\$
:\$\$NWX!!: .:!!!!!!XUWW\$\$\$\$\$\$\$\$\$P
\$\$\$\$\$##WX!: .<!!!!UW\$\$\$\$" \$\$\$\$\$\$\$\$#
\$\$\$\$\$ \$\$\$UX :!!UW\$\$\$\$\$\$\$\$\$ 4\$\$\$\$\$*
^\$\$\$B \$\$\$\$\\ \$\$\$\$\$\$\$\$\$\$\$\$ d\$\$R"
"*\$bd\$\$\$\$ '*\$\$\$\$\$\$\$\$\$\$\$o+#"
\"""\" \"""\"""\"
```
"""
function eyes(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts
.::!!!!!!!:.
.!!!!!:. .:!!!!!!!!!!!!
~~~~!!!!!!. .:!!!!!!!!!UWWW\$\$\$
:\$\$NWX!!: .:!!!!!!XUWW\$\$\$\$\$\$\$\$\$P
\$\$\$\$\$##WX!: .<!!!!UW\$\$\$\$" \$\$\$\$\$\$\$\$#
\$\$\$\$\$ \$\$\$UX :!!UW\$\$\$\$\$\$\$\$\$ 4\$\$\$\$\$*
^\$\$\$B \$\$\$\$\\ \$\$\$\$\$\$\$\$\$\$\$\$ d\$\$R"
"*\$bd\$\$\$\$ '*\$\$\$\$\$\$\$\$\$\$\$o+#"
\"""\" \"""\"""\"
"""
return the_cow
end

@ -1,43 +0,0 @@
##
## The flaming sheep, contributed by Geordan Rosario (geordan@csua.berkeley.edu)
##
"""
function flaming_sheep()
The flaming sheep, contributed by Geordan Rosario (geordan@csua.berkeley.edu)
# Example
```jldoctest
julia> cowsay("Baaahhh!", cow=Cowsay.flaming_sheep)
__________
< Baaahhh! >
----------
\\ . . .
\\ . . . ` ,
\\ .; . : .' : : : .
\\ i..`: i` i.i.,i i .
\\ `,--.|i |i|ii|ii|i:
UooU\\.'@@@@@@`.||'
\\__/(@@@@@@@@@@)'
(@@@@@@@@)
`YY~~~~YY'
|| ||
```
"""
function flaming_sheep(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts . . .
$thoughts . . . ` ,
$thoughts .; . : .' : : : .
$thoughts i..`: i` i.i.,i i .
$thoughts `,--.|i |i|ii|ii|i:
U$(eyes)U\\.'@@@@@@`.||'
\\__/(@@@@@@@@@@)'
(@@@@@@@@)
`YY~~~~YY'
|| ||
"""
return the_cow
end

@ -1,50 +0,0 @@
"""
function fox()
# Example
```jldoctest
julia> cowsay("What does the fox say?", cow=Cowsay.fox)
________________________
< What does the fox say? >
------------------------
\\ ,-. .-,
\\ |-.\\ __ /.-|
\\ \\ ` ` /
/_ _ \\
< _`q p _ >
<.._=/ \\=_. >
{`\\()/`}`\\
{ } \\
|{ } \\
\\ '--' .- \\
|- / \\
| | | | | ;
| | |.;.,..__ |
.-"";` `|
/ | /
`-../____,..---'`
```
"""
function fox(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts ,-. .-,
$thoughts |-.\\ __ /.-|
$thoughts \\ ` ` /
/_ _ \\
< _`q p _ >
<.._=/ \\=_. >
{`\\()/`}`\\
{ } \\
|{ } \\
\\ '--' .- \\
|- / \\
| | | | | ;
| | |.;.,..__ |
.-"";` `|
/ | /
`-../____,..---'`
"""
return the_cow
end

@ -1,34 +0,0 @@
"""
function kitty()
A kitten of sorts, I think
# Example
```jldoctest
julia> cowsay("Meow", cow=Cowsay.kitty)
______
< Meow >
------
\\
\\
("`-' '-/") .___..--' ' "`-._
` *_ * ) `-. ( ) .`-.__. `)
(_Y_.) ' ._ ) `._` ; `` -. .-'
_.. `--'_..-_/ /--' _ .' ,4
( i l ),-'' ( l i),' ( ( ! .-'
```
"""
function kitty(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts
("`-' '-/") .___..--' ' "`-._
` *_ * ) `-. ( ) .`-.__. `)
(_Y_.) ' ._ ) `._` ; `` -. .-'
_.. `--'_..-_/ /--' _ .' ,4
( i l ),-'' ( l i),' ( ( ! .-'
"""
return the_cow
end

@ -1,34 +0,0 @@
"""
function koala
From the canonical koala collection
# Example
```jldoctest
julia> cowsay("Welcome to Down Under", cow=Cowsay.koala)
_______________________
< Welcome to Down Under >
-----------------------
\\
\\
___
{~._.~}
( Y )
()~*~()
(_)-(_)
```
"""
function koala(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts
___
{~._.~}
( Y )
()~*~()
(_)-(_)
"""
return the_cow
end

@ -1,55 +0,0 @@
"""
function mech_and_cow()
# Example
```jldoctest
julia> cowsay("Do you ever get that feeling...?", cow=Cowsay.mech_and_cow)
__________________________________
< Do you ever get that feeling...? >
----------------------------------
\\ ,-----.
/ | |
\\ ,--| |-.
/ __,----| | | |
\\ ,;:: | `_____' |
/ `._______| i^i |
\\ `----| |---'| .
/ ,-------._| |== ||//
\\ | |_|P`. /'/
/ `-------' 'Y Y/'/'
\\ .==\\ /_\\
^__^ / /'| `i
(oo)\\_______ /' / | |
(__)\\ )\\/\\ /' / | `i
||----w|| ___,;`----'.___L_,-'`\\__
|| || i_____;----\\.____i""\\____\\
```
"""
function mech_and_cow(;eyes="oo", tongue=" ", thoughts="\\")
sthguoht = thoughts;
if thoughts == "\\"
sthguoht = "/"
end #if
the_cow =
"""
$thoughts ,-----.
$sthguoht | |
$thoughts ,--| |-.
$sthguoht __,----| | | |
$thoughts ,;:: | `_____' |
$sthguoht `._______| i^i |
$thoughts `----| |---'| .
$sthguoht ,-------._| |== ||//
$thoughts | |_|P`. /'/
$sthguoht `-------' 'Y Y/'/'
$thoughts .==\\ /_\\
^__^ / /'| `i
($eyes)\\_______ /' / | |
(__)\\ )\\/\\ /' / | `i
$tongue||----w|| ___,;`----'.___L_,-'`\\__
|| || i_____;----\\.____i""\\____\\
"""
return the_cow
end

@ -1,39 +0,0 @@
"""
function meow()
A meowing tiger?
# Example
```jldoctest
julia> cowsay("We're kind of stupid that way", cow=Cowsay.meow)
_______________________________
< We're kind of stupid that way >
-------------------------------
\\
\\ , _ ___.--'''`--''//-,-_--_.
\\`"' ` || \\\\ \\ \\\\/ / // / ,-\\\\`,_
/'` \\ \\ || Y | \\|/ / // / - |__ `-,
/@"\\ ` \\ `\\ | | ||/ // | \\/ \\ `-._`-,_.,
/ _.-. `.-\\,___/\\ _/|_/_\\_\\/|_/ | `-._._)
`-'``/ / | // \\__/\\__ / \\__/ \\
`-' /-\\/ | -| \\__ \\ |-' |
__/\\ / _/ \\/ __,-' ) ,' _|'
(((__/(((_.' ((___..-'((__,'
```
"""
function meow(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts , _ ___.--'''`--''//-,-_--_.
\\`"' ` || \\\\ \\ \\\\/ / // / ,-\\\\`,_
/'` \\ \\ || Y | \\|/ / // / - |__ `-,
/@"\\ ` \\ `\\ | | ||/ // | \\/ \\ `-._`-,_.,
/ _.-. `.-\\,___/\\ _/|_/_\\_\\/|_/ | `-._._)
`-'``/ / | // \\__/\\__ / \\__/ \\
`-' /-\\/ | -| \\__ \\ |-' |
__/\\ / _/ \\/ __,-' ) ,' _|'
(((__/(((_.' ((___..-'((__,'
"""
return the_cow
end

@ -1,40 +0,0 @@
##
## MOOfasa.
##
"""
function moofasa()
MOOfasa
# Example
```jldoctest
julia> cowsay("It's the circle of life", cow=Cowsay.moofasa)
_________________________
< It's the circle of life >
-------------------------
\\ ____
\\ / \\
| ^__^ |
| (oo) |______
| (__) | )\\/\\
\\____/|----w |
|| ||
Moofasa
```
"""
function moofasa(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts ____
$thoughts / \\
| ^__^ |
| ($eyes) |______
| (__) | )\\/\\
\\____/|----w |
|| ||
Moofasa
"""
return the_cow
end

@ -1,31 +0,0 @@
"""
function moose()
# Example
```jldoctest
julia> cowsay("Time to vamoose", cow=Cowsay.moose)
_________________
< Time to vamoose >
-----------------
\\
\\ \\_\\_ _/_/
\\ \\__/
(oo)\\_______
(__)\\ )\\/\\
||----w |
|| ||
```
"""
function moose(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts \\_\\_ _/_/
$thoughts \\__/
($eyes)\\_______
(__)\\ )\\/\\
$tongue ||----w |
|| ||
"""
return the_cow
end

@ -1,29 +0,0 @@
"""
function mutilated()
A mutilated cow, from aspolito@csua.berkeley.edu
# Example
```jldoctest
julia> cowsay("I wouldn't have been so eager to make head cheese...", cow=Cowsay.mutilated)
_______________________________________
/ I wouldn't have been so eager to make \\
\\ head cheese... /
---------------------------------------
\\ \\_______
v__v \\ \\ O )
(oo) ||----w |
(__) || || \\/\\
```
"""
function mutilated(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts \\_______
v__v $thoughts \\ O )
($eyes) ||----w |
(__) || || \\/\\
$tongue
"""
return the_cow
end

@ -1,38 +0,0 @@
##
## The non-flaming sheep.
##
"""
function sheep()
The non-flaming sheep.
# Example
```jldoctest
julia> cowsay("Baa", cow=Cowsay.sheep)
_____
< Baa >
-----
\\
\\
__
UooU\\.'@@@@@@`.
\\__/(@@@@@@@@@@)
(@@@@@@@@)
`YY~~~~YY'
|| ||
```
"""
function sheep(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts
__
U$(eyes)U\\.'@@@@@@`.
\\__/(@@@@@@@@@@)
(@@@@@@@@)
`YY~~~~YY'
|| ||
"""
return the_cow
end

@ -1,41 +0,0 @@
##
##
"""
function skeleton()
This 'Scowleton' brought to you by one of
{appel,kube,rowe}@csua.berkeley.edu
# Example
```jldoctest
julia> cowsay("All T-Bone, no steak", cow=Cowsay.skeleton)
______________________
< All T-Bone, no steak >
----------------------
\\ (__)
\\ /oo|
\\ (_"_)*+++++++++*
//I#\\\\\\\\\\\\\\\\I\\
I[I|I|||||I I `
I`I'///'' I I
I I I I
~ ~ ~ ~
Scowleton
```
"""
function skeleton(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts (__)
$thoughts /$eyes|
$thoughts (_"_)*+++++++++*
//I#\\\\\\\\\\\\\\\\I\\
I[I|I|||||I I `
I`I'///'' I I
I I I I
~ ~ ~ ~
Scowleton
"""
return the_cow
end

@ -1,30 +0,0 @@
"""
function small()
A small cow, artist unknown
# Example
```jldoctest
julia> cowsay("A calf", cow=Cowsay.small)
________
< A calf >
--------
\\ ,__,
\\ (..)____
(__) )\\
||--|| *
```
"""
function small(;eyes="oo", tongue=" ", thoughts="\\")
if eyes == "oo"
eyes = ".."
end
the_cow =
"""
$thoughts ,__,
$thoughts ($eyes)____
(__) )\\
$tongue||--|| *
"""
return the_cow
end

@ -1,50 +0,0 @@
##
## A stegosaur with a top hat?
##
"""
function stegosaurus()
A stegosaur with a top hat?
# Example
```jldoctest
julia> cowsay("How do you do?", cow=Cowsay.stegosaurus)
________________
< How do you do? >
----------------
\\ . .
\\ / `. .' "
\\ .---. < > < > .---.
\\ | \\ \\ - ~ ~ - / / |
_____ ..-~ ~-..-~
| | \\~~~\\.' `./~~~/
--------- \\__/ \\__/
.' O \\ / / \\ "
(_____, `._.' | } \\/~~~/
`----. / } | / \\__/
`-. | / | / `. ,~~|
~-.__| /_ - ~ ^| /- _ `..-'
| / | / ~-. `-. _ _ _
|_____| |_____| ~ - . _ _ _ _ _>
```
"""
function stegosaurus(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts . .
$thoughts / `. .' "
$thoughts .---. < > < > .---.
$thoughts | \\ \\ - ~ ~ - / / |
_____ ..-~ ~-..-~
| | \\~~~\\.' `./~~~/
--------- \\__/ \\__/
.' O \\ / / \\ "
(_____, `._.' | } \\/~~~/
`----. / } | / \\__/
`-. | / | / `. ,~~|
~-.__| /_ - ~ ^| /- _ `..-'
| / | / ~-. `-. _ _ _
|_____| |_____| ~ - . _ _ _ _ _>
"""
return the_cow
end

@ -1,29 +0,0 @@
"""
function supermilker()
A cow being milked, probably from Lars Smith (lars@csua.berkeley.edu)
# Example
```jldoctest
julia> cowsay("Paying the bills", cow=Cowsay.supermilker)
__________________
< Paying the bills >
------------------
\\ ^__^
\\ (oo)\\_______ ________
(__)\\ )\\/\\ |Super |
||----W | |Milker|
|| UDDDDDDDDD|______|
```
"""
function supermilker(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts ^__^
$thoughts ($eyes)\\_______ ________
(__)\\ )\\/\\ |Super |
$tongue ||----W | |Milker|
|| UDDDDDDDDD|______|
"""
return the_cow
end

@ -1,60 +0,0 @@
##
## A cow operation, artist unknown
##
"""
function surgery()
A cow operation, artist unknown
# Example
```jldoctest
julia> cowsay("Removing the last bit of net wrap now", cow=Cowsay.surgery)
_______________________________________
< Removing the last bit of net wrap now >
---------------------------------------
\\ \\ /
\\ \\/
(__) /\\
(oo) O O
_\\/_ //
* ( ) //
\\ (\\\\ //
\\( \\\\ )
( \\\\ ) /\\
___[\\______/^^^^^^^\\__/) o-)__
|\\__[=======______//________)__\\
\\|_______________//____________|
||| || //|| |||
||| || @.|| |||
|| \\/ .\\/ ||
. .
'.'.`
COW-OPERATION
```
"""
function surgery(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts \\ /
$thoughts \\/
(__) /\\
($eyes) O O
_\\/_ //
* ( ) //
\\ (\\\\ //
\\( \\\\ )
( \\\\ ) /\\
___[\\______/^^^^^^^\\__/) o-)__
|\\__[=======______//________)__\\
\\|_______________//____________|
||| || //|| |||
||| || @.|| |||
|| \\/ .\\/ ||
. .
'.'.`
COW-OPERATION
"""
return the_cow
end

@ -1,32 +0,0 @@
"""
function three_eyes()
A cow with three eyes, brought to you by dpetrou@csua.berkeley.edu
# Example
```jldoctest
julia> cowsay("The better to see you with...", cow=Cowsay.three_eyes)
_______________________________
< The better to see you with... >
-------------------------------
\\ ^___^
\\ (ooo)\\_______
(___)\\ )\\/\\
||----w |
|| ||
```
"""
function three_eyes(;eyes="oo", tongue=" ", thoughts="\\")
eye = first(eyes)
eyes = repeat(eye, 3)
the_cow =
"""
$thoughts ^___^
$thoughts ($eyes)\\_______
(___)\\ )\\/\\
$tongue ||----w |
|| ||
"""
return the_cow
end

@ -1,64 +0,0 @@
##
## Turkey!
##
"""
function turkey()
Turkey!
# Example
```jldoctest
julia> cowsay("Gobble, gobble", cow=Cowsay.turkey)
________________
< Gobble, gobble >
----------------
\\ ,+*^^*+___+++_
\\ ,*^^^^ )
\\ _+* ^**+_
\\ +^ _ _++*+_+++_, )
_+^^*+_ ( ,+*^ ^ \\+_ )
{ ) ( ,( ,_+--+--, ^) ^\\
{ (@) } f ,( ,+-^ __*_*_ ^^\\_ ^\\ )
{:;-/ (_+*-+^^^^^+*+*<_ _++_)_ ) ) /
( / ( ( ,___ ^*+_+* ) < < \\
U _/ ) *--< ) ^\\-----++__) ) ) )
( ) _(^)^^)) ) )\\^^^^^))^*+/ / /
( / (_))_^)) ) ) ))^^^^^))^^^)__/ +^^
( ,/ (^))^)) ) ) ))^^^^^^^))^^) _)
*+__+* (_))^) ) ) ))^^^^^^))^^^^^)____*^
\\ \\_)^)_)) ))^^^^^^^^^^))^^^^)
(_ ^\\__^^^^^^^^^^^^))^^^^^^^)
^\\___ ^\\__^^^^^^))^^^^^^^^)\\\\
^^^^^\\uuu/^^\\uuu/^^^^\\^\\^\\^\\^\\^\\^\\^\\
___) >____) >___ ^\\_\\_\\_\\_\\_\\_\\)
^^^//\\\\_^^//\\\\_^ ^(\\_\\_\\_\\)
^^^ ^^ ^^^ ^
```
"""
function turkey(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts ,+*^^*+___+++_
$thoughts ,*^^^^ )
$thoughts _+* ^**+_
$thoughts +^ _ _++*+_+++_, )
_+^^*+_ ( ,+*^ ^ \\+_ )
{ ) ( ,( ,_+--+--, ^) ^\\
{ (@) } f ,( ,+-^ __*_*_ ^^\\_ ^\\ )
{:;-/ (_+*-+^^^^^+*+*<_ _++_)_ ) ) /
( / ( ( ,___ ^*+_+* ) < < \\
U _/ ) *--< ) ^\\-----++__) ) ) )
( ) _(^)^^)) ) )\\^^^^^))^*+/ / /
( / (_))_^)) ) ) ))^^^^^))^^^)__/ +^^
( ,/ (^))^)) ) ) ))^^^^^^^))^^) _)
*+__+* (_))^) ) ) ))^^^^^^))^^^^^)____*^
\\ \\_)^)_)) ))^^^^^^^^^^))^^^^)
(_ ^\\__^^^^^^^^^^^^))^^^^^^^)
^\\___ ^\\__^^^^^^))^^^^^^^^)\\\\
^^^^^\\uuu/^^\\uuu/^^^^\\^\\^\\^\\^\\^\\^\\^\\
___) >____) >___ ^\\_\\_\\_\\_\\_\\_\\)
^^^//\\\\_^^//\\\\_^ ^(\\_\\_\\_\\)
^^^ ^^ ^^^ ^
"""
return the_cow
end

@ -1,49 +0,0 @@
"""
function turtle()
A mysterious turtle...
# Example
```jldoctest
julia> cowsay("Where is that pesky rabbit?", cow=Cowsay.turtle)
_____________________________
< Where is that pesky rabbit? >
-----------------------------
\\ ___-------___
\\ _-~~ ~~-_
\\ _-~ /~-_
/^\\__/^\\ /~ \\ / \\
/| O|| O| / \\_______________/ \\
| |___||__| / / \\ \\
| \\ / / \\ \\
| (_______) /______/ \\_________ \\
| / / \\ / \\
\\ \\^\\\\ \\ / \\ /
\\ || \\______________/ _-_ //\\__//
\\ ||------_-~~-_ ------------- \\ --/~ ~\\ || __/
~-----||====/~ |==================| |/~~~~~
(_(__/ ./ / \\_\\ \\.
(_(___/ \\_____)_)
```
"""
function turtle(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts ___-------___
$thoughts _-~~ ~~-_
$thoughts _-~ /~-_
/^\\__/^\\ /~ \\ / \\
/| O|| O| / \\_______________/ \\
| |___||__| / / \\ \\
| \\ / / \\ \\
| (_______) /______/ \\_________ \\
| / / \\ / \\
\\ \\^\\\\ \\ / \\ /
\\ || \\______________/ _-_ //\\__//
\\ ||------_-~~-_ ------------- \\ --/~ ~\\ || __/
~-----||====/~ |==================| |/~~~~~
(_(__/ ./ / \\_\\ \\.
(_(___/ \\_____)_)
"""
return the_cow
end

@ -1,42 +0,0 @@
##
##
"""
function tux()
TuX
(c) pborys@p-soft.silesia.linux.org.pl
# Example
```jldoctest
julia> cowsay("Talk is cheap. Show me the code.", cow=Cowsay.tux)
__________________________________
< Talk is cheap. Show me the code. >
----------------------------------
\\
\\
.--.
|o_o |
|:_/ |
// \\ \\
(| | )
/'\\_ _/`\\
\\___)=(___/
```
"""
function tux(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts
.--.
|o_o |
|:_/ |
// \\ \\
(| | )
/'\\_ _/`\\
\\___)=(___/
"""
return the_cow
end

@ -1,41 +0,0 @@
"""
function udder()
The cow from a file called cow-n-horn, artist unknown.
# Example
```jldoctest
julia> cowsay("Milking time!", cow=Cowsay.udder)
_______________
< Milking time! >
---------------
\\
\\ (__)
o o\\
('') \\---------
\\ \\
| |\\
||---( )_|| *
|| UU ||
== ==
```
"""
function udder(;eyes="oo", tongue=" ", thoughts="\\")
eye1 = first(eyes)
eye2 = last(eyes)
botheyes = string(eye1, " ", eye2)
the_cow =
"""
$thoughts
$thoughts (__)
$botheyes\\
('') \\---------
$tongue\\ \\
| |\\
||---( )_|| *
|| UU ||
== ==
"""
return the_cow
end

@ -1,42 +0,0 @@
"""
function vader_koala
Another canonical koala?
# Example
```jldoctest
julia> cowsay("Luke, you are my joey!", cow=Cowsay.vader_koala)
________________________
< Luke, you are my joey! >
------------------------
\\
\\ .
.---. //
Y|o o|Y//
/_(i=i)K/
~()~*~()~
(_)-(_)
Darth
Vader
koala
```
"""
function vader_koala(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts
$thoughts .
.---. //
Y|o o|Y//
/_(i=i)K/
~()~*~()~
(_)-(_)
Darth
Vader
koala
"""
return the_cow
end

@ -1,36 +0,0 @@
"""
function vader()
Cowth Vader, from geordan@csua.berkeley.edu
# Example
```jldoctest
julia> cowsay("Luke, I am your father!", cow=Cowsay.vader)
_________________________
< Luke, I am your father! >
-------------------------
\\ ,-^-.
\\ !oYo!
\\ /./=\\.\\______
## )\\/\\
||-----w||
|| ||
Cowth Vader
```
"""
function vader(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts ,-^-.
$thoughts !oYo!
$thoughts /./=\\.\\______
## )\\/\\
||-----w||
|| ||
Cowth Vader
"""
return the_cow
end

@ -1,30 +0,0 @@
"""
function www()
A cow wadvertising the World Wide Web, from lim@csua.berkeley.edu
# Example
```jldoctest
julia> cowsay("My favorite site is MooTube", cow=Cowsay.www)
_____________________________
< My favorite site is MooTube >
-----------------------------
\\ ^__^
\\ (oo)\\_______
(__)\\ )\\/\\
||--WWW |
|| ||
```
"""
function www(;eyes="oo", tongue=" ", thoughts="\\")
the_cow =
"""
$thoughts ^__^
$thoughts ($eyes)\\_______
(__)\\ )\\/\\
$tongue ||--WWW |
|| ||
"""
return the_cow
end

@ -0,0 +1 @@
v1.0.0

@ -1,52 +0,0 @@
using Cowsay
using Test
using Documenter
DocMeta.setdocmeta!(Cowsay, :DocTestSetup, :(using Cowsay); recursive=true)
@testset "cowsay" begin
@testset "Doctests" begin
doctest(Cowsay)
end
@testset "Balloon Formation" begin
# One-liner say balloon
@test Cowsay.sayballoon("One line") == " __________\n< One line >\n ----------\n"
# Two-liner say balloon
@test Cowsay.sayballoon("One line\nTwo line") == " __________\n/ One line \\\n\\ Two line /\n ----------\n"
# Multi-liner say balloon
@test Cowsay.sayballoon("One line\nTwo line\nRed line\nBlue line") == " ___________\n/ One line \\\n| Two line |\n| Red line |\n\\ Blue line /\n -----------\n"
end
@testset "IO Funkiness" begin
# Cowsay with io redirection
@test_warn cowsaid("Moo") cowsay(stderr, "Moo")
# Cowthink with io redirection
@test_warn cowthunk("Moo") cowthink(stderr, "Moo")
end
@testset "Word Wrapping" begin
# Long text, default wrap
@test cowsaid("Rollin' down a long highway out through New Mexico driftin' down to Santa Fe to ride a bull in a rodeo") == " _________________________________________\n/ Rollin' down a long highway out through \\\n| New Mexico driftin' down to Santa Fe to |\n\\ ride a bull in a rodeo /\n -----------------------------------------\n \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\/\\\n ||----w |\n || ||\n"
# Long text, no wrap
@test cowsaid("Rollin' down a long highway out through New Mexico driftin' down to Santa Fe to ride a bull in a rodeo", nowrap=true) == " ________________________________________________________________________________________________________\n< Rollin' down a long highway out through New Mexico driftin' down to Santa Fe to ride a bull in a rodeo >\n --------------------------------------------------------------------------------------------------------\n \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\/\\\n ||----w |\n || ||\n"
# Long text, conflicting wrap instructions (nowrap should win)
@test cowsaid("Rollin' down a long highway out through New Mexico driftin' down to Santa Fe to ride a bull in a rodeo", wrap=80, nowrap=true) == " ________________________________________________________________________________________________________\n< Rollin' down a long highway out through New Mexico driftin' down to Santa Fe to ride a bull in a rodeo >\n --------------------------------------------------------------------------------------------------------\n \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\/\\\n ||----w |\n || ||\n"
# Long text, different wrap amount
@test cowsaid("Rollin' down a long highway out through New Mexico driftin' down to Santa Fe to ride a bull in a rodeo", wrap=80) == " _________________________________________________________________________________\n/ Rollin' down a long highway out through New Mexico driftin' down to Santa Fe to \\\n\\ ride a bull in a rodeo /\n ---------------------------------------------------------------------------------\n \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\/\\\n ||----w |\n || ||\n"
end
@testset "Cow Modes" begin
@test Cowsay.construct_face!("oo", " ") == ("oo", " ")
@test Cowsay.construct_face!("oo", " "; borg=true) == ("==", " ")
@test Cowsay.construct_face!("oo", " "; dead=true) == ("xx", "U ")
@test Cowsay.construct_face!("oo", " "; greedy=true) == ("\$\$", " ")
@test Cowsay.construct_face!("oo", " "; paranoid=true) == ("@@", " ")
@test Cowsay.construct_face!("oo", " "; stoned=true) == ("**", "U ")
@test Cowsay.construct_face!("oo", " "; tired=true) == ("--", " ")
@test Cowsay.construct_face!("oo", " "; wired=true) == ("OO", " ")
@test Cowsay.construct_face!("oo", " "; young=true) == ("..", " ")
end
end

@ -0,0 +1 @@
v0.1.0

@ -0,0 +1,264 @@
// Generated by Documenter.jl
requirejs.config({
paths: {
'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/languages/julia.min',
'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min',
'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min',
'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/contrib/auto-render.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min',
'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min',
'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min',
'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/highlight.min',
'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/languages/julia-repl.min',
},
shim: {
"highlight-julia": {
"deps": [
"highlight"
]
},
"katex-auto-render": {
"deps": [
"katex"
]
},
"headroom-jquery": {
"deps": [
"jquery",
"headroom"
]
},
"highlight-julia-repl": {
"deps": [
"highlight"
]
}
}
});
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'katex', 'katex-auto-render'], function($, katex, renderMathInElement) {
$(document).ready(function() {
renderMathInElement(
document.body,
{
"delimiters": [
{
"left": "$",
"right": "$",
"display": false
},
{
"left": "$$",
"right": "$$",
"display": true
},
{
"left": "\\[",
"right": "\\]",
"display": true
}
]
}
);
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'highlight', 'highlight-julia', 'highlight-julia-repl'], function($) {
$(document).ready(function() {
hljs.highlightAll();
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) {
// Manages the top navigation bar (hides it when the user starts scrolling down on the
// mobile).
window.Headroom = Headroom; // work around buggy module loading?
$(document).ready(function() {
$('#documenter .docs-navbar').headroom({
"tolerance": {"up": 10, "down": 10},
});
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// Modal settings dialog
$(document).ready(function() {
var settings = $('#documenter-settings');
$('#documenter-settings-button').click(function(){
settings.toggleClass('is-active');
});
// Close the dialog if X is clicked
$('#documenter-settings button.delete').click(function(){
settings.removeClass('is-active');
});
// Close dialog if ESC is pressed
$(document).keyup(function(e) {
if (e.keyCode == 27) settings.removeClass('is-active');
});
});
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// Manages the showing and hiding of the sidebar.
$(document).ready(function() {
var sidebar = $("#documenter > .docs-sidebar");
var sidebar_button = $("#documenter-sidebar-button")
sidebar_button.click(function(ev) {
ev.preventDefault();
sidebar.toggleClass('visible');
if (sidebar.hasClass('visible')) {
// Makes sure that the current menu item is visible in the sidebar.
$("#documenter .docs-menu a.is-active").focus();
}
});
$("#documenter > .docs-main").bind('click', function(ev) {
if ($(ev.target).is(sidebar_button)) {
return;
}
if (sidebar.hasClass('visible')) {
sidebar.removeClass('visible');
}
});
})
// Resizes the package name / sitename in the sidebar if it is too wide.
// Inspired by: https://github.com/davatron5000/FitText.js
$(document).ready(function() {
e = $("#documenter .docs-autofit");
function resize() {
var L = parseInt(e.css('max-width'), 10);
var L0 = e.width();
if(L0 > L) {
var h0 = parseInt(e.css('font-size'), 10);
e.css('font-size', L * h0 / L0);
// TODO: make sure it survives resizes?
}
}
// call once and then register events
resize();
$(window).resize(resize);
$(window).on('orientationchange', resize);
});
// Scroll the navigation bar to the currently selected menu item
$(document).ready(function() {
var sidebar = $("#documenter .docs-menu").get(0);
var active = $("#documenter .docs-menu .is-active").get(0);
if(typeof active !== 'undefined') {
sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15;
}
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
function set_theme(theme) {
var active = null;
var disabled = [];
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
var themename = ss.ownerNode.getAttribute("data-theme-name");
if(themename === null) continue; // ignore non-theme stylesheets
// Find the active theme
if(themename === theme) active = ss;
else disabled.push(ss);
}
if(active !== null) {
active.disabled = false;
if(active.ownerNode.getAttribute("data-theme-primary") === null) {
document.getElementsByTagName('html')[0].className = "theme--" + theme;
} else {
document.getElementsByTagName('html')[0].className = "";
}
disabled.forEach(function(ss){
ss.disabled = true;
});
}
// Store the theme in localStorage
if(typeof(window.localStorage) !== "undefined") {
window.localStorage.setItem("documenter-theme", theme);
} else {
console.error("Browser does not support window.localStorage");
}
}
// Theme picker setup
$(document).ready(function() {
// onchange callback
$('#documenter-themepicker').change(function themepick_callback(ev){
var themename = $('#documenter-themepicker option:selected').attr('value');
set_theme(themename);
});
// Make sure that the themepicker displays the correct theme when the theme is retrieved
// from localStorage
if(typeof(window.localStorage) !== "undefined") {
var theme = window.localStorage.getItem("documenter-theme");
if(theme !== null) {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = (e.value === theme);
})
} else {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = $("html").hasClass(`theme--${e.value}`);
})
}
}
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// update the version selector with info from the siteinfo.js and ../versions.js files
$(document).ready(function() {
var version_selector = $("#documenter .docs-version-selector");
var version_selector_select = $("#documenter .docs-version-selector select");
version_selector_select.change(function(x) {
target_href = version_selector_select.children("option:selected").get(0).value;
window.location.href = target_href;
});
// add the current version to the selector based on siteinfo.js, but only if the selector is empty
if (typeof DOCUMENTER_CURRENT_VERSION !== 'undefined' && $('#version-selector > option').length == 0) {
var option = $("<option value='#' selected='selected'>" + DOCUMENTER_CURRENT_VERSION + "</option>");
version_selector_select.append(option);
}
if (typeof DOC_VERSIONS !== 'undefined') {
var existing_versions = version_selector_select.children("option");
var existing_versions_texts = existing_versions.map(function(i,x){return x.text});
DOC_VERSIONS.forEach(function(each) {
var version_url = documenterBaseURL + "/../" + each;
var existing_id = $.inArray(each, existing_versions_texts);
// if not already in the version selector, add it as a new option,
// otherwise update the old option with the URL and enable it
if (existing_id == -1) {
var option = $("<option value='" + version_url + "'>" + each + "</option>");
version_selector_select.append(option);
} else {
var option = existing_versions[existing_id];
option.value = version_url;
option.disabled = false;
}
});
}
// only show the version selector if the selector has been populated
if (version_selector_select.children("option").length > 0) {
version_selector.toggleClass("visible");
}
})
})

@ -0,0 +1,251 @@
// Generated by Documenter.jl
requirejs.config({
paths: {
'lunr': 'https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.9/lunr.min',
'lodash': 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min',
}
});
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'lunr', 'lodash'], function($, lunr, _) {
$(document).ready(function() {
// parseUri 1.2.2
// (c) Steven Levithan <stevenlevithan.com>
// MIT License
function parseUri (str) {
var o = parseUri.options,
m = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
uri = {},
i = 14;
while (i--) uri[o.key[i]] = m[i] || "";
uri[o.q.name] = {};
uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
if ($1) uri[o.q.name][$1] = $2;
});
return uri;
};
parseUri.options = {
strictMode: false,
key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
q: {
name: "queryKey",
parser: /(?:^|&)([^&=]*)=?([^&]*)/g
},
parser: {
strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
}
};
$("#search-form").submit(function(e) {
e.preventDefault()
})
// list below is the lunr 2.1.3 list minus the intersect with names(Base)
// (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with)
// ideally we'd just filter the original list but it's not available as a variable
lunr.stopWordFilter = lunr.generateStopWordFilter([
'a',
'able',
'about',
'across',
'after',
'almost',
'also',
'am',
'among',
'an',
'and',
'are',
'as',
'at',
'be',
'because',
'been',
'but',
'by',
'can',
'cannot',
'could',
'dear',
'did',
'does',
'either',
'ever',
'every',
'from',
'got',
'had',
'has',
'have',
'he',
'her',
'hers',
'him',
'his',
'how',
'however',
'i',
'if',
'into',
'it',
'its',
'just',
'least',
'like',
'likely',
'may',
'me',
'might',
'most',
'must',
'my',
'neither',
'no',
'nor',
'not',
'of',
'off',
'often',
'on',
'or',
'other',
'our',
'own',
'rather',
'said',
'say',
'says',
'she',
'should',
'since',
'so',
'some',
'than',
'that',
'the',
'their',
'them',
'then',
'there',
'these',
'they',
'this',
'tis',
'to',
'too',
'twas',
'us',
'wants',
'was',
'we',
'were',
'what',
'when',
'who',
'whom',
'why',
'will',
'would',
'yet',
'you',
'your'
])
// add . as a separator, because otherwise "title": "Documenter.Anchors.add!"
// would not find anything if searching for "add!", only for the entire qualification
lunr.tokenizer.separator = /[\s\-\.]+/
// custom trimmer that doesn't strip @ and !, which are used in julia macro and function names
lunr.trimmer = function (token) {
return token.update(function (s) {
return s.replace(/^[^a-zA-Z0-9@!]+/, '').replace(/[^a-zA-Z0-9@!]+$/, '')
})
}
lunr.Pipeline.registerFunction(lunr.stopWordFilter, 'juliaStopWordFilter')
lunr.Pipeline.registerFunction(lunr.trimmer, 'juliaTrimmer')
var index = lunr(function () {
this.ref('location')
this.field('title',{boost: 100})
this.field('text')
documenterSearchIndex['docs'].forEach(function(e) {
this.add(e)
}, this)
})
var store = {}
documenterSearchIndex['docs'].forEach(function(e) {
store[e.location] = {title: e.title, category: e.category, page: e.page}
})
$(function(){
searchresults = $('#documenter-search-results');
searchinfo = $('#documenter-search-info');
searchbox = $('#documenter-search-query');
function update_search(querystring) {
tokens = lunr.tokenizer(querystring)
results = index.query(function (q) {
tokens.forEach(function (t) {
q.term(t.toString(), {
fields: ["title"],
boost: 100,
usePipeline: true,
editDistance: 0,
wildcard: lunr.Query.wildcard.NONE
})
q.term(t.toString(), {
fields: ["title"],
boost: 10,
usePipeline: true,
editDistance: 2,
wildcard: lunr.Query.wildcard.NONE
})
q.term(t.toString(), {
fields: ["text"],
boost: 1,
usePipeline: true,
editDistance: 0,
wildcard: lunr.Query.wildcard.NONE
})
})
})
searchinfo.text("Number of results: " + results.length)
searchresults.empty()
results.forEach(function(result) {
data = store[result.ref]
link = $('<a class="docs-label">'+data.title+'</a>')
link.attr('href', documenterBaseURL+'/'+result.ref)
if (data.category != "page"){
cat = $('<span class="docs-category">('+data.category+', '+data.page+')</span>')
} else {
cat = $('<span class="docs-category">('+data.category+')</span>')
}
li = $('<li>').append(link).append(" ").append(cat)
searchresults.append(li)
})
}
function update_search_box() {
querystring = searchbox.val()
update_search(querystring)
}
searchbox.keyup(_.debounce(update_search_box, 250))
searchbox.change(update_search_box)
search_query_uri = parseUri(window.location).queryKey["q"]
if(search_query_uri !== undefined) {
search_query = decodeURIComponent(search_query_uri.replace(/\+/g, '%20'))
searchbox.val(search_query)
}
update_search_box();
})
})
})

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -0,0 +1,66 @@
// Small function to quickly swap out themes. Gets put into the <head> tag..
function set_theme_from_local_storage() {
// Intialize the theme to null, which means default
var theme = null;
// If the browser supports the localstorage and is not disabled then try to get the
// documenter theme
if(window.localStorage != null) {
// Get the user-picked theme from localStorage. May be `null`, which means the default
// theme.
theme = window.localStorage.getItem("documenter-theme");
}
// Check if the browser supports user color preference
var darkPreference = false;
// Check if the users preference is for dark color scheme
if(window.matchMedia('(prefers-color-scheme: dark)').matches === true) {
darkPreference = true;
}
// Initialize a few variables for the loop:
//
// - active: will contain the index of the theme that should be active. Note that there
// is no guarantee that localStorage contains sane values. If `active` stays `null`
// we either could not find the theme or it is the default (primary) theme anyway.
// Either way, we then need to stick to the primary theme.
//
// - disabled: style sheets that should be disabled (i.e. all the theme style sheets
// that are not the currently active theme)
var active = null; var disabled = []; var darkTheme = null;
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
// The <link> tag of each style sheet is expected to have a data-theme-name attribute
// which must contain the name of the theme. The names in localStorage much match this.
var themename = ss.ownerNode.getAttribute("data-theme-name");
// attribute not set => non-theme stylesheet => ignore
if(themename === null) continue;
// To distinguish the default (primary) theme, it needs to have the data-theme-primary
// attribute set.
var isprimary = (ss.ownerNode.getAttribute("data-theme-primary") !== null);
// Check if the theme is primary dark theme
var isDarkTheme = (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null);
// If ss is for dark theme then set the value of darkTheme to the name of the theme
if(isDarkTheme) darkTheme = themename;
// If we find a matching theme (and it's not the default), we'll set active to non-null
if(themename === theme) active = i;
// Store the style sheets of inactive themes so that we could disable them
if(themename !== theme) disabled.push(ss);
}
if(active !== null) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + theme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
ss.disabled = true;
});
}
else if(darkTheme !== null && darkPreference === true) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + darkTheme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
if (ss.ownerNode.getAttribute("data-theme-name") !== darkTheme) {
ss.disabled = true;
}
});
}
}
set_theme_from_local_storage();

@ -0,0 +1,49 @@
function maybeAddWarning () {
// DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE
// in siteinfo.js.
// If either of these are undefined something went horribly wrong, so we abort.
if (
window.DOCUMENTER_NEWEST === undefined ||
window.DOCUMENTER_CURRENT_VERSION === undefined ||
window.DOCUMENTER_STABLE === undefined
) {
return
};
// Current version is not a version number, so we can't tell if it's the newest version. Abort.
if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) {
return
};
// Current version is newest version, so no need to add a warning.
if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) {
return
};
// Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs.
if (document.body.querySelector('meta[name="robots"]') === null) {
const meta = document.createElement('meta');
meta.name = 'robots';
meta.content = 'noindex';
document.getElementsByTagName('head')[0].appendChild(meta);
};
const div = document.createElement('div');
div.classList.add('outdated-warning-overlay');
const closer = document.createElement('button');
closer.classList.add('outdated-warning-closer', 'delete');
closer.addEventListener('click', function () {
document.body.removeChild(div);
});
const href = window.documenterBaseURL + '/../' + window.DOCUMENTER_STABLE;
div.innerHTML = 'This documentation is not for the latest version. <br> <a href="' + href + '">Go to the latest documentation</a>.';
div.appendChild(closer);
document.body.appendChild(div);
};
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', maybeAddWarning);
} else {
maybeAddWarning();
};

File diff suppressed because one or more lines are too long

@ -0,0 +1,2 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Search · cowsay.jl</title><script data-outdated-warner src="../assets/warner.js"></script><link rel="canonical" href="https://MillironX.github.io/cowsay.jl/search/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../">cowsay.jl</a></span></div><form class="docs-search" action><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Search</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Search</a></li></ul></nav><div class="docs-right"><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article><p id="documenter-search-info">Loading search...</p><ul id="documenter-search-results"></ul></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.6 on <span class="colophon-date" title="Thursday 23 September 2021 14:56">Thursday 23 September 2021</span>. Using Julia version 1.6.2.</p></section><footer class="modal-card-foot"></footer></div></div></div></body><script src="../search_index.js"></script><script src="../assets/search.js"></script></html>

@ -0,0 +1,3 @@
var documenterSearchIndex = {"docs":
[{"location":"","page":"Home","title":"Home","text":"CurrentModule = Cowsay","category":"page"},{"location":"#cowsay","page":"Home","title":"cowsay","text":"","category":"section"},{"location":"","page":"Home","title":"Home","text":"Documentation for cowsay.","category":"page"},{"location":"","page":"Home","title":"Home","text":"","category":"page"},{"location":"","page":"Home","title":"Home","text":"Modules = [Cowsay]","category":"page"},{"location":"#Cowsay.cowsay-Tuple{AbstractString}","page":"Home","title":"Cowsay.cowsay","text":"cowsay(message::AbstractString)\n\nPrints a cow saying message as unwrapped text.\n\n\n\n\n\n","category":"method"}]
}

@ -0,0 +1 @@
var DOCUMENTER_CURRENT_VERSION = "v0.1.0";

@ -0,0 +1 @@
v0.2.1

@ -0,0 +1,264 @@
// Generated by Documenter.jl
requirejs.config({
paths: {
'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/languages/julia.min',
'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min',
'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min',
'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/contrib/auto-render.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min',
'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min',
'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min',
'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/highlight.min',
'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/languages/julia-repl.min',
},
shim: {
"highlight-julia": {
"deps": [
"highlight"
]
},
"katex-auto-render": {
"deps": [
"katex"
]
},
"headroom-jquery": {
"deps": [
"jquery",
"headroom"
]
},
"highlight-julia-repl": {
"deps": [
"highlight"
]
}
}
});
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'katex', 'katex-auto-render'], function($, katex, renderMathInElement) {
$(document).ready(function() {
renderMathInElement(
document.body,
{
"delimiters": [
{
"left": "$",
"right": "$",
"display": false
},
{
"left": "$$",
"right": "$$",
"display": true
},
{
"left": "\\[",
"right": "\\]",
"display": true
}
]
}
);
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'highlight', 'highlight-julia', 'highlight-julia-repl'], function($) {
$(document).ready(function() {
hljs.highlightAll();
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) {
// Manages the top navigation bar (hides it when the user starts scrolling down on the
// mobile).
window.Headroom = Headroom; // work around buggy module loading?
$(document).ready(function() {
$('#documenter .docs-navbar').headroom({
"tolerance": {"up": 10, "down": 10},
});
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// Modal settings dialog
$(document).ready(function() {
var settings = $('#documenter-settings');
$('#documenter-settings-button').click(function(){
settings.toggleClass('is-active');
});
// Close the dialog if X is clicked
$('#documenter-settings button.delete').click(function(){
settings.removeClass('is-active');
});
// Close dialog if ESC is pressed
$(document).keyup(function(e) {
if (e.keyCode == 27) settings.removeClass('is-active');
});
});
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// Manages the showing and hiding of the sidebar.
$(document).ready(function() {
var sidebar = $("#documenter > .docs-sidebar");
var sidebar_button = $("#documenter-sidebar-button")
sidebar_button.click(function(ev) {
ev.preventDefault();
sidebar.toggleClass('visible');
if (sidebar.hasClass('visible')) {
// Makes sure that the current menu item is visible in the sidebar.
$("#documenter .docs-menu a.is-active").focus();
}
});
$("#documenter > .docs-main").bind('click', function(ev) {
if ($(ev.target).is(sidebar_button)) {
return;
}
if (sidebar.hasClass('visible')) {
sidebar.removeClass('visible');
}
});
})
// Resizes the package name / sitename in the sidebar if it is too wide.
// Inspired by: https://github.com/davatron5000/FitText.js
$(document).ready(function() {
e = $("#documenter .docs-autofit");
function resize() {
var L = parseInt(e.css('max-width'), 10);
var L0 = e.width();
if(L0 > L) {
var h0 = parseInt(e.css('font-size'), 10);
e.css('font-size', L * h0 / L0);
// TODO: make sure it survives resizes?
}
}
// call once and then register events
resize();
$(window).resize(resize);
$(window).on('orientationchange', resize);
});
// Scroll the navigation bar to the currently selected menu item
$(document).ready(function() {
var sidebar = $("#documenter .docs-menu").get(0);
var active = $("#documenter .docs-menu .is-active").get(0);
if(typeof active !== 'undefined') {
sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15;
}
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
function set_theme(theme) {
var active = null;
var disabled = [];
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
var themename = ss.ownerNode.getAttribute("data-theme-name");
if(themename === null) continue; // ignore non-theme stylesheets
// Find the active theme
if(themename === theme) active = ss;
else disabled.push(ss);
}
if(active !== null) {
active.disabled = false;
if(active.ownerNode.getAttribute("data-theme-primary") === null) {
document.getElementsByTagName('html')[0].className = "theme--" + theme;
} else {
document.getElementsByTagName('html')[0].className = "";
}
disabled.forEach(function(ss){
ss.disabled = true;
});
}
// Store the theme in localStorage
if(typeof(window.localStorage) !== "undefined") {
window.localStorage.setItem("documenter-theme", theme);
} else {
console.error("Browser does not support window.localStorage");
}
}
// Theme picker setup
$(document).ready(function() {
// onchange callback
$('#documenter-themepicker').change(function themepick_callback(ev){
var themename = $('#documenter-themepicker option:selected').attr('value');
set_theme(themename);
});
// Make sure that the themepicker displays the correct theme when the theme is retrieved
// from localStorage
if(typeof(window.localStorage) !== "undefined") {
var theme = window.localStorage.getItem("documenter-theme");
if(theme !== null) {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = (e.value === theme);
})
} else {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = $("html").hasClass(`theme--${e.value}`);
})
}
}
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// update the version selector with info from the siteinfo.js and ../versions.js files
$(document).ready(function() {
var version_selector = $("#documenter .docs-version-selector");
var version_selector_select = $("#documenter .docs-version-selector select");
version_selector_select.change(function(x) {
target_href = version_selector_select.children("option:selected").get(0).value;
window.location.href = target_href;
});
// add the current version to the selector based on siteinfo.js, but only if the selector is empty
if (typeof DOCUMENTER_CURRENT_VERSION !== 'undefined' && $('#version-selector > option').length == 0) {
var option = $("<option value='#' selected='selected'>" + DOCUMENTER_CURRENT_VERSION + "</option>");
version_selector_select.append(option);
}
if (typeof DOC_VERSIONS !== 'undefined') {
var existing_versions = version_selector_select.children("option");
var existing_versions_texts = existing_versions.map(function(i,x){return x.text});
DOC_VERSIONS.forEach(function(each) {
var version_url = documenterBaseURL + "/../" + each;
var existing_id = $.inArray(each, existing_versions_texts);
// if not already in the version selector, add it as a new option,
// otherwise update the old option with the URL and enable it
if (existing_id == -1) {
var option = $("<option value='" + version_url + "'>" + each + "</option>");
version_selector_select.append(option);
} else {
var option = existing_versions[existing_id];
option.value = version_url;
option.disabled = false;
}
});
}
// only show the version selector if the selector has been populated
if (version_selector_select.children("option").length > 0) {
version_selector.toggleClass("visible");
}
})
})

@ -0,0 +1,251 @@
// Generated by Documenter.jl
requirejs.config({
paths: {
'lunr': 'https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.9/lunr.min',
'lodash': 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min',
}
});
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'lunr', 'lodash'], function($, lunr, _) {
$(document).ready(function() {
// parseUri 1.2.2
// (c) Steven Levithan <stevenlevithan.com>
// MIT License
function parseUri (str) {
var o = parseUri.options,
m = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
uri = {},
i = 14;
while (i--) uri[o.key[i]] = m[i] || "";
uri[o.q.name] = {};
uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
if ($1) uri[o.q.name][$1] = $2;
});
return uri;
};
parseUri.options = {
strictMode: false,
key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
q: {
name: "queryKey",
parser: /(?:^|&)([^&=]*)=?([^&]*)/g
},
parser: {
strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
}
};
$("#search-form").submit(function(e) {
e.preventDefault()
})
// list below is the lunr 2.1.3 list minus the intersect with names(Base)
// (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with)
// ideally we'd just filter the original list but it's not available as a variable
lunr.stopWordFilter = lunr.generateStopWordFilter([
'a',
'able',
'about',
'across',
'after',
'almost',
'also',
'am',
'among',
'an',
'and',
'are',
'as',
'at',
'be',
'because',
'been',
'but',
'by',
'can',
'cannot',
'could',
'dear',
'did',
'does',
'either',
'ever',
'every',
'from',
'got',
'had',
'has',
'have',
'he',
'her',
'hers',
'him',
'his',
'how',
'however',
'i',
'if',
'into',
'it',
'its',
'just',
'least',
'like',
'likely',
'may',
'me',
'might',
'most',
'must',
'my',
'neither',
'no',
'nor',
'not',
'of',
'off',
'often',
'on',
'or',
'other',
'our',
'own',
'rather',
'said',
'say',
'says',
'she',
'should',
'since',
'so',
'some',
'than',
'that',
'the',
'their',
'them',
'then',
'there',
'these',
'they',
'this',
'tis',
'to',
'too',
'twas',
'us',
'wants',
'was',
'we',
'were',
'what',
'when',
'who',
'whom',
'why',
'will',
'would',
'yet',
'you',
'your'
])
// add . as a separator, because otherwise "title": "Documenter.Anchors.add!"
// would not find anything if searching for "add!", only for the entire qualification
lunr.tokenizer.separator = /[\s\-\.]+/
// custom trimmer that doesn't strip @ and !, which are used in julia macro and function names
lunr.trimmer = function (token) {
return token.update(function (s) {
return s.replace(/^[^a-zA-Z0-9@!]+/, '').replace(/[^a-zA-Z0-9@!]+$/, '')
})
}
lunr.Pipeline.registerFunction(lunr.stopWordFilter, 'juliaStopWordFilter')
lunr.Pipeline.registerFunction(lunr.trimmer, 'juliaTrimmer')
var index = lunr(function () {
this.ref('location')
this.field('title',{boost: 100})
this.field('text')
documenterSearchIndex['docs'].forEach(function(e) {
this.add(e)
}, this)
})
var store = {}
documenterSearchIndex['docs'].forEach(function(e) {
store[e.location] = {title: e.title, category: e.category, page: e.page}
})
$(function(){
searchresults = $('#documenter-search-results');
searchinfo = $('#documenter-search-info');
searchbox = $('#documenter-search-query');
function update_search(querystring) {
tokens = lunr.tokenizer(querystring)
results = index.query(function (q) {
tokens.forEach(function (t) {
q.term(t.toString(), {
fields: ["title"],
boost: 100,
usePipeline: true,
editDistance: 0,
wildcard: lunr.Query.wildcard.NONE
})
q.term(t.toString(), {
fields: ["title"],
boost: 10,
usePipeline: true,
editDistance: 2,
wildcard: lunr.Query.wildcard.NONE
})
q.term(t.toString(), {
fields: ["text"],
boost: 1,
usePipeline: true,
editDistance: 0,
wildcard: lunr.Query.wildcard.NONE
})
})
})
searchinfo.text("Number of results: " + results.length)
searchresults.empty()
results.forEach(function(result) {
data = store[result.ref]
link = $('<a class="docs-label">'+data.title+'</a>')
link.attr('href', documenterBaseURL+'/'+result.ref)
if (data.category != "page"){
cat = $('<span class="docs-category">('+data.category+', '+data.page+')</span>')
} else {
cat = $('<span class="docs-category">('+data.category+')</span>')
}
li = $('<li>').append(link).append(" ").append(cat)
searchresults.append(li)
})
}
function update_search_box() {
querystring = searchbox.val()
update_search(querystring)
}
searchbox.keyup(_.debounce(update_search_box, 250))
searchbox.change(update_search_box)
search_query_uri = parseUri(window.location).queryKey["q"]
if(search_query_uri !== undefined) {
search_query = decodeURIComponent(search_query_uri.replace(/\+/g, '%20'))
searchbox.val(search_query)
}
update_search_box();
})
})
})

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -0,0 +1,66 @@
// Small function to quickly swap out themes. Gets put into the <head> tag..
function set_theme_from_local_storage() {
// Intialize the theme to null, which means default
var theme = null;
// If the browser supports the localstorage and is not disabled then try to get the
// documenter theme
if(window.localStorage != null) {
// Get the user-picked theme from localStorage. May be `null`, which means the default
// theme.
theme = window.localStorage.getItem("documenter-theme");
}
// Check if the browser supports user color preference
var darkPreference = false;
// Check if the users preference is for dark color scheme
if(window.matchMedia('(prefers-color-scheme: dark)').matches === true) {
darkPreference = true;
}
// Initialize a few variables for the loop:
//
// - active: will contain the index of the theme that should be active. Note that there
// is no guarantee that localStorage contains sane values. If `active` stays `null`
// we either could not find the theme or it is the default (primary) theme anyway.
// Either way, we then need to stick to the primary theme.
//
// - disabled: style sheets that should be disabled (i.e. all the theme style sheets
// that are not the currently active theme)
var active = null; var disabled = []; var darkTheme = null;
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
// The <link> tag of each style sheet is expected to have a data-theme-name attribute
// which must contain the name of the theme. The names in localStorage much match this.
var themename = ss.ownerNode.getAttribute("data-theme-name");
// attribute not set => non-theme stylesheet => ignore
if(themename === null) continue;
// To distinguish the default (primary) theme, it needs to have the data-theme-primary
// attribute set.
var isprimary = (ss.ownerNode.getAttribute("data-theme-primary") !== null);
// Check if the theme is primary dark theme
var isDarkTheme = (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null);
// If ss is for dark theme then set the value of darkTheme to the name of the theme
if(isDarkTheme) darkTheme = themename;
// If we find a matching theme (and it's not the default), we'll set active to non-null
if(themename === theme) active = i;
// Store the style sheets of inactive themes so that we could disable them
if(themename !== theme) disabled.push(ss);
}
if(active !== null) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + theme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
ss.disabled = true;
});
}
else if(darkTheme !== null && darkPreference === true) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + darkTheme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
if (ss.ownerNode.getAttribute("data-theme-name") !== darkTheme) {
ss.disabled = true;
}
});
}
}
set_theme_from_local_storage();

@ -0,0 +1,49 @@
function maybeAddWarning () {
// DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE
// in siteinfo.js.
// If either of these are undefined something went horribly wrong, so we abort.
if (
window.DOCUMENTER_NEWEST === undefined ||
window.DOCUMENTER_CURRENT_VERSION === undefined ||
window.DOCUMENTER_STABLE === undefined
) {
return
};
// Current version is not a version number, so we can't tell if it's the newest version. Abort.
if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) {
return
};
// Current version is newest version, so no need to add a warning.
if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) {
return
};
// Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs.
if (document.body.querySelector('meta[name="robots"]') === null) {
const meta = document.createElement('meta');
meta.name = 'robots';
meta.content = 'noindex';
document.getElementsByTagName('head')[0].appendChild(meta);
};
const div = document.createElement('div');
div.classList.add('outdated-warning-overlay');
const closer = document.createElement('button');
closer.classList.add('outdated-warning-closer', 'delete');
closer.addEventListener('click', function () {
document.body.removeChild(div);
});
const href = window.documenterBaseURL + '/../' + window.DOCUMENTER_STABLE;
div.innerHTML = 'This documentation is not for the latest version. <br> <a href="' + href + '">Go to the latest documentation</a>.';
div.appendChild(closer);
document.body.appendChild(div);
};
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', maybeAddWarning);
} else {
maybeAddWarning();
};

File diff suppressed because one or more lines are too long

@ -0,0 +1,439 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Available Cowfiles · cowsay.jl</title><script data-outdated-warner src="../assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/cows/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../">cowsay.jl</a></span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li class="is-active"><a class="tocitem" href>Available Cowfiles</a><ul class="internal"><li><a class="tocitem" href="#Bovine"><span>Bovine</span></a></li><li><a class="tocitem" href="#Mascots"><span>Mascots</span></a></li><li><a class="tocitem" href="#Cows-and-friends"><span>Cows and friends</span></a></li><li><a class="tocitem" href="#Other"><span>Other</span></a></li></ul></li><li><a class="tocitem" href="../cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Available Cowfiles</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Available Cowfiles</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/MillironX/cowsay.jl/blob/master/docs/src/cows.md#" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Cows"><a class="docs-heading-anchor" href="#Cows">Cows</a><a id="Cows-1"></a><a class="docs-heading-anchor-permalink" href="#Cows" title="Permalink"></a></h1><p>Examples of all the cowfiles available.</p><h2 id="Bovine"><a class="docs-heading-anchor" href="#Bovine">Bovine</a><a id="Bovine-1"></a><a class="docs-heading-anchor-permalink" href="#Bovine" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.default" href="#Cowsay.default"><code>Cowsay.default</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function default()</code></pre><p>The original cowfile</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Moo&quot;, cow=Cowsay.default)
_____
&lt; Moo &gt;
-----
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/default.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.cower" href="#Cowsay.cower"><code>Cowsay.cower</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function cower()</code></pre><p>A cowering cow</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Is it safe to come out yet?&quot;, cow=Cowsay.cower)
_____________________________
&lt; Is it safe to come out yet? &gt;
-----------------------------
\
\
,__, | |
(oo)\| |___
(__)\| | )\_
| |_w | \
| | || *
Cower....
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/cower.cow.jl#L4-L27">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.moofasa" href="#Cowsay.moofasa"><code>Cowsay.moofasa</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function moofasa()</code></pre><p>MOOfasa</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;It&#39;s the circle of life&quot;, cow=Cowsay.moofasa)
_________________________
&lt; It&#39;s the circle of life &gt;
-------------------------
\ ____
\ / \
| ^__^ |
| (oo) |______
| (__) | )\/\
\____/|----w |
|| ||
Moofasa</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/moofasa.cow.jl#L4-L25">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.mutilated" href="#Cowsay.mutilated"><code>Cowsay.mutilated</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function mutilated()</code></pre><p>A mutilated cow, from aspolito@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;I wouldn&#39;t have been so eager to make head cheese...&quot;, cow=Cowsay.mutilated)
______________________________________________________
&lt; I wouldn&#39;t have been so eager to make head cheese... &gt;
------------------------------------------------------
\ \_______
v__v \ \ O )
(oo) ||----w |
(__) || || \/\</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/mutilated.cow.jl#L1-L17">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.skeleton" href="#Cowsay.skeleton"><code>Cowsay.skeleton</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function skeleton()</code></pre><p>This &#39;Scowleton&#39; brought to you by one of {appel,kube,rowe}@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;All T-Bone, no steak&quot;, cow=Cowsay.skeleton)
______________________
&lt; All T-Bone, no steak &gt;
----------------------
\ (__)
\ /oo|
\ (_&quot;_)*+++++++++*
//I#\\\\\\\\I\
I[I|I|||||I I `
I`I&#39;///&#39;&#39; I I
I I I I
~ ~ ~ ~
Scowleton</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/skeleton.cow.jl#L4-L26">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.small" href="#Cowsay.small"><code>Cowsay.small</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function small()</code></pre><p>A small cow, artist unknown</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;A calf&quot;, cow=Cowsay.small)
________
&lt; A calf &gt;
--------
\ ,__,
\ (..)____
(__) )\
||--|| *</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/small.cow.jl#L1-L17">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.supermilker" href="#Cowsay.supermilker"><code>Cowsay.supermilker</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function supermilker()</code></pre><p>A cow being milked, probably from Lars Smith (lars@csua.berkeley.edu)</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Paying the bills&quot;, cow=Cowsay.supermilker)
__________________
&lt; Paying the bills &gt;
------------------
\ ^__^
\ (oo)\_______ ________
(__)\ )\/\ |Super |
||----W | |Milker|
|| UDDDDDDDDD|______|</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/supermilker.cow.jl#L1-L18">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.three_eyes" href="#Cowsay.three_eyes"><code>Cowsay.three_eyes</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function three_eyes()</code></pre><p>A cow with three eyes, brought to you by dpetrou@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;The better to see you with...&quot;, cow=Cowsay.three_eyes)
_______________________________
&lt; The better to see you with... &gt;
-------------------------------
\ ^___^
\ (ooo)\_______
(___)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/three-eyes.cow.jl#L1-L19">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.udder" href="#Cowsay.udder"><code>Cowsay.udder</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function udder()</code></pre><p>The cow from a file called cow-n-horn, artist unknown.</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Milking time!&quot;, cow=Cowsay.udder)
_______________
&lt; Milking time! &gt;
---------------
\
\ (__)
o o\
(&#39;&#39;) \---------
\ \
| |\
||---( )_|| *
|| UU ||
== ==</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/udder.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.vader" href="#Cowsay.vader"><code>Cowsay.vader</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function vader()</code></pre><p>Cowth Vader, from geordan@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Luke, I am your father!&quot;, cow=Cowsay.vader)
_________________________
&lt; Luke, I am your father! &gt;
-------------------------
\ ,-^-.
\ !oYo!
\ /./=\.\______
## )\/\
||-----w||
|| ||
Cowth Vader</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/vader.cow.jl#L1-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.www" href="#Cowsay.www"><code>Cowsay.www</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function www()</code></pre><p>A cow wadvertising the World Wide Web, from lim@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;My favorite site is MooTube&quot;, cow=Cowsay.www)
_____________________________
&lt; My favorite site is MooTube &gt;
-----------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||--WWW |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/www.cow.jl#L1-L19">source</a></section></article><h2 id="Mascots"><a class="docs-heading-anchor" href="#Mascots">Mascots</a><a id="Mascots-1"></a><a class="docs-heading-anchor-permalink" href="#Mascots" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.blowfish" href="#Cowsay.blowfish"><code>Cowsay.blowfish</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function blowfish()</code></pre><p>A blowfish.</p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Bloop, bloop&quot;, cow=Cowsay.blowfish)
______________
&lt; Bloop, bloop &gt;
--------------
\
\
| .
. |L /|
_ . |\ _| \--+._/| .
/ ||\| Y J ) / |/| ./
J |)&#39;( | ` F`.&#39;/
-&lt;| F __ .-&lt;
| / .-&#39;. `. /-. L___
J \ &lt; \ | | O\|.-&#39;
_J \ .- \/ O | | \ |F
&#39;-F -&lt;_. \ .-&#39; `-&#39; L__
__J _ _. &gt;-&#39; )._. |-&#39;
`-|.&#39; /_. \_| F
/.- . _.&lt;
/&#39; /.&#39; .&#39; `\
/L /&#39; |/ _.-&#39;-\
/&#39;J ___.---&#39;\|
|\ .--&#39; V | `. `
|/`. `-. `._)
/ .-.\
VK \ ( `\
`.\
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/blowfish.cow.jl#L1-L38">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.elephant" href="#Cowsay.elephant"><code>Cowsay.elephant</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function elephant()</code></pre><p>An elephant out and about</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Toot!&quot;, cow=Cowsay.elephant)
_______
&lt; Toot! &gt;
-------
\ /\ ___ /\
\ // \/ \/ \\
(( O O ))
\\ / \ //
\/ | | \/
| | | |
| | | |
| o |
| | | |
|m| |m|</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/elephant.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.tux" href="#Cowsay.tux"><code>Cowsay.tux</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function tux()</code></pre><p>TuX (c) pborys@p-soft.silesia.linux.org.pl</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Talk is cheap. Show me the code.&quot;, cow=Cowsay.tux)
__________________________________
&lt; Talk is cheap. Show me the code. &gt;
----------------------------------
\
\
.--.
|o_o |
|:_/ |
// \ \
(| | )
/&#39;\_ _/`\
\___)=(___/</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/tux.cow.jl#L4-L26">source</a></section></article><h2 id="Cows-and-friends"><a class="docs-heading-anchor" href="#Cows-and-friends">Cows and friends</a><a id="Cows-and-friends-1"></a><a class="docs-heading-anchor-permalink" href="#Cows-and-friends" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.dragon_and_cow" href="#Cowsay.dragon_and_cow"><code>Cowsay.dragon_and_cow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function dragon_and_cow()</code></pre><p>A dragon smiting a cow, possible credit to kube@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Roast beef: it&#39;s what&#39;s for dinner&quot;, cow=Cowsay.dragon_and_cow)
____________________________________
&lt; Roast beef: it&#39;s what&#39;s for dinner &gt;
------------------------------------
\ ^ /^
\ / \ // \
\ |\___/| / \// .\
\ /O O \__ / // | \ \ *----*
/ / \/_/ // | \ \ \ |
@___@` \/_ // | \ \ \/\ \
0/0/| \/_ // | \ \ \ \
0/0/0/0/| \/// | \ \ | |
0/0/0/0/0/_|_ / ( // | \ _\ | /
0/0/0/0/0/0/`/,_ _ _/ ) ; -. | _ _\.-~ / /
,-} _ *-.|.-~-. .~ ~
\ \__/ `/\ / ~-. _ .-~ /
\____(oo) *. } { /
( (--) .----~-.\ \-` .~
//__\\ \__ Ack! ///.----..&lt; \ _ -~
// \\ ///-._ _ _ _ _ _ _{^ - - - - ~</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/dragon-and-cow.cow.jl#L1-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.mech_and_cow" href="#Cowsay.mech_and_cow"><code>Cowsay.mech_and_cow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function mech_and_cow()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Do you ever get that feeling...?&quot;, cow=Cowsay.mech_and_cow)
__________________________________
&lt; Do you ever get that feeling...? &gt;
----------------------------------
\ ,-----.
/ | |
\ ,--| |-.
/ __,----| | | |
\ ,;:: | `_____&#39; |
/ `._______| i^i |
\ `----| |---&#39;| .
/ ,-------._| |== ||//
\ | |_|P`. /&#39;/
/ `-------&#39; &#39;Y Y/&#39;/&#39;
\ .==\ /_\
^__^ / /&#39;| `i
(oo)\_______ /&#39; / | |
(__)\ )\/\ /&#39; / | `i
||----w|| ___,;`----&#39;.___L_,-&#39;`\__
|| || i_____;----\.____i&quot;&quot;\____\</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/mech-and-cow.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.surgery" href="#Cowsay.surgery"><code>Cowsay.surgery</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function surgery()</code></pre><p>A cow operation, artist unknown</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Removing the last bit of net wrap now&quot;, cow=Cowsay.surgery)
_______________________________________
&lt; Removing the last bit of net wrap now &gt;
---------------------------------------
\ \ /
\ \/
(__) /\
(oo) O O
_\/_ //
* ( ) //
\ (\\ //
\( \\ )
( \\ ) /\
___[\______/^^^^^^^\__/) o-)__
|\__[=======______//________)__\
\|_______________//____________|
||| || //|| |||
||| || @.|| |||
|| \/ .\/ ||
. .
&#39;.&#39;.`
COW-OPERATION</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/surgery.cow.jl#L4-L35">source</a></section></article><h2 id="Other"><a class="docs-heading-anchor" href="#Other">Other</a><a id="Other-1"></a><a class="docs-heading-anchor-permalink" href="#Other" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.bunny" href="#Cowsay.bunny"><code>Cowsay.bunny</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function bunny()</code></pre><p>A cute little wabbit</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Look at that tortoise way off in the distance.&quot;, cow=Cowsay.bunny)
________________________________________________
&lt; Look at that tortoise way off in the distance. &gt;
------------------------------------------------
\
\ \
\ /\
( )
.( o ).
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/bunny.cow.jl#L1-L20">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.dragon" href="#Cowsay.dragon"><code>Cowsay.dragon</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function dragon()</code></pre><p>The Whitespace Dragon</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Roar!&quot;, cow=Cowsay.dragon)
_______
&lt; Roar! &gt;
-------
\ / \ //\
\ |\___/| / \// \\
/0 0 \__ / // | \ \
/ / \/_/ // | \ \
@_^_@&#39;/ \/_ // | \ \
//_^_/ \/_ // | \ \
( //) | \/// | \ \
( / /) _|_ / ) // | \ _\
( // /) &#39;/,_ _ _/ ( ; -. | _ _\.-~ .-~~~^-.
(( / / )) ,-{ _ `-.|.-~-. .~ `.
(( // / )) &#39;/\ / ~-. _ .-~ .-~^-. \
(( /// )) `. { } / \ \
(( / )) .----~-.\ \-&#39; .~ \ `. \^-.
///.----..&gt; \ _ -~ `. ^-` ^-_
///-._ _ _ _ _ _ _}^ - - - - ~ ~-- ,.-~
/.-~
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/dragon.cow.jl#L4-L34">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.elephant_in_snake" href="#Cowsay.elephant_in_snake"><code>Cowsay.elephant_in_snake</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function elephant_in_snake()</code></pre><p>Do we need to explain this?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Help!&quot;, cow=Cowsay.elephant_in_snake)
_______
&lt; Help! &gt;
-------
\
\ ....
........ .
. .
. .
......... .......
..............................
Elephant inside ASCII snake
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/elephant-in-snake.cow.jl#L1-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.eyes" href="#Cowsay.eyes"><code>Cowsay.eyes</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function eyes()</code></pre><p>Evil-looking eyes</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Mwah, ha, ha!&quot;, cow=Cowsay.eyes)
_______________
&lt; Mwah, ha, ha! &gt;
---------------
\
\
.::!!!!!!!:.
.!!!!!:. .:!!!!!!!!!!!!
~~~~!!!!!!. .:!!!!!!!!!UWWW$$$
:$$NWX!!: .:!!!!!!XUWW$$$$$$$$$P
$$$$$##WX!: .&lt;!!!!UW$$$$&quot; $$$$$$$$#
$$$$$ $$$UX :!!UW$$$$$$$$$ 4$$$$$*
^$$$B $$$$\ $$$$$$$$$$$$ d$$R&quot;
&quot;*$bd$$$$ &#39;*$$$$$$$$$$$o+#&quot;
&quot;&quot;&quot;&quot; &quot;&quot;&quot;&quot;&quot;&quot;&quot;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/eyes.cow.jl#L1-L25">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.flaming_sheep" href="#Cowsay.flaming_sheep"><code>Cowsay.flaming_sheep</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function flaming_sheep()</code></pre><p>The flaming sheep, contributed by Geordan Rosario (geordan@csua.berkeley.edu)</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Baaahhh!&quot;, cow=Cowsay.flaming_sheep)
__________
&lt; Baaahhh! &gt;
----------
\ . . .
\ . . . ` ,
\ .; . : .&#39; : : : .
\ i..`: i` i.i.,i i .
\ `,--.|i |i|ii|ii|i:
UooU\.&#39;@@@@@@`.||&#39;
\__/(@@@@@@@@@@)&#39;
(@@@@@@@@)
`YY~~~~YY&#39;
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/flaming-sheep.cow.jl#L4-L27">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.fox" href="#Cowsay.fox"><code>Cowsay.fox</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function fox()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;What does the fox say?&quot;, cow=Cowsay.fox)
________________________
&lt; What does the fox say? &gt;
------------------------
\ ,-. .-,
\ |-.\ __ /.-|
\ \ ` ` /
/_ _ \
&lt; _`q p _ &gt;
&lt;.._=/ \=_. &gt;
{`\()/`}`\
{ } \
|{ } \
\ &#39;--&#39; .- \
|- / \
| | | | | ;
| | |.;.,..__ |
.-&quot;&quot;;` `|
/ | /
`-../____,..---&#39;`</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/fox.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.kitty" href="#Cowsay.kitty"><code>Cowsay.kitty</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function kitty()</code></pre><p>A kitten of sorts, I think</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Meow&quot;, cow=Cowsay.kitty)
______
&lt; Meow &gt;
------
\
\
(&quot;`-&#39; &#39;-/&quot;) .___..--&#39; &#39; &quot;`-._
` *_ * ) `-. ( ) .`-.__. `)
(_Y_.) &#39; ._ ) `._` ; `` -. .-&#39;
_.. `--&#39;_..-_/ /--&#39; _ .&#39; ,4
( i l ),-&#39;&#39; ( l i),&#39; ( ( ! .-&#39;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/kitty.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.koala" href="#Cowsay.koala"><code>Cowsay.koala</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function koala</code></pre><p>From the canonical koala collection</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Welcome to Down Under&quot;, cow=Cowsay.koala)
_______________________
&lt; Welcome to Down Under &gt;
-----------------------
\
\
___
{~._.~}
( Y )
()~*~()
(_)-(_)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/koala.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.meow" href="#Cowsay.meow"><code>Cowsay.meow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function meow()</code></pre><p>A meowing tiger?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;We&#39;re kind of stupid that way&quot;, cow=Cowsay.meow)
_______________________________
&lt; We&#39;re kind of stupid that way &gt;
-------------------------------
\
\ , _ ___.--&#39;&#39;&#39;`--&#39;&#39;//-,-_--_.
\`&quot;&#39; ` || \\ \ \\/ / // / ,-\\`,_
/&#39;` \ \ || Y | \|/ / // / - |__ `-,
/@&quot;\ ` \ `\ | | ||/ // | \/ \ `-._`-,_.,
/ _.-. `.-\,___/\ _/|_/_\_\/|_/ | `-._._)
`-&#39;``/ / | // \__/\__ / \__/ \
`-&#39; /-\/ | -| \__ \ |-&#39; |
__/\ / _/ \/ __,-&#39; ) ,&#39; _|&#39;
(((__/(((_.&#39; ((___..-&#39;((__,&#39;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/meow.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.moose" href="#Cowsay.moose"><code>Cowsay.moose</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function moose()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Time to vamoose&quot;, cow=Cowsay.moose)
_________________
&lt; Time to vamoose &gt;
-----------------
\
\ \_\_ _/_/
\ \__/
(oo)\_______
(__)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/moose.cow.jl#L1-L18">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.sheep" href="#Cowsay.sheep"><code>Cowsay.sheep</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function sheep()</code></pre><p>The non-flaming sheep.</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Baa&quot;, cow=Cowsay.sheep)
_____
&lt; Baa &gt;
-----
\
\
__
UooU\.&#39;@@@@@@`.
\__/(@@@@@@@@@@)
(@@@@@@@@)
`YY~~~~YY&#39;
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/sheep.cow.jl#L4-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.stegosaurus" href="#Cowsay.stegosaurus"><code>Cowsay.stegosaurus</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function stegosaurus()</code></pre><p>A stegosaur with a top hat?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;How do you do?&quot;, cow=Cowsay.stegosaurus)
________________
&lt; How do you do? &gt;
----------------
\ . .
\ / `. .&#39; &quot;
\ .---. &lt; &gt; &lt; &gt; .---.
\ | \ \ - ~ ~ - / / |
_____ ..-~ ~-..-~
| | \~~~\.&#39; `./~~~/
--------- \__/ \__/
.&#39; O \ / / \ &quot;
(_____, `._.&#39; | } \/~~~/
`----. / } | / \__/
`-. | / | / `. ,~~|
~-.__| /_ - ~ ^| /- _ `..-&#39;
| / | / ~-. `-. _ _ _
|_____| |_____| ~ - . _ _ _ _ _&gt;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/stegosaurus.cow.jl#L4-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.turkey" href="#Cowsay.turkey"><code>Cowsay.turkey</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function turkey()</code></pre><p>Turkey!</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Gobble, gobble&quot;, cow=Cowsay.turkey)
________________
&lt; Gobble, gobble &gt;
----------------
\ ,+*^^*+___+++_
\ ,*^^^^ )
\ _+* ^**+_
\ +^ _ _++*+_+++_, )
_+^^*+_ ( ,+*^ ^ \+_ )
{ ) ( ,( ,_+--+--, ^) ^\
{ (@) } f ,( ,+-^ __*_*_ ^^\_ ^\ )
{:;-/ (_+*-+^^^^^+*+*&lt;_ _++_)_ ) ) /
( / ( ( ,___ ^*+_+* ) &lt; &lt; \
U _/ ) *--&lt; ) ^\-----++__) ) ) )
( ) _(^)^^)) ) )\^^^^^))^*+/ / /
( / (_))_^)) ) ) ))^^^^^))^^^)__/ +^^
( ,/ (^))^)) ) ) ))^^^^^^^))^^) _)
*+__+* (_))^) ) ) ))^^^^^^))^^^^^)____*^
\ \_)^)_)) ))^^^^^^^^^^))^^^^)
(_ ^\__^^^^^^^^^^^^))^^^^^^^)
^\___ ^\__^^^^^^))^^^^^^^^)\\
^^^^^\uuu/^^\uuu/^^^^\^\^\^\^\^\^\^\
___) &gt;____) &gt;___ ^\_\_\_\_\_\_\)
^^^//\\_^^//\\_^ ^(\_\_\_\)
^^^ ^^ ^^^ ^</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/turkey.cow.jl#L4-L37">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.turtle" href="#Cowsay.turtle"><code>Cowsay.turtle</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function turtle()</code></pre><p>A mysterious turtle...</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Where is that pesky rabbit?&quot;, cow=Cowsay.turtle)
_____________________________
&lt; Where is that pesky rabbit? &gt;
-----------------------------
\ ___-------___
\ _-~~ ~~-_
\ _-~ /~-_
/^\__/^\ /~ \ / \
/| O|| O| / \_______________/ \
| |___||__| / / \ \
| \ / / \ \
| (_______) /______/ \_________ \
| / / \ / \
\ \^\\ \ / \ /
\ || \______________/ _-_ //\__//
\ ||------_-~~-_ ------------- \ --/~ ~\ || __/
~-----||====/~ |==================| |/~~~~~
(_(__/ ./ / \_\ \.
(_(___/ \_____)_)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/turtle.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.vader_koala" href="#Cowsay.vader_koala"><code>Cowsay.vader_koala</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function vader_koala</code></pre><p>Another canonical koala?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Luke, you are my joey!&quot;, cow=Cowsay.vader_koala)
________________________
&lt; Luke, you are my joey! &gt;
------------------------
\
\ .
.---. //
Y|o o|Y//
/_(i=i)K/
~()~*~()~
(_)-(_)
Darth
Vader
koala</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/cows/vader-koala.cow.jl#L1-L25">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../">« Home</a><a class="docs-footer-nextpage" href="../cowfiles/">Make your own Cowfile »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Wednesday 12 January 2022 03:19">Wednesday 12 January 2022</span>. Using Julia version 1.7.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>

@ -0,0 +1,21 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Home · cowsay.jl</title><script data-outdated-warner src="assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href>cowsay.jl</a></span></div><form class="docs-search" action="search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li class="is-active"><a class="tocitem" href>Home</a><ul class="internal"><li><a class="tocitem" href="#Usage"><span>Usage</span></a></li></ul></li><li><a class="tocitem" href="cows/">Available Cowfiles</a></li><li><a class="tocitem" href="cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Home</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Home</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/MillironX/cowsay.jl/blob/master/docs/src/index.md#" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Cowsay.jl"><a class="docs-heading-anchor" href="#Cowsay.jl">Cowsay.jl</a><a id="Cowsay.jl-1"></a><a class="docs-heading-anchor-permalink" href="#Cowsay.jl" title="Permalink"></a></h1><p>A Julia package that lets you use <a href="https://en.wikipedia.org/wiki/Cowsay">cowsay</a> in your Julia programs!</p><h2 id="Usage"><a class="docs-heading-anchor" href="#Usage">Usage</a><a id="Usage-1"></a><a class="docs-heading-anchor-permalink" href="#Usage" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.cowsay" href="#Cowsay.cowsay"><code>Cowsay.cowsay</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">cowsay(message::AbstractString; kwargs...)
cowthink(message::AbstractString; kwargs...)</code></pre><p>Print an ASCII picture of a cow saying/thinking <code>message</code></p><p><strong>Arguments</strong></p><ul><li><code>message::AbstractString</code>: Tell the cow what to say</li></ul><p><strong>Keywords</strong></p><ul><li><code>cow=default</code>: Specify a particular function handle to print the ASCII art. See below for more details on what constitutes a valid function handle.</li><li><code>eyes::AbstractString=&quot;oo&quot;</code>: A two-character string to be drawn in for the eyes. Not all cowfiles support this, though.</li><li><code>tongue::AbstractString=&quot; &quot;</code>: A two-character string to be drawn in for the tongue. Not all cowfiles support this.</li></ul><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Have you mooed today?&quot;)
_______________________
&lt; Have you mooed today? &gt;
-----------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
julia&gt; cowthink(&quot;Have I mooed today?&quot;)
_____________________
( Have I mooed today? )
---------------------
o ^__^
o (oo)\_______
(__)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/fd9329a9b60a7ca223842a903a925d35dca0787f/src/Cowsay.jl#L39-L78">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="cows/">Available Cowfiles »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Wednesday 12 January 2022 03:19">Wednesday 12 January 2022</span>. Using Julia version 1.7.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>

@ -0,0 +1,2 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Search · cowsay.jl</title><script data-outdated-warner src="../assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/search/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../">cowsay.jl</a></span></div><form class="docs-search" action><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../cows/">Available Cowfiles</a></li><li><a class="tocitem" href="../cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Search</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Search</a></li></ul></nav><div class="docs-right"><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article><p id="documenter-search-info">Loading search...</p><ul id="documenter-search-results"></ul></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Wednesday 12 January 2022 03:19">Wednesday 12 January 2022</span>. Using Julia version 1.7.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body><script src="../search_index.js"></script><script src="../assets/search.js"></script></html>

File diff suppressed because one or more lines are too long

@ -0,0 +1 @@
var DOCUMENTER_CURRENT_VERSION = "v0.2.1";

@ -0,0 +1 @@
v0.3.1

@ -0,0 +1,264 @@
// Generated by Documenter.jl
requirejs.config({
paths: {
'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/languages/julia.min',
'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min',
'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min',
'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/contrib/auto-render.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min',
'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min',
'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min',
'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/highlight.min',
'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/languages/julia-repl.min',
},
shim: {
"highlight-julia": {
"deps": [
"highlight"
]
},
"katex-auto-render": {
"deps": [
"katex"
]
},
"headroom-jquery": {
"deps": [
"jquery",
"headroom"
]
},
"highlight-julia-repl": {
"deps": [
"highlight"
]
}
}
});
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'katex', 'katex-auto-render'], function($, katex, renderMathInElement) {
$(document).ready(function() {
renderMathInElement(
document.body,
{
"delimiters": [
{
"left": "$",
"right": "$",
"display": false
},
{
"left": "$$",
"right": "$$",
"display": true
},
{
"left": "\\[",
"right": "\\]",
"display": true
}
]
}
);
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'highlight', 'highlight-julia', 'highlight-julia-repl'], function($) {
$(document).ready(function() {
hljs.highlightAll();
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) {
// Manages the top navigation bar (hides it when the user starts scrolling down on the
// mobile).
window.Headroom = Headroom; // work around buggy module loading?
$(document).ready(function() {
$('#documenter .docs-navbar').headroom({
"tolerance": {"up": 10, "down": 10},
});
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// Modal settings dialog
$(document).ready(function() {
var settings = $('#documenter-settings');
$('#documenter-settings-button').click(function(){
settings.toggleClass('is-active');
});
// Close the dialog if X is clicked
$('#documenter-settings button.delete').click(function(){
settings.removeClass('is-active');
});
// Close dialog if ESC is pressed
$(document).keyup(function(e) {
if (e.keyCode == 27) settings.removeClass('is-active');
});
});
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// Manages the showing and hiding of the sidebar.
$(document).ready(function() {
var sidebar = $("#documenter > .docs-sidebar");
var sidebar_button = $("#documenter-sidebar-button")
sidebar_button.click(function(ev) {
ev.preventDefault();
sidebar.toggleClass('visible');
if (sidebar.hasClass('visible')) {
// Makes sure that the current menu item is visible in the sidebar.
$("#documenter .docs-menu a.is-active").focus();
}
});
$("#documenter > .docs-main").bind('click', function(ev) {
if ($(ev.target).is(sidebar_button)) {
return;
}
if (sidebar.hasClass('visible')) {
sidebar.removeClass('visible');
}
});
})
// Resizes the package name / sitename in the sidebar if it is too wide.
// Inspired by: https://github.com/davatron5000/FitText.js
$(document).ready(function() {
e = $("#documenter .docs-autofit");
function resize() {
var L = parseInt(e.css('max-width'), 10);
var L0 = e.width();
if(L0 > L) {
var h0 = parseInt(e.css('font-size'), 10);
e.css('font-size', L * h0 / L0);
// TODO: make sure it survives resizes?
}
}
// call once and then register events
resize();
$(window).resize(resize);
$(window).on('orientationchange', resize);
});
// Scroll the navigation bar to the currently selected menu item
$(document).ready(function() {
var sidebar = $("#documenter .docs-menu").get(0);
var active = $("#documenter .docs-menu .is-active").get(0);
if(typeof active !== 'undefined') {
sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15;
}
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
function set_theme(theme) {
var active = null;
var disabled = [];
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
var themename = ss.ownerNode.getAttribute("data-theme-name");
if(themename === null) continue; // ignore non-theme stylesheets
// Find the active theme
if(themename === theme) active = ss;
else disabled.push(ss);
}
if(active !== null) {
active.disabled = false;
if(active.ownerNode.getAttribute("data-theme-primary") === null) {
document.getElementsByTagName('html')[0].className = "theme--" + theme;
} else {
document.getElementsByTagName('html')[0].className = "";
}
disabled.forEach(function(ss){
ss.disabled = true;
});
}
// Store the theme in localStorage
if(typeof(window.localStorage) !== "undefined") {
window.localStorage.setItem("documenter-theme", theme);
} else {
console.error("Browser does not support window.localStorage");
}
}
// Theme picker setup
$(document).ready(function() {
// onchange callback
$('#documenter-themepicker').change(function themepick_callback(ev){
var themename = $('#documenter-themepicker option:selected').attr('value');
set_theme(themename);
});
// Make sure that the themepicker displays the correct theme when the theme is retrieved
// from localStorage
if(typeof(window.localStorage) !== "undefined") {
var theme = window.localStorage.getItem("documenter-theme");
if(theme !== null) {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = (e.value === theme);
})
} else {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = $("html").hasClass(`theme--${e.value}`);
})
}
}
})
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
// update the version selector with info from the siteinfo.js and ../versions.js files
$(document).ready(function() {
var version_selector = $("#documenter .docs-version-selector");
var version_selector_select = $("#documenter .docs-version-selector select");
version_selector_select.change(function(x) {
target_href = version_selector_select.children("option:selected").get(0).value;
window.location.href = target_href;
});
// add the current version to the selector based on siteinfo.js, but only if the selector is empty
if (typeof DOCUMENTER_CURRENT_VERSION !== 'undefined' && $('#version-selector > option').length == 0) {
var option = $("<option value='#' selected='selected'>" + DOCUMENTER_CURRENT_VERSION + "</option>");
version_selector_select.append(option);
}
if (typeof DOC_VERSIONS !== 'undefined') {
var existing_versions = version_selector_select.children("option");
var existing_versions_texts = existing_versions.map(function(i,x){return x.text});
DOC_VERSIONS.forEach(function(each) {
var version_url = documenterBaseURL + "/../" + each;
var existing_id = $.inArray(each, existing_versions_texts);
// if not already in the version selector, add it as a new option,
// otherwise update the old option with the URL and enable it
if (existing_id == -1) {
var option = $("<option value='" + version_url + "'>" + each + "</option>");
version_selector_select.append(option);
} else {
var option = existing_versions[existing_id];
option.value = version_url;
option.disabled = false;
}
});
}
// only show the version selector if the selector has been populated
if (version_selector_select.children("option").length > 0) {
version_selector.toggleClass("visible");
}
})
})

@ -0,0 +1,251 @@
// Generated by Documenter.jl
requirejs.config({
paths: {
'lunr': 'https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.9/lunr.min',
'lodash': 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min',
}
});
////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'lunr', 'lodash'], function($, lunr, _) {
$(document).ready(function() {
// parseUri 1.2.2
// (c) Steven Levithan <stevenlevithan.com>
// MIT License
function parseUri (str) {
var o = parseUri.options,
m = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
uri = {},
i = 14;
while (i--) uri[o.key[i]] = m[i] || "";
uri[o.q.name] = {};
uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
if ($1) uri[o.q.name][$1] = $2;
});
return uri;
};
parseUri.options = {
strictMode: false,
key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
q: {
name: "queryKey",
parser: /(?:^|&)([^&=]*)=?([^&]*)/g
},
parser: {
strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
}
};
$("#search-form").submit(function(e) {
e.preventDefault()
})
// list below is the lunr 2.1.3 list minus the intersect with names(Base)
// (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with)
// ideally we'd just filter the original list but it's not available as a variable
lunr.stopWordFilter = lunr.generateStopWordFilter([
'a',
'able',
'about',
'across',
'after',
'almost',
'also',
'am',
'among',
'an',
'and',
'are',
'as',
'at',
'be',
'because',
'been',
'but',
'by',
'can',
'cannot',
'could',
'dear',
'did',
'does',
'either',
'ever',
'every',
'from',
'got',
'had',
'has',
'have',
'he',
'her',
'hers',
'him',
'his',
'how',
'however',
'i',
'if',
'into',
'it',
'its',
'just',
'least',
'like',
'likely',
'may',
'me',
'might',
'most',
'must',
'my',
'neither',
'no',
'nor',
'not',
'of',
'off',
'often',
'on',
'or',
'other',
'our',
'own',
'rather',
'said',
'say',
'says',
'she',
'should',
'since',
'so',
'some',
'than',
'that',
'the',
'their',
'them',
'then',
'there',
'these',
'they',
'this',
'tis',
'to',
'too',
'twas',
'us',
'wants',
'was',
'we',
'were',
'what',
'when',
'who',
'whom',
'why',
'will',
'would',
'yet',
'you',
'your'
])
// add . as a separator, because otherwise "title": "Documenter.Anchors.add!"
// would not find anything if searching for "add!", only for the entire qualification
lunr.tokenizer.separator = /[\s\-\.]+/
// custom trimmer that doesn't strip @ and !, which are used in julia macro and function names
lunr.trimmer = function (token) {
return token.update(function (s) {
return s.replace(/^[^a-zA-Z0-9@!]+/, '').replace(/[^a-zA-Z0-9@!]+$/, '')
})
}
lunr.Pipeline.registerFunction(lunr.stopWordFilter, 'juliaStopWordFilter')
lunr.Pipeline.registerFunction(lunr.trimmer, 'juliaTrimmer')
var index = lunr(function () {
this.ref('location')
this.field('title',{boost: 100})
this.field('text')
documenterSearchIndex['docs'].forEach(function(e) {
this.add(e)
}, this)
})
var store = {}
documenterSearchIndex['docs'].forEach(function(e) {
store[e.location] = {title: e.title, category: e.category, page: e.page}
})
$(function(){
searchresults = $('#documenter-search-results');
searchinfo = $('#documenter-search-info');
searchbox = $('#documenter-search-query');
function update_search(querystring) {
tokens = lunr.tokenizer(querystring)
results = index.query(function (q) {
tokens.forEach(function (t) {
q.term(t.toString(), {
fields: ["title"],
boost: 100,
usePipeline: true,
editDistance: 0,
wildcard: lunr.Query.wildcard.NONE
})
q.term(t.toString(), {
fields: ["title"],
boost: 10,
usePipeline: true,
editDistance: 2,
wildcard: lunr.Query.wildcard.NONE
})
q.term(t.toString(), {
fields: ["text"],
boost: 1,
usePipeline: true,
editDistance: 0,
wildcard: lunr.Query.wildcard.NONE
})
})
})
searchinfo.text("Number of results: " + results.length)
searchresults.empty()
results.forEach(function(result) {
data = store[result.ref]
link = $('<a class="docs-label">'+data.title+'</a>')
link.attr('href', documenterBaseURL+'/'+result.ref)
if (data.category != "page"){
cat = $('<span class="docs-category">('+data.category+', '+data.page+')</span>')
} else {
cat = $('<span class="docs-category">('+data.category+')</span>')
}
li = $('<li>').append(link).append(" ").append(cat)
searchresults.append(li)
})
}
function update_search_box() {
querystring = searchbox.val()
update_search(querystring)
}
searchbox.keyup(_.debounce(update_search_box, 250))
searchbox.change(update_search_box)
search_query_uri = parseUri(window.location).queryKey["q"]
if(search_query_uri !== undefined) {
search_query = decodeURIComponent(search_query_uri.replace(/\+/g, '%20'))
searchbox.val(search_query)
}
update_search_box();
})
})
})

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -0,0 +1,66 @@
// Small function to quickly swap out themes. Gets put into the <head> tag..
function set_theme_from_local_storage() {
// Intialize the theme to null, which means default
var theme = null;
// If the browser supports the localstorage and is not disabled then try to get the
// documenter theme
if(window.localStorage != null) {
// Get the user-picked theme from localStorage. May be `null`, which means the default
// theme.
theme = window.localStorage.getItem("documenter-theme");
}
// Check if the browser supports user color preference
var darkPreference = false;
// Check if the users preference is for dark color scheme
if(window.matchMedia('(prefers-color-scheme: dark)').matches === true) {
darkPreference = true;
}
// Initialize a few variables for the loop:
//
// - active: will contain the index of the theme that should be active. Note that there
// is no guarantee that localStorage contains sane values. If `active` stays `null`
// we either could not find the theme or it is the default (primary) theme anyway.
// Either way, we then need to stick to the primary theme.
//
// - disabled: style sheets that should be disabled (i.e. all the theme style sheets
// that are not the currently active theme)
var active = null; var disabled = []; var darkTheme = null;
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
// The <link> tag of each style sheet is expected to have a data-theme-name attribute
// which must contain the name of the theme. The names in localStorage much match this.
var themename = ss.ownerNode.getAttribute("data-theme-name");
// attribute not set => non-theme stylesheet => ignore
if(themename === null) continue;
// To distinguish the default (primary) theme, it needs to have the data-theme-primary
// attribute set.
var isprimary = (ss.ownerNode.getAttribute("data-theme-primary") !== null);
// Check if the theme is primary dark theme
var isDarkTheme = (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null);
// If ss is for dark theme then set the value of darkTheme to the name of the theme
if(isDarkTheme) darkTheme = themename;
// If we find a matching theme (and it's not the default), we'll set active to non-null
if(themename === theme) active = i;
// Store the style sheets of inactive themes so that we could disable them
if(themename !== theme) disabled.push(ss);
}
if(active !== null) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + theme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
ss.disabled = true;
});
}
else if(darkTheme !== null && darkPreference === true) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + darkTheme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
if (ss.ownerNode.getAttribute("data-theme-name") !== darkTheme) {
ss.disabled = true;
}
});
}
}
set_theme_from_local_storage();

@ -0,0 +1,49 @@
function maybeAddWarning () {
// DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE
// in siteinfo.js.
// If either of these are undefined something went horribly wrong, so we abort.
if (
window.DOCUMENTER_NEWEST === undefined ||
window.DOCUMENTER_CURRENT_VERSION === undefined ||
window.DOCUMENTER_STABLE === undefined
) {
return
};
// Current version is not a version number, so we can't tell if it's the newest version. Abort.
if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) {
return
};
// Current version is newest version, so no need to add a warning.
if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) {
return
};
// Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs.
if (document.body.querySelector('meta[name="robots"]') === null) {
const meta = document.createElement('meta');
meta.name = 'robots';
meta.content = 'noindex';
document.getElementsByTagName('head')[0].appendChild(meta);
};
const div = document.createElement('div');
div.classList.add('outdated-warning-overlay');
const closer = document.createElement('button');
closer.classList.add('outdated-warning-closer', 'delete');
closer.addEventListener('click', function () {
document.body.removeChild(div);
});
const href = window.documenterBaseURL + '/../' + window.DOCUMENTER_STABLE;
div.innerHTML = 'This documentation is not for the latest version. <br> <a href="' + href + '">Go to the latest documentation</a>.';
div.appendChild(closer);
document.body.appendChild(div);
};
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', maybeAddWarning);
} else {
maybeAddWarning();
};

File diff suppressed because one or more lines are too long

@ -0,0 +1,441 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Available Cowfiles · cowsay.jl</title><script data-outdated-warner src="../assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/cows/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../">cowsay.jl</a></span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li class="is-active"><a class="tocitem" href>Available Cowfiles</a><ul class="internal"><li><a class="tocitem" href="#Bovine"><span>Bovine</span></a></li><li><a class="tocitem" href="#Mascots"><span>Mascots</span></a></li><li><a class="tocitem" href="#Cows-and-friends"><span>Cows and friends</span></a></li><li><a class="tocitem" href="#Other"><span>Other</span></a></li></ul></li><li><a class="tocitem" href="../cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Available Cowfiles</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Available Cowfiles</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/MillironX/cowsay.jl/blob/master/docs/src/cows.md#" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Cows"><a class="docs-heading-anchor" href="#Cows">Cows</a><a id="Cows-1"></a><a class="docs-heading-anchor-permalink" href="#Cows" title="Permalink"></a></h1><p>Examples of all the cowfiles available.</p><h2 id="Bovine"><a class="docs-heading-anchor" href="#Bovine">Bovine</a><a id="Bovine-1"></a><a class="docs-heading-anchor-permalink" href="#Bovine" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.default" href="#Cowsay.default"><code>Cowsay.default</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function default()</code></pre><p>The original cowfile</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Moo&quot;, cow=Cowsay.default)
_____
&lt; Moo &gt;
-----
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/default.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.cower" href="#Cowsay.cower"><code>Cowsay.cower</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function cower()</code></pre><p>A cowering cow</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Is it safe to come out yet?&quot;, cow=Cowsay.cower)
_____________________________
&lt; Is it safe to come out yet? &gt;
-----------------------------
\
\
,__, | |
(oo)\| |___
(__)\| | )\_
| |_w | \
| | || *
Cower....
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/cower.cow.jl#L4-L27">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.moofasa" href="#Cowsay.moofasa"><code>Cowsay.moofasa</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function moofasa()</code></pre><p>MOOfasa</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;It&#39;s the circle of life&quot;, cow=Cowsay.moofasa)
_________________________
&lt; It&#39;s the circle of life &gt;
-------------------------
\ ____
\ / \
| ^__^ |
| (oo) |______
| (__) | )\/\
\____/|----w |
|| ||
Moofasa</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/moofasa.cow.jl#L4-L25">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.mutilated" href="#Cowsay.mutilated"><code>Cowsay.mutilated</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function mutilated()</code></pre><p>A mutilated cow, from aspolito@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;I wouldn&#39;t have been so eager to make head cheese...&quot;, cow=Cowsay.mutilated)
_______________________________________
/ I wouldn&#39;t have been so eager to make \
\ head cheese... /
---------------------------------------
\ \_______
v__v \ \ O )
(oo) ||----w |
(__) || || \/\</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/mutilated.cow.jl#L1-L18">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.skeleton" href="#Cowsay.skeleton"><code>Cowsay.skeleton</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function skeleton()</code></pre><p>This &#39;Scowleton&#39; brought to you by one of {appel,kube,rowe}@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;All T-Bone, no steak&quot;, cow=Cowsay.skeleton)
______________________
&lt; All T-Bone, no steak &gt;
----------------------
\ (__)
\ /oo|
\ (_&quot;_)*+++++++++*
//I#\\\\\\\\I\
I[I|I|||||I I `
I`I&#39;///&#39;&#39; I I
I I I I
~ ~ ~ ~
Scowleton</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/skeleton.cow.jl#L4-L26">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.small" href="#Cowsay.small"><code>Cowsay.small</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function small()</code></pre><p>A small cow, artist unknown</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;A calf&quot;, cow=Cowsay.small)
________
&lt; A calf &gt;
--------
\ ,__,
\ (..)____
(__) )\
||--|| *</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/small.cow.jl#L1-L17">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.supermilker" href="#Cowsay.supermilker"><code>Cowsay.supermilker</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function supermilker()</code></pre><p>A cow being milked, probably from Lars Smith (lars@csua.berkeley.edu)</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Paying the bills&quot;, cow=Cowsay.supermilker)
__________________
&lt; Paying the bills &gt;
------------------
\ ^__^
\ (oo)\_______ ________
(__)\ )\/\ |Super |
||----W | |Milker|
|| UDDDDDDDDD|______|</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/supermilker.cow.jl#L1-L18">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.three_eyes" href="#Cowsay.three_eyes"><code>Cowsay.three_eyes</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function three_eyes()</code></pre><p>A cow with three eyes, brought to you by dpetrou@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;The better to see you with...&quot;, cow=Cowsay.three_eyes)
_______________________________
&lt; The better to see you with... &gt;
-------------------------------
\ ^___^
\ (ooo)\_______
(___)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/three-eyes.cow.jl#L1-L19">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.udder" href="#Cowsay.udder"><code>Cowsay.udder</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function udder()</code></pre><p>The cow from a file called cow-n-horn, artist unknown.</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Milking time!&quot;, cow=Cowsay.udder)
_______________
&lt; Milking time! &gt;
---------------
\
\ (__)
o o\
(&#39;&#39;) \---------
\ \
| |\
||---( )_|| *
|| UU ||
== ==</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/udder.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.vader" href="#Cowsay.vader"><code>Cowsay.vader</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function vader()</code></pre><p>Cowth Vader, from geordan@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Luke, I am your father!&quot;, cow=Cowsay.vader)
_________________________
&lt; Luke, I am your father! &gt;
-------------------------
\ ,-^-.
\ !oYo!
\ /./=\.\______
## )\/\
||-----w||
|| ||
Cowth Vader</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/vader.cow.jl#L1-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.www" href="#Cowsay.www"><code>Cowsay.www</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function www()</code></pre><p>A cow wadvertising the World Wide Web, from lim@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;My favorite site is MooTube&quot;, cow=Cowsay.www)
_____________________________
&lt; My favorite site is MooTube &gt;
-----------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||--WWW |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/www.cow.jl#L1-L19">source</a></section></article><h2 id="Mascots"><a class="docs-heading-anchor" href="#Mascots">Mascots</a><a id="Mascots-1"></a><a class="docs-heading-anchor-permalink" href="#Mascots" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.blowfish" href="#Cowsay.blowfish"><code>Cowsay.blowfish</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function blowfish()</code></pre><p>A blowfish.</p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Bloop, bloop&quot;, cow=Cowsay.blowfish)
______________
&lt; Bloop, bloop &gt;
--------------
\
\
| .
. |L /|
_ . |\ _| \--+._/| .
/ ||\| Y J ) / |/| ./
J |)&#39;( | ` F`.&#39;/
-&lt;| F __ .-&lt;
| / .-&#39;. `. /-. L___
J \ &lt; \ | | O\|.-&#39;
_J \ .- \/ O | | \ |F
&#39;-F -&lt;_. \ .-&#39; `-&#39; L__
__J _ _. &gt;-&#39; )._. |-&#39;
`-|.&#39; /_. \_| F
/.- . _.&lt;
/&#39; /.&#39; .&#39; `\
/L /&#39; |/ _.-&#39;-\
/&#39;J ___.---&#39;\|
|\ .--&#39; V | `. `
|/`. `-. `._)
/ .-.\
VK \ ( `\
`.\
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/blowfish.cow.jl#L1-L38">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.elephant" href="#Cowsay.elephant"><code>Cowsay.elephant</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function elephant()</code></pre><p>An elephant out and about</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Toot!&quot;, cow=Cowsay.elephant)
_______
&lt; Toot! &gt;
-------
\ /\ ___ /\
\ // \/ \/ \\
(( O O ))
\\ / \ //
\/ | | \/
| | | |
| | | |
| o |
| | | |
|m| |m|</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/elephant.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.tux" href="#Cowsay.tux"><code>Cowsay.tux</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function tux()</code></pre><p>TuX (c) pborys@p-soft.silesia.linux.org.pl</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Talk is cheap. Show me the code.&quot;, cow=Cowsay.tux)
__________________________________
&lt; Talk is cheap. Show me the code. &gt;
----------------------------------
\
\
.--.
|o_o |
|:_/ |
// \ \
(| | )
/&#39;\_ _/`\
\___)=(___/</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/tux.cow.jl#L4-L26">source</a></section></article><h2 id="Cows-and-friends"><a class="docs-heading-anchor" href="#Cows-and-friends">Cows and friends</a><a id="Cows-and-friends-1"></a><a class="docs-heading-anchor-permalink" href="#Cows-and-friends" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.dragon_and_cow" href="#Cowsay.dragon_and_cow"><code>Cowsay.dragon_and_cow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function dragon_and_cow()</code></pre><p>A dragon smiting a cow, possible credit to kube@csua.berkeley.edu</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Roast beef: it&#39;s what&#39;s for dinner&quot;, cow=Cowsay.dragon_and_cow)
____________________________________
&lt; Roast beef: it&#39;s what&#39;s for dinner &gt;
------------------------------------
\ ^ /^
\ / \ // \
\ |\___/| / \// .\
\ /O O \__ / // | \ \ *----*
/ / \/_/ // | \ \ \ |
@___@` \/_ // | \ \ \/\ \
0/0/| \/_ // | \ \ \ \
0/0/0/0/| \/// | \ \ | |
0/0/0/0/0/_|_ / ( // | \ _\ | /
0/0/0/0/0/0/`/,_ _ _/ ) ; -. | _ _\.-~ / /
,-} _ *-.|.-~-. .~ ~
\ \__/ `/\ / ~-. _ .-~ /
\____(oo) *. } { /
( (--) .----~-.\ \-` .~
//__\\ \__ Ack! ///.----..&lt; \ _ -~
// \\ ///-._ _ _ _ _ _ _{^ - - - - ~</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/dragon-and-cow.cow.jl#L1-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.mech_and_cow" href="#Cowsay.mech_and_cow"><code>Cowsay.mech_and_cow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function mech_and_cow()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Do you ever get that feeling...?&quot;, cow=Cowsay.mech_and_cow)
__________________________________
&lt; Do you ever get that feeling...? &gt;
----------------------------------
\ ,-----.
/ | |
\ ,--| |-.
/ __,----| | | |
\ ,;:: | `_____&#39; |
/ `._______| i^i |
\ `----| |---&#39;| .
/ ,-------._| |== ||//
\ | |_|P`. /&#39;/
/ `-------&#39; &#39;Y Y/&#39;/&#39;
\ .==\ /_\
^__^ / /&#39;| `i
(oo)\_______ /&#39; / | |
(__)\ )\/\ /&#39; / | `i
||----w|| ___,;`----&#39;.___L_,-&#39;`\__
|| || i_____;----\.____i&quot;&quot;\____\</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/mech-and-cow.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.surgery" href="#Cowsay.surgery"><code>Cowsay.surgery</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function surgery()</code></pre><p>A cow operation, artist unknown</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Removing the last bit of net wrap now&quot;, cow=Cowsay.surgery)
_______________________________________
&lt; Removing the last bit of net wrap now &gt;
---------------------------------------
\ \ /
\ \/
(__) /\
(oo) O O
_\/_ //
* ( ) //
\ (\\ //
\( \\ )
( \\ ) /\
___[\______/^^^^^^^\__/) o-)__
|\__[=======______//________)__\
\|_______________//____________|
||| || //|| |||
||| || @.|| |||
|| \/ .\/ ||
. .
&#39;.&#39;.`
COW-OPERATION</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/surgery.cow.jl#L4-L35">source</a></section></article><h2 id="Other"><a class="docs-heading-anchor" href="#Other">Other</a><a id="Other-1"></a><a class="docs-heading-anchor-permalink" href="#Other" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.bunny" href="#Cowsay.bunny"><code>Cowsay.bunny</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function bunny()</code></pre><p>A cute little wabbit</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Look at that tortoise way off in the distance.&quot;, cow=Cowsay.bunny)
______________________________________
/ Look at that tortoise way off in the \
\ distance. /
--------------------------------------
\
\ \
\ /\
( )
.( o ).
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/bunny.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.dragon" href="#Cowsay.dragon"><code>Cowsay.dragon</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function dragon()</code></pre><p>The Whitespace Dragon</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Roar!&quot;, cow=Cowsay.dragon)
_______
&lt; Roar! &gt;
-------
\ / \ //\
\ |\___/| / \// \\
/0 0 \__ / // | \ \
/ / \/_/ // | \ \
@_^_@&#39;/ \/_ // | \ \
//_^_/ \/_ // | \ \
( //) | \/// | \ \
( / /) _|_ / ) // | \ _\
( // /) &#39;/,_ _ _/ ( ; -. | _ _\.-~ .-~~~^-.
(( / / )) ,-{ _ `-.|.-~-. .~ `.
(( // / )) &#39;/\ / ~-. _ .-~ .-~^-. \
(( /// )) `. { } / \ \
(( / )) .----~-.\ \-&#39; .~ \ `. \^-.
///.----..&gt; \ _ -~ `. ^-` ^-_
///-._ _ _ _ _ _ _}^ - - - - ~ ~-- ,.-~
/.-~
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/dragon.cow.jl#L4-L34">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.elephant_in_snake" href="#Cowsay.elephant_in_snake"><code>Cowsay.elephant_in_snake</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function elephant_in_snake()</code></pre><p>Do we need to explain this?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Help!&quot;, cow=Cowsay.elephant_in_snake)
_______
&lt; Help! &gt;
-------
\
\ ....
........ .
. .
. .
......... .......
..............................
Elephant inside ASCII snake
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/elephant-in-snake.cow.jl#L1-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.eyes" href="#Cowsay.eyes"><code>Cowsay.eyes</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function eyes()</code></pre><p>Evil-looking eyes</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Mwah, ha, ha!&quot;, cow=Cowsay.eyes)
_______________
&lt; Mwah, ha, ha! &gt;
---------------
\
\
.::!!!!!!!:.
.!!!!!:. .:!!!!!!!!!!!!
~~~~!!!!!!. .:!!!!!!!!!UWWW$$$
:$$NWX!!: .:!!!!!!XUWW$$$$$$$$$P
$$$$$##WX!: .&lt;!!!!UW$$$$&quot; $$$$$$$$#
$$$$$ $$$UX :!!UW$$$$$$$$$ 4$$$$$*
^$$$B $$$$\ $$$$$$$$$$$$ d$$R&quot;
&quot;*$bd$$$$ &#39;*$$$$$$$$$$$o+#&quot;
&quot;&quot;&quot;&quot; &quot;&quot;&quot;&quot;&quot;&quot;&quot;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/eyes.cow.jl#L1-L25">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.flaming_sheep" href="#Cowsay.flaming_sheep"><code>Cowsay.flaming_sheep</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function flaming_sheep()</code></pre><p>The flaming sheep, contributed by Geordan Rosario (geordan@csua.berkeley.edu)</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Baaahhh!&quot;, cow=Cowsay.flaming_sheep)
__________
&lt; Baaahhh! &gt;
----------
\ . . .
\ . . . ` ,
\ .; . : .&#39; : : : .
\ i..`: i` i.i.,i i .
\ `,--.|i |i|ii|ii|i:
UooU\.&#39;@@@@@@`.||&#39;
\__/(@@@@@@@@@@)&#39;
(@@@@@@@@)
`YY~~~~YY&#39;
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/flaming-sheep.cow.jl#L4-L27">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.fox" href="#Cowsay.fox"><code>Cowsay.fox</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function fox()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;What does the fox say?&quot;, cow=Cowsay.fox)
________________________
&lt; What does the fox say? &gt;
------------------------
\ ,-. .-,
\ |-.\ __ /.-|
\ \ ` ` /
/_ _ \
&lt; _`q p _ &gt;
&lt;.._=/ \=_. &gt;
{`\()/`}`\
{ } \
|{ } \
\ &#39;--&#39; .- \
|- / \
| | | | | ;
| | |.;.,..__ |
.-&quot;&quot;;` `|
/ | /
`-../____,..---&#39;`</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/fox.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.kitty" href="#Cowsay.kitty"><code>Cowsay.kitty</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function kitty()</code></pre><p>A kitten of sorts, I think</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Meow&quot;, cow=Cowsay.kitty)
______
&lt; Meow &gt;
------
\
\
(&quot;`-&#39; &#39;-/&quot;) .___..--&#39; &#39; &quot;`-._
` *_ * ) `-. ( ) .`-.__. `)
(_Y_.) &#39; ._ ) `._` ; `` -. .-&#39;
_.. `--&#39;_..-_/ /--&#39; _ .&#39; ,4
( i l ),-&#39;&#39; ( l i),&#39; ( ( ! .-&#39;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/kitty.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.koala" href="#Cowsay.koala"><code>Cowsay.koala</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function koala</code></pre><p>From the canonical koala collection</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Welcome to Down Under&quot;, cow=Cowsay.koala)
_______________________
&lt; Welcome to Down Under &gt;
-----------------------
\
\
___
{~._.~}
( Y )
()~*~()
(_)-(_)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/koala.cow.jl#L1-L21">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.meow" href="#Cowsay.meow"><code>Cowsay.meow</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function meow()</code></pre><p>A meowing tiger?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;We&#39;re kind of stupid that way&quot;, cow=Cowsay.meow)
_______________________________
&lt; We&#39;re kind of stupid that way &gt;
-------------------------------
\
\ , _ ___.--&#39;&#39;&#39;`--&#39;&#39;//-,-_--_.
\`&quot;&#39; ` || \\ \ \\/ / // / ,-\\`,_
/&#39;` \ \ || Y | \|/ / // / - |__ `-,
/@&quot;\ ` \ `\ | | ||/ // | \/ \ `-._`-,_.,
/ _.-. `.-\,___/\ _/|_/_\_\/|_/ | `-._._)
`-&#39;``/ / | // \__/\__ / \__/ \
`-&#39; /-\/ | -| \__ \ |-&#39; |
__/\ / _/ \/ __,-&#39; ) ,&#39; _|&#39;
(((__/(((_.&#39; ((___..-&#39;((__,&#39;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/meow.cow.jl#L1-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.moose" href="#Cowsay.moose"><code>Cowsay.moose</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function moose()</code></pre><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Time to vamoose&quot;, cow=Cowsay.moose)
_________________
&lt; Time to vamoose &gt;
-----------------
\
\ \_\_ _/_/
\ \__/
(oo)\_______
(__)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/moose.cow.jl#L1-L18">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.sheep" href="#Cowsay.sheep"><code>Cowsay.sheep</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function sheep()</code></pre><p>The non-flaming sheep.</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Baa&quot;, cow=Cowsay.sheep)
_____
&lt; Baa &gt;
-----
\
\
__
UooU\.&#39;@@@@@@`.
\__/(@@@@@@@@@@)
(@@@@@@@@)
`YY~~~~YY&#39;
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/sheep.cow.jl#L4-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.stegosaurus" href="#Cowsay.stegosaurus"><code>Cowsay.stegosaurus</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function stegosaurus()</code></pre><p>A stegosaur with a top hat?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;How do you do?&quot;, cow=Cowsay.stegosaurus)
________________
&lt; How do you do? &gt;
----------------
\ . .
\ / `. .&#39; &quot;
\ .---. &lt; &gt; &lt; &gt; .---.
\ | \ \ - ~ ~ - / / |
_____ ..-~ ~-..-~
| | \~~~\.&#39; `./~~~/
--------- \__/ \__/
.&#39; O \ / / \ &quot;
(_____, `._.&#39; | } \/~~~/
`----. / } | / \__/
`-. | / | / `. ,~~|
~-.__| /_ - ~ ^| /- _ `..-&#39;
| / | / ~-. `-. _ _ _
|_____| |_____| ~ - . _ _ _ _ _&gt;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/stegosaurus.cow.jl#L4-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.turkey" href="#Cowsay.turkey"><code>Cowsay.turkey</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function turkey()</code></pre><p>Turkey!</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Gobble, gobble&quot;, cow=Cowsay.turkey)
________________
&lt; Gobble, gobble &gt;
----------------
\ ,+*^^*+___+++_
\ ,*^^^^ )
\ _+* ^**+_
\ +^ _ _++*+_+++_, )
_+^^*+_ ( ,+*^ ^ \+_ )
{ ) ( ,( ,_+--+--, ^) ^\
{ (@) } f ,( ,+-^ __*_*_ ^^\_ ^\ )
{:;-/ (_+*-+^^^^^+*+*&lt;_ _++_)_ ) ) /
( / ( ( ,___ ^*+_+* ) &lt; &lt; \
U _/ ) *--&lt; ) ^\-----++__) ) ) )
( ) _(^)^^)) ) )\^^^^^))^*+/ / /
( / (_))_^)) ) ) ))^^^^^))^^^)__/ +^^
( ,/ (^))^)) ) ) ))^^^^^^^))^^) _)
*+__+* (_))^) ) ) ))^^^^^^))^^^^^)____*^
\ \_)^)_)) ))^^^^^^^^^^))^^^^)
(_ ^\__^^^^^^^^^^^^))^^^^^^^)
^\___ ^\__^^^^^^))^^^^^^^^)\\
^^^^^\uuu/^^\uuu/^^^^\^\^\^\^\^\^\^\
___) &gt;____) &gt;___ ^\_\_\_\_\_\_\)
^^^//\\_^^//\\_^ ^(\_\_\_\)
^^^ ^^ ^^^ ^</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/turkey.cow.jl#L4-L37">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.turtle" href="#Cowsay.turtle"><code>Cowsay.turtle</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function turtle()</code></pre><p>A mysterious turtle...</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Where is that pesky rabbit?&quot;, cow=Cowsay.turtle)
_____________________________
&lt; Where is that pesky rabbit? &gt;
-----------------------------
\ ___-------___
\ _-~~ ~~-_
\ _-~ /~-_
/^\__/^\ /~ \ / \
/| O|| O| / \_______________/ \
| |___||__| / / \ \
| \ / / \ \
| (_______) /______/ \_________ \
| / / \ / \
\ \^\\ \ / \ /
\ || \______________/ _-_ //\__//
\ ||------_-~~-_ ------------- \ --/~ ~\ || __/
~-----||====/~ |==================| |/~~~~~
(_(__/ ./ / \_\ \.
(_(___/ \_____)_)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/turtle.cow.jl#L1-L28">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.vader_koala" href="#Cowsay.vader_koala"><code>Cowsay.vader_koala</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">function vader_koala</code></pre><p>Another canonical koala?</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Luke, you are my joey!&quot;, cow=Cowsay.vader_koala)
________________________
&lt; Luke, you are my joey! &gt;
------------------------
\
\ .
.---. //
Y|o o|Y//
/_(i=i)K/
~()~*~()~
(_)-(_)
Darth
Vader
koala</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/cows/vader-koala.cow.jl#L1-L25">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../">« Home</a><a class="docs-footer-nextpage" href="../cowfiles/">Make your own Cowfile »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Tuesday 1 February 2022 23:37">Tuesday 1 February 2022</span>. Using Julia version 1.7.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>

@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Home · cowsay.jl</title><script data-outdated-warner src="assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href>cowsay.jl</a></span></div><form class="docs-search" action="search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li class="is-active"><a class="tocitem" href>Home</a><ul class="internal"><li><a class="tocitem" href="#Usage"><span>Usage</span></a></li></ul></li><li><a class="tocitem" href="cows/">Available Cowfiles</a></li><li><a class="tocitem" href="cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Home</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Home</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/MillironX/cowsay.jl/blob/master/docs/src/index.md#" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Cowsay.jl"><a class="docs-heading-anchor" href="#Cowsay.jl">Cowsay.jl</a><a id="Cowsay.jl-1"></a><a class="docs-heading-anchor-permalink" href="#Cowsay.jl" title="Permalink"></a></h1><p>A Julia package that lets you use <a href="https://en.wikipedia.org/wiki/Cowsay">cowsay</a> in your Julia programs!</p><h2 id="Usage"><a class="docs-heading-anchor" href="#Usage">Usage</a><a id="Usage-1"></a><a class="docs-heading-anchor-permalink" href="#Usage" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="Cowsay.cowsay" href="#Cowsay.cowsay"><code>Cowsay.cowsay</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">cowsay([io,] message::AbstractString; kwargs...)
cowthink([io,] message::AbstractString; kwargs...)</code></pre><p>Print an ASCII picture of a cow saying/thinking <code>message</code></p><p><strong>Arguments</strong></p><ul><li><code>message::AbstractString</code>: Tell the cow what to say</li></ul><p><strong>Keywords</strong></p><ul><li><code>cow=default</code>: Specify a particular function handle to print the ASCII art. See below for more details on what constitutes a valid function handle.</li><li><code>eyes::AbstractString=&quot;oo&quot;</code>: A two-character string to be drawn in for the eyes. Not all cowfiles support this, though.</li><li><code>tongue::AbstractString=&quot; &quot;</code>: A two-character string to be drawn in for the tongue. Not all cowfiles support this.</li><li><code>wrap::Int</code>=40: The number of characters at which to wrap <code>message</code> to a new line</li></ul><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsay(&quot;Have you mooed today?&quot;)
_______________________
&lt; Have you mooed today? &gt;
-----------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
julia&gt; cowthink(&quot;Have I mooed today?&quot;)
_____________________
( Have I mooed today? )
---------------------
o ^__^
o (oo)\_______
(__)\ )\/\
||----w |
|| ||</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/Cowsay.jl#L43-L83">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Cowsay.cowsaid" href="#Cowsay.cowsaid"><code>Cowsay.cowsaid</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">cowsaid(message::AbstractString; kwargs...)
cowthunk(message::AbstractString; kwargs...)</code></pre><p>Constructs cow art and returns it as a string instead of printing it. See <a href="#Cowsay.cowsay"><code>cowsay</code></a> for implementation details.</p><p><strong>Example</strong></p><pre><code class="language-julia-repl hljs">julia&gt; cowsaid(&quot;Have you mooed today?&quot;)
&quot; _______________________\n&lt; Have you mooed today? &gt;\n -----------------------\n \\ ^__^\n \\ (oo)\\_______\n (__)\\ )\\/\\\n ||----w |\n || ||\n&quot;</code></pre><pre><code class="language-julia-repl hljs">julia&gt; cowthunk(&quot;Have I mooed today?&quot;)
&quot; _____________________\n( Have I mooed today? )\n ---------------------\n o ^__^\n o (oo)\\_______\n (__)\\ )\\/\\\n ||----w |\n || ||\n&quot;</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/MillironX/cowsay.jl/blob/61f02e7ae72eca610af05ad9be15ea7a0825079a/src/Cowsay.jl#L107-L125">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="cows/">Available Cowfiles »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Tuesday 1 February 2022 23:37">Tuesday 1 February 2022</span>. Using Julia version 1.7.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>

@ -0,0 +1,2 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Search · cowsay.jl</title><script data-outdated-warner src="../assets/warner.js"></script><link rel="canonical" href="https://millironx.com/Cowsay.jl/search/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.039/juliamono-regular.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.11/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../">cowsay.jl</a></span></div><form class="docs-search" action><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../cows/">Available Cowfiles</a></li><li><a class="tocitem" href="../cowfiles/">Make your own Cowfile</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Search</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Search</a></li></ul></nav><div class="docs-right"><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article><p id="documenter-search-info">Loading search...</p><ul id="documenter-search-results"></ul></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.10 on <span class="colophon-date" title="Tuesday 1 February 2022 23:37">Tuesday 1 February 2022</span>. Using Julia version 1.7.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body><script src="../search_index.js"></script><script src="../assets/search.js"></script></html>

File diff suppressed because one or more lines are too long

@ -0,0 +1 @@
var DOCUMENTER_CURRENT_VERSION = "v0.3.0";

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save