Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cofi/evil-numbers

Increment and decrement numbers in Emacs
https://github.com/cofi/evil-numbers

Last synced: 2 months ago
JSON representation

Increment and decrement numbers in Emacs

Awesome Lists containing this project

README

        

* Evil Numbers
- Increment / Decrement binary, octal, decimal and hex literals

- works like C-a/C-x in vim, i.e. searches for number up to eol and then
increments or decrements and keep zero padding up (unlike in vim)

- When a region is active, as in evil's visual mode, all the
numbers within that region will be incremented/decremented (unlike
in vim)

** Detected Literals
- binary, e.g. =0b0101=, =0B0101=
- octal, e.g. =0o755=, =0O700=
- hexadecimal, e.g. =0xDEADBEEF=, =0XCAFE=

** Install
Put in =load-path=, =(require 'evil-numbers)= and bind, for example:

#+BEGIN_SRC emacs-lisp
(global-set-key (kbd "C-c +") 'evil-numbers/inc-at-pt)
(global-set-key (kbd "C-c -") 'evil-numbers/dec-at-pt)
#+END_SRC

or only in evil's normal state:

#+BEGIN_SRC emacs-lisp
(define-key evil-normal-state-map (kbd "C-c +") 'evil-numbers/inc-at-pt)
(define-key evil-normal-state-map (kbd "C-c -") 'evil-numbers/dec-at-pt)
#+END_SRC

For window system users the keypad =+= and =-= present an alternative that can be
directly bound without shadowing the regular =+= and =-=:

#+BEGIN_SRC emacs-lisp
(define-key evil-normal-state-map (kbd "") 'evil-numbers/inc-at-pt)
(define-key evil-normal-state-map (kbd "") 'evil-numbers/dec-at-pt)
#+END_SRC

** Usage
Position cursor on literal and play with your numbers!

** Known Bugs
See http://github.com/cofi/evil-numbers/issues

** Contributors
- Matthew Fidler
- Michael Markert