ramnathv / slidify

Generate reproducible html5 slides from R markdown
http://www.slidify.org
844 stars 339 forks source link

gh-pages incompatibility #150

Closed RyanHope closed 11 years ago

RyanHope commented 11 years ago

I recently trie publishing a Slidify deck to github using gh-pages. The deck included R code using the {r} style blocks. The page was never built. I contacted github and they said:

"The Pages build is failing when it hits your code blocks. If you replace the backtick code blocks with Jekyll style tags (ie, change ```r to {% highlight rconsole %} and the closing backticks to {% endhighlight %} ) it should stop complaining."

Am the only one who publishes to github with embedded R code?

ramnathv commented 11 years ago

Slidify generated decks are pre-built to html. If you followed the procedure described, a .nojekyll file would automatically be added to prevent github from building them. You are getting this error because github is trying to build your page assuming it is formatted for jekyll and is tripping up on tags that it is not familiar with.

ramnathv commented 11 years ago

I checked your repo plotting-in-r and I don't see a .nojekyll file in the repo. You can easily add this and commit to your repo by doing the following:

cd myrepo
touch .nojekyll
git add .nojekyll
git commit -am 'add .nojekyll to myrepo'
git push 
RyanHope commented 11 years ago

I dont see ".nojekyll" mentioned on https://github.com/ramnathv/slidify/wiki/Publishing

ramnathv commented 11 years ago

Well, that is because I assumed everyone would use author('mydeck') to kickstart their presentation, in which case .nojekyll would automatically be added.

The Wiki page is a little outdated, since I have now wrapped everything into a publish function. You can check http://slidify.org/publish.html for more details.

RyanHope commented 11 years ago

If author(".") worked, then I would have used it, but I already had a folder and project created in Rstudio.

ramnathv commented 11 years ago

Good point. I will modify publish_github to check if a .nojekyll file is present and if not automatically add it to the repo before publishing. Thanks for the feedback. Let me know if you have other suggestions.

ramnathv commented 11 years ago

I have modified publish to take care of this. Can you check and let me know if it adds .nojekyll to the repo if it is not already present?

ramnathv commented 11 years ago

Saw your presentation on R plots. Looks good. You can add a github download ribbon on the front page by adding the following lines to your YAML front matter.

github:
  author: ryanhope
  repo   : plotting-in-r
RyanHope commented 11 years ago

What would be nice is if the github field when filled out also caused the url and/or QR code to be shown. Other wise the download button is useless to viewers.

ramnathv commented 11 years ago

Why is the download button useless to viewers? It downloads the entire slide directory as a zip file which allows users to view the presentation offline.

RyanHope commented 11 years ago

When I said viewers, I meant people in an audience watching me give a talk, not people who already have the url. Sorry I wasn't more specific.

ramnathv commented 11 years ago

Ah. Makes sense!

ramnathv commented 11 years ago

It is easy to add a QR code using Google Charts API. Add the following slide to your deck and it will display a slide with the QR code. If you want to add it as a footer to every slide, you can use layouts. I know I can easily include this as a part of Slidify. But I want to be guarded against feature bloat, which makes it harder to maintain the package.

I will add a Wiki page where users can add links to Slidify presentations that they have created. Would you be able to add yours as an example?


--- user:ryanhope repo:plotting-in-r &vcenter

<img src="http://chart.apis.google.com/chart cht=qr&amp;chs=300x300&amp;chl={{user}}.github.com/{{repo}}%0D%0A&amp;chld=H|0" alt="QR Code">
ramnathv commented 11 years ago

And a small correction to the github ribbon syntax. Use user instead of author since that is the variable used in the layout file. So your YAML would read

github:
  user: ryanhope
  repo: plotting-in-r
RyanHope commented 11 years ago

Sure you can list the plotting-in-r repo as an example... Is there an easy way of tweaking the title side with out modifying files in the libraries subdirs?

ramnathv commented 11 years ago

Currently the only way to do it for io2012 is to tweak libraries/frameworks/io2012/layouts/deck.html. You can also copy it to assets/layouts and do the tweaks and it will override the global layout defined by the library.