これをemacsのモードラインとして使用しています
'(:eval (last-dir default-directory))
が、メッセージバッファーに表示され
Error during redisplay: (eval (last-dir default-directory)) signaled (void-function last-dir) [594 times]
ています。正しく機能させるにはどうすればよいですか?どうすればファイルサイズをモードラインに入れることができますか?
(setq-default mode-line-format
(list
" "
mode-line-buffer-identification
" │ "
"dir: "
'(:eval (last-dir default-directory))
" │ "
;; '%02' to set to 2 chars at least; prevents flickering
"%04l"
","
"%02c"
" │ "
'(:eval (format-time-string "%H:%M"))
" | "
'(:eval (if (buffer-modified-p) "M" "-"))
'(:eval (if buffer-read-only "R" "-"))
'(:eval (if (window-dedicated-p (selected-window)) "D" "-"))
" │ "
mode-line-modes
))
関数last-dir
は実際には定義されていません。ディレクトリ名の最後のコンポーネントを抽出することを意味しますか?もしそうなら、代わりにこれを使用することができます:
(:eval (file-name-nondirectory (directory-file-name default-directory)))
(:eval (format "%d" (buffer-size)))
モード行にバッファサイズを含めるには、IqbalAnsariの回答で%I
説明されているように使用します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加