Skip to content
Super Unko project is the one of the awesome, clean and sophisticated OSS project in the world.
Shell Dockerfile Makefile
Branch: master
Clone or download
Latest commit 1cb8070 Nov 23, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin 🐛 unko.kingが0埋めの数値を8進数として解釈しようとするのを修正 Nov 16, 2019
build 🐳 unko.towerのテストが失敗するのを修正 #49 Sep 22, 2019
lib/super_unko Handle ZSH_EVAL_CONTEXT properly on antigen Aug 21, 2019
pkg [skip ci] Update packages Nov 17, 2019
test 🐛 unko.kingが0埋めの数値を8進数として解釈しようとするのを修正 Nov 16, 2019
.tar2package.yml modify: move data files Jul 13, 2019
.travis.yml 💚 TravisCI環境で直接カバレッジを取得するように追加 #63 Nov 8, 2019
LICENSE Love and peace Aug 26, 2017
Makefile 🔧 テストタスク名を変更 #49 Sep 22, 2019 💩△ MAKE UNKO GREATE AGEIN Nov 11, 2019 source command_not_found_handle[r] from Aug 21, 2019
docker-compose-ci.yml 🐳 Bashのバージョンを並列でテストできるようにした #49 Sep 22, 2019
docker-compose.yml 🐳 linterのDockerイメージの取得方法を修正 #49 Sep 22, 2019 🎨 フォーマッタの指摘を修正 (#41) Aug 21, 2019 ♻️ --parallelオプションはdeprecatedらしいので削除 Oct 13, 2019 package: Do not create broken package file on the package build failure Aug 24, 2019
super_unko.plugin.zsh Add plugin files for Zsh plugin managers Aug 21, 2019 🔊 テスト実行時にBashのバージョンを出力するようにした #49 Sep 22, 2019
💩.💩 Initial commit Aug 26, 2017


License Build Status Coverage Status

super_unko project is the one of the awesome, clean and sophisticated OSS project in the world. Let's create shit commands!

super_unko プロジェクトは世界で最もクリーンで洗練されたOSSプロジェクトの一つです。 うんこなコマンドを作りましょう。

Command Description
super_unko Controles sub unkommands Convert various expressions equals to shit into 💩 (shit). Shows various shit expression.
unko.yes Generate 💩 shit forever.
unko.tower Build your shit tower.
unko.pyramid Build your shit pyramid. Big shit.
unko.printpnm Generate 💩 PNM image file.
unko.puzzle Sliding block puzzle.
unko.toilet Display large 💩 characters.
unko.grep Print lines matching a 💩 pattern.
unko.say King 💩 says a message.
unko.shout King 💩 shouts a message.
unko.think King 💩 thinks something. Play 💩's game of life.
unko.any Simple wrapper to 💩 substitution for unko.shout.
unko.king Build your king shift tower.
unko.fizzbuzz No need to implement FizzBuzz. TBD
unko.awk TBD
unko.xargs TBD



With yum (RHEL compatible distros)

$ sudo yum install

Uninstall (not super_unko)

$ sudo yum remove superunko

With apt (Debian base distros)

$ wget
$ sudo dpkg -i ./superunko.deb

Uninstall (not super_unko)

$ sudo apt remove superunko

With AUR (ArchLinux base distros)

You can install super_unko from with your favorite aur helper.

e.g. with yay:

$ yay -S super_unko-git

Uninstall (not super_unko)

$ sudo pacman -R super_unko-git


  • With Homebrew
$ brew tap unkontributors/unko
$ brew install super_unko


$ brew remove super_unko


  • With docker
$ git clone
$ cd super_unko
$ docker-compose build
$ docker-compose run super_unko unko.shout こんにちは
$ docker run --rm -it unkontributors/super_unko unko.shout こんにちは

Zsh plugin manager

Zsh plugin managers like antigen, zplug can be adoptive. Not only commands can be used but also command_not_found_handler is updated. It is extremely helpful for developers.

  • Example of antigen
antigen bundle "unkontributors/super_unko"

Additional Installation

  • unko.puzzle
  • unko.shout - Need a echo-sd command
  • unko.say - Need a cowsay command ($ apt install cowsay)
  • unko.think - Need a cowthink command ($ apt install cowsay)
  • unko.toilet - Need a toilet command ($ apt install toilet)


$ echo "うんこ" |

$ echo "うんち" |

$ ./unko.yes


Codestyle and lint

We are checking code with shfmt and shellcheck. Please check your code by if you want to add your origin unko commands. We must provide clean unkos. So, please run below and pass all checkings.

make setup

make lint
# or
./ checks your code or all code of this project. depends on docker and docker-compose commands. And you don't need to install shfmt and shellcheck.

Usage examples of are below.


./ help

Code format

./ format

Code format and save

./ format-save

Code lint

./ lint

Code format and lint

./ all


We use the bats testing framework. calls the bats. But you don't need to install bats. Test tasks use docker and the docker uses bats internally and runs tests.

Run below for testing.

make setup ## Need long times to build docker images.
make test

Run below for testing on multiple Bash versions. Please do that and fix it if tests failed on Travis CI.

make check
make test-bash-version


Welcome! Welcome!


💩 LICENSE (Something like BSD license)


For Unkontributors (開発者向け)

Please put your commands under bin directory. Run bash on a host which docker installed to generate multiple installer packages under pkg directory.

Codebase is supposed to be scanned with code formatter and static analysis tools to ensure the quality of the code. Please make sure prepared static checks are passed by running ./ all before submitting your PR. It would be appreciated if you could add tests to ./

bin 以下になんか思いついたコマンドを放り投げてください。 docker が入った環境で bash すると pkg 以下に各種インストーラーが作成されます。

CIでコードフォーマットと静的解析にかけてコード品質を維持するようになりました。 PRするときは./ allで静的解析をパスすることを確認してください。


You can’t perform that action at this time.