All Projects → EricCrosson → unkillable-scratch

EricCrosson / unkillable-scratch

Licence: GPL-2.0 license
Disallow the *scratch* buffer from being killed

Programming Languages

emacs lisp
2029 projects
Makefile
30231 projects

Projects that are alternatives of or similar to unkillable-scratch

sirdez
Glorious Binary Serialization and Deserialization for TypeScript.
Stars: ✭ 20 (+53.85%)
Mutual labels:  buffer
buffertools-php
Toolbox for working with binary and hex data. Similar to NodeJS Buffer.
Stars: ✭ 60 (+361.54%)
Mutual labels:  buffer
books
A collection of online books for data science, computer science and coding!
Stars: ✭ 29 (+123.08%)
Mutual labels:  scratch
CuVec
Unifying Python/C++/CUDA memory: Python buffered array ↔️ `std::vector` ↔️ CUDA managed memory
Stars: ✭ 73 (+461.54%)
Mutual labels:  buffer
sb-edit
Javascript library for manipulating Scratch project files
Stars: ✭ 33 (+153.85%)
Mutual labels:  scratch
lessons
CoderDojo Toronto lessons, worksheets, and exercises. Printable or view online.
Stars: ✭ 23 (+76.92%)
Mutual labels:  scratch
automake
Mirror of git://git.savannah.gnu.org/automake.git
Stars: ✭ 36 (+176.92%)
Mutual labels:  gnu
popc
Popc manager for vim & neovim
Stars: ✭ 17 (+30.77%)
Mutual labels:  buffer
caddy-scratch
Caddy server 2.0.0 / 1.0.5 on Docker Scratch, all in 18MB / 35MB
Stars: ✭ 32 (+146.15%)
Mutual labels:  scratch
core.inc.mk
My utility belt `Makefile` (and my memory belt in docs)
Stars: ✭ 14 (+7.69%)
Mutual labels:  gnu
scratching-forth
A compiler from Forth to Scratch
Stars: ✭ 19 (+46.15%)
Mutual labels:  scratch
cati
Cati Unix Package Manager
Stars: ✭ 19 (+46.15%)
Mutual labels:  gnu
gnuxc
GNU OS Cross-Compiler
Stars: ✭ 13 (+0%)
Mutual labels:  gnu
JABS.nvim
Just Another Buffer Switcher for Neovim
Stars: ✭ 150 (+1053.85%)
Mutual labels:  buffer
libtool
Mirror of git://git.savannah.gnu.org/libtool.git
Stars: ✭ 17 (+30.77%)
Mutual labels:  gnu
RingBuffer
Classic ringbuffer with optional Stream interface
Stars: ✭ 53 (+307.69%)
Mutual labels:  buffer
sharon
A lightweight and modular social sharing library
Stars: ✭ 16 (+23.08%)
Mutual labels:  buffer
ScratchVerifier
Verify Scratch accounts as genuine, for use in authorization or identification.
Stars: ✭ 17 (+30.77%)
Mutual labels:  scratch
vim-backscratch
Small scratches for Vim, feels nice
Stars: ✭ 20 (+53.85%)
Mutual labels:  scratch
c-struct
a binary data packing & unpacking library for node.js
Stars: ✭ 42 (+223.08%)
Mutual labels:  buffer

unkillable-scratch Build Status MELPA Stable MELPA

Disallow the *scratch* buffer from being killed

Install

From MELPA

(use-package unkillable-scratch
  :ensure t
  :pin melpa-stable
  :config (unkillable-scratch t))

Or manually, after downloading into your load-path

(require 'unkillable-scratch)
(unkillable-scratch t)

Use

The variable unkillable-scratch-behavior defines the action taken when a kill is attempted on a buffer matching one or more of the regexp's in the list unkillable-buffers. This list will only match one buffer by default, the *scratch* buffer.

This package treats the *scratch* buffer specially; in the event of a call to kill-buffer the buffer contents will be replaced with initial-scratch-message. To disable this behavior set unkillable-scratch-do-not-reset-scratch-buffer to t.

The following values of unkillable-scratch-behavior are supported

Setting Meaning
'bury bury the buffer instead of killing it (default)
'do-nothing disallow the attempted kill from occurring
'kill kill the buffer -- same as disabling the minor mode

Related

persistent-scratch is definitely worth a look.

Acknowledgments

The inspiration to make the unkillable-buffers list came from Donald Curtis (milkypostman)

Contributors

  • @tarsius for advice on best-practices
  • @djl for the feature to persist *scratch*-buffer contents

Regrets

If I were the type of person to proliferate breaking-changes, I would rename the unkillable-scratch minor-mode to unkillable-scratch-mode for conventions' sake.

Making this change would necessitate re-publishing the package to MELPA and only consume the time of the MELPA maintainers and every user of this package without making any functional changes, so for now just note that said function is enabling a global minor-mode.

License

GPL 2 (or higher) © Free Software Foundation, Inc.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].