@@ -2137,89 +2137,6 @@ may_toggle_cursor(term_T *term)
21372137static int
21382138color2index (VTermColor * color , int fg , int * boldp )
21392139{
2140- int red = color -> red ;
2141- int blue = color -> blue ;
2142- int green = color -> green ;
2143-
2144- if (color -> ansi_index != VTERM_ANSI_INDEX_NONE )
2145- {
2146- // The first 16 colors and default: use the ANSI index.
2147- switch (color -> ansi_index )
2148- {
2149- case 0 :
2150- return 0 ;
2151- case 1 :
2152- return lookup_color (0 , fg , boldp ) + 1 ; /* black */
2153- case 2 :
2154- return lookup_color (4 , fg , boldp ) + 1 ; /* dark red */
2155- case 3 :
2156- return lookup_color (2 , fg , boldp ) + 1 ; /* dark green */
2157- case 4 :
2158- return lookup_color (6 , fg , boldp ) + 1 ; /* brown */
2159- case 5 :
2160- return lookup_color (1 , fg , boldp ) + 1 ; /* dark blue */
2161- case 6 :
2162- return lookup_color (5 , fg , boldp ) + 1 ; /* dark magenta */
2163- case 7 :
2164- return lookup_color (3 , fg , boldp ) + 1 ; /* dark cyan */
2165- case 8 :
2166- return lookup_color (8 , fg , boldp ) + 1 ; /* light grey */
2167- case 9 :
2168- return lookup_color (12 , fg , boldp ) + 1 ; /* dark grey */
2169- case 10 :
2170- return lookup_color (20 , fg , boldp ) + 1 ; /* red */
2171- case 11 :
2172- return lookup_color (16 , fg , boldp ) + 1 ; /* green */
2173- case 12 :
2174- return lookup_color (24 , fg , boldp ) + 1 ; /* yellow */
2175- case 13 :
2176- return lookup_color (14 , fg , boldp ) + 1 ; /* blue */
2177- case 14 :
2178- return lookup_color (22 , fg , boldp ) + 1 ; /* magenta */
2179- case 15 :
2180- return lookup_color (18 , fg , boldp ) + 1 ; /* cyan */
2181- case 16 :
2182- return lookup_color (26 , fg , boldp ) + 1 ; /* white */
2183- }
2184- }
2185-
2186- if (t_colors >= 256 )
2187- {
2188- if (red == blue && red == green )
2189- {
2190- /* 24-color greyscale plus white and black */
2191- static int cutoff [23 ] = {
2192- 0x0D , 0x17 , 0x21 , 0x2B , 0x35 , 0x3F , 0x49 , 0x53 , 0x5D , 0x67 ,
2193- 0x71 , 0x7B , 0x85 , 0x8F , 0x99 , 0xA3 , 0xAD , 0xB7 , 0xC1 , 0xCB ,
2194- 0xD5 , 0xDF , 0xE9 };
2195- int i ;
2196-
2197- if (red < 5 )
2198- return 17 ; /* 00/00/00 */
2199- if (red > 245 ) /* ff/ff/ff */
2200- return 232 ;
2201- for (i = 0 ; i < 23 ; ++ i )
2202- if (red < cutoff [i ])
2203- return i + 233 ;
2204- return 256 ;
2205- }
2206- {
2207- static int cutoff [5 ] = {0x2F , 0x73 , 0x9B , 0xC3 , 0xEB };
2208- int ri , gi , bi ;
2209-
2210- /* 216-color cube */
2211- for (ri = 0 ; ri < 5 ; ++ ri )
2212- if (red < cutoff [ri ])
2213- break ;
2214- for (gi = 0 ; gi < 5 ; ++ gi )
2215- if (green < cutoff [gi ])
2216- break ;
2217- for (bi = 0 ; bi < 5 ; ++ bi )
2218- if (blue < cutoff [bi ])
2219- break ;
2220- return 17 + ri * 36 + gi * 6 + bi ;
2221- }
2222- }
22232140 return 0 ;
22242141}
22252142
0 commit comments