michael-lazar / rtv

Browse Reddit from your terminal
MIT License
4.64k stars 274 forks source link

Change the format of post/comment entries. #559

Closed ghost closed 6 years ago

ghost commented 6 years ago

I think that the format of post/comment listing of rtv is not compact enough. Remember that most terminals are 80*25 by default in size, and your layout takes too much space. Current:

1. Post title
hxxps://URL
123 pts v 10hr - 456 comments
Username /r/subreddit [Flair]

It used 4 lines, including a line of URL that is useless. I have talked about it in issue #556.

2. [Comment] First line of comment content.
Second line of comment content.
hxxps://URL
-24 pts ^ 39min
Username /r/subreddit

No information about which post the comment is replying to, and make the user thinks that it is a post.Plus the first line is not aligned. My suggestion:

<123-|456C> [Post flair] Post title
Post at 06-03 08:00 by [User flair] Username in /r/subreddit

Only occupies 2 lines.Use "." for neutral, "+" for upvoted and "-" for downvoted. You can fetch the exact time, so do it.If less than a year, use MM-DD hh:mm format, otherwise YYYY-MM-DD.

<123+|456C> [Post flair] Title of related post.
<-24+> Cmnt at 2015-06-03 by [User flair] Username in /r/subreddit
First line of comment content.
Second line of comment content.

This includes the original post title, and comment lines are aligned.

michael-lazar commented 6 years ago

Quick mockup of your suggestion:

screen shot 2018-06-03 at 1 56 23 pm

I think I understand the compact "look and feel" that you're trying to go for here, because I've seen it used in many other cli applications. But this is not the direction that I want to go with RTV. I'm trying to prioritize readability first and having too much text close together can be straining on the eyes. Especially if you remove the colors:

screen shot 2018-06-03 at 2 20 14 pm

The current layout is actually copied from a reddit phone app (I can't remember which one). IMO It looks best if you stretch the your terminal to ~50 lines to match the dimensions of a smartphone. You should check out https://github.com/Cotix/cReddit. I haven't used it in a while, but it uses a more compact layout that you might like.

ghost commented 6 years ago

My suggestion is mainly from [the old design of Reddit], without the buttons and such. 2018-06-04-104004_1152x864_scrot

copied from a Reddit phone app

I think that you should drop your smartphone mentality. A TUI program is very different from a smartphone application. Smartphones have high resolutions, very large fonts, and touch input is very inaccurate, so it has to add margins and paddings to make sure each entry is large enough for the user to touch reliably. A TUI program is mainly keyboard-driven (sometimes with a mouse that can place the cursor precisely), so readability is not a concern, plus my suggestion is fairly readable even without color. Remember that rtv users are power users that could use a terminal, and want their programs to suck less. This is not GNOME. There is no point making them NoobUser-friendly. 2018-06-04-105520_1152x864_scrot This is aptitude, a TUI frontend to Debian's APT. Note that there is no padding between entries. 2018-06-04-105907_1152x864_scrot The same can be said for htop. Remember that you cannot expect that you could stretch the terminal when you are using a minimal WM. Also, the Linux console's fallback text-mode resolution is 80*25, you should consider that. About the reverse video: The Linux console cannot process bold, italic or underlined text as-is, but the reverse video is supported.