diff --git a/.conkerorrc/gtk2rc b/.conkerorrc/gtk2rc new file mode 100644 index 0000000..fd511e5 --- /dev/null +++ b/.conkerorrc/gtk2rc @@ -0,0 +1,11 @@ +include "/home/slash/.gtkrc-2.0" + +style "noscrollbars" { + GtkScrollbar::slider-width=0 + GtkScrollbar::trough-border=0 + GtkScrollbar::has-backward-stepper=0 + GtkScrollbar::has-forward-stepper=0 + GtkScrollbar::has-secondary-backward-stepper=0 + GtkScrollbar::has-secondary-forward-stepper=0 +} +widget "MozillaGtkWidget.*" style "noscrollbars" diff --git a/.conkerorrc/init.js b/.conkerorrc/init.js new file mode 100644 index 0000000..1639c1e --- /dev/null +++ b/.conkerorrc/init.js @@ -0,0 +1,152 @@ +require("favicon"); + +theme_load_paths.push("/home/slash/.conkerorrc/themes/"); + +define_browser_object_class( + "history-url", null, + function (I, prompt) { + check_buffer(I.buffer, content_buffer); + var result = yield I.buffer.window.minibuffer.read_url( + $prompt = prompt, $use_webjumps = false, $use_history = true, + $use_bookmarks = false, $sort_order = 'date_descending' + ); + yield co_return(result); + } +); + +function oni_before_quit_func() { + var w = get_recent_conkeror_window(); + var result = (w == null) || + "y" == (yield w.minibuffer.read_single_character_option( + $prompt="Quit Conkeror? (y/n)", + $options=["y", "n"])); + yield co_return(result); +} + +function oni_escape(str) { + return str.replace(/(["$`])/g, '\\$1'); +} + +function oni_linkwave_add(I) { + check_buffer(I.buffer, content_buffer); + let url = + load_spec_uri_string(load_spec(I.buffer.top_frame)); + let title = escape(yield I.minibuffer.read( + $prompt = "name (required): ", + $initial_value = I.buffer.title)); + let tags = escape(yield I.minibuffer.read( + $prompt = "tags (space delimited): ")); + let description = escape(yield I.minibuffer.read( + $prompt = "extended description: ")); + let command = + '/home/slash/development/projects/linkwave/src/linkwave "' + + url + '" "' + title + '" "' + description + '"'; + I.window.minibuffer.message(command); +} +interactive("linkwave-add", "Bookmark the page in linkwave", + oni_linkwave_add); + +function oni_linkwave_add_link(I) { + bo = yield read_browser_object(I); + let url = load_spec_uri_string( + load_spec(encodeURIComponent(bo))); + check_buffer(I.buffer, content_buffer); + let title = escape(yield I.minibuffer.read( + $prompt = "name (required): ", + $initial_value = bo.textContent)); + let tags = escape(yield I.minibuffer.read( + $prompt = "tags (space delimited): ")); + let description = escape(yield I.minibuffer.read( + $prompt = "extended description: ")); + let command = + '/home/slash/development/projects/linkwave/src/linkwave "' + + url + '" "' + title + '" "' + description + '"'; + let result = yield shell_command(command); + + if (!result) + I.window.minibuffer.message('Added to linkwave'); + else + I.window.minibuffer.message('Couldn\'t add to linkwave'); +} +interactive("linkwave-add-link", "Bookmark the a link in linkwave", + oni_linkwave_add_link); + +function oni_org_store_link(I) { + var cmd_str = 'emacsclient \"org-protocol://store-link://' + + encodeURIComponent(I.buffer.display_uri_string) + '/' + + encodeURIComponent(I.buffer.document.title) + '\"'; + + if (I.window != null) { + window.minibuffer.message('Issuing ' + cmd_str); + } + + shell_command_blind(cmd_str); +} +interactive("org-store-link", + "Stores [[url][title]] as org link and copies url to emacs " + + "kill ring", + oni_org_store_link); + +interactive("find-url-from-history", + "Find a page from history in the current buffer", + "find-url", + $browser_object = browser_object_history_url); +interactive("find-url-from-history-new-buffer", + "Find a page from history in a new buffer", + "find-url-new-buffer", + $browser_object = browser_object_history_url); + +define_webjump("emacswiki", + "http://www.google.com/cse?cx=004774160799092323420%3A6-ff2s0o6yi&q=%s", + $alternative="http://www.emacswiki.org"); +define_webjump("php", + "http://www.php.net/manual-lookup.php?pattern=%s&scope=quickref", + $alternative="http://www.php.net"); +define_webjump("python", + "http://docs.python.org/search.html?q=%s&check_keywords=yes&area=default", + $alternative="http://www.python.org"); +define_webjump("ddg", + "https://duckduckgo.com/?q=%s", + $alternative="https://duckduckgo.com"); +define_webjump("metal-archives", + "http://www.metal-archives.com/search?searchString=%s&type=band_name", + $alternative="http://www.metal-arhives.com"); +define_webjump("djangodocs", + "https://docs.djangoproject.com/search/?q=%s&release=5", + $alternative="https://docs.djangoproject.com/"); +define_webjump("google", + "https://duckduckgo.com?q=!google%%20%s"); +define_webjump("github", + "https://github.com/search?q=%s&type=Everything&repo=&langOverride=&start_value=1", + $alternative="https://github.com"); +// Archlinux +define_webjump("arch/wiki", + "https://wiki.archlinux.org/index.php?search=%s", + $alternative="https://wiki.archlinux.org"); +define_webjump("arch/aur", + "https://aur.archlinux.org/packages.php?O=0&K=%s&do_Search=Go", + $alternative="https://aur.archlinux.org"); +define_webjump("arch/packages", + "https://www.archlinux.org/packages/?sort=&q=%s&limit=50", + $alternative="https://packages.archlinux.org"); + +cwd = make_file("/home/slash/downloads/"); +url_remoting_fn = load_url_in_new_buffer; +read_buffer_show_icons = true; +hint_digits = "arstdhneio"; + +define_key(content_buffer_normal_keymap, "h", + "find-url-from-history-new-buffer"); +define_key(content_buffer_normal_keymap, "H", + "find-url-from-history"); +define_key(default_base_keymap, "C-x f", "follow-new-buffer"); + +add_hook("before_quit_hook", oni_before_quit_func); +add_hook("mode_line_hook", mode_line_adder(buffer_count_widget, true)); +add_hook("mode_line_hook", mode_line_adder(buffer_icon_widget, true)); +add_hook("mode_line_hook", mode_line_adder(downloads_status_widget)); + +remove_hook("download_added_hook", open_download_buffer_automatically); + +hints_minibuffer_annotation_mode(true); +theme_load("naquadah"); diff --git a/.conkerorrc/themes/naquadah/conkeror--scrollbars.css b/.conkerorrc/themes/naquadah/conkeror--scrollbars.css new file mode 100644 index 0000000..0f70e96 --- /dev/null +++ b/.conkerorrc/themes/naquadah/conkeror--scrollbars.css @@ -0,0 +1,36 @@ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +/* The "background" behind the scrolling part of the scrollbar. */ +scrollbar { + background-color: #222; +} + +/* corner between horizontal and vertical scrollbars */ +scrollcorner { + background-color: black; +} + +/* The scroll up/down buttons. */ +scrollbarbutton { + background-color: #666; +} + +/* The actual scrolling part of the scrollbar. */ +thumb { + background-color: #666; +} + +thumb, scrollbarbutton { + -moz-border-bottom-colors: #000 #333; + -moz-border-left-colors: #aaa #888; + -moz-border-right-colors: #000 #333; + -moz-border-top-colors: #aaa #888; +} + +scrollbarbutton:hover:active, scrollbarbutton[active="true"] { + -moz-border-bottom-colors: #aaa #888; + -moz-border-left-colors: #000 #333; + -moz-border-right-colors: #aaa #888; + -moz-border-top-colors: #000 #333; +} diff --git a/.conkerorrc/themes/naquadah/hints--url-panel.css b/.conkerorrc/themes/naquadah/hints--url-panel.css new file mode 100644 index 0000000..143f3c1 --- /dev/null +++ b/.conkerorrc/themes/naquadah/hints--url-panel.css @@ -0,0 +1,17 @@ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +.panel { + border-top: 4px double #333333; + color: white; + background-color: black; +} + +.panel .panel-row-label { + font-weight: bold; +} + +.panel .url-panel-label { + font-weight: bold; +} + diff --git a/.conkerorrc/themes/naquadah/minibuffer.css b/.conkerorrc/themes/naquadah/minibuffer.css new file mode 100644 index 0000000..c882f3e --- /dev/null +++ b/.conkerorrc/themes/naquadah/minibuffer.css @@ -0,0 +1,52 @@ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +#minibuffer { + background-color: #252A2E; + border: 0px none #444; + border-top: 0; + color: #EEEEEC; + font: 11px Tahoma; +} + +#minibuffer-input, #minibuffer-input * { + color: #EEEEEC; +} + +#minibuffer-prompt { + color: #EEEEEC; +} + +/* Completions display */ + +tree.completions treechildren { border: none !important; } + +tree.completions treecol { -moz-binding: none !important; } +tree.completions { + -moz-appearance: none !important; + border: 0px none !important; + border-top: 4px double #333333 !important; + background-color: #252A2E !important; + -moz-border-top-colors: -moz-initial !important; + color: #EEEEEC !important; +} + +tree.completions treechildren::-moz-tree-row { + background-color: #252A2E !important; + border: none; +} + +tree.completions treechildren::-moz-tree-row(current) { + background-color: #0C191C !important; + color: #EEEEEC; +} + +tree.completions treechildren::-moz-tree-cell-text(completion-description) { + color: green !important; + font-weight: bold !important; +} + +tree.completions treechildren::-moz-tree-cell-text(current) { + color: #EEEEEC !important; +} + diff --git a/.conkerorrc/themes/naquadah/mode-line.css b/.conkerorrc/themes/naquadah/mode-line.css new file mode 100644 index 0000000..7e1ed45 --- /dev/null +++ b/.conkerorrc/themes/naquadah/mode-line.css @@ -0,0 +1,11 @@ +.mode-line { + font: 11px Tahoma; + padding: 0px; + border: 1px solid #2E3436; + color: #EEEEEC; + background-color: #0C191C; +} + +.mode-line label { + color: #EEEEEC; +} diff --git a/.conkerorrc/themes/naquadah/new-tabs.css b/.conkerorrc/themes/naquadah/new-tabs.css new file mode 100644 index 0000000..f5d30c0 --- /dev/null +++ b/.conkerorrc/themes/naquadah/new-tabs.css @@ -0,0 +1,54 @@ +#tab2-bar { + background: #222; +} + +.tab2 { + margin: 2px 0px 0px 2px; + padding: 0px; + height: 22px; + border-width: 2px; + border-bottom-width: 0; + border-style: solid; + -moz-border-radius: 3px 3px 0 0; + -moz-border-left-colors: #888 #555; + -moz-border-right-colors: #000 #171717; + -moz-border-top-colors: #888 #555; + background: #333; + min-width: 200px; + max-width: 200px; + overflow: hidden; /* Chops end of label */ +} + +.tab2[selected=true] { + -moz-border-left-colors: #aaa #888; + -moz-border-right-colors: #000 #333; + -moz-border-top-colors: #aaa #888; + background: #666; +} + +.tab2:hover { + -moz-border-left-colors: #eee #bbb; + -moz-border-right-colors: #333 #666; + -moz-border-top-colors: #eee #bbb; + background: #999; +} + +.tab2-label { + margin-left: 4px; + padding-top: 1px; + color: #fff; + font: 11px Tahoma; +} + +.tab2-icon { + margin: 1px !important; + padding: 1px; + width: 20px; + height: 15px; + max-height: 15px; + -moz-border-radius: 1px; + background: black; + color: white; + font: 900 11px Tahoma; + text-align: center; +} diff --git a/.conkerorrc/themes/naquadah/tab-bar.css b/.conkerorrc/themes/naquadah/tab-bar.css new file mode 100644 index 0000000..c451778 --- /dev/null +++ b/.conkerorrc/themes/naquadah/tab-bar.css @@ -0,0 +1,41 @@ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +/* TABS */ +#tab2-bar { + background: #000; +} + +#tab2-bar .tab2 { + margin: 0; + padding: 0; + border: none; + /*height: 19px; + border: 1px solid #666; + min-width: 200px; + max-width: 200px;*/ + background: #333; + overflow: hidden; +} + +#tab2-bar .tab2-label { + margin: 0; + color: white; + font: 11px Tahoma; +} + +#tab2-bar .tab2-icon { + height: 16px; + width: 16px; + background: #222; + color: white; + border: 1px solid #999; + font: 900 11px Tahoma; + text-align: center; +} + +#tab2-bar .tab2[selected=true] { + border: 1px solid white; + background: #666; + border: 1px solid #999; +} diff --git a/.conkerorrc/themes/naquadah/theme.json b/.conkerorrc/themes/naquadah/theme.json new file mode 100644 index 0000000..bb74ee1 --- /dev/null +++ b/.conkerorrc/themes/naquadah/theme.json @@ -0,0 +1,9 @@ +{ "sheets" : [ + "conkeror--scrollbars.css", + "new-tabs.css", + "minibuffer.css", + "mode-line.css", + "hints--url-panel.css", + "tab-bar.css" + ] +}