Commit graph

357 commits

Author SHA1 Message Date
Vincent Zhang
9754dbe996 Fix typo. 2018-11-25 03:31:57 +08:00
Vincent Zhang
87f12fa662 Fix #50: Misplaced major mode icon. 2018-11-25 03:26:01 +08:00
Vincent Zhang
613684d383 Fix invalid icon family. 2018-11-25 03:06:34 +08:00
Vincent Zhang
336cab5ed4 Formalize the face of major mode icon. 2018-11-25 01:10:53 +08:00
Vincent Zhang
f244142693 Disable major-mode icons by default due to incorrect icons. 2018-11-25 00:56:48 +08:00
Vincent Zhang
d4973e2bc6 Optimize performance of updating buffer information (~2x faster). 2018-11-24 17:10:32 +08:00
Vincent Zhang
2b5a3b103e Display file icons by default. 2018-11-24 13:19:14 +08:00
Vincent Zhang
229366ffe5 Optimize performance of displaying file icons. 2018-11-24 13:18:33 +08:00
Vincent Zhang
0c9888c5b6 Refactor: Update vcs and flycheck segments. 2018-11-24 13:11:58 +08:00
Vincent Zhang
25fa66bb08 Fix #49: void-function file-local-name in spacemacs.
`file-local-name' is introduced in 25.2.2.
2018-11-24 12:18:41 +08:00
Vincent Zhang
969d001290 Update modeline after refreshing vc state. 2018-11-23 22:36:26 +08:00
Vincent Zhang
34c6f91d36 Fix #48: [Feature] show the icon for major mode.
New variable `doom-modeline-major-mode-icon' to control.
2018-11-23 01:13:52 +08:00
Vincent Zhang
b91e76b383 Fix #47: new style buffer-name, which respects uniquify names. 2018-11-23 00:12:36 +08:00
Vincent Zhang
364f5acb0b Fix: invalid path for remote files. 2018-11-22 05:07:45 +08:00
Vincent Zhang
a7643cf918 Add an indicator of remote host. 2018-11-22 03:59:39 +08:00
Vincent Zhang
d430859bf2 Add the roy-modal indicator. 2018-11-22 03:13:44 +08:00
Vincent Zhang
9acad7f3f4 Fix #46: God-mode indicator. 2018-11-22 02:48:59 +08:00
Vincent Zhang
69f3029c31 Bump version to 0.8.1. 2018-11-20 23:29:04 +08:00
Vincent Zhang
d27c5485ba [Optimize] doom-modeline-buffer-file-name for all truncate styles.
e.g.`truncate-upto-project' is ~5x faster.
    (benchmark-run 1000 (format-mode-line mode-line-format))
    ~0.7s vs ~4s

Also add 2 new styles: `truncate-from-project' and `truncate-except-project'.

Given ~/Projects/FOSS/emacs/lisp/comint.el
  truncate-upto-project => ~/P/F/emacs/lisp/comint.el
  truncate-from-project => ~/Projects/FOSS/emacs/l/comint.el
  truncate-with-project => emacs/l/comint.el
  truncate-except-project => ~/P/F/emacs/l/comint.el

NOTE: `shrink-path-file-mixed' has so BAD performance! Damn it!!!
2018-11-20 23:23:23 +08:00
Vincent Zhang
51ca9570a6 Fix incorrect colors of slash. 2018-11-20 22:28:28 +08:00
Vincent Zhang
345959763b Refactor: use internal variables. 2018-11-20 21:43:06 +08:00
Vincent Zhang
669206d03a Remove redundant slash \ in truncated directory. 2018-11-20 21:26:34 +08:00
Vincent Zhang
a530aaee04 Optimize performance of truncate-with-project style.
`file-truename` is bad performance, so should not used in the crucial function.
2018-11-20 21:24:24 +08:00
Vincent Zhang
700a0107f2 Bump version to 0.8.0. 2018-11-18 04:08:58 +08:00
Vincent Zhang
5fefd185b6 Fix: nil error if the buffer file name doesn't contain directory. 2018-11-18 03:39:35 +08:00
Vincent Zhang
87ee2e7122 Add truncate-with-project style and set it to default. 2018-11-18 03:26:00 +08:00
Vincent Zhang
7f28abb514 Improve faces of the buffer info. 2018-11-18 02:08:51 +08:00
Vincent Zhang
c809e27487 Don't update buffer info if the file doesn't exist. 2018-11-16 02:28:36 +08:00
Vincent Zhang
c7251193bb Fix: flash window number while re-enabling ace-window-display-mode. 2018-11-16 01:45:52 +08:00
Vincent Zhang
9df9260ab3 Fix: flash window number while refreshing this buffer. 2018-11-16 01:37:58 +08:00
Vincent Zhang
489a75ae49 Bump version to 0.7.1. 2018-11-16 01:10:43 +08:00
Vincent Zhang
9701be775c Revert performance optimization for buffer info.
Because the buffer info will be updated in many scenarios and no need to handle
all cases in hooks or advices.
But Keep showing buffer name if it doesn't equal the file name.
2018-11-16 00:53:52 +08:00
Vincent Zhang
f336f37efa Fix #44: Height problems with flycheck-mode on. 2018-11-15 23:32:47 +08:00
Vincent Zhang
6c151e7535
Merge pull request #45 from drrlvn/patch-1
Fix python-mode when executable is nil
2018-11-15 22:38:05 +08:00
Vincent Zhang
ab6ab18bc7 Hide buffer icons in inactive windows. 2018-11-15 17:24:00 +08:00
Dror Levin
82654eb6e0
Fix python-mode when executable is nil
Since executable-find cannot handle a nil argument then doom-modeline-python-executable should not be passed if it is set to nil.
2018-11-15 11:04:33 +02:00
Vincent Zhang
561560dfe5 Watch doom-modeline-buffer-file-name-style to update buffer info. 2018-11-15 16:05:38 +08:00
Vincent Zhang
781ce1b3c2 Only show buffer name in inactive window. 2018-11-15 15:46:23 +08:00
Vincent Zhang
d0c23229ec Optimize: get buffer info. 2018-11-15 14:35:57 +08:00
Vincent Zhang
8cf0646dc0 Remove unnecessary git-timemachine-mode-hook. 2018-11-15 14:13:50 +08:00
Vincent Zhang
a75f6f2ec8 Update buffer file name after renaming a buffer. 2018-11-15 03:40:21 +08:00
Vincent Zhang
09ed39a941 Compatible with git-timemachine. 2018-11-15 03:28:49 +08:00
Vincent Zhang
15a0a8a962 Fallback to buffer name if doom-modeline-buffer-file-name is nil. 2018-11-14 23:03:44 +08:00
Vincent Zhang
ef1ee6357c Show temp buffer name correctly.
That means the buffer exists but the file doesn't.
2018-11-14 22:40:20 +08:00
Vincent Zhang
44542191e6 Remove hacks. 2018-11-14 04:20:49 +08:00
Vincent Zhang
10b16b1386 Don't load doom-modeline after init time. 2018-11-14 04:17:56 +08:00
Vincent Zhang
4f0f761738 Refactor: doom-modeline-update-buffer-file-name. 2018-11-14 03:58:21 +08:00
Vincent Zhang
2b7ee7451f HACK: Compatible with loading `doom-modeline' after init time. 2018-11-14 03:00:21 +08:00
Vincent Zhang
25b04d5c40 Show buffer name if the buffer name doesn't equal the file name.
NOTE: Format: "buffer-file-name[buffer-name]".
Except the same buffer names in different directories.
2018-11-14 01:40:09 +08:00
Vincent Zhang
b6f98e4646 Update the buffer file name after reverting the file. 2018-11-14 01:35:24 +08:00
Vincent Zhang
e075339b2b Optimize performance.
(benchmark-run 1000 (format-mode-line mode-line-format))
From ~2.5s to ~0.5s!!!
2018-11-13 23:23:57 +08:00
Vincent Zhang
97d6b69222 Optimize the performance of getting the file names. 2018-11-13 23:00:39 +08:00
Vincent Zhang
fafdafc122 Format codes. 2018-11-13 19:35:17 +08:00
Vincent Zhang
6d7241050b Optimize project root detection. 2018-11-13 19:22:35 +08:00
Vincent Zhang
24dd81d9d5 Remove debug codes. 2018-11-13 13:29:22 +08:00
Vincent Zhang
813adefbfa Fix #42: refactor doom-modeline-project-root to avoid errors. 2018-11-13 13:24:14 +08:00
Vincent Zhang
f0e882dbe6 Bump version to 0.7.0. 2018-11-12 00:49:52 +08:00
Vincent Zhang
a9847abd3e Support projectile and project. projectile is optional now. 2018-11-12 00:48:20 +08:00
Vincent Zhang
3018171bc9 The project root detection is moved to projectile-ensure-project. 2018-11-11 15:39:48 +08:00
Amin Bandali
31b94e253a
Fix: require subr-x (needed for when-let)
Its absence results in a compile error when using borg-build:

    In toplevel form:
    doom-modeline.el:314:1:Warning: Unused lexical argument ‘key’

    In doom-modeline-set-modeline:
    doom-modeline.el:314:50:Warning: ‘(modeline (doom-modeline key))’ is a
        malformed function
    doom-modeline.el:322:22:Warning: reference to free variable ‘modeline’

    In doom-modeline-set-selected-window:
    doom-modeline.el:390:49:Warning: ‘(win (frame-selected-window))’ is a
        malformed function
    doom-modeline.el:393:41:Warning: reference to free variable ‘win’

    In end of data:
    doom-modeline.el:1249:1:Warning: the function ‘when-let’ is not known to be
        defined.

Which ultimately results in an error disrupting proper startup:

    Invalid function: (modeline (doom-modeline key))
2018-11-10 11:35:47 -05:00
Vincent Zhang
2812b1990f Fix: error while truncate the file without directory information.
Happen while editing org src code blocks. (:file test.py)
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  file-exists-p(nil)
  f-exists\?(nil)
  f-same\?(nil "")
  shrink-path-file-mixed("" nil "test.py")
  doom-modeline--buffer-file-name("test.py" "/Users/xxx/org/test.py" shrink)
  doom-modeline-buffer-file-name()
2018-11-10 17:26:54 +08:00
Evgeni Kolev
865bd6b8f2 Don't try to call anzu functions if anzu isn't installed 2018-11-09 14:44:36 +02:00
Vincent Zhang
1d372f0c82 Bump version to 0.6.1. 2018-11-01 00:11:31 +08:00
Vincent Zhang
81a782b1cb Eliminate compiler warnings. 2018-10-29 23:09:40 +08:00
Vincent Zhang
c60dd1279a Refactor evil-state. 2018-10-29 22:47:34 +08:00
Vincent Zhang
5dfe1deccb Reset anzu status after back to evil normal state. 2018-10-29 21:25:26 +08:00
Vincent Zhang
e3804b60ab Fix: ace-window-display-mode doesn't respect aw-ignore-buffers.
Refer to https://github.com/abo-abo/ace-window/issues/143.
2018-10-28 22:19:55 +08:00
Vincent Zhang
11327006cf Update mode-line after new or delete a frame. 2018-10-28 03:16:31 +08:00
Vincent Zhang
d97080620e Revert "Update mode-line forcely after making a new frame."
This reverts commit 6e30cfad01.
2018-10-28 03:07:54 +08:00
Vincent Zhang
6e30cfad01 Update mode-line forcely after making a new frame. 2018-10-28 02:51:18 +08:00
Vincent Zhang
cb1727d956 Fix: update ace-window parameter for all windows. 2018-10-25 16:57:17 +08:00
Vincent Zhang
c3a3af60b4 Remove warnings for terminal. 2018-10-25 16:21:25 +08:00
Vincent Zhang
ec92922a71 Bump version to 0.6.0. 2018-10-25 16:13:05 +08:00
Vincent Zhang
5aa211cf04 Enable all-the-icons in terminal.
Use doom-modeline-icon to enable/disable icons.
2018-10-25 16:11:03 +08:00
Vincent Zhang
6d9020c428 Refactor: window numbers of winum. 2018-10-25 00:56:09 +08:00
Vincent Zhang
9ca4edf710 Clean warnings. 2018-10-24 18:17:02 +08:00
Vincent Zhang
aa0e36fd66 Eliminate warnings. 2018-10-24 18:14:08 +08:00
Vincent Zhang
3d3c5c36c5 Support window numbers of ace-window-display-mode. 2018-10-24 16:23:07 +08:00
Vincent Zhang
bbda508825 Ignore winum operations for mode-line. 2018-10-24 15:38:44 +08:00
Pengji Zhang
7e6b895206 Fix an issue that may cause rhs disappeared
If the first element of a list is a symbol, the list will be a
conditional depending on the value of that symbol.
2018-10-19 17:33:18 -04:00
Vincent Zhang
1fd66c449c Reset anzu state when isearch is done. 2018-10-18 02:27:14 +08:00
Pengji Zhang
1a2226b242 Stop byte-compiling modeline format functions
Otherwise there will be a bunch of `Unused lexical var` warnings if
the file is not byte-compiled beforehand.
2018-10-17 12:03:29 -04:00
Vincent Zhang
ce206c5a7a Bump version to 0.5.1. 2018-10-15 20:32:28 +08:00
Vincent Zhang
9337faed5b Optimize: cache project root.
Refer to https://github.com/seagle0128/doom-modeline/issues/32.
2018-10-15 20:30:22 +08:00
Vincent Zhang
d8878379bc Update vcs faces. 2018-10-07 12:26:29 +08:00
Vincent Zhang
90ec30d868 Bump version to 0.5.0. 2018-10-01 23:14:48 +08:00
Vincent Zhang
9bb4a71ff8 Fix: focus-in-hook and focus-out-hook are obsolete in Emacs27.
Use after-focus-change-function instead of them as suggestion.
2018-10-01 23:13:23 +08:00
Vincent Zhang
8d6aba5b4d Merge branch 'master' of https://github.com/seagle0128/doom-modeline 2018-10-01 16:24:09 +08:00
Vincent Zhang
08b7d7621f Update faces of window and workspace numbers. 2018-09-30 21:42:41 +08:00
Vincent Zhang
e0acf3863d Refactor segment and modeline definitions. 2018-09-30 18:06:32 +08:00
Vincent Zhang
b70235290d Fix: inactive bar face.
DO NOT use :inverse-video in this face since face-background gets invalid color
from :reverse-video faces.
2018-09-30 17:02:27 +08:00
Vincent Zhang
677dc9ab2c Update workspace face. 2018-09-30 16:45:59 +08:00
Vincent Zhang
266cedffa9 Improve major-mode segment: add menus for major/minor modes. 2018-09-30 15:16:44 +08:00
Vincent Zhang
cd07d77c9f Update faces of windown numbers. 2018-09-30 00:23:07 +08:00
Vincent Zhang
671553d18d Put the bar to the left. 2018-09-29 22:58:24 +08:00
Vincent Zhang
fde317e967 Adjust mode-line height (25) and bar width (3). 2018-09-29 22:46:16 +08:00
Vincent Zhang
7f86ec193d Revert "Improve major-mode segment: add menus for major/minor modes."
This reverts commit c5739f3f14.
2018-09-29 19:21:19 +08:00
Vincent Zhang
c5739f3f14 Improve major-mode segment: add menus for major/minor modes. 2018-09-29 19:09:14 +08:00
Vincent Zhang
e4605cd361 Fix #30: adjust mode-line bars with font size. 2018-09-29 17:14:43 +08:00
Vincent Zhang
52243514af Fix #31: support input-method. 2018-09-28 16:31:33 +08:00
Vincent Zhang
92b5bf5c79 Fix #29: Handle project root is nil.
Exception: (wrong-type-argument stringp nil)
2018-09-26 17:20:04 +08:00
Vincent Zhang
f7a573906d Update vc state on modeline while selecting the window.
This might address this issue:
Modeline VC branch name not updating on magit-checkout.
In doom-modeline, only show vc state in active window, so
it makes sense to update vc state while selecting the
window, and it won't bring performance issue.

Refer to:
https://github.com/hlissner/doom-emacs/issues/826
3d8e81b7e1
2018-09-25 00:05:01 +08:00
Vincent Zhang
b020f8b0a7 Merge 712b775f36 (diff-0ce4da53ad0195d3b7cf5888417057de). 2018-09-24 22:56:57 +08:00
Vincent Zhang
a22a895b7b Fix: invalid shrinked file path when the file is not in a project.
Refer to
https://emacs-china.org/t/doom-modeline-doom-emacs-mode-line/6742/34?u=seagle0128.
2018-09-24 22:39:36 +08:00
Vincent Zhang
299ef87829 Update modeline while refreshing vc. 2018-09-24 21:41:10 +08:00
Vincent Zhang
c3b3f802e4 Fix: missing doom-modeline-project-root-dir face. 2018-09-24 17:55:19 +08:00
Vincent Zhang
d3248df48e Disable projectile mode-line segment.
Merge 7acece3e0b (diff-7c3c39ae74345187bff045ab23ca05bd)
2018-09-24 17:31:45 +08:00
Vincent Zhang
3d8e81b7e1 Delete doom-modeline-magit-post-refresh due to the performance issue.
Workaround:
Revert the buffers manually.
(setq auto-revert-check-vc-info t) brings the same performance issue.

Refer to:
https://github.com/magit/magit/issues/2687
https://magit.vc/manual/magit/The-mode_002dline-information-isn_0027t-always-up_002dto_002ddate.html
2018-09-21 00:40:48 +08:00
Vincent Zhang
32963f4d29 Set default height to 23. 2018-09-18 00:09:43 +08:00
Vincent Zhang
8c982b8c30 Fix #27: Visual block modeline indicator not shown. 2018-09-17 23:58:31 +08:00
Vincent Zhang
54c2824125 Slightly change evil-state. 2018-09-11 17:41:00 +08:00
Vincent Zhang
dcb106fb5f Fix: don't use doom-modeline-error which is defined in doom-themes. 2018-09-11 17:33:39 +08:00
Vincent Zhang
bc06fadfc7 Update package description. 2018-09-11 00:38:31 +08:00
Vincent Zhang
ac186eb7d2 Use when-let instead of when-let* since it's kept in Emacs 26.1. 2018-09-10 23:00:26 +08:00
Vincent Zhang
ac0372958b Show process status in all buffers. 2018-08-31 03:51:04 +08:00
Vincent Zhang
ad7c7ae7e4 Minor fix format. 2018-08-29 00:16:26 +08:00
Vincent Zhang
be0461a68c Minor fix for compatibility. 2018-08-28 23:54:03 +08:00
Vincent Zhang
4ef58cdba6 Minor fix main. 2018-08-27 00:12:13 +08:00
Vincent Zhang
2ff2ab757c Update comments. 2018-08-23 11:28:01 +08:00
Vincent Zhang
8ffa338004 Silent warnings. 2018-08-23 11:26:45 +08:00
Vincent Zhang
c800b62a19 Show perl version in the modeline. 2018-08-23 11:05:45 +08:00
Vincent Zhang
558ca30cdd
Merge pull request #20 from akash-akya/elixir-version
Show Elixir version in the modeline
2018-08-23 10:37:41 +08:00
Vincent Zhang
652bd78f15
Merge pull request #21 from akash-akya/multiple-cursors
Show multiple cursors count in the modeline panel
2018-08-23 10:37:00 +08:00
Dickby
f27c4fe194
Update doom-modeline.el 2018-08-23 01:58:44 +02:00
akash-akya
f9257e6c41 Show multiple cursors count in the modeline panel 2018-08-22 23:54:30 +05:30
akash-akya
86658d9f72 Show elixir version in the modeline 2018-08-22 23:50:50 +05:30
Vincent Zhang
4f95702d7f Silent warnings. 2018-08-23 00:49:08 +08:00
Andy White
e8fc2e86b8 Add faces for evil indicator 2018-08-21 18:32:27 -04:00
Roman Kolesnikov
f1a22c1c90
Add variable for the python-version 2018-08-16 18:49:02 +02:00
Vincent Zhang
079762c85b Optimize loading performance of mode-line. 2018-08-16 11:45:26 +08:00
Vincent Zhang
1adcc1f9a9 Better looks for window numbers. 2018-08-15 01:02:50 +08:00
Vincent Zhang
79bfab380c Assign main mode-line to special buffers ("*scratch*" "*Messages*"). 2018-08-14 21:39:59 +08:00
Vincent Zhang
74c84537bd Fix: incorrect anzu display. 2018-08-14 17:35:36 +08:00
Vincent Zhang
aee0ad0994 Change mode-line height to 29. 2018-08-14 17:20:14 +08:00
Vincent Zhang
bd36eb9a98 Only show vcs and flycheck states in current window. 2018-08-14 15:40:13 +08:00
Vincent Zhang
176307f66c Fix: remove anzu default mode-line. 2018-08-14 10:57:16 +08:00
Vincent Zhang
c48459b7c8 Improve vcs faces on mode-line. 2018-08-14 01:13:09 +08:00
Vincent Zhang
71694224c6 Bump version to 0.4.0. 2018-08-14 00:32:34 +08:00
Vincent Zhang
ec11fef2a5 Fix #17: Undefined variable evil-ex-start-word-search. 2018-08-14 00:30:49 +08:00
Vincent Zhang
aa25e7b143 Set special buffers ("*scratch*" "*Messages*"). 2018-08-14 00:28:45 +08:00
Vincent Zhang
051528a52a Fix iedit subst. 2018-08-13 23:04:36 +08:00
Vincent Zhang
71c5047d3b Remove unused codes for evil-anzu. 2018-08-13 22:55:45 +08:00
Vincent Zhang
69e3f08d5b Fix when-let* for Emacs 25. 2018-08-13 22:03:57 +08:00
Vincent Zhang
415140b368 Fix: display anzu in mode-line. 2018-08-13 21:57:27 +08:00
Vincent Zhang
d9c49ac962 Port and refactor codes. 2018-08-13 19:00:39 +08:00
Vincent Zhang
c89048b529 Only enable process segment in the active window. 2018-08-13 11:01:08 +08:00
Vincent Zhang
82cca4bd57 Update package description. 2018-08-13 00:32:43 +08:00
Vincent Zhang
cbddf23923 Fix #16: [Feature] process segment. 2018-08-13 00:14:32 +08:00
Vincent Zhang
c7ec4dbe8f Add bar back since it impacts height of mode-line. 2018-08-12 02:42:05 +08:00
Vincent Zhang
7a4a275fce Bump version to 0.3.0. 2018-08-12 01:51:52 +08:00