わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

UbuntuとChromebookのEmacsも26へ

 いろいろあってChromebookを購入しました.
 機種などは省略します.
 したかったことの一つは,Linuxコマンドラインの使用です.しかしながら,設定から少しの操作で,Linuxをオンにして,出てきたプロンプトのユーザ名が,@gmail.comの前のもので,これは使い続ける気にならないなと思いました.
 Chrome OSのバージョンを81にすることで,ユーザ名が変更できることを知りました.

 購入当初は,Devチャンネル*1のバージョンが81で,ちょっとこわくて差し控えていたのですが,数日前の更新で,Stableのバージョンが80となり,これまでのLinuxを削除してから,Beta(バージョン81)に変更し,再起動してから,上記リンク先を見ながら操作して,思うとおりのことができました.
 sudo -iを実行すると,エラーメッセージは出ましたがパスワードは要求されず,rootになりました.rsynczsh,tmux,rbenv,pyenv,nodebrewなどをインストールし(rubypython,nodeとnpmのビルドも),設定ファイルをこれまでのUbuntuのところからコピーし,次に時間をとって行ったのは,Emacsです.
 Debian (Buster)でapt install emacsを実行すると,インストールされたバージョンは,26でした.
 以前に,苦労したことがあります.ちなみに使用しているWindows用のEmacsのバージョンは現在,26.3*2ですが,設定ファイルはWindows用とLinux用とで,別々に管理しています.

 これまでのUbuntuのところから,設定ファイルやディレクトリを丸ごとコピーし,emacs -nwを実行すると,起動時にエラーメッセージが出ました.「default-mode-line-format」の件です.
 いったん,常用のUbuntuのところで,Emacs 26に対応した設定ファイルを作り,そのファイルを,他のLinuxサーバやChromebookにコピーすることにしました.UbuntuでのEmacs 26のインストールは次のコマンドです.

$ sudo -i
# add-apt-repository ppa:kelleyk/emacs
# apt-get install emacs26

 「default-mode-line-format」の件は,一昨年末の記事のコードがそのまま使えました.
 次に苦労したのはmigemoです.これまでは「(require 'migemo)」だけで使えたのですが(apt install migemoは実行済み),起動してエラーはでないものの,日本語検索ができませんでした.migemo-dictionaryの値がおかしいことに気づき,Windows用の設定をコピーして,ディレクトリだけ変更しました.コードは次のとおりです.

;; migemo
(when (require 'migemo nil t)
  (setq migemo-command "cmigemo")
  (setq migemo-options '("-q" "--emacs" "-i" "\a"))
  (setq migemo-dictionary (file-truename "/usr/share/cmigemo/utf-8/migemo-dict"))
  (setq migemo-user-dictionary nil)
  (setq migemo-regex-dictionary nil)
  (setq migemo-use-pattern-alist t)
  (setq migemo-use-frequent-pattern-alist t)
  (setq migemo-pattern-alist-length 1000)
  (setq migemo-coding-system 'utf-8-unix)
  (load-library "migemo")
  (migemo-init)
  (set-process-query-on-exit-flag migemo-process nil))

 そのあと,M-x p-l-pと打ち込んでからTab(とEnter)でpackage-list-packagesを実行し,いくつかパッケージを選んでインストールしました.migemoは20190112.516というバージョンにしました.Rubyの編集に関しては,次のページを読んでruby-blockからcompanyまでを入れ,設定を書きました.

 Ubuntuのシェル上で,emacs26 -nwでもemacs -nwでもエラーが出ないことを確認してから,不要なファイルを取り除き,ディレクトリをtarで固めて,Chromebookにコピーして伸張することで,うまくいきました.

*1:Stable・Beta・Devから選択でき,デフォルトはStableです.https://support.google.com/chromebook/answer/1086915?hl=ja

*2:https://github.com/mhatta/emacs-26-x86_64-win-ime