The new GitHub Gist interface has one embed snippet for the entire gist which embeds all files in the gist. The old interface had embed code for each file in the gist. Anyone know if there's a trick to embed a single file?
-
26This question is about the "API" for gists, a tool used by programmers. The questions is about sharing code. As such, this seems entirely on topic. As I read the scope defined by the community, I struggle to see how this doesn't fit. I found both the question and the answer, very useful as a programmer.Eric Bloch– Eric Bloch2014-01-15 19:48:30 +00:00Commented Jan 15, 2014 at 19:48
-
3This question is useful and has a useful answer for programmers. Why on earth was this closed as off-topic?mydoghasworms– mydoghasworms2015-03-27 09:13:07 +00:00Commented Mar 27, 2015 at 9:13
-
Gonna add on here: In scope defined by community: "software tools commonly used by programmers". Github gist is a tool commonly used by programmers, so any questions about its API is entirely relevant.chaseadamsio– chaseadamsio2015-08-05 14:06:50 +00:00Commented Aug 5, 2015 at 14:06
4 Answers
Take the gist URL from the left-hand side and after the .js add a query string like ?file=myFile.blah, e.g.
<script src="https://gist.github.com/4505639.js?file=macroBuild.scala" type="text/javascript"></script>
4 Comments
Medium
For those who want to use it on the medium, Medium does not support and does not query parameters in the URL when you add it after the paste of the URL. So just follow these 4 steps IN THE ORDER.
So:
⚠️ Order matters!
- Copy the (multi-file) gist path. e.g.:
https://gist.github.com/MojtabaHs/91e34fd0e987fe7ce801936dc6ece0e8
- Paste it somewhere else than the Medium article that not preserves the rich data of the text. Like an online textbox for example:
⚠️ Do not hit search or return button
- Append the query param for the file to the URL. e.g:
https://gist.github.com/MojtabaHs/91e34fd0e987fe7ce801936dc6ece0e8?file=Interface.swift
Note that ?file=Interface.swift at the end of the URL, right?
- Copy and paste it in the article and see the magic 🔮
An article using this method:
Implement Custom Activity Indicator With The SwiftUI
The MOST Important note that MUST be considered:
⚠️ Note that you MUST copy an unformatted plain text in the medium and MUST NOT edit the URL after pasting it in the Medium! You can copy the link in an online textbox like google.com and after appending the query, copy it back and paste it in the Medium.
Comments
GitHub provides this same information here on their site. As others have said the official way is to attach ?file=name-of-file.ext to the end of the embed code's URL in order to only embed the file called name-of-file.ext (you can of course change the name to whatever the name of your file is). For example, if I wanted to embed the getGitContents.js file from the Gist at https://gist.github.com/westc/afac9258389fdfd2fdaf134ffaa0e923 I can use the following:
<script src="https://gist.github.com/westc/afac9258389fdfd2fdaf134ffaa0e923.js?file=getGitContents.js"></script>
In addition there is this YourJS blog post about this which allows you to enter your user name and see the embed codes for all of your gists and the underlying individual files.
Comments
Just for other people reference that might be looking into this.
If you are using Wordpress you may achieve this with the plugin oEmbed-gist and shortcode style:
[gist id="your-gist-id-here" file="your-file-name.js"].
