Skip to content

Latest commit

 

History

History
200 lines (168 loc) · 8.24 KB

本当のREADME.adoc

File metadata and controls

200 lines (168 loc) · 8.24 KB

edfsay

Build Status

edfsayはEDF隊員がセリフを発するコマンド集です。 cowsay コマンドに影響を受けました。

EDF! EDF!!

コマンド

Table 1. コマンド一覧
コマンド 説明

edf

edf.\*の各種コマンドを統括する親コマンド

edf.say

EDF隊員がセリフを発する

edf.words

EDF隊員のセリフを出力する

edf.functions

edf.*コマンドが使用するライブラリ。コマンドではない

インストール

以下のコマンドでインストールできる。

sudo ./install.sh   # EDFは仲間を見捨てない。本当だな。

使い方

edf say はEDF隊員がセリフを発します。

% edf say $(edf words)
.----------------------------------------------------------------------.
|                                   |
|  大型輸送船が巨大生物を投下している!               |
|                                   |
`------------------------------------------. .-------------------------'
                      |/             

                             ..(...
                          .-THHHffWn,
                          dWHJHHkkyUWn.                          .&-         `
                         .k@@NjH#Wkz1H<,                         j_$   .+Jv!`
                         dHHHMdMNkWc(WII                   ..(gHyXAwvY7!
                         JH@HH@Hgg@HHHWW             ...JdMHMMHM#1~!
                         ?H@gMMHHHHH9UWY .....  .JJgHMMHMMMMMHY=_`
                         .$(U@qn~d{.(HHMMBSdMWdMMMHMHHH#M@Hr
                 ..(.(mJWHoRWMNHv0OMMNgHMSXwXdkMHMMHMNdMH%
                ?WHHHWWWHHWMkdM#Ma+HHHHWNMMMH@HHH?NMMMM#=
                 (gmHH9HMMNMNRdQgMMMMBwMMMMMMMNV3JMMMM8-
                .MHHMHd@MMNMMMMMM#MMkWMMHWM#HHHJYH@m+-+
               ,MMMWXWWMMMHHHMMMNMMNXM@@HkM##MHHwWHWkIO
               .HHWWUUWHMMMMWHXWMMHMdMMMHHMM####NdMHWUw,
              JMBYH961++JXWk-XWHHHMNNMMMHMHMMM##MNdMHkgH_
            .HMmgWHmrwWWSwXHHJNHHMMMMMMMMMM\ (HMMHHMMMMf`
             WMMMMHHkdH@HgHkHMNHSMNMMNqkHMn      _???7^
             .TMMHMMM#9NNNNHHMkWQMHHHNMM@Ed.
                      .MNNNHMMHH##NNMMMHdHm`
                       (MNMMMHMMMMMMHHMMMHb
                        (WHNHMMNQMMHMMMHWWX\
                         .MMMMM@MMHWWWHWkWdL
                         .MMHHgMHHMkHHMHH#=j-
                         JM#H@HHWyWkHNWbs>~_l
                         Wg@@HmHHMNMMMHHSi(,w%
                         ?HHM@@@HMMMM@@HY>~~jm,
                          dHH86dmgHMHMHk>_ ..XI
                          HHyXd@HHMMMHHXZ< ..JX_
                          dMMW@MMMHWMHk77?` _Hd)
                          ,MMHHHkWpWWHWV<.`  dH!
                           TMNHqqHWHWHWkwz;_!(`

edf words はEDF隊員や国営放送などゲーム内に登場したセリフをランダムに出力しま す。

$ edf words yes -n 5
かまわん
問題ない
わかった
絶対だ
よかろう

$ edf words scientist
蒸発させてあげる。

実装

edfsay のコマンドは edf コマンドを始めとする複数のコマンドで構成されている。 edf コマンドはPATHの通った同じディレクトリ内に edf.* のコマンドが存在すると き、そのコマンドをサブコマンドとみなして扱おうとする。

例えば/usr/local/binに以下のコマンドが存在する場合。

  • edf

  • edf.say

  • edf.words

  • edf.think

このとき、 edf コマンドからは edf say と同様に edf think というサブコマン ドとして利用可能になる。また、 edf -h でのヘルプメッセージ出力も edf.think -h をもとに自動的に追加される。

サブコマンドとして追加されるコマンドのヘルプの書式は以下のようでなければならない 。

edf.*** はEDFのサブコマンドです。  <--- 1行のコマンド説明

Usage:
    edf.*** [options]    <--- Usage:から始まって空白行で終わるセクション
    edf.*** -h                間に空白行が存在するとそこでセクションが終了したとみ
                              なされる
Examples:
    edf.*** hogefuga 5   <--- Examples:から始まって空白行で終わるセクション
    edf.*** -n 2              Usageと同様
    edf.*** -X test

Options:
    -h, --help         このヘルプを出力する
    -v, --version      バージョン情報を出力する

# Optionsはなくても edf コマンドに影響はないが、edf.***コマンドは単体で動作可能
# であるべきなので書いておくべきである

開発

EDF wikiからチャット定型文と通信記録とかをスクレイピングしてくる。

./scrape_chat.sh
sudo pip3 install beautifulsoup4
./scrape_communication_log.py > commlog.csv