diredでWordやExcelのファイルを開くと、謎のXMLファイルが入ったディレクトリのようなもの現れ、しょぼんとすることがありませんか?拡張子がdocxやxslxのファイルは、実はいくつかのXMLファイルをアーカイブしたものです。初期設定のままだと、EmacsはそれらがWordやExcelのファイルであると認識せず、アーカイブの中身を表示するのです。
そこで、 dired-launch を導入して、きちんとWordやExcelが起動するように設定しましょう。WSL環境では、 wslview
コマンド1をインストールしておくと、Windows側でOfficeアプリを立ち上げられるようになり、便利です。
dired-launchを導入すると、通常通り dired
を開いてからWordやExcelのファイルを選択して J
を押すと、アプリケーションが起動します。
設定では、WSL環境かどうかを判断し、WSL環境であれば wslview
でファイルを開くようにしています。そうでなければデフォルトの mimeopen
コマンドで開きます(インストールされていれば、LibreOfficeが起動します)。
(leaf dired-launch :straight t :hook (dired-mode-hook . dired-launch-mode) :config (when (and (eq system-type 'gnu/linux) (getenv "WSLENV")) (setq dired-launch-default-launcher '("wslview"))))