MacOS El Capitanで変換候補がフリーズ

変換候補のパネルのバグ

El Capitanではライブ変換など、キーボード入力周りの機能が色々変わりました。
それはそれとして、変換候補のパネルがフリーズしてしまって消えずに残ってしまうという現象がけっこう頻繁に発生するようになってしまいました。
早いところ直して欲しいですが、このバグが発生した時の復帰方法をメモしておきます。

↓こんな感じで、キー操作をしても、アプリを切り替えたりFinderを再起動しても最前面に出たまま消えなくなることがあります。

conversion_candidates_freeze

以下対処法です

アプリケーション>ユーティリティー>アクティビティモニタを開く

「日本語入力プログラム」を探してその行をダブルクリック
(「プロセス名」でソートすると捕まえやすいです)

activity_monitor

開いたウィンドウの「終了」をクリック

activity_monitor_selected

「このプロセスを終了してよろしいですか?」と出るので「終了」をクリック

activity_monitor_selected_popup

これで完了です。治っているはずです。

OSをMavericks => El Capitan にしたらIDEなどでscssが使えなくなった

ようやくMacOSを Mavericks から El Capitanにしてみました。
Homebrewの問題などはいくつかの記事を見てなんとかなった。ところが普段使っているphpstormでscssコンパイルができなくなった。
gem listではsassとscssは認識されている。

とりあえずsassとscssのgemを再インストールしてみようとuninstallは出来たものの、
インストールができない様子。

$ sudo gem install sass
Password:
ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted - /usr/bin/sass

sudoにしてるのにnot permittedとなってしまう。
探したらこちらに解決法がありました。

https://github.com/sass/sass/issues/1768

ここに書いてあるように

sudo gem install -n /usr/local/bin sass
sudo gem install -n /usr/local/bin scss

このコマンドでインストールができました。

IDEなどでの設定(phpstormではwatcher)のsassのパスはこれで大丈夫でした。

/usr/local/bin/scss

↑以前は/usr/bin/scss
scss-lintなども同様に使えなくなっていました。

これ以上の詳しいことはあまり理解できていないのですが、
これでphpstormなどでは元どおり使えるようになりました。

追記:こちらの記事で not permitted になる理由が理解できました。

WordPressの body_class()にページスラッグの決定版

以前書いた記事WordPressの body_class()にページスラッグをの発展型です。
functions.phpに以下を追加。


function pagename_class($classes = '') {
    if (is_page()) {
        $page = get_post(get_the_ID());
        $classes[] = 'page-' . $page->post_name;
        if ($page->post_parent) {
            $classes[] = 'page-' . get_page_uri($page->post_parent) . '-child';
       }
  }
  return $classes;
}
add_filter('body_class', 'pagename_class');

6行目 get_page()がdeprecatedになっていたのでget_post()に変更しました

これで、<body>タグに
ページスラッグのclass
.page-[pagename]
と、親ページを持つ場合は
その親ページスラッグのコページであることを示すclass
.page-[parent-pagename]-chid
が追加され、ページ投稿でのデザインの振り分けが自由自在になりそうです。