2017年5月2日火曜日

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


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

というか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時(普通に仕事)

CK/CSをなんとかする





<なんでこんな事を?>
ITスキルの無さを察して
if-goto大好きおじさん




<以下自分用覚書>
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とプラグインをダウソ(死語)
言葉は不要か…
※追記ここから※
別にWindows上で叩き落してきても問題はないのでC直下に突っ込むと楽だと思う(Windowsのう)
※追記ここまで※

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のフォルダ(C直下だと/mnt/c/mikutter/config)にねーよ(ry
  探せばどっかにあるんだろうけどリンク張るのも面倒なのでGitHubから叩き落してconfigってフォルダ作って配置。
  →mikutter/vendor/bundle/ruby/2.3.0/gems/twitter-text-2.1.0/configにあるのでln -sしてください(環境依存)
※追記ここまで※

mikutter/vendorにある*.soを全部つっこんだgemの奴で置き換える
mikutter関係の記事読む度になんでコレやらんで動くんだろうと疑問に思う(Rubyぜんぜんわからん)
※追記ここから※
3.7.4だとmikutter/vendorにあるidn.sounf_ext.soをmikutter/vendor/bundle/ruby\2.3.0/extensions/x86_64-linux\2.3.0にある奴で置き換える
※追記ここまで※

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
ちなみに日本語入力もっとシンプルな方法があります。
moguno.hatenablog.jp
というか総てにおいてこっちの方法の方が良好だと思います(完全敗北)
一応日本語変換と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時(普通に仕事)
\すまんで済むかよ社畜が!/ \報酬分位は働け!/

CK/CSをなんとかする
最近はそのままだとTwitterが使えないので馬鹿になりましょう。
mikutter.hatenablog.com
なお2018/08/04時点でCK/CSを入手しようとするとなんか面倒な模様。
なんか300字以上の英文でどういうアプリか書け言われたので300文字のランダム文字列貼っ付けたらダメでした(あたりまえ)
…という訳でなんとかしました(察し)





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

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

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

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

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

0 件のコメント:

コメントを投稿