about summary refs log tree commit diff stats
path: root/doc
diff options
context:
space:
mode:
authorSrivathsan Murali <sri@vathsan.com>2019-11-03 13:51:14 +0100
committerDrew DeVault <sir@cmpwn.com>2019-11-10 10:15:49 -0500
commit3ba69edab5f0c787424dac9649e43a7743da13ca (patch)
treebccbdd4e1844cc89f011839f0d6557012a14d1d0 /doc
parentad68a9e4e471eb708893ad16601ab14a4672a2da (diff)
downloadaerc-3ba69edab5f0c787424dac9649e43a7743da13ca.tar.gz
Add Templates with Parsing
+ Changes NewComposer to return error.
+ Add lib to handle templates using "text/template".
+ Add -T option to following commands
    - compose.
    - reply
    - forward
+ Quoted replies using templates.
+ Forwards as body using templates
+ Default templates are installed similar to filters.
+ Templates Config in aerc.conf.
    - Required templates are parsed while loading config.
+ Add aerc-templates.7 manual for using template data.
Diffstat (limited to 'doc')
-rw-r--r--doc/aerc-config.5.scd25
-rw-r--r--doc/aerc-templates.7.scd89
2 files changed, 114 insertions, 0 deletions
diff --git a/doc/aerc-config.5.scd b/doc/aerc-config.5.scd
index f4f02f2..0cde160 100644
--- a/doc/aerc-config.5.scd
+++ b/doc/aerc-config.5.scd
@@ -240,6 +240,31 @@ They are configured in the *[triggers]* section of aerc.conf.
 	Format specifiers from *index-format* are expanded with respect to the new
 	message.
 
+## Templates
+
+Templates are used to populate the body of an email. The compose, reply
+and forward commands can be called with the -T flag with the name of the
+template name.
+
+aerc ships with some default templates installed in the share directory (usually
+_/usr/share/aerc/templates_).
+
+*template-dirs*
+	The directory where the templates are stored. The config takes a
+	colon-separated list of dirs.
+
+	Default: "/usr/share/aerc/templates"
+
+*quoted-reply*
+	The template to be used for quoted replies.
+
+	Default: "quoted_reply"
+
+*forwards*
+	The template to be used for forward as body.
+
+	Default: "forward_as_body"
+
 # ACCOUNTS.CONF
 
 This file is used for configuring each mail account used for aerc. Each section
diff --git a/doc/aerc-templates.7.scd b/doc/aerc-templates.7.scd
new file mode 100644
index 0000000..8504a60
--- /dev/null
+++ b/doc/aerc-templates.7.scd
@@ -0,0 +1,89 @@
+aerc-templates(7)
+
+# NAME
+
+aerc-templates - template file specification for *aerc*(1)
+
+# SYNOPSIS
+
+aerc uses the go "text/template" package for the template parsing
+which supports basic go lang operations.
+
+# MESSAGE DATA
+
+The following data can be used in templates. Though they are not all
+available always.
+
+*Addresses*
+	An array of mail.Address. That can be used to add sender or recipient
+	names to the template.
+
+	- From: List of senders.
+	- To: List of To recipients. Not always Available.
+	- Cc: List of Cc recipients. Not always Available.
+	- Bcc: List of Cc recipients. Not always Available.
+	- OriginalFrom: List of senders of the original message.
+	  Available for quoted reply and forward.
+
+	Example:
+
+	Get the name of the first sender.
+	```
+	{{(index .From 0).Name}}
+	```
+
+	Get the email address of the first sender
+	```
+	{{(index .From 0).Address}}
+	```
+
+*Date and Time*
+	The date and time information is always available and can be easily
+	formated.
+
+	- Date: Date and Time information when the compose window is opened.
+	- OriginalDate: Date and Time when the original message of received.
+	  Available for quoted reply and forward.
+
+	The _dateFormat_ function can be used to format the date and time.
+
+	Example:
+
+	Format the date to go's time package format options.
+	```
+	{{dateFormat .Date "Mon Jan 2 15:04:05 -0700 MST 2006"}}
+	```
+
+*Subject*
+	The subject of the email is available for quoted reply and forward.
+
+	Example:
+	{{.Subject}}
+
+*Original Message*
+	When using quoted reply or forward, the original message is available.
+	It can be used using two functions that are available to templates.
+
+	Example:
+
+	_wrapText_ function can be used to wrap the original text to a number
+	of characters per line.
+	```
+	{{wrapText .OriginalText 72}}
+	```
+
+	_quote_ function prepends each line with "> " and wraps the text to
+	72 characters pre line.
+	```
+	{{quote .OriginalText}}
+	```
+
+# SEE ALSO
+
+*aerc*(1) *aerc-config*(5)
+
+# AUTHORS
+
+Maintained by Drew DeVault <sir@cmpwn.com>, who is assisted by other open
+source contributors. For more information about aerc development, see
+https://git.sr.ht/~sircmpwn/aerc.