From d26a578e9827ec848774506cc7ac0a7bf10bca43 Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Wed, 18 Sep 2013 11:11:08 +0200 Subject: fork featherweight MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- src/featherweight.py | 102 --------------------------------------------------- 1 file changed, 102 deletions(-) delete mode 100755 src/featherweight.py (limited to 'src/featherweight.py') diff --git a/src/featherweight.py b/src/featherweight.py deleted file mode 100755 index d903f09..0000000 --- a/src/featherweight.py +++ /dev/null @@ -1,102 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -''' -featherweight – A lightweight terminal news feed reader - -Copyright © 2013 Mattias Andrée (maandree@member.fsf.org) - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -''' -import os -import sys -from subprocess import Popen, PIPE - -from flocker import * -from trees import * -from updater import * - - -old_stty = Popen('stty --save'.split(' '), stdout = PIPE, stderr = PIPE).communicate()[0] -old_stty = old_stty.decode('utf-8', 'error')[:-1] - -Popen('stty -icanon -echo'.split(' '), stdout = PIPE, stderr = PIPE).communicate() - - -args = sys.argv[1:] -update = '--update' in args -system = '--system' in args - - -home = os.environ['HOME'] -root = '%s/.featherweight' % home -if not os.path.exists(root): - os.makedirs(root) - -feeds = None -with touch('%s/feeds' % root) as feeds_flock: - flock(feeds_flock, False) - with open('%s/feeds' % root, 'rb') as file: - feeds = file.read().decode('utf-8', 'error') - if len(feeds) == 0: - feeds = '[]' - feeds = eval(feeds) - - if update: - group = None - for arg in args: - if not arg.startswith('-'): - group = arg - break - - def update_feed(feed, if_group): - if 'inner' in feed: - for feed in feed['inner']: - update_feed(feed, if_group) - elif (if_group is None) or (feed['group'] == if_group): - pass # TODO update feed - - for feed in feeds: - update_feed(feed, group) - - updated = str(feeds) - with open('%s/feeds' % root, 'wb') as file: - file.write(updated.encode('utf-8')) - - unflock(feeds_flock) - - -if system: - sys.exit(0) - -print('\033[?1049h\033[?25l\033[?9h', end = '') - -try: - tree = Tree('My Feeds', feeds) - while True: - (action, node) = tree.interact() - if action == 'quit': - break - elif action == 'edit': - if node is not None: - pass - elif action == 'open': - pass - -except Exception as err: - raise err - pass -finally: - Popen(['stty', old_stty], stdout = PIPE, stderr = PIPE).communicate() - print('\n\033[?9l\033[?25h\033[?1049l', end = '') - -- cgit v1.2.3-70-g09d2