X-Git-Url: https://code.consxy.com/gitweb/gitweb.cgi?p=sheep;a=blobdiff_plain;f=src%2Fmain%2Ffunc.lisp;h=68b05dcf7b473985df52b5c56450ea0f973f856e;hp=d3540a6a7f97f4b712cd1a218bc720bc6afa6513;hb=0d2cc286fe5fb8e85795d261620e422442ce5ef9;hpb=4c8ef06ce7bff14e78e79051870291d5075c42ea diff --git a/src/main/func.lisp b/src/main/func.lisp index d3540a6..68b05dc 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))))))) @@ -328,3 +328,16 @@ (format-args-and-values (get-section :arguments-and-values)) (format-description (get-section :description)) (format-examples (get-section :examples))))) + +(defun ast->category-name (ast) + (declare (ignore ast)) + "function") + +(defun ast->short-name (ast) + (format nil "~(~A~)" (second (find :function ast :key #'car)))) + +(defun ast->link (ast) + (format nil "function-~(~A~)" (second (find :function ast :key #'car)))) + +(defun ast->short-desc (ast) + (format-text (car (cadr (find :description ast :key #'car)))))