2016年10月18日火曜日

EnpassのUbuntu版で日本語入力を出来るようにした(Ubuntu 16.04)

Ubuntuで使っているEnpassで日本語の入力が出来なかったので、
ちょっと調べてみたら出来る様になったのでメモ。

Enpassの限定の問題と言うよりはQtで作られたアプリケーションに共通してる事のよう。

Qt Creatorの日本語入力の時と同様に、
fcitx-libs-qt5がインストールされていなければ、
インストールする。

次に、Enpassのフォルダにリンクを貼ってあげる。
/opt/Enpass/plugins/platforminputcontexts が無かったら作成する。
$ sudo mkdir /opt/Enpass/plugins/platforminputcontexts
$ sudo ln -s /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /opt/Enpass/plugins/platforminputcontexts/

これで、次回の起動時から日本語つかえてるはず。

参考

Qt 5.7.0 の Qt Creator と Ubuntu 16.04の組み合わせで日本語入力

Qt5.7.0のQt Creatorで日本語の入力を出来るようにするのに少し戸惑ったので記載してみる。

そもそも、ubuntuの日本語入力についてもよくわかってなかった。
ubuntuの日本語入力はfcitxと言うインプットメソッドの上で、
IMEとしてmozcを使っているみたい。

今回、Qt Creatorで日本語の入力が使えていないのは、
fcitxがQt5で作られたアプリでうまく使えていないからっぽい。

まず、Qt5用のライブラリをインストールする。
$ sudo apt-get install fcitx-libs-qt5

すると、
/usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts に
libfcitxplatforminputcontextplugin.so がインストールされます。

これをQtがインストールされた以下のフォルダにコピーするかリンクを置いてあげる。
~/Qt/5.7/gcc_64/plugins/platforminputcontexts/
~/Qt/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/
コピーした場合はchmor +xで実行権限をつけてあげないとだめ。

リンクする場合のコマンドは以下
$ ln -s /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so ~/Qt/5.7/gcc_64/plugins/platforminputcontexts/
$ ln -s /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so ~/Qt/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/

こでQt Creatorを起動すれば日本語の入力が出来る様になるはず。

参考

2016年10月13日木曜日

UbuntuでMeld 3.14.2のShift_jis文字化け解消

UbuntuのMeld 3.14.2でShift_jisでエンコードされたファイルが文字化けする。

ちょっとググってみたところ、設定にエンコードタブがあるっぽい。

…ない。いくら探してもない。

しょうがないので、英語のページも検索対象にして探してみたら、
文字化け解消方法を見つけた。

設定画面を使う代わりにターミナルからエンコード候補を追加してあげる。
$ gsettings set org.gnome.meld detect-encodings "['utf8', 'shift_jis']"

これで、普通にMeldでShift_jisエンコードされたファイルを開くと、
文字化けせずに表示されるようになった。

参考
http://stackoverflow.com/questions/38919384/configure-meld-encoding-to-cp-1252
http://namakemono345.com/kichijitsu/ubuntu/PrecisePangolin/Meld.html

2016年10月12日水曜日

Suica問題の原因解決したみたい

以前に書いた、
J-MupsのリーダーでGalaxy S7 edge反応しない問題
原因わかって対応されてたみたい。

全然ニュース等ならなかったので、
気づかなかったけど1ヶ月前くらいにはサイトで広報されていた。
http://j-mups.com/info/download/20160907.pdf

原因は、
R/W と Galaxy S7 edge 間での最初の通信において、コマンド送受信タイミングが合わず、正常に通信ができなかったため。
 との事。

ファームウェアアップデートが配信されている様なんだけど、
全てのリーダーがちゃんとアップデートされるのかな…
とりあえず、どこでもsuicaが使える様になるのは嬉しい。

ブログでターミナルのコマンド表示をプログラムの様に表示する

ターミナルなどのコマンドをブログで書くときに、
プログラム用のコードシンタックスでは、
変なところに色がついてしまうので、
コマンドの表記様にCSSを追加してそれっぽく表示させる。

テンプレート→カスタマイズ→上級者向け→CSSを追加でCSS編集画面を開く。
自分が使っているコードシンタックスのスタイルを参照しつつ、
以下の様に記入。
pre.commandline {
    width: 95%;
    margin: 1em auto;
    padding: 1em;

    white-space: pre-wrap;

    background-color: #000000;

    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -o-border-radius: 8px;
    -ms-border-radius: 8px;
    -khtml-border-radius: 8px;
    border-radius: 8px;

    color: #FFFFFF;

    overflow: auto;
    word-wrap: break-word;
}

参考にしたページ
http://kymyt.blogspot.jp/2013/03/blogger.html

ブログでコードをシンタックス表示する準備

ブログにコードを載せる時に、
エディタ表示しているような色付きシンタックス表示して、
見やすくするための準備をした。

JavaScriptで色付き表示させるみたいで、
調べるとまずでてくるのが、
SyntaxHighlighterってやつ。
これを導入しようとしてみようかと調べてみたが、
Bloggerに導入するにはAuto-Loaderに対応していないといけないんだけど、
そこら辺がメンテされていないのか、不具合がありそうなのでやめた。

次に出てきた候補は、Googleのcode-prettify。
Googleが公開しているものなら、
Bloggerで使えないって事はないだろーなとこれを導入する事に。

http://usagisaigon.blogspot.jp/2013/08/blogger-google-code-prettify.html
を参考にしつつ、

Google code-prettifyのgit-hubリポジトリが最新の記述だろって事で、
Setupのページを見ながら設定。
https://github.com/google/code-prettify

テンプレート → HTMLの編集とたどって、
</head>の手前に
<!-- google-code-prettify -->
<script src=\"https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?&amp;skin=sunburst\"></script>
を記入

skin=○○○の部分に関しては、
https://cdn.rawgit.com/google/code-prettify/master/styles/index.html
から好きなスタイルを選ぶ。

デフォルトのままでは行番号を表示した時に5行ごとにしか番号が表示されないので、
</script>の次の行に
<style>li.L0, li.L1, li.L2, li.L3,li.L5, li.L6, li.L7, li.L8{ list-style-type: decimal !important }</style>
を追記。

実際にコードを記入する時は、
<pre class="prettyprint">
</pre>
でコードを囲ってあげる。

行番号を表示させる時は、
<pre class="prettyprint linenums">

言語を指定するときは、
<pre class="prettyprint lang-python">
とか、lang-python部分を変えてあげれば指定出来る。