Sunday, July 6, 2014

Ruby on WIndows

Windows…Windows….Windows…使いたくないあうあうあーーーー. 低能でど底辺はわたしくしめには高度すぎて理解できないんですよホント勘弁してくださいぱねぇっすT_T

とある理由でWindows8でrubyを使ったコーディングが必要になりそうなので、馬鹿な自分なりに環境を整えていく.

コンソール

MS-DOSは超高度テクノロジーすぎてデフォルトでわたしめには使えない…意味が分からないから. まずは見た目を改善するところから頑張ってみる.

ネットで少し調べて結果、Nyaos + ckw か Nyaos + console2が良さそう…なんとなくNyaos + console2でやってみる.

Nyaos + console2

Nyaos

https://github.com/stevenharman/console2-solarized

consoles2

http://sourceforge.net/projects/console/

console2のSHellをNyaos.exeに変更.

console2の色テーマをこいつに置き換え.

https://github.com/stevenharman/console2-solarized

Ruby Dev Kit

gemやらbundleやら使いだすと必須だった気がするので入れておく. こいつ自己解凍式で安易に解凍するとディレクトリ直下にファイルを展開する. C:\Users\Yukaary\home\devkit に展開しておいた. 続いてインストール作業.

$ ruby dk.rb init

Initialization complete! Please review and modify the auto-generated
'config.yml' file to ensure it contains the root directories to all
of the installed Rubies you want enhanced by the DevKit.
$ ruby dk.rb install
Invalid configuration or no Rubies listed. Please fix 'config.yml'
and rerun 'ruby dk.rb install'

あれれ. config.ymlを開いてみると何も書き込まれてない…何度か試してみて同じ結果なので手動でRubyのルートパスを設定.

# This configuration file contains the absolute path locations of all
# installed Rubies to be enhanced to work with the DevKit. This config
# file is generated by the 'ruby dk.rb init' step and may be modified
# before running the 'ruby dk.rb install' step. To include any installed
# Rubies that were not automagically discovered, simply add a line below
# the triple hyphens with the absolute path to the Ruby root directory.
#
# Example:
#
# ---
# - C:/ruby19trunk
# - C:/ruby192dev
#
---
- C:\Ruby200-x64

もう一度ruby dk.rb installやったら今度はうまくいった.

vim

Ruby Devkitにvim入ってなかった. mingw入れると幾つかのコマンドが被りそうだし嫌だなぁ…

Windows用のvim探してみたらあるにはあった.

https://code.google.com/p/vim-win3264/

zip落としてきて適当に展開してパス通したら動いたのでしばらく使って様子見.

Ruby

ともかくWIndowsのプロセス一覧をRubyで取得したい. 調べたらsys-proctableというgemがあるらしいのでこれを試してみる.

$ gem search sys-proctable

*** REMOTE GEMS ***

rumblinthebronx-sys-proctable (0.9.7 universal-java, 0.9.2 x86_64-linux)
sys-proctable (0.9.4 universal-darwin universal-freebsd universal-linux universal-mingw32 universal-solaris, 0.9.2 universal-mingw, 0.9.0 x86-darwin-8 x86-freebsd-7 x86-linux x86-mswin32-60 x86-solaris-2.10, 0.8.1 sparc-solaris-2.10 x86_64-linux, 0.7.6 ruby i586-linux mswin32 powerpc-darwin)
tddium-sys-proctable (0.9.2 x86-darwin-10 x86-linux x86_64-darwin-10 x86_64-linux)

あるっぽい.

bundleのインストール

gemパッケージ管理屋さん. gemでインストール.

$ gem install bundle
Fetching: bundler-1.6.3.gem (100%)
Successfully installed bundler-1.6.3
Fetching: bundle-0.0.1.gem (100%)
Successfully installed bundle-0.0.1
Parsing documentation for bundler-1.6.3
Installing ri documentation for bundler-1.6.3
Parsing documentation for bundle-0.0.1
Installing ri documentation for bundle-0.0.1
2 gems installed

さくっと. プロキシが無いと、とても楽だ…

sys-proctable

bundle経由だと0.7.6を落とそうとして失敗, 直接gem叩くと0.9.4が落ちてきた. これは後で調べるとして、まずは0.9.4、動くのか?

main.rb

require 'sys/proctable'
include Sys

ProcTable.ps { |proc_struct|
    p proc_struct.name + "," + proc_struct.executable_path.to_s
}

以上でございます(キリッ

さて、動くかな.

$ ruby main.rb
...
"chrome.exe,C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"
"chrome.exe,C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"
"VOICEROID.exe,C:\\Program Files (x86)\\AHS\\VOICEROID+\\yukari\\VOICEROID.exe"
"chrome.exe,C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"
"SearchProtocolHost.exe,"
"SearchFilterHost.exe,"
"ruby.exe,C:\\Ruby200-x64\\bin\\ruby.exe"

おおお. 動いたぞ. 目当てのVOICEROID+プロセスも補足しているね. このプロセスにrubyからアクセス(具体的にいうとGUIを機械的に操作)できればいいんだけど. これからぼちぼち調べていこう.

bundle install

直接gemの開発サイトを指定してうまくいった.

Gemfile

# A sample Gemfile
source "https://rubygems.org"

# gem "rails"
gem "sys-proctable", :git => 'https://github.com/djberg96/sys-proctable.git'

gem install sys-proctableと同じ0.9.4が落ちてくることを確認.

No comments:

Post a Comment