* Changelog *Legend:* + [ ] Unfinished + [-] Work-in-progress + [X] Complete ** Planned [11/76] + [0/14] Potential plugins + [ ] completion/ivy: [[https://github.com/yevgnen/ivy-rich][ivy-rich]], possible replacement for my ivy-buffer modifications (undecided) + [ ] app/present: [[https://github.com/larstvei/Focus][focus]], for presenting code + [ ] [[https://github.com/emacs-lsp/lsp-mode][lsp-mode]]: client for MS Language Server Protocol, keep an eye on this + [ ] lang/javascript: [[https://github.com/NicolasPetton/Indium][indium]] (IDE), keep an eye on this + [ ] lang/javascript: [[https://github.com/codesuki/add-node-modules-path][add-node-modules-path]] (adds node_modules to ~exec-path~) + [ ] lang/javascript: [[https://github.com/lbolla/emacs-flycheck-flow][flycheck-flow]] (Flow support for JS) + [ ] lang/org: [[https://github.com/Malabarba/latex-extra][orgit]] (org links to magit buffers) + [ ] lang/org: [[https://github.com/jkitchin/org-ref][org-ref]] (bibtex/citation helper) + [ ] lang/org: [[https://github.com/tashrifsanil/org-easy-img-insert][org-easy-img-insert]] + [ ] lang/latex: [[https://github.com/Malabarba/latex-extra][latex-extra]] (utility commands) + [ ] lang/latex: [[**https://github.com/jsinglet/latex-preview-pane][latex-preview-pane]] + [ ] lang/julia: [[ https://github.com/dennisog/julia-shell-mode][julia-shell]] (unsure if better than inferior-julia in julia-mode) + [ ] lang/python: [[https://github.com/Wilfred/pyimport][pyimport]] + [ ] An image plugin for zooming images at point (maybe [[https://github.com/mhayashi1120/Emacs-imagex][emacs-imagex]]) + [0/4] New modules + [ ] app/finance (ledger + org-mode) + [ ] app/irc + [-] app/crm + [-] app/write + [11/58] Add README.org's (with working babel blocks?) to modules (see [[modules/lang/go/README.org][lang/go/README.org]]) to replace bootstaps + [0/9] :tools + [ ] dired + [ ] electric-indent + [ ] eshell + [ ] gist + [ ] macos + [ ] rotate-text + [ ] term + [ ] tmux + [ ] upload + [5/25] :lang + [ ] assembly + [X] cc + [ ] crystal + [ ] csharp + [ ] data + [ ] emacs-lisp + [X] go + [X] haskell + [ ] java + [ ] javascript + [ ] julia + [ ] latex + [ ] lua + [ ] markdown + [ ] org + [X] php + [ ] python + [X] rest + [ ] ruby + [ ] rust + [ ] scala + [ ] sh + [ ] swift + [ ] typescript + [ ] web + [1/10] :feature + [ ] debug + [X] eval + [ ] evil + [ ] file-templates + [ ] jump + [ ] snippets + [ ] spellcheck + [ ] syntax-checker + [ ] version-control + [ ] workspaces + [2/5] :ui + [X] doom + [ ] doom-dashboard + [X] doom-modeline + [ ] doom-quit + [ ] hl-todo + [2/4] :completion + [X] ivy + [X] company + [ ] ido + [ ] helm + [1/5] :app + [X] email + [ ] write + [ ] rss + [ ] twitter + [ ] present ** 2.0.3 [55/83] + [2/3] Finish module :: feature/jump (go-to-definition that just works) + [ ] automatic tag generation + [X] global tags support + [X] Fix fallback chain (xref => dumb-jump => ag/rg (?)) + [1/13] New module :: tools/regex (PCRE IDE) + [X] perl backend + [-] replace support + [-] highlight replaced segments + [0/7] export-to-code feature + [ ] search+replace support + [ ] python exporter (use ~re~ or ~regex~) + [ ] php exporter (~preg_(match(_all)?|replace)~) + [ ] ruby exporter (~%r[.+]~) + [ ] javascript (node) exporter (~/.+/.test(...)~) + [ ] C exporter (~regex.h~ + ~regcomp~) + [ ] C++ exporter (~regex reg(regexp, ...)~) + [ ] syntax highlighter for ~+regex-mode~ (plus make it a major mode) + [ ] README.org + [ ] Optimize: use ~make-process~ daemon instead of ~call-process~ + [3/9] lang/org + [ ] drag-drop image attachment (org-download) and central storage + [ ] unified export system + [ ] better shackle + org-agenda integration + [ ] fix janky visual line motions (~evil-next-visual-line~, etc) + [-] fix janky cursor positioning when manipulating org-table cells + [-] certain characters/keys--when typed in a table--cause the cell to shrink (likely cause: smartparens pairs & custom SPC/BKSPC binds) + [X] Fix M-RET in plain lists not preserving indent level for new items + [X] don't move cursor when toggling folds + [X] don't move cursor when realigning org tables + [ ] feature/workspaces: don't save session if session is already blank + [ ] bin/org-alert: cron script that scans TODOs in org files and dispatches system alerts + [ ] tools/upload: add ~+upload/open-remote-file~ command to open current file on the remote (with TRAMP) + [-] core-ui: replace (or fix) ~winner-mode~ (too unreliable with shackle) + [ ] Generalize ~doom-visual-bell~ by basing its background off a face + [ ] ui/doom-modeline: extend ~media-info~ segment for other media + [ ] Fix invisible buffer-info segment in modeline for terminal Emacs + [ ] ui/doom-modeline: fix ~0/0~ display in modeline (leftover anzu state) + [ ] lang/php: automatic+async rebuild of tags (phpctags) + [X] Replace org-bullets source with more up-to-date fork + [X] Extract ~mode-name~ setters to ~doom-ui-mode-names~ in core/core-ui + [X] nav-flash: blink on focus-in + [X] Add ~:textobj~ keyword to ~map!~ + [X] Make ~doom-refresh-packages~ async + [X] lang/emacs-lisp: omit macro forms from imenu index + [X] Switch back to nlinum #ui + [X] Revise keybinding design; perhaps something SPC oriented (like spacemacs) + [X] Write ~describe-module~ for DOOM modules. + [X] Write ~describe-setting~ for ~def-setting!~ definitions. + [X] evil-mc: add ~:mc~ ex command + [X] evil-mc: add visual-block support for making cursors + [X] evil-mc: replace ~evil-multiedit~ with ~evil-mc~ (?) + [X] feature/jump: recenter + blink after dumb-jump + [X] lang/haskell: add ~company-ghc~ completion support + [X] core-popup: stop on first ~+evil-esc-hook~ hook to return non-nil + [X] lang/php: add company-php + [X] Add :lookup ex command (~+jump:online~) + [X] Add :gblame ex command (~magit-blame~) + [X] Add :grevert ex command (~git-gutter:revert-hook~) + [X] Enable which-key popups for all keys + [X] Add bin/doctor to help diagnose potential environment issues + [X] Get rid of ~def-bootstrap~ and ~doom-bootstrap~; it's a clumsy system + [X] Use Secure HTTPS sources for package.el & verify with trust root CAs + [X] Test ~package-autoremove~ (replaced it with ~doom/packages-autoremove~) + [X] tools/gist: make new gists private by default + [X] feature/evil: make ~d~ operator invoke ~wgrep-mark-deletion~ in wgrep buffers + [X] feature/version-control: improve magit+shackle integration; open links in same popup + [X] ui/doom: fix over-aggressive nav-flash'ing on evil-multiedit or in eshell/term buffers + [X] core-os: don't use GTK tooltips (ugly!) + [X] ui/doom-modeline: reduce excess whitespace on right of flycheck segment + [X] ui/doom-modeline: slightly darker color for git segment (when clean) + [X] feature/evil: fix stringp error caused by unintialized state in hideshow + [X] feature/evil: extend ~evil-escape~ +to ~evil-multiedit-insert-state~+ + [X] feature/evil: new code folding system + [X] Load ~custom-file~ + [X] feature/evil: fix evil-multiedit M-d bindings + [X] map!: fix ~:after~ and ~:map*~ properties + [X] Fix crash in ~doom-update-package~ caused by unreachable dependencies + [X] ui/doom: improve nav-flash integration + [X] core-popups: properly persist ~popup~ window parameter between sessions + [X] core-popups: remove ~:noclone~: simply don't try to clone unreal buffers + [X] completion/ivy: flexible column width for ~+ivy/tasks~ + [X] lang/emacs-lisp: activate flycheck-mode in non-emacs.d files + [X] Fix evil normal-mode keybindings in help-mode popups + [X] Fix help-mode links opening new popups #ui Added ~:noclone~ property to popup rules + [X] Different faces for buffer path and file name #ui + [X] Switch from nlinum => linum #ui + [X] [[https://github.com/syl20bnr/vi-tilde-fringe][vi-tilde-fringe]]: subtle, vim-ish empty-line indicator #ui ** 2.0.2 [66/66] + [X] Update screenshots + [X] ui/doom: polish git-gutter fringe bitmaps (deleted bitmap appears truncated) + [X] send-to-REPL workflow: does it still work? (see ~:repl~ & ~+eval/repl-send-region~) + [X] completion/ivy: restore ag searching (for compressed files) Now ~:ag~, ~:rg~, ~:agcwd~ and ~:rgcwd~ + [X] ~add-transient-hook!~: add support for appending + [X] lang/org: fix org-checkbox-statistics-(todo|done) not respecting underlying faces + [X] Make ~:cleanup~ support a BANG modifier (to span workspaces) + [X] Rewrote ~:mv~ and ~:rm~ + [X] completion/ivy: fix ~+ivy:find-file~ -- loss of functionality with coerced literal searches (better to escape regex rather than pass -F to rg) + [X] completion/ivy: refactor ~def-counsel-action!~ +into a setting (~def-setting!~)+ Refactored into ~ivy-do-action!~ macro instead + [X] completion/ivy: refactor ag-open-in-other-window (messy/hackish) Now ~+ivy-git-grep-other-window-action~ + [X] Fix ~+eval/region~ failing only on first invocation. Caused by ~+eval-runners-alist~ not being populated until quickrun is loaded. + [X] Fix: Neotree forgets it's a neotree window when switching perspectives + +Restore neotree state on perspective switch+ + +Or close neotree before switching/creating perspectives+ + Or hand neotree window management off to shackle + [X] feature/version-control: add [[https://github.com/sshaw/git-link][git-link]] (replacement for browse-at-remote) + [X] feature/version-control: add [[https://github.com/pidu/git-timemachine][git-timemachine]] (replacement for vc-annotate) + [X] completion/ivy: replace the_silver_searcher (ag) with ripgrep (rg) (counsel-ag => counsel-rg) + [X] Merge evil-mc workflow with evil-multiedit's (~M-d~ / ~M-D~) + [X] Add evil-mc plugin (with help from gilbertw1) + [X] Add tools/gist (gist.el) + [X] Fix ~show-paren-mode~ overlays conflicting with org-indent (causes flickering) + [X] Fix ~M-z~, ~C-u~ and ~C-w~ in ~org-store-link~ & ~org-insert-link~ prompts Should undo, delete-line, and delete-word, respectively. Instead, they fall back to vanilla commands. + [X] Prevent 'buffer is read-only' messages while in minibuffer + [X] completion/ivy: replace Ag with RipGrep + [X] Detect & load \~/.emacs.local.el, if available + [X] lang/org: fontify items with all subitems done, e.g. ~+ [0/0] headline~ + [X] lang/org: fontify checked-checkbox items the same way DONE headlines are + [X] lang/org: by default, unfold level 1 on startup (keep rest folded) + [X] Fix lack of syntax highlighting in ~:x~ scratch buffer + [X] Fix modeline disappearing due to loss of state (~doom--modeline-format~ being killed on major mode change) + [X] lang/web: fix HTML encode/decode entities commands + [X] Fix ~+vcs/git-browse~ & ~+vcs/git-browse-issues~ + [X] lang/org: bin/org-capture shell script + [6/6] lang/org babel support for + [X] rust + [X] restclient + [X] sql + [X] google translate + [X] haskell + [X] go + [X] lang/python: add ipython detection & REPL support + [X] TAB autocompletion in comint/repl buffers + [X] Fix Emacs daemon compatibility The config assumes a frame will be visible on startup, causing errors when Emacs is launched as a daemon. + [X] ~ace-maximize-window~ is obsolete + [X] Fix whitespace adjustment in highlight-indentation-current-column-mode + [X] Toggle-able "pretty" mode for org-mode Sometimes, fontification (like prettified entities or hidden regions) make editing difficult. Make this toggleable. + [X] Simplify matchit key (%) in python It prioritizes jumps between if-else and other blocks over brackets. Annoying! + [X] Fix over-eager ESC killing popups + [X] Refactor out s.el dependency + [X] Use sharp-quote for functions (make byte-compiler more helpful) + [X] feature/workspaces: separate main workspace from nil persp + [X] Stop Projectile & git-gutter from choking Emacs in TRAMP buffers + [X] Achieve vim parity w/ file modifiers (~+evil*ex-replace-special-filenames~) + [X] Fix ~:x~ ex command (open scratch buffer) + [X] Colored output from package management commands + [X] ~message!~ & ~format!~ (doom messaging system) Prints to a DOOM message buffer in interactive sessions, and to stdout (w/ ansi codes) in noninteractive sessions. + [X] Make ~+doom-folded-face~ more subtle + [X] tools/term (term/multi-term support) + [X] completion/ivy: escape regexp on ~:ag~ search + [X] app/twitter + [X] Fix + refactor tools/tmux library (out of date)bug: + [X] lang/cc: integrate counsel-ivy into irony-mode + [X] lang/javascript: improve electric indent for js2-mode & rjsx-mode + [X] On doom/recompile, aggresively recompile core.el to fix load-path inconsistencies + [4/4] app/email + [X] mbsync => offlineimap + [X] visual-mode multiple-marking in mu4e headers buffer + [X] native trash mark causes duplicates? + [X] native refile incompatible with gmail's archive ** 2.0.1 [72/72] + [X] Fix ~doom-kill-process-buffers~ not killing process buffers + [X] Fix ~hippie-expand~ in ex mode/the minibuffer + [X] lang/{javascript,cc}: fix empty ~buffer-file-name~ in ~magic-mode-alist~ + [X] lang/{javascript,web}: add html/js/css reformatting (web-beautify) + [X] Fix org-export + shackle integrationui: + [X] app/rss: hide modeline in listing window + [X] feature/eval: fix code-build system + [X] Add .travis.yml + [X] yasnippet: don't hijack TAB in other modes + [X] private bindings: don't hijack TAB in magit + [X] lang/org: add +notes submodule + [X] Add unit-tests + [X] Remove unnecessary ~provide~'s in core autoloaded libraries + [X] Fix ~doom-buffers-in-mode~ + [X] ~+evil:file-move~: don't error if save-place-mode is disabled + [X] ~doom/backward-delete-whitespace-to-column~: fix out-of-bounds error + [X] Remove references to doom/append-semicolon; use evil append mode instead + [X] Add module bootstrapping mechanism (for installing external dependencies) See ~doom-bootstrap~, ~make bootstrap~ and ~def-bootstrap!~ + [X] TRAMP: use ~doom-local-dir~ for temp files + [X] Add ~doom/recompile~ + [X] highlight-indent-guides-mode => highlight-indentation-mode Former won't display indent guides on blank lines, even with my whitespace injection hook. + [X] Recognize package.json as a project root file + [X] ~def-project-mode!~: fix :files property + [X] Add ~doom/compile-lite~ and ~make compile-lite~ + [X] delete-trailing-whitespace: don't affect current line + [X] lang/ruby: detect {Pod,Puppet,Berks}file support + [X] lang/cc: fix irony-mode initialization in cc modes + [X] core-os: don't cache exec-path too aggressively + [X] xref integration for javascript (xref-js2) & emacs-lisp + [X] Update lang/haskell (and add dante) + [X] Add feature/jump + [X] Replace beacon with nav-flash + [X] Fix ~remove-hook!~ macro + [X] lang/latex: improve auctex+reftex config + [X] ui/doom: improve doom-buffer-mode heuristics + [X] ui/doom-dashboard: fix max-specpdl-size error on macos + [X] Add app/rss + [X] Made ~doom-real-buffer-p~ flexible w/ ~doom-real-buffer-functions~ + [X] Fix duplicates in package management retrieval functions + [X] Rewrite feature/eval + [X] Rewrite ui/doom-modeline + [X] lang/org: fix ~+org/dwim-at-point~, ~+org/insert-item~ & ~+org/toggle-checkbox~ + [X] New macro: ~add-transient-hook!~ + [X] Add core/autoload/memoize library for defining memoized functions + [X] core-popups: set default :align and :select shackle properties + [2/2] feature/workspaces + [X] Rer-project perspectives (projectile integration) + [X] Per-frame perspectives + [3/3] Update lang/go + [X] Autocompletion (gocode + company-go) + [X] REPL support (gore) + [X] Code navigation with go-guru + [2/2] feature/snippets + [X] Support nested snippets + [X] Fix snippet aliases (~%alias~) + [7/7] lang/javascript + [X] Add jsx support (rjsx-mode) + [X] Fix ~doom/newline-and-indent~ for rjsx-mode + [X] Remove electric < in rjsx-mode + [X] Enable emmet-mode in rjsx-mode + [X] Have tern use projectile for project detection + [X] Add ~skewer-mode~ + [X] Add +javascript-gulp-mode + [5/5] lang/web + [X] Add +css/toggle-inline-or-block command + [X] Remove +web-bower-mode (I don't use it anymore) + [X] Improve +web-angularjs-mode detection + [X] Add ~+web-react-mode~ + [X] Improve +web-react-mode detection + [4/4] app/present + [X] reveal.js support (& org-mode integration) + [X] emacs for slide presentations (org-tree-slides) + [X] big-mode (toggleable large-fonts) + [X] impatient-mode + [2/2] app/email + [X] Mail through smtp + [X] Basic mu4e setup + [2/2] feature/workspaces + [X] Fix +workspace/kill-session + [X] Don't silence when saving (not important enough) ** 2.0.0 [8/8] + [X] lang/org: TAB = dwim + [X] Improve ~:todo~ + [X] Conform defuns to naming conventions + [X] Reduce interactive autoloaded defuns + [X] feature/jump: code navigation system (xref, dumb-jump) + [X] Enable flyspell correction popups + [X] Replace workgroups2 with persp-mode + [X] Add tools/upload