19
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Windows 10にGVimベースのPython開発環境を構築する(1)インストール編

Last updated at Posted at 2016-02-27

Windows 10, 64 bitビットPCにGVimベースのPython開発環境を構築します.第1回では,必要な環境をインストールしていきます.Windowsのアカウント名は daizu とし,主に C:\Users\daizu\AppData\Local 下に各プログラムを配置します.

Python

なにはともあれPython.Windowsでは Anaconda でPython環境を構築するのが便利です.今回は最小限のパッケージのみをインストールするために Miniconda を使います.MinicondaのページでWindows/Python 3.5/64-bit を選んでダウンロードします.

インストール対象の選択では,Just for me を選び,Destination folder をデフォルト設定の C:\Users\daizu\Miniconda3 から C:\Users\daizu\AppData\Local\Miniconda3 に変更します.Advanced Options は両方ともチェックします.デフォルトの設定がされるほか,実行ファイルの置かれたディレクトリが PATH に追加されます.

MinGW-w64 - for 32 and 64 bit Windows

コンパイル環境を整えます.MinGW-w64 のDownloadページからexeファイルをダウンロード・実行してインストールします.途中のダイアログでは,下記の選択をします.

  • Architecture: x86_64
  • Thread: posix
  • Exception: seh
  • Build Version: 0

また,Destination folderを C:\Users\daizu\AppData\Local\mingw-w64 に変更します.最後にコントロールパネルの環境変数の設定において,PATHに C:\Users\daizu\AppData\Local\mingw-w64\mingw64\bin を追加します.

参考URL

http://www.geocities.jp/penguinitis2002/computer/programming/MinGW-w64.html

MSYS2

実行ファイル群をインストールします.MSYS2 にアクセスし,msys2-x86_64-xxxxxxxx.exe (xxxxは年月日) をダウンロードし,実行します.インストール先フォルダには, C:\Users\daizu\AppData\Local\msys64 を指定します.最後にコントロールパネルの環境変数の設定において,PATHに C:\Users\daizu\AppData\Local\msys64\usr\bin を追加します.

後で必要となるtarコマンドをインストールします.コマンドプロンプトを開き,C:\Users\daizu\AppData\Local\msys64 下において,

$ msys2_shell

とすると,シェルがmsys2のものに変わります.変わったシェル下で,

$ update-core
$ pacman -S tar

としてtarをインストールします.

参考URL

http://www.geocities.jp/penguinitis2002/computer/programming/MinGW-w64.html

Git

git for windows からダウンロードしインストールします.途中のAdjusting your PATH enviroment で Use Git from the Windows Command Prompt を選びます.他はデフォルトのままとします.

Lua

Luaのダウンロードページ からソースをダウンロードします.コマンドプロンプトを開き,

$ cd Downloads
$ tar zxf lua-5.3.2.tar.gz

と展開します.そのままのMakefileではコンパイルできないので,下記参考URLに記載のgitレポジトリより,mingw64用のMakefileを取得します.

$ git clone https://github.com/akaneko3/Lua-makefile
$ cd lua-5.3.2
$ cp Makefile Makefile.bak
$ cp ..\Lua-makefile\Makefile .

Makefileをエディタで開き,Luaのバージョンが設定されている箇所を5.3.2になるように変更します.続いて

$ mingw32-make  mingw

でコンパイルします.その後,$ mingw32-make installで各ファイルをコピーしようとしましたが,うまく実行できなかったので,Makefileの記述をもとに,手動で移動しました.Luaの実行ディレクトリC:\Users\daizu\AppData\Local\lua-5.3.2\を作成し,その下にbinincludelibサブディレクトリをさらに作成します.Makefileには,

TO_BIN= lua.exe luac.exe
TO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp  
TO_LIB= liblua.a

とありますので,その通りに該当ファイルをC:\Users\daizu\Downloads\lua-5.3.2\srcからコピーします (*).最後にコントロールパネルの環境変数の設定において,PATHにC:\Users\daizu\AppData\Local\lua-5.3.2\binを追加します.

(*)[2016/02/28追記] binディレクトリには,lua.exeluac.exeのほかに,lua53.dllsrcディレクトリからコピーする必要があります.

参考URL

http://qiita.com/akaneko3/items/c63b9d6589732388bebb

GVim

GitHubからソースを取得します.コマンドプロンプトを開き,

$ cd AppData\Local
$ git clone https://github.com/vim/vim.git
$ cd git
$ git checkout v7.4.1161

とします.最後の行は,Kaoriyaさんの最新Vimのバージョン(2016/01/24版)に合わせるために実行しました.

コンパイルするためのバッチファイル makevim64.bat を下記の参考URLからダウンロードし,C:\Users\daizu\AppData\Local\vim にコピーします.LuaとPythonのバージョンに合わせるために,makevim64.bat を以下のように編集します.

makevim64.bat
setlocal
:: path to MinGw64
set USERNAME=daizu
set USERDOMAIN=

set PYTHON3=C:/Users/daizu/AppData/Local/Miniconda3
set PYTHON3_VER=35
set DYNAMIC_PYTHON3=yes

set LUA=C:/Users/daizu/AppData/Local/lua-5.3.2
set LUA_VER=53
set DYNAMIC_LUA=yes

md bin
cd src

:: Clean
mingw32-make -f Make_ming.mak GUI=yes clean ARCH=x86-64

:: GUI x64
mingw32-make -f Make_ming.mak GUI=yes OLE=no FEATURES=HUGE ARCH=x86-64

set OUTDIR=../bin
copy *.exe "%OUTDIR%"
copy .\GvimExt\*.dll "%OUTDIR%"
copy *.dll "%OUTDIR%"
copy .\xxd\*.exe "%OUTDIR%"

cd ..
endlocal

コマンドプロンプトで,C:\Users\daizu\AppData\Local\vim に移動し,

$ makevim64.bat

としてコンパイルします.

コンパイルに成功したら,C:\Users\daizu\AppData\Localvim74-daizu フォルダを作成し,さらにその下に vim74 ディレクトリを作成します.vim をコンパイルしたディレクトリ (C:\Users\daizu\AppData\Local\vim)下の runtime 内のディレクトリとファイル一式をvim74下にコピーします.次にコンパイルした実行ファイル gvim.exevimrun.exeC:\Users\daizu\AppData\Local\vim\src から C:\Users\daizu\AppData\Local\vim74-daizu にコピーします.そして,参考URLから64ビット用の iconv.dll, libintl.dll を取得し,同じく vim74-daizu ディレクトリ下にコピーします.また, PATHに C:\Users\daizu\AppData\Local\vim74-daizu を追加しておきます.以上で,GVimが実行できるようになりました.

GVimの設定ファイルは,C:\Users\daizu\AppData\Local\vim74-daizu 下の vimfiles ディレクトリを作成し,その中に用意します.今回はこれ自体をGitのレポジトリとしたいので,C:\Users\daizu\AppData\Local\vim74-daizu において,

$ git init vimfiles

とします.vimfiles のなかに _vimrc_gvimrc をつくります.以下は動作確認のためだけの例です.

_vimrc
 set enc=utf-8
_gvimrc
 colorscheme desert

これらをホームディレクトリにリンクします. 管理者権限でコマンドプロンプトを開き,

$ mklink c:\Users\daizu\_vimrc c:\Users\daizu\AppData\Local\vim74-daizu\vimfiles\_vimrc
$ mklink c:\Users\daizu\_gvimrc c:\Users\daizu\AppData\Local\vim74-daizu\vimfiles\_gvimrc

とします.

参考URL

https://sites.google.com/site/fudist/Home/vim-nihongo-ban/mingwvim

Neobundle

Vimのプラグインを管理するのに,Neobundle を使います.C:\Users\daizu 下で

$ mkdir -p .vim\bundle
$ cd .vim\bundle
$ git clone https://github.com/Shougo/neobundle.vim

とします._vimrc は下記URLを参考にしました.

参考URL

http://qiita.com/poad1010/items/de16d9a1af78687c87cf

最後に

これまでのインストール作業の結果,ユーザーの環境変数は,下図のようになりました.

path.png

Gitはインストール先を選べませんでしたので,やむなく Program Files (x86) 以下に入っています.

その他

vimproc

今回は説明を省略しましたが,vimprocのコンパイルは,下記コマンドで可能です.

$ cd ~\.vim\bundle\vimproc
$ mingw32-make

参考URL

http://qiita.com/akase244/items/ce5e2e18ad5883e98a77

IPAfont

GVimのマルチバイトフォントにはIPAゴシックを使うと見栄えがよいです.下記URLからダウンロードし,フォントをインストールします.

http://ipafont.ipa.go.jp/old/ipafont/download.html

Pythonパッケージ

Pythonのコーディングに役立つパッケージをインストールします.

$ conda install jedi flake8 pytest nose
$ pip install autopep8

CapsキーをCtrlキーとして使う

VimではCtrlキーを多用するので,使わないCapsキーにCtrlキーの機能を割り当てます.

参考URL

http://ascii.jp/elem/000/000/927/927191/

19
20
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?