Bare URL in markdown loses its link

I created a basic site using Jekyll. It has a couple of bullet points whose text is a link to another URL.
In the markdown source, these URLs are displayed as links, but in the rendered site, they lost the clickable link property.

I quickly fixed them by changing the markdown to use an explicit link, like

* [https://example.com/destination](https://example.com/destination)

but obviously this is unattractive and possibly hard to discover for users who are not very familiar with markdown.

Is this a know bug? If not, should I file an issue at Issues · jekyll/jekyll · GitHub or somewhere else?

how did you do the markdown code for the link? with just http://mysite.com?

No formatting at all. Here is the source before I fixed it; at the time, the URLs were rendered as clickable links by Github, but the links disappeared and left only the text when the site was built and deployed.

(The link is to the diff where I edited the file to add the links; sorry, I can’t find a good way to link to my fork’s contents at this particular commit, perhaps because I’m on mobile.)

While I appreciate your sharing the issue and sharing the new commit, I would appreciate it if you just share what you type in markdown vs what displays in the browser source. Is the link contained within your site or does it point to another site?

I looked at your _config.yml and figure it is the age-old issue of needing to add the baseurl and url in there.

Try adding the following lines to your /_config.yml file:

baseurl: "/minimal" # the subpath of your site, e.g. /blog
url: "https://jekyll-pages.github.io/" # the base hostname & protocol for your site, e.g. http://example.com

Of course, if you are hosting the site on some other URL, modify those as needed.

Let’s say you want to link to a file on your website called /docs/doc1.html.

If this does not work:

[Doc1](/docs/doc1.html)

Then use Liquid to type:

[Doc1]({{ "/docs/doc1.html" | relative_url }})

The URLs are full URLs to external sites. The markdown is as simple as it can possibly be;

* https://url1.example.com/
  - description
* https://url2.example.com/
  - another description

I don’t see how the baseurl configuration is relevant here; and if it is indeed required, I would regard that as a bug.

The fixed (or rather, workarounded) version is

* [https://url1.example.com/](https://url1.example.com/)
  - description
* [https://url2.example.com/](https://url2.example.com/)
  - another description

This is already more text than the actual source of the entire site.

The actual site source with its very brief history is at GitHub - tripleee/triple.ee: My humble contribution to the world wide landfill

try surrounding the link with angle brackets like <http://coolsite.com>

Jekyll uses Kramdown, this is from their docs - automatic links - which I think is what you are looking for, more or less:

GH uses its own flavor of markdown which seems to allow just typing in a url.

1 Like

Thanks, that worked. I’m still not entirely happy that what I see on Github is not what ends up being published, but this solved my immediate problem. (And for what it’s worth, the syntax with brokets renders as expected on Github too, so with this fix, I do see exactly what the end result will look like, though of course this fix is not really discoverable.)