{"action":"created","issue":{"url":"https://api.github.com/repos/doomspork/elixir-school/issues/356","repository_url":"https://api.github.com/repos/doomspork/elixir-school","labels_url":"https://api.github.com/repos/doomspork/elixir-school/issues/356/labels{/name}","comments_url":"https://api.github.com/repos/doomspork/elixir-school/issues/356/comments","events_url":"https://api.github.com/repos/doomspork/elixir-school/issues/356/events","html_url":"https://github.com/doomspork/elixir-school/pull/356","id":153761424,"number":356,"title":"Implement automatic TOC generation","user":{"login":"nscyclone","id":5345029,"avatar_url":"https://avatars.githubusercontent.com/u/5345029?v=3","gravatar_id":"","url":"https://api.github.com/users/nscyclone","html_url":"https://github.com/nscyclone","followers_url":"https://api.github.com/users/nscyclone/followers","following_url":"https://api.github.com/users/nscyclone/following{/other_user}","gists_url":"https://api.github.com/users/nscyclone/gists{/gist_id}","starred_url":"https://api.github.com/users/nscyclone/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nscyclone/subscriptions","organizations_url":"https://api.github.com/users/nscyclone/orgs","repos_url":"https://api.github.com/users/nscyclone/repos","events_url":"https://api.github.com/users/nscyclone/events{/privacy}","received_events_url":"https://api.github.com/users/nscyclone/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/doomspork/elixir-school/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2016-05-09T12:04:21Z","updated_at":"2016-05-10T05:03:28Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/doomspork/elixir-school/pulls/356","html_url":"https://github.com/doomspork/elixir-school/pull/356","diff_url":"https://github.com/doomspork/elixir-school/pull/356.diff","patch_url":"https://github.com/doomspork/elixir-school/pull/356.patch"},"body":"First of all, I want to thank @brain-geek for this great idea. During the work over this PR I've found that it will fix a lot of different shortcomings like non-working anchors, typos and so forth.\r\nI had to test everything manually: I was looking for visual differences between the local version with generated TOC and the original one hosted at http://elixirschool.com/ and also ensured that the new anchors are working well. I think there is actually almost nothing to be worried about: if the lessons have passed the localizers' checks before merge then the headers were named correctly and the new anchors must be correct as well.\r\nHere are the things to notice:\r\n* general:\r\n    * if we assume this PR viable and merge it then we need to use `{{ include toc.html }}` in the new lessons and **pending translations** &mdash; this could be reflected somewhere in `CONTRIBUTING`;\r\n    * `h5` headers were replaced with `h3` in `basics/strings` because they were not displaying correctly: `h3` is expected inside `h2`;\r\n    * native `<a/>` anchors before headers were removed in Portuguese and French lessons: they are not needed anymore because the script works fine with automatically applied `id` regardless of diacritics and that kind of stuff;\r\n    * the `basics/compositions` lesson lacked the `filtering` section: it was not included in the original lesson (I think it was a mistake since this is a header too) but now it is present in every translation;\r\n* localizations:\r\n    * Malay (@alkaha, could you, please, check the following?):\r\n        * there are 2 different translations used for the `Table of Contents` phrase: `Kandungan` and `Isi kandungan`. Which one should we use? I've chosen `Kandungan` for now;\r\n        * there was no space between the long words in the title of `advanced/erlang` and some part of it was [outside of the sidebar box](http://i.imgur.com/rC3IMD9.png);\r\n        * a typo was found in `basics/documentation`: `pencatatatan` → `pencatatan`;\r\n        * in the `basics/basics` lesson the first anchor was translated (`Penyediaan`) but the header itself was named `Setup` so I renamed it according to the anchor.\r\n\r\nI am looking forward to any feedback on this.\r\n\r\n@doomspork, I am also not sure whether should this be rebased or not."},"comment":{"url":"https://api.github.com/repos/doomspork/elixir-school/issues/comments/218059837","html_url":"https://github.com/doomspork/elixir-school/pull/356#issuecomment-218059837","issue_url":"https://api.github.com/repos/doomspork/elixir-school/issues/356","id":218059837,"user":{"login":"alkaha","id":1474398,"avatar_url":"https://avatars.githubusercontent.com/u/1474398?v=3","gravatar_id":"","url":"https://api.github.com/users/alkaha","html_url":"https://github.com/alkaha","followers_url":"https://api.github.com/users/alkaha/followers","following_url":"https://api.github.com/users/alkaha/following{/other_user}","gists_url":"https://api.github.com/users/alkaha/gists{/gist_id}","starred_url":"https://api.github.com/users/alkaha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alkaha/subscriptions","organizations_url":"https://api.github.com/users/alkaha/orgs","repos_url":"https://api.github.com/users/alkaha/repos","events_url":"https://api.github.com/users/alkaha/events{/privacy}","received_events_url":"https://api.github.com/users/alkaha/received_events","type":"User","site_admin":false},"created_at":"2016-05-10T05:03:28Z","updated_at":"2016-05-10T05:03:28Z","body":"@nscyclone my bad. sorry. :)"}}