+;; Customizations
+
+(defgroup pelican-mode nil
+ "Support for Pelican articles and pages.
+
+For more information about Pelican see URL https://blog.getpelican.com/."
+ :group 'convenience)
+
+(defcustom pelican-mode-keymap-prefix (kbd "C-c P")
+ "Pelican mode keymap prefix."
+ :group 'pelican-mode
+ :type 'string)
+
+(defcustom pelican-mode-default-page-fields
+ '(:slug slug)
+ "Fields to include when creating a new page.
+
+See the documentation for `pelican-mode-set-field' for more information
+about metadata fields and special values."
+ :group 'pelican-mode
+ :type '(plist))
+
+(defcustom pelican-mode-default-article-fields
+ '(:date now :status "draft" :slug slug)
+ "Fields to include when creating a new article.
+
+See the documentation for `pelican-mode-set-field' for more information
+about metadata fields and special values."
+ :group 'pelican-mode
+ :type '(plist))
+
+(defcustom pelican-mode-formats
+ '((adoc-mode . pelican-mode-set-field-adoc-mode)
+ (markdown-mode . pelican-mode-set-field-markdown-mode)
+ (org-mode . pelican-mode-set-field-org-mode)
+ (rst-mode . pelican-mode-set-field-rst-mode))
+ "Functions to handle setting metadata, based on major mode.
+
+This association list maps modes to functions that take two
+arguments, field and value strings."
+ :group 'pelican-mode
+ :type '(alist :key-type function :value-type function))
+
+\f
+