ツイートをショートカットキーに割り当てる

## 追記 2020/12/07
今この方法でAPIキーの取得できません。
API取得の部分無視してください

##手軽に__にゃーん__ってツイートしたい
勉強とかプログラムとかしてて、行き詰まった時に、なにか一言つぶやきたいことがある。
こんなとき、いちいちクライアントを起動してツイートするのはアホくさい
それならショートカットキーに割り当てればいいのでは？って思った。
僕が実際にやったのを頑張ってまとめますね。

- 環境
    - zorin os 12(debian)
    - python3

##トークンの取得
ツイートをpythonからするにはtwitterAPIで、トークンを取得しなくちゃいけないです。
https://dev.twitter.com/
ここのURLに飛んで、
![Screenshot from 2017-05-05 01-30-05.png](https://qiita-image-store.s3.amazonaws.com/0/179700/dbf9a587-36b3-a94f-3339-1460e1ea496d.png)

画面上部の右側にある__My apps__を押してください。
ログインが要求されたらログインしてください。
無駄な抵抗はやめましょう。

![Screenshot from 2017-05-05 01-32-37.png](https://qiita-image-store.s3.amazonaws.com/0/179700/c9e0581b-44c6-4367-19f4-3137e95418bb.png)

こんな感じで自分のアプリが出てきます。
新しく作る人は画面右上の__Create New App__を押してください。
今回はアプリがない場合で進めます。


__Create New App__を押すとこんな画面になります。![Screenshot from 2017-05-05 01-37-32.png](https://qiita-image-store.s3.amazonaws.com/0/179700/62478dbf-5360-3d3c-ccd8-aaa45fa3e496.png)

各入力欄には以下のことを記入してください。

---
　__Name__
　アプリケーションの名前（適当につけた）

　__Description__
　アプリケーションの説明

　__Website__
　自身のWebsiteのURL（必須項目なので、ない人は頑張って取得してください）

　__Callback URL__
  　今回はツイートするだけなので、なくても構いません。

---
無事に最後まで入力したら、チェックボックスを押して画面下にある
__Create Your Twitter Application__を押してください。
![Screenshot from 2017-05-05 08-08-41.png](https://qiita-image-store.s3.amazonaws.com/0/179700/2574c5c3-9f4b-ce6f-d377-894f17f2481b.png)


次に、App名の上にある__Keys and Access Token__を押してください。
押したら、下までスクロールして、__Create my access token__を押してください。

![Screenshot from 2017-05-05 08-12-59.png](https://qiita-image-store.s3.amazonaws.com/0/179700/c03e773c-9818-1ba5-0f48-128602859883.png)

押したら勝手にtokenが生成されます。
きっとこんな画面になる。

![Screenshot from 2017-05-05 08-14-29.png](https://qiita-image-store.s3.amazonaws.com/0/179700/d12bede2-2c2b-70f0-ad14-6e3596ecc620.png)

ここで僕が塗りつぶした、"__Consumer Key__","__Consumer Secret__","__Access Token__","__Access Token Secret__"がプログラムで書くときに必要になります。
他の人には教えたりしないでください。
Access Tokenが発行できたら、APIの設定は終わりです。
あとでトークンを使うので、ページは開いたままにしてください。

##Python側の処理
__tweepy__が入ってない人はコンソールで`pip install tweepy`と入力してください
無事にインストールできたら、適当なところに"__---.py__"というドキュメントを作成してください。
基本的にわかりやすい場所がいいです。
そしたら、そのテキストに、

----

```python3
#python3 でかいてます
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import tweepy

CONSUMER_KEY = 'CONSUMER_KEYを入力してね'
CONSUMER_SECRET = 'CONSUMER_SECRETを入力してね'
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
ACCESS_TOKEN = 'ACCESS_TOKENを入力してね'
ACCESS_SECRET = 'ACCESS_SECRETを入力してね'
auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET)

api = tweepy.API(auth)
api.update_status(status='にゃーん')#にゃーんの部分をお好きな文章に
```
----
こんな感じで書いてください。
細かい仕様とかはhttp://docs.tweepy.org/en/v3.5.0/ で確認してください。
これでpython側は終わりです。

##ショートカットキーで実行できるようにする
ショートカットキーで実行できるようにするには、コマンド化する必要があります。
なので今回は、”pythonで書いたツイートのプログラムをshellで実行する。”というのをコマンド化しましょう。
まずはじめにshellでスクリプトを書きます。
デスクトップにテキストを作って名前はわかりやすいものにしましょう。

```shellscript
#!/bin/sh
command="python /Desktop/python/tweet.py"#pythonのプログラムが置いてある絶対パス
eval $command
```
これを、/usr/local/binに移動しなければいけないので、`sudo nautilus`でファイルマネージャーを起動します。
![Screenshot from 2017-05-17 13-02-36.png](https://qiita-image-store.s3.amazonaws.com/0/179700/4e7d20d8-d385-0aab-bd6c-1b26fcaad7be.png)
こんな感じのが出てくるはず。
他の場所からコンピューター、その後は/usr/local/binまで行きましょう。![Screenshot from 2017-05-17 13-06-19.png](https://qiita-image-store.s3.amazonaws.com/0/179700/4ea8a61e-6b38-c4ce-eb00-58abd8f87512.png)

次に、/usr/local/binに先ほどshellで書いたスクリプトをコピーしましょう。
その時に~~~.txtから、拡張子(.txtの部分)を消して、名前をわかりやすく、被らないものにしましょう。
これでツイートがコマンドになりました。

##キーを割り当てる
これで最後です、わかる人は飛ばしちゃってください。![Screenshot from 2017-05-16 13-10-09.png](https://qiita-image-store.s3.amazonaws.com/0/179700/e6d79bcc-9129-0536-5499-4ae2449360a8.png)
最初に、設定を開いて__キーボード__を選択しましょう。
![Screenshot from 2017-05-16 13-10-22.png](https://qiita-image-store.s3.amazonaws.com/0/179700/6ca8dd64-efb9-e7c2-0a19-99a9e77c7c95.png)
こんな感じの画面になると思うので、ショートカットを選択して、__独自のショートカット__を選択しましょう。
次に、画面左下の__+__ボタンを押して、新しいショートカットを追加します。
![Screenshot from 2017-05-16 13-12-09.png](https://qiita-image-store.s3.amazonaws.com/0/179700/2037340d-2df8-5560-1bd4-8fed0721dfc7.png)

実際に押すとこんな感じで追加できます。
ショートカットの名前は自分のわかりやすいものに、コマンドは/usr/local/binに置いたスクリプトの名前です。
![Screenshot from 2017-05-17 13-15-10.png](https://qiita-image-store.s3.amazonaws.com/0/179700/13c69379-11dd-84ef-9504-057cfa60dc8e.png)
追加が確認できたら、自分の好きなキーに設定してください。
これでショートカットキーからツイートできます。
あ、でも同じ単語を連続でツイートすると、API規制がかかってツイートできません。１日に一回程度かな？
とまあ、雑な感じで説明してきましたがこれで終わりです。
みなさんも良きツイッターライフをお送りください。