You are not logged in.

#1 2011-05-23 19:17:31

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Tyrs - NCurses Twitter and Identica client

Hello,

I'm a french archer, I haven't post often in this forum, but I'm more active on the french one.
I wish to introduce to you, as it might interest some archers, a small program that I wrote recently, Tyrs.

Tyrs is a Twitter client based on ncurses, writen in Python. I know there is some command line, like TTYter, but most of them miss one thing (to me at least) a ncurses support, and that what I tried to do. As lots of ncurses programs, it allow lots of customisation, as keybinding, colors, and more.

Here some features,

  • Oauth

  • Tweet/Retweet/Reply

  • UTF-8 (even chinese if wanted)

  • Navigable timeline

  • Follow/Unfollow

  • Mentions timeline, Direct message support, Search

  • Open URL in browser

  • Transparency, 256 colors support

  • Customisation (colors, keybinding, params)

  • On-line documentation

  • Github development, GPLv3

1306177300.png

As I still coding it, new features will come quickly, and I realy wish bring for exemple StatusNet support.
The installation on arch is easy, you'll find tyrs and tyrs-git on AUR.

To finish this post, two link:

  • Home page, with more screenshot, full documentation, changelog, quickstart guide.

  • Latest development aviable on Github.

Any feedback is always much apreciates, thanks.

Last edited by Nic0 (2011-06-05 15:17:23)

Offline

#2 2011-05-23 21:06:35

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 30,424
Website

Re: Tyrs - NCurses Twitter and Identica client

Really nice work Nic0. I have been using TTYtter for a long time now and Tyrs may just tempt me away from it.

I really like the customizable interface (by the way, the documentation for such a new project is very well done). The only issue I have had is that with tweet_borders enabled, some of them are not drawn completely. Not an issue as I prefer it disabled.

I'll keep running it and let you know if I come across anything else. Thanks for the great app.


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#3 2011-05-23 21:40:19

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

It's always nice to have some good feedback, thanks jasonwryan.

I don't use tweets_border option either, but I leave the choice up to the user, and that's indeed the idea, leave choices.

Offline

#4 2011-05-24 08:06:02

r6
Member
From: Melbourne
Registered: 2008-07-02
Posts: 156

Re: Tyrs - NCurses Twitter and Identica client

I get this error when installing:

Dependency `setuptools' of `tyrs' does not exist.

Offline

#5 2011-05-24 11:27:15

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

Hi,

It's might be a missing dependency, it's probably to run the setup.py install. I'm not sure, and I will try on a fresh install in VB if needed but try to install :

1 extra/python2-distribute 0.6.16-1 [installed]
    Easily build and distribute Python packages

If it does work, you still may try Tyrs following these step:

git clone git://github.com/Nic0/tyrs.git
cd tyrs
python2.7 tyrs/tyrs.py

Please let me know if the python2-distribute does the trick, as it might be added to the PKGBUILD then.
Thanks

Offline

#6 2011-05-24 18:50:30

r6
Member
From: Melbourne
Registered: 2008-07-02
Posts: 156

Re: Tyrs - NCurses Twitter and Identica client

Yep, python2-distribute worked. Probably should add that dependency.

I'll take a closer look tomorrow but so far it looks very handy.

Some quick initial impressions:
- I think you should include a default config file to make it easier on the user to start with.
- The interface feels a bit crowded. I have a small terminal open so the border around the edge seems unnecessary for me and feels cramped. Also gaps between tweets vary, be easier to read if there was one or no lines between every tweet.
- "about 8 minutes ago" is too verbose, maybe just say "8m"
- I have some crashes starting up. ValueError: No JSON object could be decoded. -- only sometimes

Offline

#7 2011-05-24 19:11:49

nosami
Member
Registered: 2010-09-16
Posts: 4

Re: Tyrs - NCurses Twitter and Identica client

Thanks for making this. This is just what I needed smile I've been using ttyter recently, but this is much nicer.
Thanks again.

Offline

#8 2011-05-24 21:16:56

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

r6 wrote:

Yep, python2-distribute worked. Probably should add that dependency.

I probably missed something, Tyrs depends of python-twitter, who depends on oauth-python2, who depends on setuptools which is the python2-distribute package, so it should have installed it? I will add it on dependency anyway, can't go wrong to add it.


r6 wrote:

- I think you should include a default config file to make it easier on the user to start with.

I did start with a commented configuration file, and I change my mind for a single documentation, easier to maintain, but i could put back all defaults params in a config file, it won't be to hard to maintain.

r6 wrote:

- The interface feels a bit crowded. I have a small terminal open so the border around the edge seems unnecessary for me and feels cramped. Also gaps between tweets vary, be easier to read if there was one or no lines between every tweet.

You're right, I'm not realy happy about how it's done, i better have a closer look, the main thing about theses tweets box, it's a wanted a height depending to the length of the tweet. I'll try to work this out for sure.

r6 wrote:

- "about 8 minutes ago" is too verbose, maybe just say "8m"

Those are handle directly by the twitter api, but i should be able to short them, and leave choice with an option. I don't realy use them, and I think there are not realy kept up to date on refresh...

r6 wrote:

- I have some crashes starting up. ValueError: No JSON object could be decoded. -- only sometimes

This came from the api again, my gess would be some network timeout? Certenly possible to catch it, and try to identify one more time, just in case.

Thanks a lot anyway for all those comments r6, I still have a lot to do with Tyrs.

@nosami, glad you like it. (TTYtter is a very nice client, with much more possibilities than Tyrs)

Offline

#9 2011-05-28 11:26:11

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

r6 wrote:

- I think you should include a default config file to make it easier on the user to start with.

I thought about that, I came up with something.
You can now generate a configuration file with the command line interface.

tyrs -g ~/testfile.cfg

It can be '-g' or '--generate-config', this will generate (almost) all defaults values in the conf file.
So I think it's a good way to get started quickly in the configuration file. Thanks again r6.

Offline

#10 2011-05-28 15:33:50

hellnest
Member
From: $ dmesg | grep ATA
Registered: 2010-11-11
Posts: 194
Website

Re: Tyrs - NCurses Twitter and Identica client

Nice application, i'm using it right now. Everything works as it should be smile


roll Snapping my own life roll
hmmgithubhmm
coolMyBlogcool

Offline

#11 2011-06-05 15:25:27

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

Hello,

Lots of changes for Tyrs, as a much more navigable timelines, better display, but the main feature is the support, at last, of Identi.ca.
I thought it might be relevent enought to let you know about identica and I update the post title as well.

Thanks again to jasonwryan for all the documentation help, it's very useful.

Offline

#12 2011-06-15 22:07:33

mandalic
Member
Registered: 2009-11-13
Posts: 43

Re: Tyrs - NCurses Twitter and Identica client

I got these lines in stdout after starting up the version from AUR:

Traceback (most recent call last):
  File "/usr/bin/tyrs", line 11, in <module>
    from tyrs.tyrs import main
  File "/usr/lib/python2.7/site-packages/tyrs/tyrs.py", line 28, in <module>
    import config
  File "/usr/lib/python2.7/site-packages/tyrs/config.py", line 23, in <module>
    import oauth2 as oauth
ImportError: No module named oauth2

Any suggestions?

Last edited by mandalic (2011-06-15 22:07:59)

Offline

#13 2011-06-15 22:18:16

Pank
Member
From: IT
Registered: 2009-06-13
Posts: 371

Re: Tyrs - NCurses Twitter and Identica client

:[~] $ clyde oauth2
1 aur/python-oauth2 1.2.0-2 (39)
    A fully tested, abstract interface to creating OAuth clients and servers.

Maybe?

It looks nice. Too bad I don't know what Twitter is (for).


Arch x64 on Thinkpad X200s/W530

Offline

#14 2011-06-15 22:31:22

mandalic
Member
Registered: 2009-11-13
Posts: 43

Re: Tyrs - NCurses Twitter and Identica client

naaah... I just installed the tyrs-git package from AUR, works like a charm! smile

thanks for reply, though... smile

Last edited by mandalic (2011-06-15 22:31:43)

Offline

#15 2011-06-16 22:43:12

teh
Member
From: Tijuana, Mexico
Registered: 2009-07-07
Posts: 374
Website

Re: Tyrs - NCurses Twitter and Identica client

If only I could see an option to read "in context" dents...

But so far, the best identi.ca client I've used.


arst

Offline

#16 2011-06-16 23:36:04

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

r6 wrote:

- The interface feels a bit crowded. I have a small terminal open so the border around the edge seems unnecessary for me and feels cramped.

Few things has been done for it by now, by default it isn't optimize for small terminal, but with few options you may disable borders, and take the maximum size of console, here some params to added for those who want have a try:

[params]
tweet_border = 0
compress = 1
margin = 0
padding = 0
teh wrote:

If only I could see an option to read "in context" dents...

But so far, the best identi.ca client I've used.

If you mean some kind of reply/mentions view like TTYtter does with the /thread command, it's already on my TODO-list, and I should come up with something in a week or two at most.
I'm glade you're like Tyrs, thanks

Offline

#17 2011-06-19 16:09:21

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

teh wrote:

If only I could see an option to read "in context" dents...

It's done with the today 0.3.3 release, with 'T' you may see the whole thread,
You may reconize that there is some context, as it append a small envelope icon to the tweet.

Offline

#18 2011-07-24 22:20:45

skinnyvoice
Member
From: London, UK
Registered: 2011-07-04
Posts: 18

Re: Tyrs - NCurses Twitter and Identica client

Hi, I'm liking Tyrs, thanks for your work. Using tyrs-git

One thing I would like is the option to show somebody's public timeline with a single keystroke when that person's tweet is highlighted. I might be missing it if it already there. I know it is only a few keystrokes, but hey smile

Thanks

Offline

#19 2011-07-24 22:43:56

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

Hi,

Here you go: https://github.com/Nic0/tyrs/commit/50e … ffba4c156c

It retreive with '^F' ctrl-f the current user timeline, you may override in your config file this by adding.

[keys]
search_current_user=x

Glade you like Tyrs wink

Offline

#20 2011-07-25 07:40:14

skinnyvoice
Member
From: London, UK
Registered: 2011-07-04
Posts: 18

Re: Tyrs - NCurses Twitter and Identica client

Sweet, thanks

Offline

#21 2011-07-25 07:44:17

skinnyvoice
Member
From: London, UK
Registered: 2011-07-04
Posts: 18

Re: Tyrs - NCurses Twitter and Identica client

Nic0 wrote:

Hi,

Here you go: https://github.com/Nic0/tyrs/commit/50e … ffba4c156c

It retreive with '^F' ctrl-f the current user timeline, you may override in your config file this by adding.

[keys]
search_current_user=x

Glade you like Tyrs wink

One issue, the first ^F does what it should, however, any subsequent ^F retrieves the timeline of the original keypress no matter what tweet is highlighted sad

Offline

#22 2011-07-26 11:38:46

Nic0
Member
From: France
Registered: 2009-05-10
Posts: 29
Website

Re: Tyrs - NCurses Twitter and Identica client

I've just fixed it, cheers

Offline

#23 2011-07-27 04:39:10

skinnyvoice
Member
From: London, UK
Registered: 2011-07-04
Posts: 18

Re: Tyrs - NCurses Twitter and Identica client

Thanks, that works well

Offline

#24 2011-07-29 00:17:49

clemerson
Member
From: Oregon
Registered: 2010-12-05
Posts: 5
Website

Re: Tyrs - NCurses Twitter and Identica client

Hi, I'm loving tyrs but it's not working after a recent update. I haven't seen anyone else having this error so it might be something in my setup.

Here's what I get when launching tyrs:

~> tyrs
Traceback (most recent call last):
  File "/usr/bin/tyrs", line 16, in <module>
    main()
  File "/usr/lib/python2.7/site-packages/src/tyrs.py", line 62, in main
    curses.wrapper(init_tyrs)
  File "/usr/lib/python2.7/curses/wrapper.py", line 43, in wrapper
    return func(stdscr, *args, **kwds)
  File "/usr/lib/python2.7/site-packages/src/tyrs.py", line 69, in init_tyrs
    init_interface()
  File "/usr/lib/python2.7/site-packages/src/tyrs.py", line 83, in init_interface
    user_interface = Interface()
  File "/usr/lib/python2.7/site-packages/src/interface.py", line 60, in __init__
    self.first_update()
  File "/usr/lib/python2.7/site-packages/src/interface.py", line 114, in first_update
    self.api.update_timeline(buff)
  File "/usr/lib/python2.7/site-packages/src/tweets.py", line 193, in update_timeline
    statuses = self.retreive_statuses(timeline)
  File "/usr/lib/python2.7/site-packages/src/tweets.py", line 216, in retreive_statuses
    statuses = self.api.GetDirectMessages(page=page)
  File "/usr/lib/python2.7/site-packages/twitter.py", line 2890, in GetDirectMessages
    return [DirectMessage.NewFromJsonDict(x) for x in data]
  File "/usr/lib/python2.7/site-packages/twitter.py", line 1779, in NewFromJsonDict
    return DirectMessage(created_at=data.get('created_at', None),
AttributeError: 'unicode' object has no attribute 'get'

First, I had tyrs-git from AUR, and this error happened after an update. So I switched to "tyrs", which was fine, but the latest update to this package has caused this same error to happen. Anyone have any ideas? Thanks!

Offline

#25 2011-10-11 19:31:59

geekmiki
Member
Registered: 2011-10-10
Posts: 72

Re: Tyrs - NCurses Twitter and Identica client

Hi,

Great work on Tyrs!
One question though, when I open a link with "o", the timeline gets all messed up and doesn't update correctly until I change to mentions and come back to the timeline. Is this a bug, feature? Is there any way to open a link without altering the timeline?
I am using Tyrs 0.4.2-1

Thanks!

Offline

Board footer

Powered by FluxBB