01:28:59 * ralsina reads backlog, shakes head a little. 02:10:40 <[Tritium]> at what? 02:25:26 <[Tritium]> What kind of plugin would you create if you wanted to post process the output of a page renderer (like markdown or pandoc) before a post gets split for a teaser? 02:48:59 <[Tritium]> actually it doesnt look like there is a place for me intercept between the call to compile a page and having it written to the output 03:15:51 <[Tritium]> What would be involved in adding a signal for 'post rendered'? 03:16:08 <[Tritium]> or 'post compiled', rather 03:33:26 <KwBot> [nikola] tritium21 opened issue #2369: Add a signal after a post is compiled. https://github.com/getnikola/nikola/issues/2369 04:16:42 <kbhat> Hi! I'm trying to embed a slideshow in a blog post, but the slides directive isn't working for me. Is there anything else that I need to take care of apart from https://getnikola.com/handbook.html#slideshows ? 04:17:50 <punchagan> kbhat: is there an error that you see? 04:17:57 <kbhat> punchagan: nope 04:18:30 <punchagan> just to be sure, you are using it inside an rst post, right? 04:18:31 <kbhat> The `.. slides:: ` and the filenames are just rendered as plaintext. 04:18:36 <kbhat> Ah. 04:18:39 <kbhat> Oops. 04:18:40 <kbhat> No. 04:18:50 <kbhat> I'm using Markdown. Is there an equivalent for that? 04:19:42 <punchagan> I'm not aware of anything for Markdown, but this directive could possibly be converted to a shortcode. 04:19:55 <kbhat> Shortcode? 04:19:56 <punchagan> https://getnikola.com/handbook.html#shortcodes 04:20:13 <kbhat> punchagan: awesome. Thanks a lot! 04:21:46 <punchagan> kbhat: again, I don't think there's already a shortcode that makes this ReST directive available to other markup formats, but it could be done. post-list for example has been made available in that way. 04:22:29 <kbhat> punchagan: Alright. I'll see if I can figure it out. 04:22:59 <punchagan> kbhat: I can try and help you in a couple of hours, if you aren't done by then. 04:24:29 <kbhat> punchagan: I'll probably be asleep by then. It isn't ultra-high-priority for me; just thought it'd be nicer in a blog post than a string of images one below the other. 04:24:42 <kbhat> I may come back to this at a later point though. 04:24:47 <punchagan> Cool 15:14:38 -GitHub[nikola]:#nikola- [nikola] tritium21 opened pull request #2370: Added 'compiled' signal (master...post_compile_signal) https://git.io/voCZw 15:20:49 -GitHub[nikola]:#nikola- [nikola] Kwpolska closed pull request #2370: Added 'compiled' signal (master...post_compile_signal) https://git.io/voCZw 15:21:01 <KwBot> [nikola] Kwpolska closed issue #2369: Add a signal after a post is compiled. https://github.com/getnikola/nikola/issues/2369 15:23:18 <[Tritium]> I tend to write one-line feature adds 15:23:34 <[Tritium]> thats the second one i had merged into nikola >.> 15:25:48 -travis-ci:#nikola- getnikola/nikola#7177 (master - 70fcee8 : Chris Warrick): The build passed. 15:25:49 -travis-ci:#nikola- Change view: https://github.com/getnikola/nikola/compare/43d3c51ccbc5...70fcee8548ce 15:25:49 -travis-ci:#nikola- Build details: https://travis-ci.org/getnikola/nikola/builds/137274950 15:40:54 <ChrisWarrick> any contribution is good 15:44:48 <ralsina> [Tritium]: one-line features are the best features 15:45:13 <ralsina> [Tritium]: because they not only are a feature, they make us feel warm and fuzzy about the internal design not being a piece of shit 15:46:44 <[Tritium]> Honestly, if i had to touch more than one method, I wouldnt have done it 15:48:00 <ralsina> [Tritium]: that's the beauty of signals 15:48:03 * ChrisWarrick looks for other one-method changes for [Tritium] 15:48:27 <ralsina> ChrisWarrick: like "hey, rewrite Post.text()"? ;-) 15:48:51 <ralsina> or the one that scans for posts. That one is a pile of crap :-) 15:49:19 <[Tritium]> ralsina: I will just replace it with a plugin (...since that is just a plugin) :) 15:49:54 <ralsina> There are a bunch of places in Nikola I would kill with fire, but I suspect the rewrite would be just as bad 15:52:35 <ChrisWarrick> we could do something about all those lists of posts (aka taxonomies aka tags/posts/…) 15:52:40 <ChrisWarrick> s/posts/categories/ 15:54:37 <ralsina> yep 15:54:53 <ralsina> like, creating a taxonomy class 15:55:16 <ralsina> and the specialize it for each thing, and have a single copy of all the RSS / index / whatever generations 15:55:17 <[Tritium]> I tried doing something smarter when I was writing my restricted clone.... lists are really efficent... 15:55:24 <ralsina> the timeline is just a very lax taxonomy 15:55:41 <ralsina> we can inherit list ;-) 16:00:19 * [Tritium] replaces it with sqlite 16:01:04 <[Tritium]> I mean, no, im not going to even try that... 16:02:00 <[Tritium]> but we gather a big data set, then want to query it on various properties. its done now by creating a list for every query we want to run. 16:02:12 <[Tritium]> thats what sql does 16:02:41 <[Tritium]> s/does/provides/ 16:02:46 <ralsina> yes, we are materializing things 16:03:42 <[Tritium]> how horrible of a performance hit would it be to have a list, and for all the taxonomies, we just iterate it with a generator? 16:03:54 <ralsina> so, a taonomy would be like a materialized query on the posts/pages database, and then RSS, indexes, etc would just be a function that takes a query and a config 16:04:09 <ralsina> [Tritium]: probably unnoticeable :-) 16:04:17 <ralsina> Nikola is very very IO bound 16:05:26 <[Tritium]> Thats a way to do it then... just have a big list of everything (as an instance member of a class or something), and for everything we want we just filter inside of a generator 16:07:25 <ChrisWarrick> building nikola on a SQL-esque database could be a fun idea 16:11:40 <[Tritium]> Of course changing the way nikola holds its posts internally will probably break a lot of people's sites and a number of plugins 16:13:05 <ChrisWarrick> murdering the Post class might be problematic 16:13:29 <ChrisWarrick> I actually do something like this (using a Redis hack instead of SQL) in Coil, but that’s probably not good for performance 16:22:58 <ralsina> well, everything can look as anything else in Python with a little ingenuity 16:23:22 <ralsina> I don't think anything accesses the internal data structure other than going through the timeline 16:23:49 <[Tritium]> so if the timeline changes to another object, it just has to be iterable (maybe indexable) 16:24:05 <ralsina> right