kuy / Google Keyword Highlight

Coloring search keywords in the result of Google search.

Changed (Δ254 bytes):

raw changeset »

google_colored_keywords.user.js (11 lines added, 7 lines removed)

Up to file-list google_colored_keywords.user.js:

@@ -27,9 +27,9 @@ var cfg = {
27
27
//// Colors
28
28
var colors = [
29
29
    'rgb(255, 255, 102)', 'rgb(160, 255, 255)', 'rgb(153, 255, 153)',
30
    'rgb(255, 153, 153)', 'rgb(255, 102, 255)', 'rgb(136, 0, 0)',
31
    'rgb(0, 170, 0)', 'rgb(136, 104, 0)', 'rgb(0, 70, 153)',
32
    'rgb(153, 0, 153)'
30
    'rgb(255, 153, 153)', 'rgb(255, 102, 255)', ['rgb(136, 0, 0)', 'white'],
31
    ['rgb(0, 170, 0)', 'white'], ['rgb(136, 104, 0)', 'white'],
32
    ['rgb(0, 70, 153)', 'white'], ['rgb(153, 0, 153)', 'white']
33
33
];
34
34
var clen = colors.length;
35
35
@@ -92,7 +92,10 @@ var assignColor = function(keyword){
92
92
    callee = arguments.callee;
93
93
    var assign = function(k){
94
94
        var next = callee.nextIndex || 0;
95
        cmap[k] = colors[(next + clen) % clen];
95
        var color = colors[(next + clen) % clen];
96
        if(color.constructor == ''.constructor)
97
            color = [color, 'black'];
98
        cmap[k] = color;
96
99
        callee.nextIndex = next + 1;
97
100
    }
98
101
    if(cfg.mode === 'smart' && cfg.limit < keyword.length){
@@ -124,7 +127,7 @@ var getColor = function(keyword){
124
127
    keyword = keyword.replace(/\s+/g, ' ');
125
128
    if(hasColor(keyword))
126
129
        return hasColor.$;
127
    var color = '';
130
    var color = ['white', 'black'];
128
131
    if(cfg.mode !== 'strict')
129
132
        color = assignColor(keyword);
130
133
    return color;
@@ -156,13 +159,14 @@ var main = function(){
156
159
    for(var i = 0, l = ems.length; i < l; i++){
157
160
        if(!ems[i]) break;
158
161
        var color = getColor(ems[i].innerHTML);
159
        ems[i].style.backgroundColor = color;
162
        ems[i].style.color = color[1];
163
        ems[i].style.backgroundColor = color[0];
160
164
    }
161
165
162
166
    // coloring header keywords
163
167
    $x('id("ssb")/p/b[4]')[0].innerHTML = keywords.map(function(k){
164
168
        var color = getColor(k);
165
        return '<span style="background-color: ' + color + ';">' + k + '</span>';
169
        return '<span style="color: ' + color[1] + '; background-color: ' + color[0] + ';">' + k + '</span>';
166
170
    }).join(' ');
167
171
168
172
//    console.log(cmap);