tarkah / tickrs

Realtime ticker data in your terminal 📈
MIT License
1.16k stars 58 forks source link

add custom theming #69

Closed tarkah closed 3 years ago

tarkah commented 3 years ago

partially resolves #65

tarkah commented 3 years ago

@miraclx @rafi Check out this PR. I've added the ability to specify a custom theme in the config file. If no theme is found, it'll default to your terminal colors no different than before. Here are my colors, try adding the following.

background is an optional color that you can define. If left commented, it'll use your terminal background color. The reason for this is I can't set the actual terminal background color, just the terminal buffer I have access to. Some terminals have some padding and that padding remains the original terminal background. See this example screenshot, where my terminal background is light, but I'm specifying background in this theme config:

image

So it is preferable that you don't use the background color, unless your terminal doesn't have any padding anywhere that's visible when entering tickrs alternate screen

theme:
  #background: "#403E41"
  foreground_inactive: "#727072"
  profit: "#ADD977"
  loss: "#FA648A"
  text_normal: "#FCFCFA"
  text_primary: "#FFDA65"
  text_secondary: "#79DBEA"
  border_primary: "#FC9766"
  border_secondary: "#FCFCFA"
  border_axis: "#FC9766"
  highlight_focused: "#FC9766"
  highlight_unfocused: "#727072"
tarkah commented 3 years ago

Also, I tried not to go overboard on the number of color options. I think most of them make sense, but I'm open to suggestions on changing the names / configuration.

tarkah commented 3 years ago

Ahh good catches. My theme had Cyan and LightCyan the same, so I never noticed this difference.

I don't really see the need to have 2 slight variations of the same color, especially now as it'd be an additional theme color that needs to be specified.

miraclx commented 3 years ago

I agree though, best to keep things simple yet configurable. In a sense, the color standardization actually looks better.