Allow tags or property value

fix awesome's environments
This commit is contained in:
Oscar Najera 2023-10-22 03:19:18 +02:00
parent 25fdcbfa01
commit d89628c2ed
8 changed files with 34 additions and 24 deletions

View file

@ -74,7 +74,6 @@ instead of a range. Both `FROM` and `TO` override `DATE`.
I write about awesome stuff I do. I write about awesome stuff I do.
** Other job :cventry: ** Other job :cventry:
:PROPERTIES: :PROPERTIES:
:CV_ENV: cventry
:FROM: <2013-09-01> :FROM: <2013-09-01>
:TO: <2014-08-07> :TO: <2014-08-07>
:LOCATION: my city, your country :LOCATION: my city, your country

View file

@ -47,4 +47,6 @@
(export-latex 'altacv "altacv.org") (export-latex 'altacv "altacv.org")
(export-latex 'moderncv "moderncv.org") (export-latex 'moderncv "moderncv.org")
(export-latex 'awesomecv2 "awesomecv.org") (export-latex 'awesomecv2 "awesomecv.org")
(export-latex 'awesomecv "awesomecv.org")
(export-latex 'awesomecv "awesome-letter.org") (export-latex 'awesomecv "awesome-letter.org")
(export-latex 'hugocv "hugocv.org")

View file

@ -206,11 +206,11 @@ as a communication channel."
CONTENTS is the contents of the headline. INFO is a plist used CONTENTS is the contents of the headline. INFO is a plist used
as a communication channel." as a communication channel."
(unless (org-element-property :footnote-section-p headline) (unless (org-element-property :footnote-section-p headline)
(let ((environment (let ((env (org-element-property :CV_ENV headline))) (let ((environment (cons (org-element-property :CV_ENV headline)
(or (org-string-nw-p env) "block")))) (org-export-get-tags headline info))))
(cond (cond
;; is a cv entry ;; is a cv entry
((equal environment "cventry") ((member "cventry" environment)
(org-altacv--format-cventry headline contents info)) (org-altacv--format-cventry headline contents info))
((org-export-with-backend 'latex headline contents info)))))) ((org-export-with-backend 'latex headline contents info))))))

View file

@ -340,25 +340,26 @@ as a communication channel."
CONTENTS is the contents of the headline. INFO is a plist used CONTENTS is the contents of the headline. INFO is a plist used
as a communication channel." as a communication channel."
(unless (org-element-property :footnote-section-p headline) (unless (org-element-property :footnote-section-p headline)
(let ((environment (let ((env (org-element-property :CV_ENV headline))) (let ((environment (cons (org-element-property :CV_ENV headline)
(or (org-string-nw-p env) "block"))) (org-export-get-tags headline info)))
(pagebreak (org-string-nw-p (org-element-property :PAGEBREAK headline)))) (pagebreak (org-string-nw-p (org-element-property :PAGEBREAK headline))))
(concat (concat
(when pagebreak "\\clearpage\n") (when pagebreak "\\clearpage\n")
(cond (cond
;; is a cv entry or subentry ;; is a cv entry or subentry
((member environment '("cventry" ((seq-intersection environment '("cventry"
"cvsubentry" "cvsubentry"
"cvemployer" "cvemployer"
"cvschool" "cvschool"
"cvhonor" "cvhonor"
"cvletter" "cvletter"
"cvletter_notitle" "cvletter_notitle"
"lettersection" "lettersection"
"letterheader")) "letterheader"))
(org-awesomecv--format-cventry headline contents info)) (org-awesomecv--format-cventry headline contents info))
((member environment '("cventries" "cvhonors")) ((seq-intersection environment '("cventries" "cvhonors"))
(org-awesomecv--format-cvenvironment environment headline contents info)) (org-awesomecv--format-cvenvironment
(car (seq-intersection environment '("cventries" "cvhonors"))) headline contents info))
((org-export-with-backend 'latex headline contents info))))))) ((org-export-with-backend 'latex headline contents info)))))))
;;;; Plain List, to intercept and transform "cvskills" lists ;;;; Plain List, to intercept and transform "cvskills" lists

View file

@ -263,11 +263,13 @@ as a communication channel."
CONTENTS is the contents of the headline. INFO is a plist used CONTENTS is the contents of the headline. INFO is a plist used
as a communication channel." as a communication channel."
(unless (org-element-property :footnote-section-p headline) (unless (org-element-property :footnote-section-p headline)
(let ((environment (org-export-get-tags headline info))) (let ((environment (cons (org-element-property :CV_ENV headline)
(org-export-get-tags headline info))))
(cond (cond
;; is a cv entry ;; is a cv entry
((seq-intersection environment '("cventries" "cvhonors")) ((seq-intersection environment '("cventries" "cvhonors"))
(org-cv-awesome2--format-cvenvironment (car environment) headline contents info)) (org-cv-awesome2--format-cvenvironment
(car (seq-intersection environment '("cventries" "cvhonors"))) headline contents info))
((seq-intersection environment '("cventry" "cvhonor")) ((seq-intersection environment '("cventry" "cvhonor"))
(org-cv-awesome2--entry headline contents info)) (org-cv-awesome2--entry headline contents info))
((org-export-with-backend 'latex headline contents info)))))) ((org-export-with-backend 'latex headline contents info))))))

View file

@ -95,7 +95,8 @@ as a communication channel."
CONTENTS is the contents of the headline. INFO is a plist used CONTENTS is the contents of the headline. INFO is a plist used
as a communication channel." as a communication channel."
(unless (org-element-property :footnote-section-p headline) (unless (org-element-property :footnote-section-p headline)
(let ((environment (org-export-get-tags headline info))) (let ((environment (cons (org-element-property :CV_ENV headline)
(org-export-get-tags headline info))))
(cond (cond
((cl-find-if (lambda (s) (string-prefix-p "cv" s)) environment) ((cl-find-if (lambda (s) (string-prefix-p "cv" s)) environment)
(org-hugocv--format-cventry headline contents info)) (org-hugocv--format-cventry headline contents info))

View file

@ -198,11 +198,11 @@ as a communication channel."
CONTENTS is the contents of the headline. INFO is a plist used CONTENTS is the contents of the headline. INFO is a plist used
as a communication channel." as a communication channel."
(unless (org-element-property :footnote-section-p headline) (unless (org-element-property :footnote-section-p headline)
(let ((environment (let ((env (org-element-property :CV_ENV headline))) (let ((environment (cons (org-element-property :CV_ENV headline)
(or (org-string-nw-p env) "block")))) (org-export-get-tags headline info))))
(cond (cond
;; is a cv entry ;; is a cv entry
((equal environment "cventry") ((member "cventry" environment)
(org-moderncv--format-cventry headline contents info)) (org-moderncv--format-cventry headline contents info))
((org-export-with-backend 'latex headline contents info)))))) ((org-export-with-backend 'latex headline contents info))))))

View file

@ -109,7 +109,6 @@ instead of a range. Both =FROM= and =TO= override =DATE=.
I write about awesome stuff I do. I write about awesome stuff I do.
,** Other job :cventry: ,** Other job :cventry:
:PROPERTIES: :PROPERTIES:
:CV_ENV: cventry
:FROM: <2013-09-01> :FROM: <2013-09-01>
:TO: <2014-08-07> :TO: <2014-08-07>
:LOCATION: my city, your country :LOCATION: my city, your country
@ -455,6 +454,12 @@ exclude some tags during export.
#+END_SRC #+END_SRC
You are responsible for styling your website. You are responsible for styling your website.
# Next block is to generate exports
#+BEGIN_SRC org :exports none :tangle hugocv.org
#+include: basic_cv.org
#+include: sideactivities.org
#+include: workcontent.org
#+END_SRC
* License * License
:PROPERTIES: :PROPERTIES: