つらねの日記

プログラムの進捗やゲームをプレイした感想などを書き連ねる日記。

Karabiner の windowname_only に和名を使うには

まえがき

Karabinerを愛してやまない皆さんこんにちは。便利ですよねKarabiner。 今回はKarabinerのFilter: Specify window name (window title)に平仮名や片仮名、漢字を使う方法を模索していきたいと思います。

結論

<windownamedef>
    <name>nihongo</name>
    <regex>日本語</regex>
</windownamedef>

<item>
    <windowname_only>nihongo</windowname_only>
    <autogen>
    ...
    </autogen>
</item>

文字化けで死んだ

KarabinerにはonlyというアプリIDのみならず、windowname_onlyという機能もある。 それによって、特殊な設定を施したいと思った。

しかして、そういった設定を行なうと思ったところ、windownameが日本語だった。 これ大丈夫なのかなぁと思いながらもやってみたところ、やっぱりだめだった。f:id:turane_gaku:20161225141702p:plain

そういえば、なんでこういった文字化け的なやつって、普段使わないような漢字な感じなんだろうなぁ。 別に三々手拍的に普段使うような漢字で化けても罰は当たらなわけじゃないですか?

文字コード的な話か?

無論、一番最初に疑ったのは文字コード的な話で、set fenc=utf-8を叩き直してみたり、xml宣言を<?xml version='1.0' encoding='UTF-8'?>にしてみたりした。 でもやっぱり駄目。どうしても謎の文字列によってエラーを吐いてしまう。

というかそもそも<name>で日本語を使えてる時点でその線はないんだよな。

Profilesで解決できるわけがなかった

検索技術が低いのか探せど探せど、あまりにも出てこないので、諦めてProfilesで解決することにしていた。 設定が一つだけ異なるProfileを用意することで、切り替えて使う方法である。

しかしながら、人間は面倒くさがる生き物でそれを切り替えることを忘れてしまう。 windownameが他のものになったときには、動作を逆に阻害するような設定だったので、腹立たしくなって、もういっそ無効にしてしまっていた。

サンタからの贈り物だ

ところで今日はクリスマスみたいですね。まあだからと言って何かが変わるわけではないのだけれど、(色々安くなっていたりはする)なんか良くわかんないけど、なんかこれ使うといいんじゃないかなって思って上手くいった。

ふとprivate.xml Reference Manual - Karabiner - Software for OS Xを見てみるとwindownamedefとかいう機能があるらしい。

今までは知らなくて、

You can use them without in private.xml.

な使い方しかやってなかったのだが、それをしてみたとたん、エラーもなくめっちゃ上手く動作するようになった。正規表現とか使ってないけど、regexを使っていてちょっともったいない気分である。

<windownamedef>
    <name>nihongo</name>
    <regex>日本語</regex>
</windownamedef>

<item>
    <windowname_only>nihongo</windowname_only>
    <autogen>
    ...
    </autogen>
</item>

おわりに

今回はKarabinerのwindowname_onlyを設定するときに、windownamedefを使うことで、日本語のwindownameを設定する方法も模索した。

今回の件から学ぶべきことは、ドキュメントはちゃんと読もうという話だ。 でもLanguage > Japaneseで期待させておいて、変わるのがメニューだけっていうのはあまりにも酷だと思う。

最高のキーバインドで腕が動かなくなるまで

はじめに

この記事はFUN Advent Calendar 2016 - Adventarの18日目の記事です。 昨日はPythonおじさんでした。明日は妹のパンツのヒトです。

パソコンを操作している人を見てると、マウスに手を伸ばし、キーボードに戻し、ホームポジションから十字キーに手を出すなど、腕を上下左右縦横無尽に忙しなく移動させている様が散見される。 CHUNITHM AIRをやっているわけでもないのだから、 そんな労力はかけなくてもいいんじゃないかなと思うわけだ。(CHUNITHM AIRは片手で数えるくらいしかやったことないです。)

本記事では、パソコンの設定をあんまりしていない人向けに、パソコンのキーバインドを出来るだけ手を動かす必要がないように変えるために設定した記録を書き記す。

0. 便利ショートカット

アクティブウィンドウを切り替えるためにキーボードから手を離す人は多い。⌘TABや⌥TABを覚えることで、その無駄を軽減しよう。 複数の操作スペースを作ることで、室内の玄関には靴を置き、本棚には本を置くなどのようなアプリケーションの配置整理を行う手法も有効である。

効果 OS X Windows
アクティブウィンドウを変更 ⌘Command + TAB ⌥Alt + TAB
操作スペース作成 ⊞Win + ⌃Ctrl + D
操作スペース移動 ⌃Ctrl + →, ⌃Ctrl + ← ⊞Win + ⌃Ctrl + →, ⊞Win + ⌃Ctrl + ←

OS X の場合、簡単にスペース移動のバインドを変えることが出来るので、⌃⇧HLとかにしておくと便利

1. CAPSLOCKを殺せ

まず第一に、最も押しやすく、最も使わないキーがある。

続きを読む

ソフィーのアトリエのためのツールを作りなおした

前置き

知らない間にフィリスのアトリエが発売されていたみたいですね。 シャリーのアトリエがまだクリアできてないので、そっちを先にやらないとっていう感じだけど。

social.gust.co.jp

で、そういえば、昔ソフィーのアトリエのための経路探索ツールを作ったなぁと思いだした。 見返してみたら、やりたいなと言っていること何一つやっていなかったのだけれども。

turanegaku.hateblo.jp

ゲームをPSVitaでやっていると、パソコンをつけるのが億劫になることがある。携帯でこういったの使えたら便利だなぁとか思うわけだ。

続きを読む

僕とグラブルとブックマーク

前書き

今までブックマークという機能には正直なところ、意義を感じていなかった。

ブックマークしたとしてもその数が増えれば大切なものは埋もれ、整理やその位置の記憶に労力を費すことになる。 また、ブックマークウィンドウやブックマークバーという空間によって、閲覧領域を消費するのは快適性を損う。 まして、普段使いするようなサイトなんて、直接アドレスを打ち込んで補完した方が速いと。transとかnotifiとかgithubとかで飛んでいけるのだから、わざわざキーボードから手を離して押しに行く方がコストが高いと考えていた。

ところで、最近グラブルをブラウザでやり始めた。 http://game.granbluefantasy.jp/ 「マウスを使っているのは遊んでいるとき」と誰かが言ったように、この遊びはマウスでの操作が強いられている。閉じるボタンとかの位置を探して一生懸命カーソルをあわせなければいけないのは正直ちょっと大変。マウスカーソルとかしょっちゅう見失うし、ESCでキャンセルしたいとかめっちゃ思う。

ともかく、マウスというかタッチパッドを使ってグラブルをプレイしているというお話。

続きを読む

zshのfgにdefaultってやつがあることを知った.

前置き

最近白い画面をよく使っている. しかしながら,使っていたPROMPTが黒い画面を使っていたときのものだったので,ちょっと困ることがあった.

local now="%{$fg[white]%}[%*]"

こういうのを書いてしまうと黒い画面のときはちゃんと見えるのだが,白い画面になると全然見えない.悲しい. これをどうにかしたいという話

結論

local now="%{$fg[default]%}[%*]"

推論

黒い画面にしても白い画面にしても,普通の文字は見えているのだから,そういうのが存在するはずだ. fg内になにかしらあるだろう.

fgは文字列でアクセスしてるから連想配列っぽいっていうところもわかった.

echoした

f:id:turane_gaku:20161028175334p:plain

うーん悲しい なんかすっごいカラフルだけど,valueしか出てなくてkeyがわからん. 配列$fg[0]的な感じで配列アクセスは出来るけど,流石に格好悪すぎる.

keyアクセスする方法があった

% echo ${(k)fg}
cyan white yellow magenta black blue red default grey green

PRO ppoi !!

見るとredgreyの間にdefaultというものがある. 設定してみたら案の上表の色だった.

めでたしめでたし.

+lua, +pythonのVimをraspberry pi上にbuildしたけど,遅かったので辛かった.

前置き

raspi上で開発しようとしたら,apt-getで入れたvimが-luaだったり,-pythonだったりして,使っているプラグイン(neocompleteとかjedi-vim)が動かず,捗らない. どれくらい捗らないかっていうと,noremapで::を入れ替えていないVimくらい捗らない.

vim-gnomeを入れればいいみたいなのも話も聞いたが,別にそこまでは求めないしなぁ.

brewだとwith-pythonとかで楽々できるのになんでapt-getは出来ないんだ……

自分でbuildするぞ

さすがに使っていて不便すぎたのでvimのbuildというやつをやってみることにした. vim-jp » Linuxでのビルド方法

流石天下のvim-jpである.親切である.

$ sudo apt-get install libncurses5-dev      # terminalなんとかみたいなエラーが出る
$ sudo apt-get install lua5.2 liblua5.2-dev
$ sudo apt-get install luajit libluajit-5.1 # lua.hがみつからないと言われる
$ git clone https://github.com/vim/vim.git
$ cd vim
$ ./configure --enable-python3interp=yes --enable-luainterp=yes --with-luajit --enable-fail-if-missing
$ make
$ sudo make install
$ exec $SHELL -l # しないと更新されない
$ which vim
/usr/local/bin/vim
$ vim --version | grep -e +python -e +lua
+cscope          +lispindent      +python3         +wildignore
+dialog_con      +lua             +rightleft       +writebackup

pythonが入ったVimを無事インストールできた.

さあ,プラグインを使うぞ

これで,jedi-vimを動かして快適VimLifeを…

f:id:turane_gaku:20161018133024g:plain

なんだこの重さは!!!!!!!!!!

起動も遅いし,補完も遅いし,ちょっとこれは耐えられない. やはりラズパイの処理能力には流石に限界があるということか……

手元で編集してそれを送信して使う的なスタイルが最高な気がしてきた……

vimのcolorschemeの色をiTermのプロフィールによって変えた

前置き

ターミナルの背景は黒こそ至高,最高にCoolでExcellent!!! と思っていたが,どうしても太陽光が眩しかったり, 色々な事情で黒背景が不便なことがある.

そこで,黒背景のプロフィール(Dark)に加えて, 白背景のプロフィール(Light)も用意した. だがしかし…

さて,ちょっとファイルを編集するか…

f:id:turane_gaku:20161016193620p:plain

ぐわああああああああーー!!!

f:id:turane_gaku:20161016193755p:plain

急激な色の変化は目に優しくない. それにちょっと画像だと判りにくかもだけど, 縁の部分は白で,中が黒みたいな感じになっていて究極的にかっこ悪い.

どうにかして白背景の時と黒背景の時でset backgroundを変えたい.

答え

if !exists("$ITERM_PROFILE") || $ITERM_PROFILE != 'Light'
  set background=dark
endif
続きを読む