-
-
Save apg/1147620 to your computer and use it in GitHub Desktop.
orbitz erc-minor-mode has been revived!!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;; orbitz Mode | |
;; Need to add the ERC hook in emacs for it to work: | |
;; (add-hook 'erc-send-pre-hook 'erc-maybe-orbitz) | |
(define-minor-mode erc-orbitz-mode | |
"Toggle automatic orbitzing everything you type in ERC." | |
nil " orbitz") | |
(defun erc-maybe-orbitz (ignore) | |
"Change the text to orbitz text, if `erc-orbitz-mode' is non-nil." | |
(when (and erc-orbitz-mode (> (length str) 2)) | |
(with-temp-buffer | |
(insert str) | |
(orbitz-region (point-min) (point-max)) | |
(setq str (buffer-string))))) | |
(defun orbitz-random-forward-chars (fixed r) | |
(let ((i (+ (point) fixed (random r)))) | |
(when (<= i (- (point-max) 2)) | |
(goto-char i)))) | |
(defun orbitz-region (beg end) | |
"Transform the buffer into orbitz text." | |
(interactive "r") | |
(save-excursion | |
(let ((starting-buffer (current-buffer))) | |
(set-buffer (get-buffer-create "orbitz-temp")) | |
(insert-buffer-substring starting-buffer beg end) | |
(beginning-of-buffer) | |
(while (orbitz-random-forward-chars 2 15) | |
(transpose-chars 1)) | |
(set-buffer starting-buffer) | |
(delete-region beg end))) | |
(insert-buffer "orbitz-temp") | |
(kill-buffer "orbitz-temp")) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment