Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add quarto-ieee template for IEEE transaction/journal #877

Merged
merged 1 commit into from
Oct 18, 2023

Conversation

dfolio
Copy link
Contributor

@dfolio dfolio commented Oct 18, 2023

IEEE is one of the most famous scientific associations in the fields of engineering. It is the publisher of hundreds of peer-reviewed transactions, journals and magazines in various fields (e.g. electronics, computer engineering, control, biomedical, etc.).
This adds the quarto-ieee template, which supports the IEEEtran LaTeX document class for PDF output. In addition, the HTML output is supported, and attempts to mimic as closely as possible the paper layout seen on IEEEXplore®.

The quarto-ieee template is hosted on Github, includes a README.md, and is licensed under the MIT.

Proposition to add quarto-ieee template.
@cderv
Copy link
Collaborator

cderv commented Oct 18, 2023

/deploy-preview

@github-actions
Copy link
Contributor

@quarto-dev quarto-dev deleted a comment from github-actions bot Oct 18, 2023
Copy link
Collaborator

@cderv cderv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you

@cderv
Copy link
Collaborator

cderv commented Oct 18, 2023

It seems something is not working with 1.4 though to render your template. It could be an issue on our side.

You should probably test your template against latest pre-release to find issue early, and report to us if this is a bug on our side (and not a change in quarto that requires adaptation in Lua for example)

@cderv cderv merged commit ae891ae into quarto-dev:main Oct 18, 2023
2 checks passed
@dfolio
Copy link
Contributor Author

dfolio commented Oct 19, 2023

It strange it works properly with 1.3.450.

I have checked with 1.4.429, and I effectively get the error

ERROR: 
compilation failed- missing packages (automatic installed disabled)
Undefined control sequence.
l.307 \citeproc

Is this the same error you noticed on your side?

A first fix is to use cite-method: biblatex instead of citeproc.
But I have just seen that the default.latex pandoc template now defines a citeproc command that was missing from my previous ieee-template.tex.
I have corrected/checked, and it works from my side.
Let me know if it works for you.

I think that such error may affect many users that use their own template instead of the default one with citeproc.

@cderv
Copy link
Collaborator

cderv commented Oct 19, 2023

compilation failed- missing packages (automatic installed disabled)

Are you using TeX Live ? Automatic installation would be disabled if not using TeX Live as LaTeX distribution, or explicitly opt-out.
Quarto uses by default a Quarto engine that does try to install missing dependencies (https://quarto.org/docs/output-formats/pdf-engine.html#quarto-pdf-engine)

A first fix is to use cite-method: biblatex instead of citeproc.
But I have just seen that the default.latex pandoc template now defines a citeproc command that was missing from my previous > ieee-template.tex.

By default, Quarto will default like Pandoc to using Pandoc's citeproc for citation processing. but you can easily change to another cite-method by default for your format. This is detailed in there: https://quarto.org/docs/output-formats/pdf-basics.html#citations
For Pandoc's citeproc to work, you need indeed to be sure that the necessary thing for the Pandoc's LaTeX template are included. To ease this, Quarto has introduced the logic of Partials for the template. The one you need is citation.tex(). See about partials there: https://quarto.org/docs/journals/templates.html#latex-partials
You should be able to leverage existing partials, even if you provide a custom template.

Happy to discuss this further in an issue in your repo. Do not hesitate to ping me there.

@dfolio
Copy link
Contributor Author

dfolio commented Oct 20, 2023

Thx for your appreciation

Effectively, I use TexLive.
I found two necessary packages to be installed from tinytex (physics and orcid).
I would like to know, what is the best (recommended) practice:

  • set latex-auto-install: true
  • put the missing latex package as format-resources:

I'm already using Partials and will try to improve by taking advantage of existing Partials (e.g. using $pandoc.tex()$).

@cderv
Copy link
Collaborator

cderv commented Oct 20, 2023

Effectively, I use TexLive.

Then automatic installation should not be disabled... 🤔
Do you have writing rights on your TeX Live installation ? Or maye it is from a system installation ? Did you use quarto install tinytex ?

set latex-auto-install: true

This should be the default as explained in the doc with Quarto engines, unless you deactivate it.

put the missing latex package as format-resources:

This won't work I think. Unless you provide a copy indeed. But with auto install, the missing packages should be detected and automically installed. It seems something prevent this on your installation.

What is you quarto check install (if you are using 1.4 version) ?

@dfolio
Copy link
Contributor Author

dfolio commented Oct 23, 2023

Then automatic installation should not be disabled... 🤔

When I was using TexLive I didn't have automatic installation, nor when I was using quarto install tinytex (latex-auto-install: true is necessary to update tinyTeX). However, with TexLive, all requested LaTeX's packages are already available.

This should be the default as explained in the doc with Quarto engines, unless you deactivate it.

I don't have modified any default behavior.
Note that I'm using a Gentoo distribution that doesn't use tlmgr natively. I have to perform a manual installation (as in https://wiki.gentoo.org/wiki/TeX_Live_manual_installation) to get it.
After the manual installation (and removing all Gentoo TexLive packages), the automatic installation work properly (latex-auto-install: true is not necessary). Therefore, I can assume the issue is mainly related to the gentoo distribution.

What is you quarto check install (if you are using 1.4 version) ?

quarto check install output

Quarto 1.4.429
[✓] Checking Quarto installation......OK
      Version: 1.4.429
      Path: /opt/quarto-1.4.429/bin

[✓] Checking tools....................OK
      TinyTeX: v2023.10
      Chromium: (not installed)

[✓] Checking LaTeX....................OK
      Using: TinyTex
      Path: /home/dfolio/.TinyTeX/bin/x86_64-linux
      Version: 2023

[✓] Checking basic markdown render....OK

Can you check if quarto-ieee works properly from your side? Thx

@cderv
Copy link
Collaborator

cderv commented Oct 24, 2023

Can you check if quarto-ieee works properly from your side? Thx

Using the provided template ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants