2017年5月2日火曜日

【ておくれメモ】Bash on Ubuntu on Windowsでmikutter【特に意味は無い】


Windows10(上のUbuntu上のBash)でmikutter3.5.7を動かしてみた…一体何番煎じなんですかね?
ノートPCとメインデスクトップ機で試してどっちも動いたのでこれで問題なかろうよ(慢心)
※2018/03/11 追記※
mikutter3.6.5をノートPCに突っ込んでみたので色々追記

というかWin上でRubyinstallerからやったらgtk2等が依存なんちゃらで起動しなかったのが悪いんだ。俺は悪くねぇ!俺は(ry
最初2.3.3x64でやろうとしたんだけどなんかVS関係のDLLが大量に足りなくて諦めた模様
じゃgem落としてきてコンパイルすりゃええやろ→パス関係修正しないと通らないので見なかった事に
あとcmdの文字コードSJISだとgettextコケるしUTF-8にしても7bitなんちゃら扱いだしで投げたとかなんとか
まあ文字コードに関してはmsys上で起動させればエラー出なかったらしいよ





<やった内容をサクッと>
Bash on Ubuntu on Windowsを有効にする

rubyをインスコ(死語)

mikutterとプラグインをダウソ(死語)

bundle install(ryで必要なgemつっこむ

mikutter/vendorにある*.soを全部つっこんだgemの奴で置き換える

X11関係つっこむ

Windows上にX11サーバを走らせる

fonts-ipafontとかuim-anthyとかつっこんで走らせる


It worked.

日本語入力できなくてlxterminal上でruby mikutter.rb

気付いたら朝の5時(普通に仕事)





<なんでこんな事を?>
ITスキルの無さを察して
if-goto使いだす程度のITスキル




<以下自分用覚書>
Bash on Ubuntu on Windowsを有効にする
Bash on Ubuntu on Windowsをインストールしてみよう! - Qiita
WindowsUpdateがエラー吐いて死んだノートPCをISOてきなものでアップデートしたのでやってみたのさ。

rubyをインスコ(死語)
(無言のsudo apt-get install build-essential gtk2.0 libgtk2.0-dev autoconf)
Ubuntu 14.04 に apt-get で Ruby 2.1 をインストールする方法 - Rails 雑感 - Ruby on Rails with OIAX
を参考にapt-get install ruby ruby-devしたら2.3.4が入った模様。
※追記ここから※
2018/03/11だと2.3.6だった模様
※追記ここまで※

mikutterとプラグインをダウソ(死語)
言葉は不要か…

bundle install(ryで必要なgemつっこむ
sudo bundle install --path vendor/bundle
gtk2入れる時にgdkkeysyms.hがねーよバーカ!と言ってきたので修正。
sudo ln -s /usr/include/gtk-2.0/gdk /usr/include/gdk
※追記ここから※
ノートPCに再インスコしようとしたらbundlerのパスが腐った('A`)面倒なので直叩き
sudo /usr/bin/bundle2.3 install --path vendor/bundle
 →mikutter3.6でやったらidnでコケた。
 sudo apt-get install libidn11-dev
  →twitter-textに\config\v2.jsonがmikutterのフォルダ(/mnt/c/mikutter)にねーよ(ry
   探せばどっかにあるんだろうけどリンク張るのも面倒なのでGitHubから叩き落して配置。
※追記ここまで※

mikutter/vendorにある*.soを全部つっこんだgemの奴で置き換える
mikutter関係の記事読む度になんでコレやらんで動くんだろうと疑問に思う(Rubyぜんぜんわからん)

X11関係つっこむ
Windows上にX11サーバを走らせる
fonts-ipafontとかuim-anthyとかつっこんで走らせる
bash on Ubuntu on Windowsを試してみる - kashiの日記
.bashrcにこのページのまま書いたらLXTerminalがブラクラめいた事になったゾ()
※追記ここから※
.bashrcに↓を追加。謎のmikuに関しては気にしない方向で。
export DISPLAY=localhost:0.0
alias miku='/mnt/c/mikutter/miku'

※追記ここまで※
当然ながらfonts(ry入れないと盛大に文字化けした模様。
あと75dpiは文字が小さくてつらかったのでXmingは100dpiにしてます(老眼)

日本語入力できなくてLXTerminal上でruby mikutter.rb
日本語入力もっとシンプルな方法ないですか?(他力本願)
その後日本語変換とLXTerminalとruby(ryをシェルスクリプトでまとめて1ポチで終わるようにしたらしい。
※追記ここから※
上記mikuの中身↓本体がC:\mikutter\mikutter.rbな事前提。
UIM_CANDWIN_PROG=uim-candwin-gtk uim-xim &
XMODIFIERS="@im=uim" GTK_IM_MODULE=uim QT_IM_MODULE=uim lxterminal -e 'ruby /mnt/c/mikutter/mikutter.rb' &

※追記ここまで※

気付いたら朝の5時(普通に仕事)
\すまんで済むかよ社畜が!/ \報酬分位は働け!/





<問題点>
起動すんの時間かかる
→3.6だと改善してたのでおっけまる。

リンク叩くとUbuntu側のブラウザが(ry
GitHub - moko256/mikutter_wsl_plugin: mikutterをWindows Subsystem for Linuxで使う時に便利にします

窓が2枚も出て邪魔なんだけど
→そこはWindowsなんだしFindWindowEx()でHWND取得してShowWindow(hWnd,0);で消せばいい(浅はかな発想)
誰かもっとマシなの書いて(他力本願)

見ての通り環境毎に異なるBashの部分は引数で渡してます。自動で列挙する方法が判らなかっただけです('A`)

なおクソコード乙なのでバイナリはありません。

0 件のコメント:

コメントを投稿