diff --git a/_posts/2011-09-27-running-etherpad-lite-on-nginx.markdown b/_posts/2011-09-27-running-etherpad-lite-on-nginx.markdown index 30a2fd7..9afb580 100644 --- a/_posts/2011-09-27-running-etherpad-lite-on-nginx.markdown +++ b/_posts/2011-09-27-running-etherpad-lite-on-nginx.markdown @@ -26,7 +26,7 @@ Even though I did nothing special I post my config here, so maybe this will help I currently use nginx [v1.0.6](http://nginx.org/download/nginx-1.0.6.tar.gz) and -etherpad-lite at [7e4bba0e](https://github.com/Pita/etherpad-lite/commit/7e4bba0e31d600a5d1d3833211252b1472f07f2c) with the default config (and node.js v0.4.8) +etherpad-lite at [7e4bba0e](https://github.com/ether/etherpad-lite/commit/7e4bba0e31d600a5d1d3833211252b1472f07f2c) with the default config (and node.js v0.4.8) etherpad runs as an own user named `etherpad` and is monitored by monit. The monitoring is as simple as that, `/etc/monit/apps/etherpad.monit`: diff --git a/_posts/2011-10-02-fast-and-simple-proxy-server.markdown b/_posts/2011-10-02-fast-and-simple-proxy-server.markdown index 101d292..81acda0 100644 --- a/_posts/2011-10-02-fast-and-simple-proxy-server.markdown +++ b/_posts/2011-10-02-fast-and-simple-proxy-server.markdown @@ -8,7 +8,7 @@ So you have this friend sitting somewhere else in the world and want to give him When searching for a proxy I found [dante](http://www.inet.no/dante/), but found it just to hard to just configure in a few minutes. -I'm a ruby programmer and I knew [Github](https://github) once released a small open-source proxy programm. +I'm a ruby programmer and I knew [Github](https://github.com) once released a small open-source proxy programm. It's called [proxymachine](https://github.com/mojombo/proxymachine), made by [@mojombo](https://github.com/mojombo/), one of the founders of github. Get it with: diff --git a/_posts/2013-01-04-29c3-or-my-first-congress.markdown b/_posts/2013-01-04-29c3-or-my-first-congress.markdown index 6f404bb..0498b59 100644 --- a/_posts/2013-01-04-29c3-or-my-first-congress.markdown +++ b/_posts/2013-01-04-29c3-or-my-first-congress.markdown @@ -24,4 +24,4 @@ Head over to [one of the mirrors][mirror] and watch a few talks. (click for bigger image) [wiki]: https://events.ccc.de/congress/2012/wiki/Main_Page -[mirror]: http://mirror.fem-net.de/CCC/29C3/ +[mirror]: http://media.ccc.de/browse/congress/2012/index.html diff --git a/_posts/2014-01-01-30c3.md b/_posts/2014-01-01-30c3.md index ef25943..2b70d34 100644 --- a/_posts/2014-01-01-30c3.md +++ b/_posts/2014-01-01-30c3.md @@ -13,7 +13,7 @@ You should definitely watch [Glenn Greenwald's keynote](https://events.ccc.de/co Other talks I watched that were good: * [The Tor Network](https://events.ccc.de/congress/2013/Fahrplan/events/5423.html) ([CCC TV link](http://media.ccc.de/browse/congress/2013/30C3_-_5423_-_en_-_saal_1_-_201312272030_-_the_tor_network_-_jacob_-_arma.html)) -* [To Protect And Infect, Part 2](https://events.ccc.de/congress/2013/Fahrplan/events/5713.html) ([CCC TV link](http://media.ccc.de/browse/congress/2013/i5TMBRf_-3TiDrceuY3osQ.html)) +* [To Protect And Infect, Part 2](https://events.ccc.de/congress/2013/Fahrplan/events/5713.html) ([CCC TV link](http://media.ccc.de/browse/congress/2013/30C3_-_5713_-_en_-_saal_2_-_201312301130_-_to_protect_and_infect_part_2_-_jacob.html#videohttp://media.ccc.de/browse/congress/2013/i5TMBRf_-3TiDrceuY3osQ.html)) * [Fnord News Show](https://events.ccc.de/congress/2013/Fahrplan/events/5714.html) ([CCC TV link](http://media.ccc.de/browse/congress/2013/30C3_-_5490_-_de_-_saal_1_-_201312300000_-_fnord_news_show_-_frank_-_fefe.html)) Some of the pictures I took: diff --git a/_posts/2014-08-12-first-experience-with-rust.md b/_posts/2014-08-12-first-experience-with-rust.md index dcb298c..9e13cd0 100644 --- a/_posts/2014-08-12-first-experience-with-rust.md +++ b/_posts/2014-08-12-first-experience-with-rust.md @@ -125,7 +125,7 @@ I don't see me writing lots of Rust code in the near future, but it certainly he [git-repo]: https://github.com/badboy/small-step-simple-rust [apidocs]: http://doc.rust-lang.org/std/index.html -[refman]: http://doc.rust-lang.org/rust.html +[refman]: http://doc.rust-lang.org/reference.html [gendoc]: http://doc.rust-lang.org/index.html [stevenklabnik]: https://twitter.com/steveklabnik [rust.vim]: https://github.com/wting/rust.vim diff --git a/_posts/2014-09-18-jsfest-week-2014.md b/_posts/2014-09-18-jsfest-week-2014.md index fd643cf..4f58c44 100644 --- a/_posts/2014-09-18-jsfest-week-2014.md +++ b/_posts/2014-09-18-jsfest-week-2014.md @@ -27,7 +27,7 @@ From sleep-hacking over making music and animations to making gifs even more awe The only downside was that I in fact didn't really have time for a whole 4 days off, so I wasn't too focused on the reject.js talks and I might have missed good things from it :( -But the two talks I _did_ attend and where I was attentive where [Hacking Sleep with JavaScript](http://rejectjs.org/speakers/#nick-rowe) by Nick Rowe and [Location-based Pokémon with Node.js](http://rejectjs.org/speakers/#stefanie-taepke) by Stefanie Taepke. +But the two talks I _did_ attend and where I was attentive where [Hacking Sleep with JavaScript](http://2014.rejectjs.org/speakers/#nick-rowe) by Nick Rowe and [Location-based Pokémon with Node.js](http://2014.rejectjs.org/speakers/#stefanie-taepke) by Stefanie Taepke. Nick built himself a nice _smart home_ powered by node.js, with automatic light dimming for an even better sleep. Definitely an interesting topic, though his setup isn't the cheapest one. Stefanie built a prototype of a [Location-based Pokémon game](https://github.com/stefina/pokemon). There's an online Pokédex you can use if you want to do something similar: [Pokéapi - The Pokémon RESTful API](http://pokeapi.co/). @@ -108,7 +108,7 @@ Followed by **Know Your /'s** in which [Lindsay Eyink](https://twitter.com/leyin The day was then coming to an end at yet another party, this time on a boat! There are photos of the conference and the parties [on flickr][flickr]. More to come for sure. The videos should be available on YouTube in the following weeks, I will probably link to them then. -Here's the [full schedule for reject.js](http://rejectjs.org/schedule/) and the [schedule for jsconfeu](https://docs.google.com/spreadsheet/pub?key=0AhO5JVicsAJOdENKSG0xZU5wOVN0U1F6T0FFOHU4NUE&gid=2). +Here's the [full schedule for reject.js](http://2014.rejectjs.org/schedule/) and the [schedule for jsconfeu](https://docs.google.com/spreadsheet/pub?key=0AhO5JVicsAJOdENKSG0xZU5wOVN0U1F6T0FFOHU4NUE&gid=2). ## Thanks! diff --git a/coderay.css b/coderay.css new file mode 100644 index 0000000..053eab0 --- /dev/null +++ b/coderay.css @@ -0,0 +1,122 @@ +.CodeRay { + background-color: hsl(0,0%,95%); + border: 1px solid silver; + color: black; + margin: 5px; +} +.CodeRay pre { + margin: 0px; +} + +span.CodeRay { white-space: pre; border: 0px; padding: 2px; } + +table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px; } +table.CodeRay td { padding: 2px 4px; vertical-align: top; } + +.CodeRay .line-numbers { + background-color: hsl(180,65%,90%); + color: gray; + text-align: right; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; +} +.CodeRay .line-numbers a { + background-color: hsl(180,65%,90%) !important; + color: gray !important; + text-decoration: none !important; +} +.CodeRay .line-numbers a:target { color: blue !important; } +.CodeRay .line-numbers .highlighted { color: red !important; } +.CodeRay .line-numbers .highlighted a { color: red !important; } +.CodeRay span.line-numbers { padding: 0px 4px; } +.CodeRay .line { display: block; float: left; width: 100%; } +.CodeRay .code { width: 100%; } +.CodeRay .code pre { overflow: auto; } + +.CodeRay .debug { color: white !important; background: blue !important; } + +.CodeRay .annotation { color:#007 } +.CodeRay .attribute-name { color:#f08 } +.CodeRay .attribute-value { color:#700 } +.CodeRay .binary { color:#509 } +.CodeRay .char .content { color:#D20 } +.CodeRay .char .delimiter { color:#710 } +.CodeRay .char { color:#D20 } +.CodeRay .class { color:#B06; font-weight:bold } +.CodeRay .class-variable { color:#369 } +.CodeRay .color { color:#0A0 } +.CodeRay .comment { color:#888 } +.CodeRay .comment .char { color:#444 } +.CodeRay .comment .delimiter { color:#444 } +.CodeRay .complex { color:#A08 } +.CodeRay .constant { color:#036; font-weight:bold } +.CodeRay .decorator { color:#B0B } +.CodeRay .definition { color:#099; font-weight:bold } +.CodeRay .delimiter { color:black } +.CodeRay .directive { color:#088; font-weight:bold } +.CodeRay .doc { color:#970 } +.CodeRay .doc-string { color:#D42; font-weight:bold } +.CodeRay .doctype { color:#34b } +.CodeRay .entity { color:#800; font-weight:bold } +.CodeRay .error { color:#F00; background-color:#FAA } +.CodeRay .escape { color:#666 } +.CodeRay .exception { color:#C00; font-weight:bold } +.CodeRay .float { color:#60E } +.CodeRay .function { color:#06B; font-weight:bold } +.CodeRay .global-variable { color:#d70 } +.CodeRay .hex { color:#02b } +.CodeRay .imaginary { color:#f00 } +.CodeRay .include { color:#B44; font-weight:bold } +.CodeRay .inline { background-color: hsla(0,0%,0%,0.1); color: black } +.CodeRay .inline-delimiter { font-weight: bold; color: #666 } +.CodeRay .instance-variable { color:#33B } +.CodeRay .integer { color:#00D } +.CodeRay .key .char { color: #60f } +.CodeRay .key .delimiter { color: #404 } +.CodeRay .key { color: #606 } +.CodeRay .keyword { color:#080; font-weight:bold } +.CodeRay .label { color:#970; font-weight:bold } +.CodeRay .local-variable { color:#963 } +.CodeRay .namespace { color:#707; font-weight:bold } +.CodeRay .octal { color:#40E } +.CodeRay .operator { } +.CodeRay .predefined { color:#369; font-weight:bold } +.CodeRay .predefined-class { color:#069 } +.CodeRay .predefined-type { color:#0a5; font-weight:bold } +.CodeRay .preprocessor { color:#579 } +.CodeRay .pseudo-class { color:#00C; font-weight:bold } +.CodeRay .regexp .content { color:#808 } +.CodeRay .regexp .delimiter { color:#404 } +.CodeRay .regexp .modifier { color:#C2C } +.CodeRay .regexp { background-color:hsla(300,100%,50%,0.09); } +.CodeRay .reserved { color:#080; font-weight:bold } +.CodeRay .shell .content { color:#2B2 } +.CodeRay .shell .delimiter { color:#161 } +.CodeRay .shell { background-color:hsla(120,100%,50%,0.09); } +.CodeRay .string .char { color: #b0b } +.CodeRay .string .content { color: #D20 } +.CodeRay .string .delimiter { color: #710 } +.CodeRay .string .modifier { color: #E40 } +.CodeRay .string { background-color:hsla(0,100%,50%,0.08); } +.CodeRay .symbol .content { color:#A60 } +.CodeRay .symbol .delimiter { color:#630 } +.CodeRay .symbol { color:#A60 } +.CodeRay .tag { color:#070 } +.CodeRay .type { color:#339; font-weight:bold } +.CodeRay .value { color: #088; } +.CodeRay .variable { color:#037 } + +.CodeRay .insert { background: hsla(120,100%,50%,0.1) } +.CodeRay .delete { background: hsla(0,100%,50%,0.1) } +.CodeRay .change { color: #bbf; background: #007; } +.CodeRay .head { color: #f8f; background: #505 } +.CodeRay .head .filename { color: white; } + +.CodeRay .delete .eyecatcher { background-color: hsla(0,100%,50%,0.2); border: 1px solid hsla(0,100%,45%,0.5); margin: -1px; border-bottom: none; border-top-left-radius: 5px; border-top-right-radius: 5px; } +.CodeRay .insert .eyecatcher { background-color: hsla(120,100%,50%,0.2); border: 1px solid hsla(120,100%,25%,0.5); margin: -1px; border-top: none; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; } + +.CodeRay .insert .insert { color: #0c0; background:transparent; font-weight:bold } +.CodeRay .delete .delete { color: #c00; background:transparent; font-weight:bold } +.CodeRay .change .change { color: #88f } +.CodeRay .head .head { color: #f4f }