diff options
Diffstat (limited to 'jtlib/plugins/finish_plugin.py')
-rw-r--r-- | jtlib/plugins/finish_plugin.py | 21 |
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 + '-_') |