2015/11/30

vim で Esc キーを押すと fcitx を OFF にするとか

メインで使っているエディタが Sublime Text な無銘闇人です。

そんなことはさておき、サーバや PC の設定を端末エミュレータで操作している時に、テキストファイルを軽く修正することなんてよくあります。さすがに毎回、Sublime Text を開くのは仰々しくて (既に別のプログラムのソースでタブがいっぱいの時とかは起動が重いし)、そんな時は結局 vim で編集してたりします。

そして、時々、後々のためと思って、何のディレクトリかの説明を README.txt なんてファイルに残したりするのですが、vim で日本語を入力すると、以下の手順を踏むことになるわけです。
  1. i で vim のインサートモードに切り替え
  2. 全角半角キーを押して、Fcitx の mozc を ON にして日本語入力モードに切り替え
  3. 日本語で説明を入力
  4. 全角半角キーを押して、Fcitx の mozc を OFF にして英数字入力モードに切り替え
  5. Esc キーを押して vim のノーマルモードに切り替え
4 と 5 はどちらからやってもいいのですが、時々 4 の操作を忘れたままノーマルモードに入って、保存しようとすると、全角で「:wq」となってコマンドを受け付けてくれないのですよね。そもそも、ノーマルモードで日本語を打つことはほとんどないので、4 と 5 が同時に終わってくれれば助かるのです。

で、私がしようとしていることは、もう大抵のギークな人たちがたどり着いているので、検索するだけで解決策を紹介するページがわんさか出てきます。インターネットバンザイ!

代表的なのは 3 つでしょうか。

私のオススメは「Linux の IM (InputMethod) の Fcitx を gVim で快適に使うプラグイン - 地獄の猫日記」で紹介されているプラグインを使う方法。
NeoBundle というプラグイン管理マネージャを導入すれば楽々です。NeoBundle の導入については「NeoBundleによるVimプラグイン管理とおすすめプラグイン - Catcher in the tech」で。

2015/11/21

森林もみじ散策と紅葉ライトアップに行ってきたとか

たまたま、JR の駅に神戸市立森林植物園の「森林もみじ散策」と「紅葉ライトアップ」の案内ポスターがあって、気になったので、行ってきました。

紅葉具合はまずまずでしたが、なかなか撮りごたえがある写真が撮れたので紹介したいと思います。

昼の紅葉とライトアップが見たかったので、家を出発したのは14時すぎ。

無料送迎バスもあるからとタカをくくっていたのですが、よく見たら、そのバスが来るのは北鈴蘭台駅。ちなみに私がよく利用するのは三宮駅なので、大誤算です。

ちなみに、右の地図で北鈴蘭台駅が赤、三宮駅が青、谷上駅が緑、森林植物園が赤星で示してありますが、遠いです…。しかも、三宮駅から北鈴蘭台駅までは直通ではないので、乗り換えが必要…。

即、スマホの Google マップでルートを洗い出しした結果、
  1. 三宮駅周辺のバス停〜植物園の直通バス (約39分)
  2. 三宮駅〜谷上駅を電車、そこからバス+徒歩 (約57分)
  3. 三宮駅〜谷上駅を電車、谷上駅〜北鈴蘭台駅を植物園送迎無料バス
の 3 通り。なお、3 は自分で考えた方法なので、時間は不明。

乗り換えは面倒なので、早速バス停に行って、バスの時間を調べたら 1 時間に 1 本くらいの間隔で出ているのですが、 バス停に着いた時は14時半頃、次のバスは15時すぎです。計算すると到着するのは16時すぎとなり、昼の紅葉はほとんど見れませんorz。

そこで、急遽、プラン2の電車+バス+徒歩に変更。電車なら本数が多いので安心です。

ただ、30分以上の徒歩は予想外にきつかった…。
バスの筑紫が丘4丁目で降りると、神戸市独特の山に向かって急勾配な坂がそこにはありました。まぁ、これくらいの坂は半年くらい神戸市に住んで慣れてきていたのでよかったのですが、ナビをしていたスマホの表示がおかしい…。
上の地図は左側がスマホで当時表示していたマップをスクリーンショットしたもので、自分は北から南に向けて進んでいたのですが、現在地の青丸の直前の左にそれる道へ入ってしまいました。というのも、右が PC からの同マップをスクリーンショットしたものなのですが、本来進むべき道は、等高線に隠れるくらいに細い道だったのです。

しかも、その道は舗装されていない、下の写真のような歩行者用の山道。近くにはなぜか立入禁止の看板まであったので、迷うわけですよ (実際には道路ではなく、敷地に対する立入禁止でしたが…)。その看板の写真も撮ればよかったかな。
写真に写っているおじさんが居なかったら、ずっと気づかなかっただろうな。

で、植物園についたのが、15時半。
植物園はカップルやら、家族連れやらで、案外大盛況でした。

肝心の紅葉ですが、ちょっと時期を逃したか、はたまたここ数日の気温環境に恵まれなかったか。もみじが青い部分もあれば、赤みが過ぎて枯れているところもありました。まぁ、気温の下がり方が緩かったから仕方ないね。ちょっと残念。


それでも、近寄ってみれば、十分に季節を感じられます。

正面入口より、奥の方 (長谷池と呼ばれる池の付近) が色づきが綺麗でした。

あとは、柿とか、すすきも見頃かな。

園内にある「青葉トンネル」と呼ばれるトンネルではすすきのライトアップがあって、これまで自然の紅葉を見ていた目には趣向が違って、斬新に映りますね。

そして、夜 (夕方?) のお楽しみのライトアップは、正面入口付近のもみじ限定だったので、あまり紅葉の感じが出なかったのですが、なかなか雰囲気が出ていて、これはこれでありかなと満足できるものでした。緑色のもみじもライトアップで美しく映えます。

最終的には17時過ぎに撤退。というより、山の上のせいか、Tシャツの上からパーカー羽織っただけの格好では、寒さに耐えられなかった…。
ゆえに、植物園のカフェ?で売っていたおでんはうまかったです !

今回も「無銘闇人あるところに、トラブルあり」でしたが、それでも写真の撮りごたえのある紅葉が見れて満足でした。別の機会にまた訪れたいですね。


ここで紹介した以外の写真はこちらを見てください。

2015/11/19

これなんでしょう?とか

問.本日、無銘闇人が入手したこれは一体何でしょうか?

上のアームはこのように動きます。


正解は…

















































ゴミスタンドでした。


台所で出た生ごみを、これまで床に直に置いたゴミ袋に入れていたのですが、臭うし、見栄え悪いしということで、楽天で買ってみました。

生ごみを入れるゴミ箱って、フタ付きの物が多いのですが、あのフタの裏に生ごみがはり付いたりすると、洗うのが面倒ですし、放置するとひどいことになりますが、これはゴミ袋がフタ代わりになるのでいいですね。
使わない時は折り畳めるので収納にも困りません。

あとマグネットで抑えるというのもポイントが高いです。

欠点は、ゴミを入れ過ぎると、骨組みにつっかえて取り出しにくくなることですかねぇ。



2015/11/14

GO言語を勉強してみるとか

これまで、bash (シェルスクリプト)、Perl をメインにプログラミングしてきた無銘闇人です。

たまたま、仕事で 72 万行のテキストデータを解析することになって、Perl でスクリプトを書く機会があったのですが、スクリプトのテストの段階で、処理に 3 時間以上かかる羽目になりました。最終的には、5 パターンのスクリプトを書いて、うち 1 つが 30 秒で処理できたので、まずまず使えるものになりました。


でも、結局のところ、Perl はスクリプト言語であって、C や C++、Java のようなコンパイルする系の言語に実行速度はかなわないので、そろそろ、腹を決めて、コンパイルする系のプログラミング言語を学ばないとと思って、学習コストが低そうな言語を探してみました。

そもそも、Perl とか bash のようなスクリプト言語に偏ったのは、簡単に書ける、ラフな書き方ができるなどの利点があるからなんですよね。自分や身内が時々使うだけのプログラムに無駄な労力と時間はかけたくないですからね。
あと、Perl とか bash が変数の型をあまり気にしなくてもいいというのが魅力的ですね。プログラム入門サイトで、よく変数を値を入れる箱なんて表現してますけど、まさにそれです。なんでも気にせず入れられちゃいます。当然、それで生じたエラーは自己責任ですが…。


さて、話がそれましたが、調べてみたところ、色々な言語がある中、GO 言語というものが目に入りました。GO の名にある通り、Google が開発している言語のようです。
実行速度は、C や Java に比べると遅いですが、Python (スクリプト言語の一つで、Perl とほぼ同等の実行速度) よりは格段に速いようです。
この頃 流行りの 言語たち(他)でベンチマーク (Dart, Go, Julia, Nim, Python, Rust 他) - Blank File

しかも、環境をインストールすると、他の OS 環境でも実行できるクロスコンパイラもついてくるという、モノグサな私にはぴったりの言語でした。

実際に触ってみると、確かに、C や Java に比べると格段に書きやすし、覚えやすいです。言語としては Python に近いのかな。スライスとかあるし、正規表現の扱いが一度コンパイルすることになってるし…。
はじめてのGo―シンプルな言語仕様,型システム,並行処理:特集|gihyo.jp … 技術評論社


あと、例のクロスコンパイラも、LinuxMint で Hello World プログラムを Windows 用にコンパイルしてみると、Windows 上で何のライブラリも必要なく動きました。

当面は、この言語を勉強していこうと思います。

2015/11/13

ブログ復帰とか

技術系のブログの電脳ろぐはちょこちょこ更新しているのに、こっちのブログは 4 回で放置していた無銘闇人です。


技術系と日常系が入り乱れて分かりづらいと思って、ブログを分けたわけですが、日常系のブログを初めた頃に就いていた職業がプライベートと守秘義務の発生する仕事が混ざった日常を送る職業で、あまり書けなかった…。というのは建前。
実際に、Twitter では日常をちらほらは書いていますからね。単なるサボりですね。


さて、色々な事情と偶然が重なり、その職業とも見切りをつけ、今年になって青森から神戸に引っ越しました。今は、大学でやっていた研究に関連深い職業に就いています。

それで、前の職よりはプライベートタイムが取れるようになったので、技術系、日常系のブログもちょこちょこ更新していこうかなと思います。
(友人が 1 回投稿して放置していたブログを最近頻繁に更新するようになったのに触発されたのも、ブログ再開のきっかけであります)


これまでの 4 回の投稿を見返すと、季節つながりで、自分でも縛りみたいな雰囲気を感じていたのですが、今後は日常系に加え、こっちでもプログラミングとか OS のことは書こうと思います。ただ、こっちは試行錯誤などの紆余曲折のよもやま話で、電脳ろぐはそのまとめという位置づけで書いていきたいと思います。

2015/11/08

image-manipulator の更新とか

Linux ディストリビューションのファイルマネージャ (Nautilus や Nemo) で、まとめて画像を変換するスクリプト「Image Manipulator」の Ver. 1.2 を公開しました。

ダウンロードはこちらから。

導入方法や使い方は過去記事を見てください。

Changelog は以下の通り。
  • ファイル名にスペースを含む画像に対応
  • 出力設定を作業ごとに尋ねるように設定 (v1.1 ではスクリプトにデフォルトの挙動を記述していた)
  • トリミング用スクリプト (Trimming) を追加

Trimming の使い方
  1. トリミングしたいファイルを選択
  2. 右クリックメニューから「スクリプト」→「image-manipulator」→「Trimming」をクリック
  3. 余白サイズを設定
    • 画像の例だと、縦と横に、画像の 10 % の余白をそれぞれ挿入します。
    • ピクセル単位でも設定できます。
    • imagemagick の convert や mogrify の -border オプションに当たります。
    • キャンセルボタンをクリックすると、終了します。
  4. 余白の色を設定
    • 余白の色をカラーピッカーや、カラーコードで指定します。
    • imagemagick の convert や mogrify の -bordercolor オプションに当たります。
    • キャンセルボタンを押すと、透過色 (none) が指定されます。
  5. 出力するファイルを末尾に _trim を付けて別名で保存するか、上書きするかを選択
    • キャンセルボタンを押すと、終了します。

Protein Data Bank ファイルの vim 用 syntax ファイルを作ったよとか

仕事で分子情報を扱っている無銘闇人です。

さて、今回は誰の役に立つか分かりませんが、タイトルの通り、Protein Data Bank 形式 (*.pdb) の syntax をハイライトする vim ファイルを作ったので公開しました。
ダウンロードはこちらから。