From 7c5fccce209b5483ef9e7eb0884507b0109f3585 Mon Sep 17 00:00:00 2001 From: 0x1eef <0x1eef@protonmail.com> Date: Fri, 21 Jun 2024 21:47:20 -0300 Subject: [PATCH] Add docs --- nanoc/lib/mixin/erb.rb | 9 +++++++++ nanoc/lib/mixin/t.rb | 14 ++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/nanoc/lib/mixin/erb.rb b/nanoc/lib/mixin/erb.rb index efbbdf429..f39b4e458 100644 --- a/nanoc/lib/mixin/erb.rb +++ b/nanoc/lib/mixin/erb.rb @@ -1,6 +1,15 @@ # frozen_string_literal: true +## +# The {Mixin::ERB Mixin::ERB} module provides a method +# that can render an ERB template module Mixin::ERB + ## + # @param [String] file + # The path to an ERB template + # @param [Hash] local_assigns + # Template variables + # @return [String] def erb(file, local_assigns = {}) erb = File.binread File.join(dirs.content, "html", file) ctx = binding diff --git a/nanoc/lib/mixin/t.rb b/nanoc/lib/mixin/t.rb index 4559a2c4b..e5437d4de 100644 --- a/nanoc/lib/mixin/t.rb +++ b/nanoc/lib/mixin/t.rb @@ -1,11 +1,25 @@ # frozen_string_literal: true +## +# The {Mixin::T Mixin::T} module provides a method that +# can render user-facing text strings in different +# locales / languages module Mixin::T + ## + # @param [String] locale + # Locale (eg "en") + # @param [String] key + # Translation key (eg "TheNobleQuran") + # @param [Hash] local_assigns + # Template variables + # @return [String] def t(locale, key, local_assigns = {}) str = [locale, *key.split(".")].inject(tdata) { _1[_2] } format(str, local_assigns) end + private + def tdata @tdata ||= Ryo.from_json(path: File.join(dirs.content, "json", "t.json")) end