Skip to main content

solarized 颜色主题 | the solarized color theme

尽管之前杂记里提了一下,但是现在还是特别再记录一下。

其实是偶然从linuxtoy里的脚本看到了这个主题名字,感觉很漂亮。然后深入搜了一下。

这个主题对比度相对比较低,或者说亮度上的对比度比较低,而主要靠色相来提高肉眼辨识度。
另外它的一个精妙的地方在于,颜色经过精心挑选,不论是深色背景还是浅色的,前景色都能很好的显示

以下是各种链接,除了我提到了还有一些其他的(我不常用的和没听说过的)

主页:
http://ethanschoonover.com/solarized

主git源: vim,emacs,mutt,gimp palette,Xresources
https://github.com/altercation/solarized

sigurdga的fork: gnome-terminal
https://github.com/sigurdga/gnome-terminal-colors-solarized

seebi的fork: dircolors, tmux
https://github.com/seebi/solarized


我的fork: 256color for gnome-terminal and guake
https://github.com/coolwanglu/gnome-terminal-colors-solarized


我的fork: Guake
https://github.com/coolwanglu/guake-colors-solarized

说明
1.guake和gnome-terminal用的gconf类似,手工copy一下就行。不过我打算写个脚本,顺便学学git
2.terminal的主题一定要配合dircolors一起用,否则ls出来会很难看
3.vim里有多种选项可以配置主题
4.原来gnome terminal那个是16色的port,我fork并改出一个256色的,另外加入了guake的支持
5.256色是终端不使用这个主题时的临时方法,所以我原来的理解有问题,于是分离出一个单独的guake源



Although I've already mentioned this theme in the previous misc notes, but now I've decided to introduce it again in this separated article.

Actually I saw the name of this theme in a configuration file mentioned in linuxtoy, I found it quite beautiful, then I took some googling.

The contrast of this theme is relatively low, or more precisely, low contrast in lightness, but the colors are still well distinguishable due to the different hue values used.
Another wonderful point of this theme is that, the colors are carefully chosen, such that the foreground colors can always show a good appearance no matter on a dark or light background, cool!

Here are some links, and note that the repositories may provide more than what I mention here (those I don't use or never heard about)

Homepage:
http://ethanschoonover.com/solarized

Main git repository: vim,emacs,mutt,gimp palette,Xresources
https://github.com/altercation/solarized

sigurdga's fork: gnome-terminal
https://github.com/sigurdga/gnome-terminal-colors-solarized

seebi's fork: dircolors, tmux
https://github.com/seebi/solarized


My fork: 256color for gnome-terminal and guake
https://github.com/coolwanglu/gnome-terminal-colors-solarized


My fork: Guake
https://github.com/coolwanglu/guake-colors-solarized

Notes:
1.guake uses a similar gconf schema with gnome-terminal, so a copy&paste works. Well I have planned to write a script for this, and learn some git by the way.
2.the theme for gnome-terminal should be used along with dircolors, otherwise the output of 'ls' would be a mess
3.there are some options for the vim theme
4.The gnome-terminal port above is a 16colors version, so I forked and made a 256colors version, also I added support for guake.
5.The '256color' version is a workaround for terminal applications, when this theme is not used in the terminal, so I did not understand it correctly. Now I've created a separated repository for Guake.

Comments

Popular posts from this blog

Determine Perspective Lines With Off-page Vanishing Point

In perspective drawing, a vanishing point represents a group of parallel lines, in other words, a direction. For any point on the paper, if we want a line towards the same direction (in the 3d space), we simply draw a line through it and the vanishing point. But sometimes the vanishing point is too far away, such that it is outside the paper/canvas. In this example, we have a point P and two perspective lines L1 and L2. The vanishing point VP is naturally the intersection of L1 and L2. The task is to draw a line through P and VP, without having VP on the paper. I am aware of a few traditional solutions: 1. Use extra pieces of paper such that we can extend L1 and L2 until we see VP. 2. Draw everything in a smaller scale, such that we can see both P and VP on the paper. Draw the line and scale everything back. 3. Draw a perspective grid using the Brewer Method. #1 and #2 might be quite practical. #3 may not guarantee a solution, unless we can measure distances/p...

Chasing an IO Phantom

My home server has been weird since months ago, it just becomes unresponsive occassionally. It is annoying but it happens only rarely, so normally I'd just wait or reboot it. But weeks ago I decided to get to the bottom of it. What's Wrong My system set up is: Root: SSD, LUKS + LVM + Ext4 Data: HDD, LUKS + ZFS 16GB RAM + 1GB swap Rootless dockerd The system may become unresponsive, when the IO on HDD  is persistantly high for a while. Also: Often kswapd0 has high CPU High IO on root fs (SSD) From dockerd and some containers RAM usage is high, swap usage is low It is very strange that IO on HDD can affect SSD. Note that when this happens, even stopping the IO on HDD does not always help. Usually restarting dockerd does not help, but rebooting helps. Investigation: Swap An obvious potential root cause is the swap. High CPU on kswapd0 usually means the free memory is low and the kernel is busy exchanging data between disk and swap. However, I tried the following steps, none of the...

Moving Items Along Bezier Curves with CSS Animation (Part 2: Time Warp)

This is a follow-up of my earlier article.  I realized that there is another way of achieving the same effect. This article has lots of nice examples and explanations, the basic idea is to make very simple @keyframe rules, usually just a linear movement, then use timing function to distort the time, such that the motion path becomes the desired curve. I'd like to call it the "time warp" hack. Demo See the Pen Interactive cubic Bezier curve + CSS animation by Lu Wang ( @coolwanglu ) on CodePen . How does it work? Recall that a cubic Bezier curve is defined by this formula : \[B(t) = (1-t)^3P_0+3(1-t)^2tP_1+3(1-t)t^2P_2+t^3P_3,\ 0 \le t \le 1.\] In the 2D case, \(B(t)\) has two coordinates, \(x(t)\) and \(y(t)\). Define \(x_i\) to the be x coordinate of \(P_i\), then we have: \[x(t) = (1-t)^3x_0+3(1-t)^2tx_1+3(1-t)t^2x_2+t^3x_3,\ 0 \le t \le 1.\] So, for our animated element, we want to make sure that the x coordiante (i.e. the "left" CSS property) is \(...