;; Author: zk_phi
;; URL: http://hins11.yu-yake.com/
-;; Version: 0.0.0
+;; Version: 0.0.1
;;; Commentary:
;;; Change Log:
;; 0.0.0 test release
+;; 0.0.1 add spray-set-margins
;;; Code:
(make-face 'spray-base-face)
(set-face-attribute 'spray-base-face nil
:background (face-background 'default)
- :foreground (face-foreground 'default))
+ :foreground (face-foreground 'default)
+ :slant 'normal)
(make-face 'spray-orp-face)
(set-face-attribute 'spray-orp-face nil
:foreground "red"
:overline (face-foreground 'default)
- :underline (face-foreground 'default))
+ :underline (face-foreground 'default)
+ :slant 'normal)
;; * internal vars
+(defvar spray--margin-string "")
(defvar spray--base-overlay nil)
(defvar spray--orp-overlay nil)
(defvar spray--running nil)
(defvar spray--saved-buffer-face nil)
(defvar spray--saved-restriction nil)
+;; * utility functions
+
+(defun spray-set-margins (left above)
+ "add margins before/above the spray text. each arguments can be
+an integer or a float value."
+ (setq spray--margin-string
+ (propertize " " 'display `((space-width ,left) (height ,(1+ above))))))
+
;; * the mode
;;;###autoload
(spray-start/stop -1))))
(defun spray--pre-command-handler ()
- (unless (memq this-command
- '(spray-forward-word spray-backward-word spray-start/stop))
+ (unless (string-match "^spray-" (symbol-name this-command))
(spray-mode -1)))
(defun spray--word-at-point ()
(t 0))))
(move-overlay spray--orp-overlay (1- orp) orp)
(move-overlay spray--base-overlay beg end)
- (overlay-put spray--base-overlay
- 'before-string (make-string (- 5 (- orp beg)) ?\s))
+ (overlay-put spray--base-overlay 'before-string
+ (concat spray--margin-string
+ (make-string (- 5 (- orp beg)) ?\s)))
(narrow-to-region beg end)))
(defun spray--update ()