Code Monkey home page Code Monkey logo

ojichat's Introduction

Ojisan Nanchatte (ojichat) Generator

Latest version Build Status codecov

なんだこれは

おじさんがLINEやメールで送ってきそうな文を生成するコマンド。

開発環境

$ go version
go version go1.12 linux/amd64

インストール

インストールには Go の開発環境が必要です。

go install github.com/greymd/ojichat@latest

使い方

$ ojichat -h
Usage:
  ojichat [options] [<name>]

Options:
  -h, --help      ヘルプを表示.
  -V, --version   バージョンを表示.
  -e <number>     絵文字/顔文字の最大連続数 [default: 4].
  -p <level>      句読点挿入頻度レベル [min:0, max:3] [default: 0].

そのまま実行すると文言が出力される。 文章は参考文献[1]で提唱される感情表現の順番で、いくつかのテンプレートの組み合わせにより自動生成がされる。

$ ojichat
ヤッホー😍😃れいこちゃん、元気かな⁉😜⁉️🤔オレは、近所に新しく できたラーメン屋さん🍜に行ってきたよ。味はまぁまぁだったかナ💕

文言には特定の人名が含まれることもあるが、第一引数で指定可能。

$ ojichat 山田
山田ちゃん、オハヨウ〜(^з<)😚(笑)山田ちゃんも今日も2時までお仕事かナ❓寒いけど、頑張ってね(# ̄З ̄)🙂💤

-p オプションの数字を大きくする(最大3)することで文章に句読点が含まれやすくなる。 おじさんの文章には句読点が多い傾向が見られるため[1][2]、より実際の状況を模したユースケースに対応できる。

$ ojichat -p 3 オレとオマエと大五郎
オレと、オマエと、大五郎チャン、オッハー❗(^_^)🎵オレと、オマエと 、大五郎チャンにとって、素敵な、1日に、なります、ようニ😘

-e オプションの数字を大きくすることで、絵文字/顔文字がより連続で含まれやすくなる。 一部のおじさんの文章にはそれらが多用される傾向があるためである。 また、引数を0とすることで真面目なおじさんにもなる。 より柔軟に実際の状況を模したユースケースに対応できる。

$ ojichat -e 10
おはよー、!チュッ😚😘😘😃☀ 😆❗😚😆(^з<)

$ ojichat -e 0
ヤッホー。はなみちゃん、元気かな。はなみちゃんにとって素敵な1日になりますようニ。

また、適宜、文節の終わりが最大2文字までカタカナとなる活用がされる。 これにより実際の状況を模したユースケースに(ry

$ ojichat
...ご要望とかはあるのかな❗💕😚😘😜❓

$ ojichat
...ご要望とかはあるのカナ❗🎵😆💕❓😜

Dockerコンテナ版

おじさんで環境を汚したくない、Goの実行環境を持っていないなどの状況でもお手軽におじさんになるために、Dockerコンテナでもojichatを用意してある ( greymd/ojichat )。

使い方

  • docker run --rm -i greymd/ojichat:latest はオプション等を含めて全て ojichat と同じ動きをする。
$ docker run --rm -i greymd/ojichat:latest
ヤッホー(^з<)🎵(笑)キララチャン、元気かな😜⁉️土曜日は仕事〜❗❓キララチャン😚😃♥ 💗元気、ないのかなァ(^▽^;)💦大丈夫⁉😜⁉️✋❓❓
  • ojichat 坂東まりも と同じ動きをする
$ docker run --rm -i greymd/ojichat:latest 坂東まりも
坂東まりもちゃん、久しぶり(^з<)(^з<)そういえば、昨日は例のラーメン屋さん🍜に行ってきたよ。結構いい雰囲気だったから、オススメだよ😚😚😍

関連ツール等 (Wiki)

https://github.com/greymd/ojichat/wiki/Related-services-and-tools

参考文献

[1]【SNSあるある】「おじさん」がLINEやメールで送ってきそうな文が話題に!【ソーシャルハラスメント?】 | こぐま速報 https://kogusoku.com/archives/2939

[2] 女子高生「おじさんLINEごっこ」の実例に学ぶキモがられる態度とは | ニュース3面鏡 | ダイヤモンド・オンライン https://diamond.jp/articles/-/143111?page=2

[3] 女子同士がオジサンになりきってオジサンとオジサンがキャッキャする謎の「オジサンLINEごっこ」が流行の兆し - Togetter https://togetter.com/li/1111905

ライセンス

種類 ライセンス
ソースコード MIT
ロゴ クリエイティブ・コモンズ・ライセンス

二次利用について詳しくは Wiki > Copy and Redistribute 参照してください。

ojichat's People

Contributors

ayumu838 avatar blacknon avatar butackle avatar fetus-hina avatar grapesrc avatar greymd avatar hatobus avatar ikawaha avatar jiro4989 avatar kaboc avatar knsh14 avatar masa-shin avatar mouse484 avatar naofumiuesugi avatar nu50218 avatar otakumesi avatar shmokmt avatar yang-33 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ojichat's Issues

句読点挿入を自然にする

本 Issue は直近で本腰をいれて取り組むつもりはないです。
単に備忘録として Issue に残してます(なのですぐ Close するかも)。

問題

句読点挿入の際、助詞と助動詞の後に挿入するルールは、初期開発の段階で私が手元で kagome を動かして適当な感覚で決めたものなのでもっとナチュラルにできる気はしている。
助動詞、助詞の挿入条件をもっと厳しくしてもよいかもしれない。

一例を示す

$ ojichat | kagome
章恵    名詞,固有名詞,人名,名,*,*,章恵,アキエ,アキエ
ちゃん  名詞,接尾,人名,*,*,*,ちゃん,チャン,チャン
、      記号,読点,*,*,*,*,、,、,、
オハヨー        名詞,一般,*,*,*,*,*
😃      記号,一般,*,*,*,*,*
☀       名詞,サ変接続,*,*,*,*,*
        記号,空白,*,*,*,*,*
😃      記号,一般,*,*,*,*,*
✋❗    名詞,サ変接続,*,*,*,*,*
章恵    名詞,固有名詞,人名,名,*,*,章恵,アキエ,アキエ
ちゃん  名詞,接尾,人名,*,*,*,ちゃん,チャン,チャン
にとって        助詞,格助詞,連語,*,*,*,にとって,ニトッテ,ニトッテ
素敵    名詞,形容動詞語幹,*,*,*,*,素敵,ステキ,ステキ
な      助動詞,*,*,*,特殊・ダ,体言接続,だ,ナ,ナ
1       名詞,数,*,*,*,*,*
日      名詞,接尾,助数詞,*,*,*,日,ニチ,ニチ
に      助詞,格助詞,一般,*,*,*,に,ニ,ニ
なり    動詞,自立,*,*,五段・ラ行,連用形,なる,ナリ,ナリ
ます    助動詞,*,*,*,特殊・マス,基本形,ます,マス,マス
よ      助詞,終助詞,*,*,*,*,よ,ヨ,ヨ
ウニ    名詞,一般,*,*,*,*,ウニ,ウニ,ウニ
😘😚    記号,一般,*,*,*,*,*
(      記号,括弧開,*,*,*,*,(,(,(
笑      名詞,固有名詞,人名,名,*,*,笑,エミ,エミ
)      記号,括弧閉,*,*,*,*,),),)
(^      名詞,サ変接続,*,*,*,*,*
o       名詞,一般,*,*,*,*,*
^)      名詞,サ変接続,*,*,*,*,*
EOS

上記の例で助詞と助動詞に挿入するとこうなる。

Before:

章恵ちゃん、オハヨー😃😃✋❗章恵ちゃんにとって素敵な1日になりますよウニ😘😚(笑)(^o^)

After:

章恵ちゃん、オハヨー😃😃✋❗章恵ちゃんにとって、素敵な、1日に、なります、よ、ウニ😘😚(笑)(^o^)

助動詞の場合、形容動詞も動詞も連体形では自然な傾向がある気がする(例:「素敵な1日」→「素敵な、1日」)。
当然のごとく体言が連なるので、一息つくには悪くないタイミング。
一方で、直感的には終止形のものに挿入しても良さそうだが、実際は割と違和感ある。(例:「なりますように」→「なります、ように」)。また、動詞で未然形、連用形に使われる助動詞(ない、ます)の後も、不自然になりやすい傾向がある気がしている。

助詞でも格助詞や接続助詞なら自然だが、無理に終助詞に挿入を試みると違和感が。。
下手に挿入するよりも、名詞のあとにいれたほうが無難な可能性もあるが、上記の例にあるように顔文字の部品などは形態素解析上は名詞扱いされることがしばしばあるのでその戦略も採りづらい。

Support newer Go version

特定のバージョンの Go のアップデートはそれよりも新しい 2 つのメジャーバージョンがリリースまでなので

https://golang.org/doc/devel/release#policy

Each major Go release is supported until there are two newer major releases. For example, Go 1.5 was supported until the Go 1.7 release, and Go 1.6 was supported until the Go 1.8 release. We fix critical problems, including critical security problems, in supported releases as needed by issuing minor revisions (for example, Go 1.6.1, Go 1.6.2, and so on).

GitHub Actions のテストもそれに追随する。

Is it a robot ?

额,谁能用中文翻译一下,还和日本女性有关,难道我想歪了?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.