branch: externals/ellama
commit c14cfee4bfa9c5dae17ab4fcab1ae6134033021c
Author: Sergey Kostyaev <[email protected]>
Commit: Sergey Kostyaev <[email protected]>
Add conditional filling based on `ellama-fill-paragraphs`
Added checks for `ellama-fill-paragraphs` to conditionally enable
paragraph filling in various functions. This allows users to control
whether long lines and paragraphs should be automatically filled.
---
ellama.el | 34 +++++++++++++++++++---------------
1 file changed, 19 insertions(+), 15 deletions(-)
diff --git a/ellama.el b/ellama.el
index 614b431c58..0c21cc8bfc 100644
--- a/ellama.el
+++ b/ellama.el
@@ -467,12 +467,14 @@ Too low value can break generated code by splitting long
comment lines."
(defun ellama--fill-long-lines (text)
"Fill long lines only in TEXT."
- (with-temp-buffer
- (insert (propertize text 'hard t))
- (let ((fill-column ellama-long-lines-length)
- (use-hard-newlines t))
- (fill-region (point-min) (point-max) nil t t))
- (buffer-substring-no-properties (point-min) (point-max))))
+ (if ellama-fill-paragraphs
+ (with-temp-buffer
+ (insert (propertize text 'hard t))
+ (let ((fill-column ellama-long-lines-length)
+ (use-hard-newlines t))
+ (fill-region (point-min) (point-max) nil t t))
+ (buffer-substring-no-properties (point-min) (point-max)))
+ text))
(defun ellama--replace-first-begin-src (text)
"Replace first begin src in TEXT."
@@ -532,9 +534,10 @@ Too low value can break generated code by splitting long
comment lines."
;; filling long lines
(goto-char beg)
- (let ((fill-column ellama-long-lines-length)
- (use-hard-newlines t))
- (fill-region beg end nil t t)))
+ (when ellama-fill-paragraphs
+ (let ((fill-column ellama-long-lines-length)
+ (use-hard-newlines t))
+ (fill-region beg end nil t t))))
(defun ellama--replace-outside-of-code-blocks (text)
"Replace markdown elements in TEXT with org equivalents.
@@ -1484,12 +1487,13 @@ failure (with BUFFER current).
(goto-char start)
(delete-region start end)
(insert (funcall filter text))
- (when (pcase ellama-fill-paragraphs
- ((cl-type function) (funcall
ellama-fill-paragraphs))
- ((cl-type boolean) ellama-fill-paragraphs)
- ((cl-type list) (and (apply #'derived-mode-p
- ellama-fill-paragraphs)
- (not (equal major-mode
'org-mode)))))
+ (when (and ellama-fill-paragraphs
+ (pcase ellama-fill-paragraphs
+ ((cl-type function) (funcall
ellama-fill-paragraphs))
+ ((cl-type boolean) ellama-fill-paragraphs)
+ ((cl-type list) (and (apply #'derived-mode-p
+
ellama-fill-paragraphs)
+ (not (equal major-mode
'org-mode))))))
(fill-region start (point)))
(goto-char pt))
(when-let ((ellama-auto-scroll)