環境構築・零

環境構築のその先へ

zeus liteでpython3.8を設定

Python3.8をダウンロードしたあとで、

Cドライブ直下、C:¥Python38に展開することが前提。

下記環境通りに設定すれば、Python38でコンパイルできるのと、

Python2シリーズとPython38(最新)で出力がみれます。

前回の記事内容どおり、参考程度にどうぞ。

自分宛、備忘録です。

C:\Program Files (x86)\ZeusLite\zpython.cmd

@echo off

REM Move to the file's directory
cd %2

REM Remove the double quotes from the file name argument
set file_name=%1
set file_name=%file_name:"=%

REM Alternative syntax check option is to use Python itself
call C:\Python38\python.exe -c "compile(open('%file_name%').read(), '%file_name%', 'exec')"

f:id:emerald00:20200918204652p:plain

tools→Optionsを選択→下記通りに設定し保存

python_config
f:id:emerald00:20200918204713p:plain

Zeus free Text Editorを使う

www.zeusedit.com

リンク先は、Zeus IDEの無料版です。

Pythonを書くときに使っています。

いずれ、

Python3.8をエディタ内で実行可能に設定する手順を書きたいと思います。

明日はPyConfJPの2日目です。チケットを買ってあるので、みたいと思います。

百人1首をRuby、hadoopを使って解析してみる。

github.com

hadoopのワードカウント

cd hadoopフォルダ

zinbeijett/txt/hyakunin.txtをinputフォルダへ入れて実行

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount ./input ./output

zinbeijettのengine -zオプションを実行

engine -z output/part-r-00000 2

21 : あはむとぞ思ふ,    2
50 : あるものを,   2
79 : いまひとたびの  2
169 : さ夜ふけて,  2
237 : ながむれば,  2
240 : ながらへば,  2
288 : ひとりかも寝む,    2
405 : わたの原  2
477 : 名こそをしけれ,    2
480 : 君がため  2
501 : 夜半の月かな,   2
618 : 朝ぼらけ  2
655 : 物をこそ思へ,   2
664 : 白妙の,    2
667 : 百人一首  2
678 : 秋の夕ぐれ,  2

riceシェルを実行

github.com

rice keitaiso.txt (解析しやすいように文字整形後)

※ わかち書き(suihan)、わかち書き&ワードカウント(kome)、形態素解析(rice)にわけました。

riceなどのシェルをzinbeijettのengineに取り込みました。次の1.1.4でRubyGemsリリースします...

Rubygemsにzinbeijettの1.1.5をリリースしました。-w,-x,-y,オプションでそれぞれわかち書き、形態素解析ができます。zinbeijett -hに詳細を英語で書きました。参考にどうぞ。

※ わかち書き

------------------------------ Mecab_wakati_Start ------------------------------

["あ", "は", "むとぞ", "思ふ", "ある", "もの", "を", "いま", "ひとたび", "の", "さ", "夜ふけ", "て", "な", "が", "むれ", "ば", "ながら", "へ", "ば", "ひとり", "かも", "寝", "む", "わたの原", "名", "こそ", "を", "しけ", "れ", "君", "が", "ため", "夜半", "の", "月", "か", "な", "朝ぼらけ", "物", "を", "こそ", "思へ", "白妙", "の", "百", "人", "一", "首", "秋", "の", "夕ぐれ"]

------------------------------- Mecab_wakati_End -------------------------------

※ ワードカウント ["わかち書き" , カウント数]

---------------------------- Mecab_wordcount_Start -----------------------------

[["夕ぐれ", 1], ["は", 1], ["むとぞ", 1], ["思ふ", 1], ["ある", 1], ["もの", 1], ["を", 3], ["いま", 1], ["ひとたび", 1], ["の", 4], ["さ", 1], ["夜ふけ", 1], ["て", 1], ["な", 2], ["が", 2], ["むれ", 1], ["ば", 2], ["ながら", 1], ["へ", 1], ["ひとり", 1], ["かも", 1], ["寝", 1], ["む", 1], ["わたの原", 1], ["名", 1], ["こそ", 2], ["しけ", 1], ["れ", 1], ["君", 1], ["ため", 1], ["夜半", 1], ["月", 1], ["か", 1], ["朝ぼらけ", 1], ["物", 1], ["思へ", 1], ["白妙", 1], ["百", 1], ["人", 1], ["首", 1], ["秋", 1], ["あ", 1]]
----------------------------- Mecab_wordcount_End ------------------------------

※ Nattoで形態素解析

----------------------------- Natto_keitaiso_Start -----------------------------

あ フィラー,*,*,*,*,*,あ,ア,ア
は 助詞,係助詞,*,*,*,*,は,ハ,ワ
むとぞ   名詞,一般,*,*,*,*,*
思ふ  動詞,自立,*,*,四段・ハ行,基本形,思ふ,オモフ,オモウ
ある  連体詞,*,*,*,*,*,ある,アル,アル
もの  名詞,非自立,一般,*,*,*,もの,モノ,モノ
を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
いま  名詞,副詞可能,*,*,*,*,いま,イマ,イマ
ひとたび    名詞,一般,*,*,*,*,ひとたび,ヒトタビ,ヒトタビ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
さ 助詞,終助詞,*,*,*,*,さ,サ,サ
夜ふけ   名詞,一般,*,*,*,*,夜ふけ,ヨフケ,ヨフケ
て 助詞,格助詞,連語,*,*,*,て,テ,テ
な 助詞,終助詞,*,*,*,*,な,ナ,ナ
が 助詞,格助詞,一般,*,*,*,が,ガ,ガ
むれ  動詞,自立,*,*,一段,連用形,むれる,ムレ,ムレ
ば 名詞,一般,*,*,*,*,ば,バ,バ
ながら   助詞,接続助詞,*,*,*,*,ながら,ナガラ,ナガラ
へ 助詞,格助詞,一般,*,*,*,へ,ヘ,エ
ば 助詞,接続助詞,*,*,*,*,ば,バ,バ
ひとり   名詞,一般,*,*,*,*,ひとり,ヒトリ,ヒトリ
かも  助詞,副助詞,*,*,*,*,かも,カモ,カモ
寝 動詞,自立,*,*,一段,連用形,寝る,ネ,ネ
む 名詞,一般,*,*,*,*,*
わたの原    名詞,一般,*,*,*,*,わたの原,ワタノハラ,ワタノハラ
名 名詞,接尾,一般,*,*,*,名,メイ,メイ
こそ  助詞,係助詞,*,*,*,*,こそ,コソ,コソ
を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
しけ  動詞,自立,*,*,一段,未然形,しける,シケ,シケ
れ 動詞,接尾,*,*,一段,連用形,れる,レ,レ
君 名詞,代名詞,一般,*,*,*,君,キミ,キミ
が 助詞,格助詞,一般,*,*,*,が,ガ,ガ
ため  動詞,自立,*,*,一段,連用形,ためる,タメ,タメ
夜半  名詞,副詞可能,*,*,*,*,夜半,ヤハン,ヤハン
の 助詞,連体化,*,*,*,*,の,ノ,ノ
月 名詞,一般,*,*,*,*,月,ツキ,ツキ
か 助詞,副助詞/並立助詞/終助詞,*,*,*,*,か,カ,カ
な 助詞,終助詞,*,*,*,*,な,ナ,ナ
朝ぼらけ    名詞,一般,*,*,*,*,朝ぼらけ,アサボラケ,アサボラケ
物 名詞,接尾,一般,*,*,*,物,ブツ,ブツ
を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
こそ  助詞,係助詞,*,*,*,*,こそ,コソ,コソ
思へ  動詞,自立,*,*,一段,連用形,思へる,オモヘ,オモエ
白妙  名詞,一般,*,*,*,*,白妙,シロタエ,シロタエ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
百 名詞,数,*,*,*,*,百,ヒャク,ヒャク
人 名詞,接尾,助数詞,*,*,*,人,ニン,ニン
一 名詞,数,*,*,*,*,一,イチ,イチ
首 名詞,接尾,助数詞,*,*,*,首,シュ,シュ
秋 名詞,一般,*,*,*,*,秋,アキ,アキ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
夕ぐれ   名詞,一般,*,*,*,*,夕ぐれ,ユウグレ,ユーグレ
EOS

------------------------------ Natto_keitaiso_End ------------------------------

形態素解析を終了します...

百人一首の重複している言葉を形態素解析やわかち書きなどしてみました。

この先は、Python機械学習などでよりデータの深層に近づいていきます。

取得したWebサイト内のタグを消して文字列を表示する

github.com

上記リンク内は、curlで取得した内容のようにWebタグを削除し内容だけを出力します。もともとはコロナウイルスの情報が表示されているWebサイトをスクレイピングするために、Pythonで書きました。書いていてRubyより書きやすいような印象を受けました。流石、人気がある言語ですね。

開発環境です。

neovim
python
deoplete
deoplete-jedi

pip3 install jedi

入力補完として、deoplete-jediを使いました。

[[plugins]]
repo = 'deoplete-plugins/deoplete-jedi'
on_event = ['InsertEnter']
depends = ['deoplete.nvim']

かなりよいものです。

※ tomlファイルに追加する内容です。

toml?とは、という人は下記リンクから理解度を上げましょう。

いろいろ書きました。参考にどうぞ。

takkii.hatenablog.com

コロナウイルスの感染がオーバーシュートから少しずつ収縮し回復していくことを願っています。

新版、WindowsでNeovimビルド。

takkii.hatenablog.com

環境

Windows10
Powershell
cmake
git clone https://github.com/neovim/neovim.git
cd neovim
mkdir .deps
cd .deps
cmake -G "Visual Studio 16 2019" ..\third-party -DCMAKE_BUILD_TYPE=Release
cmake --build .

cd ..
mkdir build
cd build
cmake -G "Visual Studio 16 2019" ..\ -DCMAKE_BUILD_TYPE=Release

"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\devenv.exe" nvim.sln

visualstudio2019側でReleaseとしてビルドする。

※ プロジェクト / ソリューション上でビルドを実行、

2回ビルドを実行する、管理者権限はいらないはず。
2度目で、nvim.exeがビルドされるので、これでneovim-qtが起動できるようになる。

※ その他はリンク先に書いてあります。

新版では、Luaの環境作りが必要です。

http://luarocks.github.io/luarocks/releases/

luarocks-3.3.1-win32.zip ( legacy Windows package, includes Lua 5.1 )

ダウンロードします。

Mingw 32bitの環境を作ります

MinGW - Minimalist GNU for Windows - Browse /Installer at SourceForge.net

ダウンロード

mingw-get-setup.exe

インストーラGUI)からinstall

mingw-developer-toolkit
mingw32-base
mingw32-gcc-g++ 
msys-base
mingw32-libz (dev)

PATHを環境変数に追加

C:\MinGW\bin
C:\MinGW\msys\1.0\bin

PATHを環境変数に追加

luarocks-3.3.1-win32.zip 解凍先( 例 ) C:\Users\takkii\luarocks-3.3.1-win32\win32\lua5.1\bin
luarocks-3.3.1-win32.zip 解凍先( 例 ) C:\Users\takkii\luarocks-3.3.1-win32\win32\lua5.1\lib
C:\Program Files (x86)\LuaRocks

luarocks-3.3.1-win32/install.bat を実行します。

cd luarocks-3.3.1-win32.zip 解凍先( 例 ) C:\Users\takkii\luarocks-3.3.1-win32

.\install.bat

※ すでにLuaがPATHに通っているときはLuaのPATHを削除してください。

 ∟ 古いLuarocksが生成されてしまう原因になります。

インストールします

luarocks install lpeg
luarocks install mpack
luarocks install luabitop

インストール後

luarocks-3.3.1-win32.zip 解凍先( 例 ) C:\Users\takkii\luarocks-3.3.1-win32\win32\lua5.1\lib\lua\5.1

bit.dll
lpeg.dll
mpack.dll

コピーします

luarocks-3.3.1-win32.zip 解凍先( 例 ) C:\Users\takkii\luarocks-3.3.1-win32\win32\lua5.1\bin

これでcmakeでビルドエラーを起こす、

cmake -G "Visual Studio 16 2019" ..\ -DCMAKE_BUILD_TYPE=Release

部分を通りすぎていきます。あとは流れ通りです。

"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\devenv.exe" nvim.sln

Visual Studio 2019が起動しないとき、

(GitHubからクローンした場所)\neovim\build\nvim.sln

Visual Studio 2019で上記ソリューションを開いて、
Release、x64で一番上のソリューションを選択、
すべてのプロジェクトをビルドします。

PermissionErrorがでるときは、管理者でビルドします。1~2回ビルドして様子見ます。

github.com

Neovim-qtを無事起動できたとき、

C:\Program Files (x86)\nvim\share\nvim\runtime\syntax

PATHが見当たらないよとメッセージが流れたら、

上記リンクから、nvim-win64.zipを解凍、

まずC:\Program Files (x86)\nvimフォルダを作成、

解凍したフォルダ/shareフォルダを

C:\Program Files (x86)\nvimに移動します。

設置し起動しなおすとメッセージが消えます。

※ いくつか方法がありますが、シンプルな手順を残します。

WindowsでNeovimビルドしてみませんか

mingw32環境がもしmsys2(64bit)で同じことをしてもビルドできません。あとビルド後にdllファイルがなくてクラッシュするならば、記事最初のリンクをみれば対処が書かれています。わかってしまえば簡単なことですが、わかるまでに時間がかかりました。再現性を確保するためにもう1度同じ事をしてみました。NeovimをWindowsで使うことにメリットは多いです。マシンスペックにもよりますが、ビルドには時間がかかります。珈琲などを飲みながら終わるのを待つことも作業効率をあげるために必要です。記事が今後の参考になれば幸いです。

kaoriya-vimでrubyを設定するには

令和2年3月13日夜中2時頃、能登半島で大きな地震がありました。

飛び起きて、NHK+で情報を確認し、いつでも避難できるように用意していました。

結果的には、被害も個人的にはありませんでした。

今日は、香り屋Vimの話をします。

※ 過去、登壇者に選ばれなかった話は忘れてくれれば助かります。

takkii.hatenablog.com

∟ NeovimのWindowsビルドはもう通らない。

LuaやLuarocksのまわりmingw32-gccを64bit環境で探してエラーになりますね。

※ neovimのwindowsビルド、通りました。後日、記事にします。

個人的な設定なので参考程度に。

該当箇所

設定 (Rubyは2.6.5、RubyInstaller2を使う例)

環境変数

RUBYインストール先/bin
RUBYインストール先/bin/ruby_builtin_dlls

設定します

let g:ruby_host_prog='RUBYインストール先/bin/ruby.exe'

set rubydll='RUBYインストール先/bin/x64-msvcrt-ruby260.dll'

上記は要りません。

これで、vim-ruby-debuggerの動作がみれると思います。

手順

:echo has("signs") && has("clientserver") && has("ruby") && v:version > 700

1を返すと思います。

gem install debugger-xml

インストールします。他の細かいのはGitHubページの英語を読もう。

これでRubyのデバッガが手に入りました。rubocop以外にも動作・構文チェックできますね。

Copyright © 2007-2020 Takayuki Kamiyama. All Rights Reserved.