                          output)
                      buffer-path))))
         (if active 'mode-line-buffer-path)))
-            (powerline-raw "%b" (if active 'mode-line-buffer-file)))
-    :tight-right t)
-
-  (spaceline-define-segment *buffer-modified
-    (unless (string-prefix-p "*" (buffer-name))
-      (powerline-raw
-       (concat (when buffer-file-name
-                 (concat
-                  (if (buffer-modified-p) "[+]")
-                  (if (not (file-exists-p buffer-file-name)) "[!]")))
-               (if buffer-read-only "[RO]"))
-       'mode-line-is-modified))
-    :skip-alternate t
-    :tight t)
+     (powerline-raw "%b" (if active 'mode-line-buffer-file))
+     (when buffer-file-name
+       (powerline-raw
+        (concat (when buffer-file-name
+                  (concat
+                   (if (buffer-modified-p) "✱")
+                   (if (not (file-exists-p buffer-file-name)) "[!]")))
+                (if buffer-read-only "[RO]"))
+        'mode-line-is-modified)))
+    :tight-right t
+    :skip-alternate t)
 
   (spaceline-define-segment *buffer-position
     "A more vim-like buffer position."
-    (concat "%l/%c "
+    (concat "(%l,%c) "
             (let ((start (window-start))
                   (end (window-end))
                   (pend (point-max)))

    :tight t)

  (spaceline-define-segment *macro-recording
    "Show when recording macro"
    (when (and active defining-kbd-macro)
      (powerline-raw
       (format " %s ▶ " (char-to-string evil-this-macro))

                (let ((perc (/ end 0.01 pend)))
                  (cond ((= start 1) ":Top")
                        ((>= perc 100) ":Bot")
                        (t (format ":%d%%%%" perc))))))
            " "))

  (spaceline-define-segment *vc
    "Version control info"
    (when vc-mode
      (concat "⎇ " (substring vc-mode (+ 2 (length (symbol-name (vc-backend buffer-file-name))))))))

  ;; search indicators
  (defface mode-line-count-face nil "")
