Skip to content

Latest commit

 

History

History
83 lines (47 loc) · 4.58 KB

CHANGELOG.md

File metadata and controls

83 lines (47 loc) · 4.58 KB

Changelog

All notable changes to this project will be documented in this file. Note that Perspective was started in 2008 and this log was only added in 2021.

The format is based on Keep a Changelog.

Unreleased

Fixed

  • persp-ibuffer-generate-filter-groups: load ibuf-ext library if needed (#202).

Added

  • persp-kill-other-buffers: kill other buffers in the current perspectives.

[2.18] — 2022-09-20

Added

  • persp-purge-initial-persp-on-save: support for optionally killing all buffers of the initial perspective upon calling perps-state-save, thus treating the initial perspective as a disposable scratch area.
  • persp-add-buffer-to-frame-global: support for special frame-specific "global" perspectives; buffers which they contain will appear in Perspective-aware buffer listings in all perspectives in their containing frames
  • persp-switch-to-scratch-buffer: interactive function to switch to the current perspective's scratch buffer, creating one if missing.
  • persp-forget-buffer: disassociate buffer with perspective without the risk of killing it. This balances persp-add-buffer. Newly created buffers via get-buffer-create are rogue buffers not found in any perspective, this function allows to get back to that state.
  • Support for using Consult's consult-buffer as a Perspective-aware buffer switcher.
  • persp-merge and persp-unmerge: temporarily import buffers from one perspective into another.

Changed

  • Avoid killing the last buffer in a perspective by default (persp-avoid-killing-last-buffer-in-perspective, default t; this was formerly the experimental feature flag persp-feature-flag-prevent-killing-last-buffer-in-perspective which defaulted to nil).
  • Breaking change: (Emacs 28+ only): no longer provide a default persp-mode-prefix-key. It was C-x x in the past, which conflicts with key bindings shipping with Emacs 28. Users of Emacs 28 must now pick their own prefix key. The default remains unchanged for users of Emacs 27 and earlier.
  • persp-remove-buffer: do not kill/remove a perspective's last left buffer.
  • persp-switch-to-buffer*: tag with 'buffer category so Marginalia can add its annotations.
  • persp-other-buffer: rewrite so it respects ignored buffer list.

Fixed

  • persp-new: enable initial-major-mode only if the scratch buffer is in fundamental-mode.
  • persp-new: properly substitute command keys when inserting initial-scratch-message into scratch buffers.
  • persp-new: do not recreate existing perspectives. This prevents from resetting perspectives to a state where in the perspective there's only the scratch buffer.
  • persp-reset-windows: set switch-to-buffer-preserve-window-point to nil before calling delete-window, that up to Emacs 27.2 updates window-prev-buffers of all windows, unless the former is turned off.
  • persp-remove-buffer: force update the current-buffer to the current window's buffer due to with-selected-window saving/restoring the current-buffer when executing it's BODY. This properly updates the current-buffer to what should be the real current buffer when burying the current buffer.
  • persp-activate: force update the current-buffer to the current window's buffer due to make-persp saving/restoring the current-buffer when executing it's BODY. This properly updates the current-buffer to what should be the real current buffer when switching to a new perspective.
  • persp-add-buffer: discard unexisting buffer as argument.
  • Added a workaround for potential problems caused by recursive minibuffer use.
  • Made activating persp-mode repeatedly idempotent (should fix interactive enable-theme invocation bug).

[2.17] — 2021-09-18

Added

  • Improved Helm integration. helm-buffers-list now lists buffers in all perspectives when called with a prefix argument. It also now has actions to add to the current perspective, and to remove buffers from the current perspective.

Changed

  • Rewrote Ivy / Counsel buffer switchers to make better use of the Ivy API. As a result, C-k to kill buffers directly from the switcher now works.

[2.16] — 2021-07-31

Added

  • persp-kill-others
  • Make xref rings perspective-specific (so popping back will not inadvertently jump to a file in a different perspective).
  • Support for grouping buffers by persp-name in ibuffer.

Changed

  • Switched from now-defunct Travis CI to GitHub Actions.

Fixed

  • header-line-format wrangling bug.