X-Git-Url: https://code.consxy.com/gitweb/gitweb.cgi?p=sheep;a=blobdiff_plain;f=src%2Fmain%2Ffunc.lisp;h=45bd970eeab2e26a0aeb93f1e22ff07c2485462f;hp=b3926a12be7156be199689ff4c4dad9cbe969313;hb=d898031;hpb=1ba7b003f48765c807cabfb3659e208f77d561fc diff --git a/src/main/func.lisp b/src/main/func.lisp index b3926a1..45bd970 100644 --- a/src/main/func.lisp +++ b/src/main/func.lisp @@ -161,10 +161,10 @@ (text-item) (cond ((not (stringp text-item)) (list text-item)) - ((not (cl-ppcre:scan (car remaining-keywords) text-item)) (list text-item)) + ((not (cl-ppcre:scan (cl-ppcre:quote-meta-chars (car remaining-keywords)) text-item)) (list text-item)) (t (let - ((split-text (cl-ppcre:split (car remaining-keywords) text-item :limit 1000))) + ((split-text (cl-ppcre:split (cl-ppcre:quote-meta-chars (car remaining-keywords)) text-item :limit 1000))) (apply #'append (list (car split-text)) (mapcar (lambda (ti) (list (list :keyword (car remaining-keywords)) ti)) (cdr split-text))))))) @@ -259,7 +259,7 @@ (append (when types (list types)) (list - (parse-arguments-and-values args-to-be-defined) + (when args-to-be-defined (parse-arguments-and-values args-to-be-defined)) (parse-description)) (when (more) (list (parse-examples))))))))) @@ -294,7 +294,8 @@ (case (car type) (:list (format nil "(~{~(~A~)~^ ~})" (mapcar #'cadr (cadr type)))) (:or (format nil "~{~(~A~)~^ | ~}" (mapcar #'cadr (cadr type)))) - (:asterisk (format nil "~(~A~)*" (cadr (car (cadr type)))))))) + (:asterisk (format nil "~(~A~)*" (cadr (car (cadr type))))) + (:symbol (format nil "~(~A~)" (cadr (car (cadr type)))))))) (if (not types) "" (format nil "~{~A~%~}~%" @@ -325,7 +326,10 @@ (format nil "~A~A~A~A~A" (format-header (get-section :function)) (format-types (get-section :types)) - (format-args-and-values (get-section :arguments-and-values)) + (if + (get-section :arguments-and-values) + (format-args-and-values (get-section :arguments-and-values)) + "") (format-description (get-section :description)) (format-examples (get-section :examples)))))