Coder Social home page Coder Social logo

baconbird's Introduction

README for baconbird
====================
Andreas Krennmair <[email protected]>

Introduction
------------
Baconbird is a Twitter client for text terminals.

Downloading
-----------

You can download baconbird releases from the baconbird website:

	http://synflood.at/baconbird.html

The latest source code can be found on GitHub:

	http://github.com/akrennmair/baconbird

Dependencies
------------
Baconbird depends on a number of software packages and libraries, which need to 
be installed beofre baconbird can be used.

- Perl (5.10 or newer): http://www.perl.org/
- STFL (0.21 or newer): http://www.clifford.at/stfl/
- Perl modules:
	* Moose
	* Net::Twitter
	* WWW::Shorten
	* URI::Find
	* HTML::Strip
	* IO::Socket::SSL
	* Config::General
	* String::Format
	* autodie
	* IPC::System::Simple

Debian squeeze (and later) comes with ready-to-use packages for these 
dependencies. The required packages are: 
- libmoose-perl 
- libnet-twitter-perl 
- libwww-shorten-perl 
- liburi-find-perl 
- libhtml-strip-perl 
- libstfl-perl
- libio-socket-ssl-perl
- libconfig-general-perl
- libstring-format-perl
- libautodie-perl
- libipc-system-simple-perl

Installation
------------

Installing baconbird is as simple as:

	perl Makefile.PL
	make
	make install

The first command will generate a Makefile and check BaconBird's dependencies. 
The second command will prepare BaconBird for installation and generate 
documentation, while the third command will install BaconBird.

When using "make install", you have the usual parameters "prefix" and "DESTDIR" 
available to control where your program will be installed and where the 
installation files will be copied to.

Contact
-------
Andreas Krennmair <[email protected]>

License
-------
Baconbird is licensed under the MIT/X Consortium License. See the file LICENSE
for further details.

baconbird's People

Contributors

akrennmair avatar jcmuller avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

baconbird's Issues

Implement misc. timelines

The following timelines should be trivial to implement, but nobody has done so yet:

  • retweeted_by_me
  • retweeted_to_me
  • retweets_of_me

Implement filters

Filters shall be configurable, namely in two way. First, a "killfile" mode to hide certain tweets, second a "highlight" mode to highlight certain tweets with fancy colors.

Implement saved searches

The Twitter API (and also Net::Twitter) provides functionality to save searches, i.e. a user can save search phrases on the Twitter servers and look them up again later. In order the have this functionality available in baconbird, a user must be able to:

  • view a list of all saved search phrases
  • save a search phrase (probably from the current search result)
  • delete previously saved search phrases
  • view the current search results for a specific saved search phrase.

Show user timeline for any user

Currently, it's only possible to view the user timeline of users whose tweet you can currently see (e.g. in your home timeline, from replies, DMs, etc.). This should be extended so that any user's timeline can be viewed, e.g. by entering a username.

Implement multi-account support

Currently, only logging in as one specific account is possible. This should be extended so that you can login as two or more accounts and read all of their tweets. The following things should be considered:

  • find a way to save the OAuth tokens for all the different accounts (one file per account, maybe?).
  • provide the ability to add (and delete!) configured accounts.
  • it must be possible to select as which account a tweet should be posted.
  • if several configured accounts follow the same user, display tweets of this user only once.
  • find a way to continuously load updates without making the UI slow (background thread? Twitter streaming API? [much development effort])

Toggling detailed view in help

When detailed view is toggled in Baconbird (keybinding 'v') one sees two windows. The user changes to help view ('?'). Baconbird shows two windows (help and detailed view of an old tweet) and 'v' doesn't toggle view. From my point of view it is better to activate 'v' so that a user can view help in fullscreen or automatically toggle detailed view /before/ switching to help.

Characters not mapping to iso-8859-1

If I use Unicode characters like „ “ and …, I get this error message when I try to send the tweet:

Error: "\x{2026}" does not map to iso-8859-1 at /usr/lib/perl/5.10/Encode.pm line 195.

Twitter itself supports these characters, I have used them in other clients and the web interface.

Implement identi.ca support

As soon as multi-account support has been implemented, it would be nice to also have identi.ca support (Net::Twitter does much of necessary stuff for us).

Failure to start browser goes unnoticed

When the browser cannot be started (for example, is still configured to links and links is not installed), baconbird does not detect this error.

You might want to look at the autodie pragma.

Favorite tweet feedback

Favorite tweets are rendered like regular ones, so the user doesn't know whether a tweet has the favorite flag on.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.