diff --git a/minmo.el b/minmo.el index 6cf64ce..87d9f92 100644 --- a/minmo.el +++ b/minmo.el @@ -279,10 +279,10 @@ Optional FORCE means ignore the minmo--git-directory-table." (defun minmo-disk-status () (cond - ;; readonly: - (buffer-read-only + ;; no file, readonly, eg *Help*: + ((and (not buffer-file-name) buffer-read-only) (minmo--status 'ignored/readonly 'disk)) - ;; no file but modified: + ;; no file, modified, eg *scratch*: ((and (not buffer-file-name) (buffer-modified-p)) (minmo--status 'untracked/buffer 'disk)) ;; has a path but was never visited or no longer exists. @@ -293,7 +293,11 @@ Optional FORCE means ignore the minmo--git-directory-table." ;; normally modified: ((and buffer-file-name (buffer-modified-p)) (minmo--status 'modified 'disk)) - ;; unmodified (fallback): + ;; readonly fallback, eg file-visiting buffers in read-only-mode: + ;; NOTE: we allow modified status to obscure this. + (buffer-read-only + (minmo--status 'ignored/readonly 'disk)) + ;; unmodified fallback: (t (minmo--status 'unmodified 'disk)) ))