Notepad++ Pythonを実行する方法について

最近 Notepad++ と言うテキストエディタを知り使いやすかったので使い始めました。
そこで、コマンドプロンプトを自分で開いて実行。
という操作が面倒だったので、Notepad++上でCtrl+F5を押すだけで実行できるようにしたので、
そこまでをここまでにメモしたいと思います。
**注意**　Windowsで、Anaconda上でPythonを構築していることを想定しています。
また、本記事ではPython自体の導入方法については書かれていないので注意してください。

# Notepad++ インストール
https://notepad-plus-plus.org/
上の公式サイトを開いてもらって、左側に表示されるhomeの下にあるdownloadをクリック。
開いたサイトの、Download 32-bit x86かDownload 64-bit x64の下にあるリンクをクリックしてダウンロードします。
(zipじゃないのがいい人は自分が欲しいものを選択してください。)
32bit
Notepad++ zip package 32-bit x86: Don't want to use installer? Check this one (zip format).
64bit
Notepad++ zip package 64-bit x64: Don't want to use installer? Check this one (zip format).

ダウンロード出来たら好きな場所で解凍してください。
解凍後のファイルは、名前を変更したりして、好きな場所に移動してください。

# Notepad++の設定
まず、日本語化から設定していきましょう。
## 日本語化
先ほどの名前を変更したり、好きな場所に移動してもらったファイルを開きましょう。
そしたら、下の画像の赤い四角部分のnotepad++.exeを開きましょう。
![file2.png](https://qiita-image-store.s3.amazonaws.com/0/199097/a261c72e-9037-5cff-edce-60acfaf1dea7.png)
開けたら、メニューからSettings→Preferencesの順にクリック。（下の画像の赤い四角部分をクリック。）
![file1.png](https://qiita-image-store.s3.amazonaws.com/0/199097/4aa69c6e-e89b-ec87-3564-2136a18c295a.png)
出てきた画面の左リストからGeneralをクリックしてもらって、右側のLocalizationのドロップダウンリストから日本語をクリックします。（下の画像の赤い部分をクリック。）
![file3.png](https://qiita-image-store.s3.amazonaws.com/0/199097/6efc64f9-1c9a-8946-326b-734c4f05a83d.png)
これで日本語化ができました。
続いて、タブの設定を行います。
ただし、タブをスペースで置換する必要のない人は、次のタブ設定は飛ばしてください。
##タブの設定
先ほどの日本語化の際に開いてもらった、環境設定の画面の左のリストから言語メニューを選択してください。
選択出来たら、スペースで置換の左側にあるチェックボックスにチェックを入れましょう。
![file4.png](https://qiita-image-store.s3.amazonaws.com/0/199097/094b39b2-d009-0593-a8dd-075198ff9f4b.png)
これで、タブの設定は終わりです。
下側にある閉じるボタンを押してダイアログを閉じましょう。
続いて、半角スペースとタブの表示の設定を行います。（この設定も必要ない場合は、次の半角スペースとタブの表示設定は飛ばしてください。）
##半角スペースとタブの表示設定
まず、メニューから表示→制御文字の表示→半角スペースとタブを表示をクリック。（画像の赤い部分をクリック。）
![file5.png](https://qiita-image-store.s3.amazonaws.com/0/199097/906ae8d8-2333-a61c-c6b2-73a2f00f7ed8.png)
これで、設定終了です。
##Notepad++上でCtrl+F5を押すだけで実行できるように設定する。
### バッチファイルの作成
まず、一番最初に名前を変更したり、好きな場所へ移動したファイルをもう一度開いてください。
そのファイルの中の、余白などで右クリック→新規作成→テキストドキュメントの順に選択し、テキストファイルを作成します。
![file6.png](https://qiita-image-store.s3.amazonaws.com/0/199097/86151925-7e97-d4bb-daa8-6d66e0d4c276.png)
作成されたテキストドキュメントの名前を```python_exe.bat```と言う名前に変更しましょう。
![file7.PNG](https://qiita-image-store.s3.amazonaws.com/0/199097/d95a2e6c-7d3e-0c74-ba6c-cbe98210827c.png)
変更したら、この画面が出てくるかもしれませんがはいをクリックしましょう。
そしたら、今作成した```python_exe.bat```を右クリックして編集をクリックしましょう。（メモ帳から開きなおしても可）

**注意** ここで名前を```python.bat```や```cmd.bat```とすると、実行時にループが発生して、終了しなくなる可能性があるので
名前付けには注意してください。

開いたメモ帳に、以下の内容を記述しましょう。
AnacondaでPythonの仮想環境を構築していない場合

``` bat:
@echo off
call python "%1"
pause
```

AnacondaでPythonの仮想環境を構築してる場合

``` bat:
@echo off
call activate 仮想環境名
call python "%1"
call deactivate
pause
```

※**注意**　自分の環境では、Anacondaで仮想環境を構築しているので、下に書いた方のコードを使用しています。
上に書いたコードは動かしてない為、試してみてうまく動かない場合は、調べるか、もしくは、この記事以外を利用してください。

メモ帳に記述したら、上書き保存をして閉じてください。
### Ctrl+F5を押すだけで実行できるように設定する。
仮に実行する為のpythonファイルを作成しておきましょう。
先ほどから開いたままのNotepad++に、

```py3:
print('Hello World')
```
と書いて、ファイルから*名前を付けて保存*を押してください。
そしたら、ファイルの種類を```Python file (*.py;*.pyw)```を選択して、好きな名前で保存してください。
そのまま、メニューから実行→ファイル名を指定して実行をクリック（下の画像の赤い四角部分をクリック。）
![file9.png](https://qiita-image-store.s3.amazonaws.com/0/199097/0499e540-cf96-c5de-800f-e05529c37261.png)
開けたらドロップダウンリスト内に以下の内容を入力してください。（バッチファイルの名前を変えた人は、python_exe.batの部分を変えてください。）
```$(NPP_DIRECTORY)\\python_exe.bat $(FULL_CURRENT_PATH)```
![file10.png](https://qiita-image-store.s3.amazonaws.com/0/199097/b0035d62-b74a-91fa-d9a5-41c7ac7ff310.png)

そしたら、登録ボタンを押してください。
そうすると、下の画像のような画面が出てくると思うので、NameにPythonと入力してください。
また、CTRLの左側のチェックボックスにチェックを入れ、
Noneと書かれている右側のドロップダウンリスト内からF5を選択してOKボタンを選択してください。
![file11.png](https://qiita-image-store.s3.amazonaws.com/0/199097/49fd694d-4876-e999-8185-fcf6c805de08.png)
そして、先ほどの実行…のダイアログを×ボタンで閉じましょう。　
以上で、終了となります。

最後に、ctrl + F5を押して、

```
Hello World
続行するには何かキーを押してください . . .
```
と出て来たらうまく設定できたということになります。

間違いや注意点などがありましたら、指摘していただけると助かります。

# 補足(32 bit版のみ、Plugin ManagerとNppExecの導入方法)
コメントにて、32 bit版のみですが、NppExecの導入方法を教えていただきましたので、補足させていただきます。
Notepad++ 7.5では、64 bit版 および 32 bit版の両方において、Plugin Managerが入っていません。
理由は、Plugin Managerに広告が含まれるのを避けるために、現在組み込み版を作成中とのこと。
ただし、32 bit版の方では、古いバージョンのNotepad++のを移植することによって動作するようです。
その方法について説明します。
※**注意** 
この下で、古いバージョンのPlugin Managerを使用することで、32bit版 Notepad++ 7.5で
Plugin Managerを使用可能にしますが、何らかの不具合が生じることがあるかもしれません。
その為、ここから先の、Plugin Managerの導入は、自己責任でお願いします。
##Plugin Managerの導入
まず、32 bit版のNotepad++ 7.5は本記事の初めで解説しましたので省略します。
次に、下の公式ページにアクセスします。
https://notepad-plus-plus.org/download/v7.4.2.html 
サイトのDownload 32-bit x86の下にある
Notepad++ zip package 32-bit x86: Don't want to use installer? Check this one (zip format).
と書かれているところから古いバージョンをダウンロードします。
次に、ダウンロードしたものを解凍し、そのフォルダ内のpluginsを開きましょう（画像の赤い四角部分）（1）
![file12.png](https://qiita-image-store.s3.amazonaws.com/0/199097/b2b6664b-a1b2-4042-17df-6955318770df.png)
続いて、本記事の最初の方で、名前を変更したり、移動したファイルを開きます。（2）
同じく、pluginsを開きましょう。
①（1）で開いたplugins内からPluginManager.dllをコピーします。
②（2）で開いたplugins内に貼り付けましょう。
③（1）のフォルダ内にあるConfigフォルダを開き、その中にあるPluginManager.iniをコピーし、
④（2）のフォルダ内にあるConfigフォルダを開き、その中に貼り付けてください。
以上の操作が終了後、(2)の方を起動してもらうと、メニューの中のプラグイン内にPlugin Managerが増えていると思います。
##NppExecの導入
Plugin Managerの導入で追加したものを使用します。
まず、メニューの中のプラグイン→Plugin Manager→Show Plugin Managerをクリックしてください。（下の画像の赤い四角部分をクリック。）
![file13.png](https://qiita-image-store.s3.amazonaws.com/0/199097/9beaf5be-b04e-c491-d0fb-8b23e8422cc5.png)
クリックすると、Plugin Managerが開きますので、Updatesタブをクリックし、
その中のPlugin Managerの左側にチェックが入ってることを確認してください。
そしたら、Updateボタンをクリックしましょう。
アップデートが終了すると、下の画像のような画面がでてくるので、はいをクリックしてください。（ユーザーアカウント制御の確認画面が間に出てくるかもしれませんが、その場合は許可してください。）
![file14.PNG](https://qiita-image-store.s3.amazonaws.com/0/199097/068e01d7-0a69-d60d-f607-fc25a1fd0cdd.png)
すると、Notepad++が一度消えて、再度開きます。
もう一度、メニューの中のプラグイン→Plugin Manager→Show Plugin Managerを開きます。
Updatesタブのリスト内にPlugin Managerがある場合は、チェックを入れてもう一度アップデートしてください。
また、メニューの中のプラグイン→Plugin Manager→Show Plugin Managerを開きます。
今度は、Availableタブ内のリストビューからNppExecを探し、左側のチェックボックスにチェックを入れます。
そして、Installボタンをクリックしましょう。
![file15.png](https://qiita-image-store.s3.amazonaws.com/0/199097/ab417bdc-3cc3-1225-a61c-387d50f6bd81.png)
インストールが終了すると下の画像の様な画面がでてくるので、はいをクリックしてください。
![file16.png](https://qiita-image-store.s3.amazonaws.com/0/199097/550b8625-2651-50b7-01df-54744a431947.png)
クリックすると、再起動されるので、起動後に、メニューのプラグインの中にNppExecが追加されていれば終了です。
#参照サイト
https://notepad-plus-plus.org/news/notepad-7.5-released.html
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/3651
https://so-zou.jp/software/tech/tool/editor/notepad-plus/plug-in/nppexec/

# 環境
OS Windows 10 Pro (64 bit)
Notepad++ 7.5
Anaconda-4.2.9
Python 3.5.2