Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/erickgnavar/cloak-mode
A minor mode to hide sensitive values in buffers per major mode
https://github.com/erickgnavar/cloak-mode
emacs emacs-lisp
Last synced: 2 months ago
JSON representation
A minor mode to hide sensitive values in buffers per major mode
- Host: GitHub
- URL: https://github.com/erickgnavar/cloak-mode
- Owner: erickgnavar
- License: gpl-3.0
- Created: 2022-10-08T17:55:20.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2023-01-30T06:14:57.000Z (about 2 years ago)
- Last Synced: 2024-04-14T14:43:40.641Z (10 months ago)
- Topics: emacs, emacs-lisp
- Language: Emacs Lisp
- Homepage:
- Size: 424 KB
- Stars: 18
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Cloak-mode
[![MELPA](https://melpa.org/packages/cloak-mode-badge.svg)](https://melpa.org/#/cloak-mode)
Minor mode to cloak sensitive data
## Motivation
I used to use `hidepw` package but it only supports a plain list of regexs and also use font locking which have some conflicts with other packages, `cloak-mode` allows to setup a regex by major mode, which fits betters for my use case.
## Demo
![demo](./demo.gif)
## Installation
### Cloning the repo
Clone this repo somewhere, and add this to your config:
```elisp
(add-to-list 'load-path "path where the repo was cloned");; for example we load it for envrc files
(require 'cloak-mode)
(setq cloak-mode-patterns '((envrc-file-mode . "[a-zA-Z0-9_]+[ \t]*=[ \t]*\\(.*+\\)$")))
(global-cloak-mode)
```### Using use-package
```emacs-lisp
(use-package cloak-mode
:ensure t
:config
(global-cloak-mode))
```### Using straight.el
```emacs-lisp
(use-package cloak-mode
:straight (cloak-mode
:type git
:host github
:repo "erickgnavar/cloak-mode")
:config
(global-cloak-mode))
```## Examples
### Single pattern per mode
In case we need just one pattern we can define directly as a string
```elisp
(setq cloak-mode-patterns '((envrc-file-mode . "[a-zA-Z0-9_]+[ \t]*=[ \t]*\\(.*+\\)$")))
```### Many patterns per mode
In case we need many patterns we can define a list of strings
```elisp
(setq cloak-mode-patterns '((envrc-file-mode . ("first-pattern" "second pattern"))))
```