kaushalmodi / ox-hugo

A carefully crafted Org exporter back-end for Hugo
https://ox-hugo.scripter.co
GNU General Public License v3.0
886 stars 132 forks source link

How do I remove the generated {#id} in the heading? #449

Closed kamalarieff closed 3 years ago

kamalarieff commented 3 years ago

Actual Behavior

## Use the command line to deploy sites {#use-the-command-line-to-deploy-sites}

Expected Behavior

## Use the command line to deploy sites

How to Reproduce the Issue

Example Org File

#+title: Surge

* Use the command line to deploy sites
:LINK:
https://surge.sh/
:END:
:REFERRER:
https://javascript.plainenglish.io/10-ways-to-host-your-react-app-for-free-cf91fe615177
:END:

- tags :: [[file:20210201211859-static_site_generators.org][Static Site Generators]]

#+ATTR_ORG: :width 600
[[/home/kamalarieff/Dropbox/org/Pictures/2021-06-27_18-27 surge.png]]

Generated Markdown File or Error

---
title: "Surge"
author: ["Kamal Arieff Ahmad Faizel"]
draft: false
---

## Use the command line to deploy sites {#use-the-command-line-to-deploy-sites}

<https://surge.sh/>

<https://javascript.plainenglish.io/10-ways-to-host-your-react-app-for-free-cf91fe615177>

tags
: [Static Site Generators]({{< relref "20210201211859-static_site_generators" >}})

{{< figure src="/ox-hugo/2021-06-27_18-27 surge.png" >}}

Ox-Hugo Debug Information

Debug Info # Debug information for `ox-hugo` ## Emacs Version GNU Emacs 27.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.27, cairo version 1.17.4) of 2021-03-27 ## Org Version Org mode version 9.5 (nil @ /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/) ## Hugo Version =hugo= binary not found in PATH ### Org `load-path` shadows **Warning**: Possible mixed installation of Org /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-publish hides /usr/share/emacs/27.2/lisp/org/ox-publish /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-gnus hides /usr/share/emacs/27.2/lisp/org/ol-gnus /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-datetree hides /usr/share/emacs/27.2/lisp/org/org-datetree /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-ref hides /usr/share/emacs/27.2/lisp/org/ob-ref /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-lint hides /usr/share/emacs/27.2/lisp/org/org-lint /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-beamer hides /usr/share/emacs/27.2/lisp/org/ox-beamer /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-org hides /usr/share/emacs/27.2/lisp/org/ob-org /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-lob hides /usr/share/emacs/27.2/lisp/org/ob-lob /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-maxima hides /usr/share/emacs/27.2/lisp/org/ob-maxima /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-latex hides /usr/share/emacs/27.2/lisp/org/ox-latex /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-J hides /usr/share/emacs/27.2/lisp/org/ob-J /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-feed hides /usr/share/emacs/27.2/lisp/org/org-feed /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-clojure hides /usr/share/emacs/27.2/lisp/org/ob-clojure /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-lisp hides /usr/share/emacs/27.2/lisp/org/ob-lisp /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-screen hides /usr/share/emacs/27.2/lisp/org/ob-screen /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-indent hides /usr/share/emacs/27.2/lisp/org/org-indent /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-ledger hides /usr/share/emacs/27.2/lisp/org/ob-ledger /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-abc hides /usr/share/emacs/27.2/lisp/org/ob-abc /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-mouse hides /usr/share/emacs/27.2/lisp/org/org-mouse /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-w3m hides /usr/share/emacs/27.2/lisp/org/ol-w3m /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-C hides /usr/share/emacs/27.2/lisp/org/ob-C /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-tangle hides /usr/share/emacs/27.2/lisp/org/ob-tangle /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-timer hides /usr/share/emacs/27.2/lisp/org/org-timer /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-pcomplete hides /usr/share/emacs/27.2/lisp/org/org-pcomplete /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-stan hides /usr/share/emacs/27.2/lisp/org/ob-stan /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-coq hides /usr/share/emacs/27.2/lisp/org/ob-coq /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-groovy hides /usr/share/emacs/27.2/lisp/org/ob-groovy /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-mhe hides /usr/share/emacs/27.2/lisp/org/ol-mhe /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-vala hides /usr/share/emacs/27.2/lisp/org/ob-vala /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-core hides /usr/share/emacs/27.2/lisp/org/ob-core /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol hides /usr/share/emacs/27.2/lisp/org/ol /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-matlab hides /usr/share/emacs/27.2/lisp/org/ob-matlab /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-R hides /usr/share/emacs/27.2/lisp/org/ob-R /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-org hides /usr/share/emacs/27.2/lisp/org/ox-org /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-refile hides /usr/share/emacs/27.2/lisp/org/org-refile /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-macs hides /usr/share/emacs/27.2/lisp/org/org-macs /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-irc hides /usr/share/emacs/27.2/lisp/org/ol-irc /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-octave hides /usr/share/emacs/27.2/lisp/org/ob-octave /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-js hides /usr/share/emacs/27.2/lisp/org/ob-js /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-attach-git hides /usr/share/emacs/27.2/lisp/org/org-attach-git /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-calc hides /usr/share/emacs/27.2/lisp/org/ob-calc /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-info hides /usr/share/emacs/27.2/lisp/org/ol-info /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-texinfo hides /usr/share/emacs/27.2/lisp/org/ox-texinfo /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-goto hides /usr/share/emacs/27.2/lisp/org/org-goto /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-shell hides /usr/share/emacs/27.2/lisp/org/ob-shell /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-footnote hides /usr/share/emacs/27.2/lisp/org/org-footnote /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox hides /usr/share/emacs/27.2/lisp/org/ox /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-table hides /usr/share/emacs/27.2/lisp/org/org-table /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-md hides /usr/share/emacs/27.2/lisp/org/ox-md /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-habit hides /usr/share/emacs/27.2/lisp/org/org-habit /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-asymptote hides /usr/share/emacs/27.2/lisp/org/ob-asymptote /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-clock hides /usr/share/emacs/27.2/lisp/org/org-clock /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-python hides /usr/share/emacs/27.2/lisp/org/ob-python /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-table hides /usr/share/emacs/27.2/lisp/org/ob-table /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-ruby hides /usr/share/emacs/27.2/lisp/org/ob-ruby /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-archive hides /usr/share/emacs/27.2/lisp/org/org-archive /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-eval hides /usr/share/emacs/27.2/lisp/org/ob-eval /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-comint hides /usr/share/emacs/27.2/lisp/org/ob-comint /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-picolisp hides /usr/share/emacs/27.2/lisp/org/ob-picolisp /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-latex hides /usr/share/emacs/27.2/lisp/org/ob-latex /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-src hides /usr/share/emacs/27.2/lisp/org/org-src /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-hledger hides /usr/share/emacs/27.2/lisp/org/ob-hledger /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-gnuplot hides /usr/share/emacs/27.2/lisp/org/ob-gnuplot /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-odt hides /usr/share/emacs/27.2/lisp/org/ox-odt /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-duration hides /usr/share/emacs/27.2/lisp/org/org-duration /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-bibtex hides /usr/share/emacs/27.2/lisp/org/ol-bibtex /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-colview hides /usr/share/emacs/27.2/lisp/org/org-colview /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-crypt hides /usr/share/emacs/27.2/lisp/org/org-crypt /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-emacs-lisp hides /usr/share/emacs/27.2/lisp/org/ob-emacs-lisp /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org hides /usr/share/emacs/27.2/lisp/org/org /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-agenda hides /usr/share/emacs/27.2/lisp/org/org-agenda /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-eshell hides /usr/share/emacs/27.2/lisp/org/ol-eshell /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-eww hides /usr/share/emacs/27.2/lisp/org/ol-eww /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-css hides /usr/share/emacs/27.2/lisp/org/ob-css /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-scheme hides /usr/share/emacs/27.2/lisp/org/ob-scheme /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-sqlite hides /usr/share/emacs/27.2/lisp/org/ob-sqlite /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-plot hides /usr/share/emacs/27.2/lisp/org/org-plot /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-list hides /usr/share/emacs/27.2/lisp/org/org-list /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-eshell hides /usr/share/emacs/27.2/lisp/org/ob-eshell /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-capture hides /usr/share/emacs/27.2/lisp/org/org-capture /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-bbdb hides /usr/share/emacs/27.2/lisp/org/ol-bbdb /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob hides /usr/share/emacs/27.2/lisp/org/ob /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-num hides /usr/share/emacs/27.2/lisp/org/org-num /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-rmail hides /usr/share/emacs/27.2/lisp/org/ol-rmail /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-ebnf hides /usr/share/emacs/27.2/lisp/org/ob-ebnf /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-entities hides /usr/share/emacs/27.2/lisp/org/org-entities /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-sass hides /usr/share/emacs/27.2/lisp/org/ob-sass /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-awk hides /usr/share/emacs/27.2/lisp/org/ob-awk /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-ocaml hides /usr/share/emacs/27.2/lisp/org/ob-ocaml /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-forth hides /usr/share/emacs/27.2/lisp/org/ob-forth /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-icalendar hides /usr/share/emacs/27.2/lisp/org/ox-icalendar /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-mobile hides /usr/share/emacs/27.2/lisp/org/org-mobile /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-keys hides /usr/share/emacs/27.2/lisp/org/org-keys /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-lua hides /usr/share/emacs/27.2/lisp/org/ob-lua /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-faces hides /usr/share/emacs/27.2/lisp/org/org-faces /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-html hides /usr/share/emacs/27.2/lisp/org/ox-html /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-processing hides /usr/share/emacs/27.2/lisp/org/ob-processing /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-tempo hides /usr/share/emacs/27.2/lisp/org/org-tempo /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-ctags hides /usr/share/emacs/27.2/lisp/org/org-ctags /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-attach hides /usr/share/emacs/27.2/lisp/org/org-attach /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-protocol hides /usr/share/emacs/27.2/lisp/org/org-protocol /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-java hides /usr/share/emacs/27.2/lisp/org/ob-java /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-man hides /usr/share/emacs/27.2/lisp/org/ox-man /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ox-ascii hides /usr/share/emacs/27.2/lisp/org/ox-ascii /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-makefile hides /usr/share/emacs/27.2/lisp/org/ob-makefile /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-exp hides /usr/share/emacs/27.2/lisp/org/ob-exp /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-perl hides /usr/share/emacs/27.2/lisp/org/ob-perl /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-io hides /usr/share/emacs/27.2/lisp/org/ob-io /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-haskell hides /usr/share/emacs/27.2/lisp/org/ob-haskell /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-sed hides /usr/share/emacs/27.2/lisp/org/ob-sed /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-install hides /usr/share/emacs/27.2/lisp/org/org-install /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-sql hides /usr/share/emacs/27.2/lisp/org/ob-sql /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-macro hides /usr/share/emacs/27.2/lisp/org/org-macro /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-inlinetask hides /usr/share/emacs/27.2/lisp/org/org-inlinetask /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-plantuml hides /usr/share/emacs/27.2/lisp/org/ob-plantuml /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-compat hides /usr/share/emacs/27.2/lisp/org/org-compat /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-ditaa hides /usr/share/emacs/27.2/lisp/org/ob-ditaa /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-element hides /usr/share/emacs/27.2/lisp/org/org-element /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-loaddefs hides /usr/share/emacs/27.2/lisp/org/org-loaddefs /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-shen hides /usr/share/emacs/27.2/lisp/org/ob-shen /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-id hides /usr/share/emacs/27.2/lisp/org/org-id /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-lilypond hides /usr/share/emacs/27.2/lisp/org/ob-lilypond /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ol-docview hides /usr/share/emacs/27.2/lisp/org/ol-docview /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-fortran hides /usr/share/emacs/27.2/lisp/org/ob-fortran /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-mscgen hides /usr/share/emacs/27.2/lisp/org/ob-mscgen /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/ob-dot hides /usr/share/emacs/27.2/lisp/org/ob-dot /home/kamalarieff/.emacs.d/.local/straight/build-27.2/org-mode/org-version hides /usr/share/emacs/27.2/lisp/org/org-version Study the output of `M-x list-load-path-shadows`. ## `ox-hugo` defcustoms
org-hugo-section “braindump”
org-hugo-use-code-for-kbd nil
org-hugo-preserve-filling t
org-hugo-delete-trailing-ws t
org-hugo-prefer-hyphen-in-tags t
org-hugo-allow-spaces-in-tags t
org-hugo-tag-processing-functions (org-hugo–tag-processing-fn-replace-with-spaces-maybe org-hugo–tag-processing-fn-replace-with-hyphens-maybe)
org-hugo-auto-set-lastmod nil
org-hugo-export-with-toc nil
org-hugo-export-with-section-numbers nil
org-hugo-front-matter-format “yaml”
org-hugo-default-static-subdirectory-for-externals “ox-hugo”
org-hugo-external-file-extensions-allowed-for-copying (“jpg” “jpeg” “tiff” “png” “svg” “gif” “mp4” “pdf” “odt” “doc” “ppt” “xls” “docx” “pptx” “xlsx”)
org-hugo-date-format “%Y-%m-%dT%T%z”
org-hugo-paired-shortcodes “”
org-hugo-langs-no-descr-in-code-fences nil
org-hugo-suppress-lastmod-period 0.0
org-hugo-front-matter-format “yaml”

What I've Done

After reading the docs, I see that org-hugo-pandoc-cite-references-heading is responsible for this.

When I run M-x describe-variable, org-hugo-pandoc-cite-references-heading doesn't show up in the list. Not even with the default value "References {#references}".

So I've tried added this config to set said variable.

(use-package ox-hugo
  :ensure t
  :after ox
  :custom
  (org-hugo-base-dir ".")
  (org-hugo-front-matter-format "yaml")
  (org-hugo-section "braindump")
  (org-hugo-pandoc-cite-references-heading ""))

Still getting the same output.

I've also tried adding it to .dir-locals.el.

((nil . ((org-hugo-base-dir . ".")
          (org-hugo-front-matter-format . "yaml")
          (org-hugo-section . "braindump")
          (org-hugo-pandoc-cite-references-heading ""))) 

Still no luck.

I've also went into the source code at ox-hugo/ox-hugo-pandoc-cite.el to change the default value.

-(defcustom org-hugo-pandoc-cite-references-heading "References {#references}"
+(defcustom org-hugo-pandoc-cite-references-heading ""
  "Markdown title for Pandoc inserted references section."
  :group 'org-export-hugo
  :type 'string)

Still no luck although I'm not sure if I've actually compiled to make this change happen.

kaushalmodi commented 3 years ago

## Use the command line to deploy sites {#use-the-command-line-to-deploy-sites}

That is by design. So far, there isn't a real need to remove those heading link annotations. So I do not have an option to disable that.

I've also went into the source code at ox-hugo/ox-hugo-pandoc-cite.el to change the default value.

That is unrelated to these heading links as you found it. That variable controls the "References" heading inserted when you use pandoc citations. From the docs ( https://ox-hugo.scripter.co/doc/usage/#org-hugo-pandoc-cite-references-heading ):

This is the Markdown heading that gets inserted before the section of references inserted by Pandoc inserted (See Pandoc Citations) at the end of the post.


That's the rationale behind removing that slug annotation? Is it breaking something in Hugo?

Also see https://gohugo.io/content-management/cross-references/#heading-ids .

kaushalmodi commented 3 years ago

The heading anchor is added in this string formatting line under org-hugo-headline:

https://github.com/kaushalmodi/ox-hugo/blob/290b5d6b659addf99cb96a316fb24caa90ad0e77/ox-hugo.el#L1850

One option is that you can advise that function and modify it to your liking.

kaushalmodi commented 3 years ago

When I run M-x describe-variable, org-hugo-pandoc-cite-references-heading doesn't show up in the list. Not even with the default value "References {#references}".

That's because that variable is defined inside ox-hugo-pandoc-cite.el, and that library does not get loaded unless you enable pandoc citation in your Org file. See https://ox-hugo.scripter.co/doc/pandoc-citations/#enabling . Again, that variable has nothing to do with the anchor annotations in front of the headings.

kamalarieff commented 3 years ago

I see. I think I understand now. My issue is that I'm not using hugo for the output of ox-hugo. My initial thought is that I could mix-and-match libraries to accomplish what I want. But now I think it's not the correct way to do things.

Anyway, thanks for the quick reply.

kaushalmodi commented 3 years ago

My issue is that I'm not using hugo for the output of ox-hugo.

Yeah, then the anchor annotation is the least of your concerns. You would also face issues with {{ ref .., {{ figure .. and other Hugo shortcodes that I use in the ox-hugo exports.

In any case, it should be possible to do what you want by advising the functions from ox-hugo.

zzantares commented 3 years ago

Hi @kaushalmodi, are you aware of other projects similar in spirit to what ox-hugo does, but that it is not tied to Hugo in particular?

kaushalmodi commented 3 years ago

are you aware of other projects similar in spirit to what ox-hugo does

There's a generic ox-md that ships with Org mode.

Other than ox-hugo, you will find Markdown-like exporters for various static site generators.

zzantares commented 3 years ago

apologies, I meant something that allows:

kaushalmodi commented 3 years ago

apologies, I meant something that allows

Hmm, I am not aware of one because I have been using Hugo for few years now (honestly, hugo appeals to my laziness because I still deploy my sites using a year old static binary of hugo and things keep on working).

are you aware of other projects similar in spirit to what ox-hugo does, but that it is not tied to Hugo in particular?

If you delve a bit into elisp, especially advices, you can modify a lot of ox-hugo functions to not be hugo-specific.

You can also ask your question on the official Org mailing list by emailing emacs-orgmode@gnu.org .

sky-bro commented 3 years ago

I just found if two subsections have the same header text, the header ids generated are also identical.

how can we prevent this?

kaushalmodi commented 3 years ago

I just found if two subsections have the same header text, the header ids generated are also identical.

Ox-hugo doesn't use any code to make sure that the IDs are unique.

The user needs to make sure that they don't use the exact same headings on the same page. If you need exact same headings, you can set your unique ID using CUSTOM_ID.

Btw Hugo auto-uniquifies the IDs even if the Markdown has the exact same IDs on 2 headings on the same page. But that probably help your use case.

sky-bro commented 3 years ago

if we specify {#header1} for a header, this header will have an id of "header1", and Hugo will not try to generate a unique id for this header (like "header-1", "header-2)

kaushalmodi commented 3 years ago

if we specify {#header1} for a header, this header will have an id of "header1", and Hugo will not try to generate a unique id for this header (like "header-1", "header-2)

I remember experimenting with this a while back and saw that Hugo uniquified the heading even if the user specified the same id for 2 headers.

You are right! Hugo doesn't try to uniquify it any more.. I looks like Blackfriday did that but GoldMark doesn't do that any more.

Sorry, but ox-hugo doesn't do the uniquification. I would gladly accept a PR though.

kaushalmodi commented 3 years ago

I looks like Blackfriday did that

Yep: https://github.com/russross/blackfriday/blob/e96880f42b9343aea6cbfd99693adae0e5fe2b2a/html.go#L213

Dejavu: https://github.com/gohugoio/hugo/issues/6548

tendant commented 2 years ago

Have the same request regarding removing anchor from headline.

ox-hugo is great for generating markdown files in general.

We are not using Hugo anymore, but do like all the features in ox-hugo.

Do you accept patch to enable customize the headline anchor? If so, I am happy to create a pull request to add a variable to enable customization.

Tried a simple work around as below, but it still leaves "{#}" in headline.

(setq org-hugo-anchor-functions '(empty-anchor))

(defun empty-anchor (element info)
  "")