summaryrefslogtreecommitdiff
path: root/jtlib/plugins/finish_plugin.py
diff options
context:
space:
mode:
Diffstat (limited to 'jtlib/plugins/finish_plugin.py')
-rw-r--r--jtlib/plugins/finish_plugin.py21
1 files changed, 16 insertions, 5 deletions
diff --git a/jtlib/plugins/finish_plugin.py b/jtlib/plugins/finish_plugin.py
index e98f59a..1336ea0 100644
--- a/jtlib/plugins/finish_plugin.py
+++ b/jtlib/plugins/finish_plugin.py
@@ -40,10 +40,8 @@ class FinishCommand(cliapp.Plugin):
if not title:
raise Exception("%s has no title" % draft_mdwn)
- pub_attch = os.path.join(
- self._published_dir(),
- self._summarise_title(title))
- pub_mdwn = pub_attch + '.mdwn'
+ pub_attch = self.app.layout.get_filename(title)
+ pub_mdwn = self.app.layout.get_filename(title) + '.mdwn'
if os.path.exists(pub_mdwn):
raise cliapp.AppException('%s already exists' % pub_mdwn)
@@ -59,12 +57,25 @@ class FinishCommand(cliapp.Plugin):
self._push_git()
def _published_dir(self):
- subdir = time.strftime('%Y/%m/%d', self.app.now_tuple)
+ subdirs = {
+ 'ct': '%d' % self.app.now_tuple.tm_year,
+ 'pkb': time.strftime('%Y/%m/%d', self.app.now_tuple),
+ }
+
+ subdir = subdirs[self.app.settings['layout']]
return os.path.join(
self.app.settings['source'],
self.app.settings['notes-dir'],
subdir)
+ def _published_basename(self, title, draft_mdwn):
+ layout = self.app.settings['layout']
+ basenames = {
+ 'ct': time.strftime('%Y-%m-%d-%H:%M:%S', self.app.now_tuple),
+ 'pkb': self._summarise_title(title),
+ }
+ return basenames[layout]
+
def _summarise_title(self, title):
basename = ''
acceptable = set(string.ascii_letters + string.digits + '-_')