unkontributors / super_unko

Super Unko project is the one of the awesome, clean and sophisticated OSS projects in the world.
Other
174 stars 21 forks source link

fix: unko.mojibake #28

Closed 3socha closed 5 years ago

3socha commented 5 years ago

現象

対応案

1. cowsay にパッチを当てる

2. cow ファイルを Unicode コードポイントで記述 (この Pull Req)

Help

greymd commented 5 years ago
 ______________________________________
( うーんこ、れはむずかしい )
 --------------------------------------
      👑
    (💩💩💩)
   (💩👁💩👁💩)
  (💩💩💩👃💩💩💩)
 (💩💩💩💩👄💩💩💩💩)
blacknon commented 5 years ago
 ____________
< Muzukashi! >
 ------------
      👑
    (💩💩💩)
   (💩👁💩👁💩)
  (💩💩💩👃💩💩💩)
 (💩💩💩💩👄💩💩💩💩)
greymd commented 5 years ago

雑なソリューションを考えた。多分両方で動く? ただしコマンドのエラー出力がウンコで詰まる。 bin/unko.cow

binmode STDOUT;
open(STDERR,'>/dev/null');
$the_cow= <<EOC
      👑
    (💩💩💩)
   (💩👁 💩👁 💩)
  (💩💩💩👃💩💩💩)
 (💩💩💩💩👄💩💩💩💩)
EOC
jiro4989 commented 5 years ago

不完全ですけれど、cowsay -fでテンプレートを指定するのではなく、 吹き出しだけ流用してunko.shoutを使いまわすのもあるかなぁと思いました。 ただし吹き出しの先のつながりがないので喋ってる感が薄れてますが。

$ cowsay abcde | tac | tail +6 | tac; unko.shout | tail +4
 _______
< abcde >
 -------
      👑
    (💩💩💩)
   (💩👁💩👁💩)
  (💩💩💩👃💩💩💩)
 (💩💩💩💩👄💩💩💩💩)

一応sedで吹き出しを再現することくらいならできます。 tacはMacには入ってなかったような気がするので、 もしこの案にするなら、不要な行を除外する方法の修正が必要だと思います。

$ cowsay 1234567890あいうえお | tac | tail +6 | tac; unko.shout | tail +4 | sed -e '1s/ /\\ /3' -e '2s/ /\\ /4'
 ______________________
< 1234567890あいうえお >
 ----------------------
  \    👑
   \ (💩💩💩)
   (💩👁💩👁💩)
  (💩💩💩👃💩💩💩)
 (💩💩💩💩👄💩💩💩💩)
ryuichiueda commented 5 years ago

よくわかってないんですが、テンプレートを二つ用意して切り替えることってできないんでしょうか?

_人人人人人人人人人人人人人人人_ > と意味不明の供述をしており <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄       👑     (💩💩💩)    (💩👁💩👁💩)   (💩💩💩👃💩💩💩)  (💩💩💩💩👄💩💩💩💩)

blacknon commented 5 years ago

_人人人人人人人人人人人人人人人人人人人人人人人人人人人_ > OSごとにテンプレートを切り替えるのはできると思う! < > キングウンコはそう思う!              <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄       👑     (💩💩💩)    (💩👁💩👁💩)   (💩💩💩👃💩💩💩)  (💩💩💩💩👄💩💩💩💩)

case ${OSTYPE} in
  darwin*)
    unko1
    ;;
  linux*)
    unko2
    ;;
esac
3socha commented 5 years ago
 ______________________________
( マルチプラットフォームうんこ )
 ------------------------------
      👑
    (💩💩💩)
   (💩👁💩👁💩)
  (💩💩💩💩💩💩)
 (💩💩💩💩👄💩💩💩💩)

... あれ、鼻がもげた?

3socha commented 5 years ago
 _____
< fix >
 -----
      👑
    (💩💩💩)
   (💩👁💩👁💩)
  (💩💩💩👃💩💩💩)
 (💩💩💩💩👄💩💩💩💩)