Overview
Comment: | Add sbbs-format-word-at-point user option |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | master | trunk |
Files: | files | file ages | folders |
SHA3-256: |
4d43170777cf046c123096c3d8e16caf |
User & Date: | zge on 2022-01-24 09:22:48 |
Other Links: | branch diff | manifest | tags |
Context
2022-01-24
| ||
09:30 | Prevent nobreak-space from being highlighted check-in: c728f51a59 user: zge tags: master, trunk | |
09:22 | Add sbbs-format-word-at-point user option check-in: 4d43170777 user: zge tags: master, trunk | |
09:16 | Fix type update from [d0b75dd168] check-in: c6c6a90cab user: zge tags: master, trunk | |
Changes
Modified sbbs.el from [2fdcb74ccb] to [a32d58a0ff].
66 66 (defcustom sbbs-open-at-last-post nil 67 67 "Jump to last post in a thread when opening a thread." 68 68 :type 'boolean) 69 69 70 70 (defcustom sbbs-kill-threads-on-quit t 71 71 "Kill all thread buffers when quitting a board buffer." 72 72 :type 'boolean) 73 + 74 +(defcustom sbbs-format-word-at-point t 75 + "Format the word at point if no region is active." 76 + :type 'boolean) 73 77 74 78 (defface sbbs--semi-spoiler-face 75 79 '((((background light)) :background "gray80" :foreground "black") 76 80 (((background dark)) :background "gray20" :foreground "white")) 77 81 "Face for spoiler text in threads.") 78 82 79 83 (defface sbbs--spoiler-face ................................................................................ 629 633 sbbs--thread-id id 630 634 sbbs--board board) 631 635 (switch-to-buffer (current-buffer))))) 632 636 633 637 (defun sbbs-compose-format (style) 634 638 "Insert string STYLE around region or point." 635 639 (save-excursion 636 - (if (region-active-p) 637 - (let ((beg (region-beginning)) 638 - (end (region-end))) 639 - (goto-char end) 640 - (insert style) 641 - (goto-char beg) 642 - (insert style)) 643 - (insert style style))) 640 + (cond 641 + ((use-region-p) 642 + (let ((beg (region-beginning)) 643 + (end (region-end))) 644 + (goto-char end) 645 + (insert style) 646 + (goto-char beg) 647 + (insert style))) 648 + (sbbs-format-word-at-point 649 + (save-mark-and-excursion 650 + (let ((bounds (bounds-of-thing-at-point 'word))) 651 + (if bounds 652 + (progn 653 + (set-mark (car bounds)) 654 + (goto-char (cdr bounds)) 655 + (sbbs-compose-format style)) 656 + (let ((sbbs-format-word-at-point nil)) 657 + (sbbs-compose-format style)))))) 658 + ((insert style style)))) 644 659 (when (or (not (region-active-p)) (< (point) (mark))) 645 660 (forward-char (length style)))) 646 661 647 662 (defun sbbs-compose-format-code () 648 663 "Insert code syntax markers." 649 664 (interactive) 650 665 (sbbs-compose-format "```\n"))