牌語備忘録 -pygo

あくまでもメモです。なるべくオフィシャルの情報を参照してください。

牌語備忘録 -pygo

Emacs.app 27.2 を m1 mackbook air でインラインパッチあてて arm版ビルドできたのでメモ

f:id:CortYuming:20210326174426p:plain

前置き

brew install --cask emacs で入るバイナリのintel版を使ってたけど定期的にに落ちるしインラインパッチあたってないしで困ってたところ v27.2 がリリース されたのでビルドしてみた。(Macbook Air M1 2020)

手順

下記リンクを参照(シェルスクリプトを実行でお手軽ビルドできる。多謝) qiita.com

.zshrc

iTermのカレントディレクトリをEmacs.appのdiredでそのディレクトリを開くコマンドを使いたいので emacsclient をエイリアスしておく

EMACSCLIENT="/Applications/Emacs.app/Contents/MacOS/bin/emacsclient"
if [ -e $EMACSCLIENT ]; then
    alias emacsclient=$EMACSCLIENT
fi

ちなみにコマンドはこんな感じ( iTerm 上で $ e すると Emacs.appのdiredで開く)

# bash/zsh から Emacs でファイルを開く
function emacs_find_file () {
    if [ $(uname -s) = 'Darwin' ]; then
        emacsclient -e "(find-file \"$1\")"
        open -a "/Applications/Emacs.app"
    else
        emacsclient -nw -a "" -e "(find-file \"$1\")"
    fi
}
alias e="emacs_find_file"

init.el

英数・かなの切り替えでカーソルの色とか変える(要インラインパッチ)

M-x mac-ime-input-source-list でどうなってるか確認したらmacosのバージョンか何かで変わってたっぽい

----------------
com.apple.inputmethod.Kotoeri.RomajiTyping.Japanese
com.apple.inputmethod.Kotoeri.RomajiTyping
com.apple.CharacterPaletteIM
com.apple.50onPaletteIM
com.apple.PressAndHold
com.apple.inputmethod.Kotoeri.RomajiTyping.Roman
----------------

多分こんな感じ

  (defvar is-inline-patch (eq (boundp 'mac-input-method-mode) t))

  (when is-inline-patch
    (mac-input-method-mode t)
    (mac-set-input-method-parameter
     "com.apple.inputmethod.Kotoeri.RomajiTyping.Japanese" 'cursor-type 'box)
    (mac-set-input-method-parameter
     "com.apple.inputmethod.Kotoeri.RomajiTyping.Japanese" 'cursor-color "#CD1076")
    (mac-set-input-method-parameter
     "com.apple.inputmethod.Kotoeri.RomajiTyping.Roman" 'cursor-type 'box)
    (mac-set-input-method-parameter
     "com.apple.inputmethod.Kotoeri.RomajiTyping.Roman" 'cursor-color "#ffffff")
    (mac-add-key-passed-to-system '(control shift ?J)) ;; ひらがな
    (mac-add-key-passed-to-system '(control shift ?+)) ;; 英字
    ;; 日本語入力時に記号が半角で確定しないようにする
    (mac-add-key-passed-to-system 'shift)
    )
  )

感想

よさそう
まだあまり使ってないからわからないけど落ちてない。
Emacs最高。