Viagra history Ever wanted a quick/easy/automated way to get syntax highlighted code from your editor of choice into PowerPoint?
Viagra history EVERY time I do a technical presentation I need this. Usually I resort to taking a screenshot, viagra history or finding an “export to html” type plugin for the editor I’m using at the time (Visual Studio, viagra history Vim, viagra history IntelliJ IDEA, viagra history etc.) and then try to get that somehow into my slides.
Viagra history The problem I usually run into, viagra history is that while I like coding on a dark background with a 14pt font, viagra history that’s not usually that great for presentations. So I switch to my “presentation settings” that has a light background and bigger font size, viagra history and then switch back once I’m done taking screenshots or outputting to html. Viagra history [ugh, viagra history what a pain… terribly manual].
Viagra history Then what happens when I spot a bug in code that’s in PowerPoint, viagra history or I want to add a comment, viagra history or I need to change the syntax highlighting theme of the entire presentation because it doesn’t go well with the lighting in the room. UGH! What a disaster.
Viagra history Basically, viagra history it’s always an uphill struggle, viagra history and it really bothered me… so I decided to fix it once and for all.
Viagra history I’m going to solely discuss PowerPoint (for Windows or Mac) here. I don’t have a copy of iWork, viagra history and I’m too cheap to buy one. The reason I have Office for the Mac, viagra history is because I got it for free… KeyNote/Mac zealots: feel free to be zealous, viagra history but don’t hate on me because I’m frugal… unless you want to buy me a copy of iWork.
Viagra history First, viagra history download: http://www.andre-simon.de/doku/highlight/en/highlight.html
Viagra history The highlight tool can output many formats, viagra history but the important one for Windows is RTF.
Viagra history So something like:
Viagra history highlight < infile > outfile –-rtf --syntax=rb --style=vim --font=”Lucida Console” --font-size=18
Viagra history This will take the source code file ‘infile’ and syntax color it as Ruby to an RTF file and output it to ‘outfile’. The text will be 18pt Lucida Console and syntax highlighted with the “vim” color scheme.
Viagra history There are lots of themes included, viagra history you can ask highlight for help (highlight --help), viagra history and it’ll tell you all the options available, viagra history as well as all the options available for output, viagra history and for languages that it supports.
Viagra history Next, viagra history in PowerPoint, viagra history do “Insert Object” on your target slide, viagra history and choose “Create from file”. Make sure you check the “Link” checkbox before pressing OK.
Viagra history Now, viagra history whenever your source changes, viagra history re-run your command line, viagra history then you can choose “Update Link” on your embedded object in PowerPoint, viagra history or if you close and then re-open PowerPoint, viagra history it’ll give you the option to update all your links.
Viagra history My version of PowerPoint for Mac doesn’t like being able to link to RTF files, viagra history but it does allow linking to images.
Viagra history Highlight can output to SVG, viagra history but my PowerPoint doesn’t like that either.
Viagra history Now download inkscape, viagra history if you haven’t already. It will allow you to rasterize the SVG into a PNG, viagra history which PowerPoint does like. You can export your PNG from inkscape from the command line like this:
Viagra history <path to inkscape> –export-png=<png file> <svg file>
Viagra history The path to my inkscape command line runner is at:
Viagra history /Applications/Inkscape.app/Contents/Resources/bin/inkscape
Viagra history It turns out that inkscape doesn’t like external CSS files, viagra history which is what highlight gives you with your SVG, viagra history so you can merge your CSS file into your SVG file with a little script. The other cool bit about SVG, viagra history is you can tweak it, viagra history if you want, viagra history since it’s just XML.
Viagra history Now, viagra history in PowerPoint, viagra history choose “Insert Picture” and browse to your newly generated PNG. Make sure the “Link to File” checkbox is checked.
Viagra history I wrote a script to do this for the latest presentation I did on dependency injection. You can take a look at the script here [source.rb]. It’s Ruby, viagra history and you can see where I merge the CSS and SVG files together, viagra history and where I mess with the line spacing as well (I wasn’t happy with the default line spacing, viagra history so I tweaked it to my preference). All the source/images/PowerPoint for that presentation are available here [dependencies presentation] if you want to check them out to see how the whole process works.
Viagra history Now, viagra history when I need to change the font and syntax theme throughout my entire presentation because it doesn’t match the lighting in the room, viagra history it’s super-simple: I change the configuration, viagra history re-run my script, viagra history update PowerPoint, viagra history and chill.
Viagra soft generic IndyTechFest is teh awesome!
Viagra soft generic I was privileged enough to be a speaker alongside some other ridiculously awesome regional speakers (and even had a few of them IN my presentation!)… star struck having @dburton, viagra soft generic @timwingfield, viagra soft generic @skimedic, viagra soft generic and other community leaders like @myotherpants and @maggielongshore in the audience. I am truly humbled. Thanks to the organizers for allowing me to practice my teaching, viagra soft generic and thanks to those that sat through my talk for supporting me (and also, viagra soft generic thanks for the positive feedback from those I talked to afterwards!). [Side note: If you want to see my slides: http://github.com/jonfuller/presentations/tree/master/mongo/]
Viagra soft generic The best part, viagra soft generic however, viagra soft generic had nothing do with any presentation at the event. It had to do with the amazing conversations we had in the Open Spaces area hosted by @alanstevens. I hung out there ALL day (except for when I was presenting), viagra soft generic and got more out of any one open space topic than I have at entire conferences before.
Viagra soft generic We talked about Ruby on Rails, viagra soft generic IronRuby, viagra soft generic Public Speaking, viagra soft generic Technical Speaking, viagra soft generic Running a User Group, viagra soft generic Linchpins, viagra soft generic Alt.Net, viagra soft generic Software Craftsmanship, viagra soft generic DVCS (hg and git specifically)…
Viagra soft generic I’ll pause and let that list of topics sink in. For me, viagra soft generic that list is like a holy grail of a developer conference.
Viagra soft generic Most of this was deep discussion about the topic at hand by some great minds/leaders in the area. All of the aforementioned folks plus @jayharris, viagra soft generic @alanbarber, viagra soft generic @jademason, viagra soft generic @garrinmf, viagra soft generic@arktronic, viagra soft generic @browniepoints were together having these conversations, viagra soft generic and it was really exciting (at least for me) hanging out with these guys and learning so much from them.
Viagra soft generic For me, viagra soft generic this year, viagra soft generic IndyTechFest was about the people and the interactions I had with them. What was it for you?
Viagra soft generic I can’t wait for next year.