-
Notifications
You must be signed in to change notification settings - Fork 1
/
page.py
44 lines (30 loc) · 1.28 KB
/
page.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/usr/bin/env python
import os
from common import *
PAGE_DIRECTORY=os.path.join(CONTENT_DIRECTORY, "pages")
def create(**kwargs):
"""Creates a brand new pelican page under content/pages.
arguments
--title: The title of the page and value used for slugifying the page
--markup: The markup language to use (default: markdown)
"""
markup = kwargs.get("markup", DEFAULT_MARKUP)
file_information = get_file_render_information("page", markup)
create_new_pelican_file(file_information, PAGE_DIRECTORY, kwargs)
def list(pattern):
"""Searches for and lists pages under content/pages.
arguments
<pattern>: The pattern to use when searching for pages, this is a case insensitive regular expression
"""
list_pelican_files(PAGE_DIRECTORY, search=pattern)
def edit(pattern):
"""Works like list but opens the page in your git editor.
This is a shortcut method for editing a page.
arguments:
<pattern>: required pattern to use when searching for pages to edit
"""
list_pelican_files(PAGE_DIRECTORY, edit=True, search=pattern)
def remove(pattern, force=False):
"""Works like list but prompts user to remove the files instead.
"""
list_pelican_files(PAGE_DIRECTORY, search=pattern, remove=True, force=force)