diff options
Diffstat (limited to 'users/glittershark')
-rw-r--r-- | users/glittershark/gws.fyi/config.el | 3 | ||||
-rw-r--r-- | users/glittershark/gws.fyi/index.org | 3 | ||||
-rw-r--r-- | users/glittershark/gws.fyi/orgExportHTML.nix | 30 | ||||
-rw-r--r-- | users/glittershark/gws.fyi/site.nix | 4 |
4 files changed, 32 insertions, 8 deletions
diff --git a/users/glittershark/gws.fyi/config.el b/users/glittershark/gws.fyi/config.el index d11f0e309df4..b05d897d3ddb 100644 --- a/users/glittershark/gws.fyi/config.el +++ b/users/glittershark/gws.fyi/config.el @@ -1,3 +1,6 @@ (require 'org) (setq org-html-postamble nil) + +(defadvice org-export-grab-title-from-buffer + (around org-export-grab-title-from-buffer-disable activate)) diff --git a/users/glittershark/gws.fyi/index.org b/users/glittershark/gws.fyi/index.org index 2af54253db98..18ed066b1cb2 100644 --- a/users/glittershark/gws.fyi/index.org +++ b/users/glittershark/gws.fyi/index.org @@ -1,3 +1,6 @@ +#+OPTIONS: title:nil +#+HTML_HEAD: <title>griffin smith</title> + my name is griffin ward smith (aka grfn, glittershark, gws) and i'm a software engineer and musician diff --git a/users/glittershark/gws.fyi/orgExportHTML.nix b/users/glittershark/gws.fyi/orgExportHTML.nix index b37be10045dd..153036789f6b 100644 --- a/users/glittershark/gws.fyi/orgExportHTML.nix +++ b/users/glittershark/gws.fyi/orgExportHTML.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs ? import <nixpkgs> {}, ... }: with pkgs; with lib; @@ -20,14 +20,29 @@ let in -src: +opts: let + src = if isAttrs opts then opts.src else opts; + headline = if isAttrs opts then opts.headline else null; + + bn = builtins.baseNameOf src; + filename = elemAt (splitString "." bn) 0; outName = - let bn = builtins.baseNameOf src; - filename = elemAt (splitString "." bn) 0; - in filename + ".html"; + if isNull headline + then + let bn = builtins.baseNameOf src; + filename = elemAt (splitString "." bn) 0; + in filename + ".html" + else "${filename}-${replaceStrings [" "] ["-"] filename}.html"; + + escapeDoubleQuotes = replaceStrings ["\""] ["\\\""]; + + navToHeadline = optionalString (! isNull headline) '' + (search-forward "${escapeDoubleQuotes headline}") + (org-narrow-to-subtree) + ''; in @@ -38,8 +53,9 @@ runCommand outName {} '' --load ${./config.el} \ --visit file.org \ --eval "(progn - (require 'org) + ${escapeDoubleQuotes navToHeadline} (org-html-export-to-html))" \ --kill - cp file.html $out + substitute file.html $out \ + --replace '<title>‎</title>' "" '' diff --git a/users/glittershark/gws.fyi/site.nix b/users/glittershark/gws.fyi/site.nix index 5a06203a6b1e..a74bee0bef0a 100644 --- a/users/glittershark/gws.fyi/site.nix +++ b/users/glittershark/gws.fyi/site.nix @@ -1,7 +1,9 @@ -args@{ pkgs, depot, ... }: +args@{ pkgs ? import <nixpkgs> {}, ... }: let + orgExportHTML = import ./orgExportHTML.nix args; + in { |