diff options
Diffstat (limited to 'clojure/wordmonger/styled-text.clj')
-rw-r--r-- | clojure/wordmonger/styled-text.clj | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/clojure/wordmonger/styled-text.clj b/clojure/wordmonger/styled-text.clj new file mode 100644 index 0000000..6a74d0b --- /dev/null +++ b/clojure/wordmonger/styled-text.clj @@ -0,0 +1,20 @@ +(defn append-styled-text [styled-text text {:keys [fg style] + :or {style SWT/NORMAL}}] + (.append styled-text text) + (let [new-offset (.getCharCount styled-text) + length (min new-offset (.length text)) + start (max 0 (- new-offset length)) + style-range (new StyleRange start length fg nil style)] + (println length new-offset start) + (when (pos? length) + (doto styled-text + (.setStyleRange style-range) + (.setCaretOffset new-offset))))) + +(comment + (defn mode-line-prompt [] + (doto *minibuffer* + (.setText "") + (append-styled-text "M-x " {:fg (color "blue")}) + (.setFocus)))) + |