google-gqueues-mode: new page-mode
[conkeror.git] / modules / page-modes / google-gqueues.js
blob695d52110437fe6c008f65f1f222fff5c57459ab
1 /**
2  * (C) Copyright 2010 Vinh Q. Nguyen
3  *
4  * Use, modification, and distribution are subject to the terms specified in the
5  * COPYING file.
6 **/
8 require("content-buffer.js");
11 define_keymap("google_gqueues_keymap");
12 define_fallthrough(google_gqueues_keymap, match_any_unmodified_character);
14 // Current Item
15 define_key(google_gqueues_keymap, "e", null, $fallthrough);
16 define_key(google_gqueues_keymap, "n", null, $fallthrough);
17 define_key(google_gqueues_keymap, "t", null, $fallthrough);
18 define_key(google_gqueues_keymap, "c", null, $fallthrough);
19 define_key(google_gqueues_keymap, "s", null, $fallthrough);
20 define_key(google_gqueues_keymap, "x", null, $fallthrough);
21 define_key(google_gqueues_keymap, "d", null, $fallthrough);
22 define_key(google_gqueues_keymap, "D", null, $fallthrough);
23 define_key(google_gqueues_keymap, "i", null, $fallthrough);
25 // Editing
26 define_key(google_gqueues_keymap, "tab", null, $fallthrough);
27 define_key(google_gqueues_keymap, "S-tab", null, $fallthrough);
29 // Navigation
30 define_key(google_gqueues_keymap, "up", null, $fallthrough);
31 define_key(google_gqueues_keymap, "down", null, $fallthrough);
32 define_key(google_gqueues_keymap, "left", null, $fallthrough);
33 define_key(google_gqueues_keymap, "right", null, $fallthrough);
34 define_key(google_gqueues_keymap, "S-up", null, $fallthrough);
35 define_key(google_gqueues_keymap, "S-down", null, $fallthrough);
36 define_key(google_gqueues_keymap, "j", null, $fallthrough);
37 define_key(google_gqueues_keymap, "k", null, $fallthrough);
38 define_key(google_gqueues_keymap, "l", null, $fallthrough);
39 define_key(google_gqueues_keymap, "h", null, $fallthrough);
40 define_key(google_gqueues_keymap, "J", null, $fallthrough);
41 define_key(google_gqueues_keymap, "K", null, $fallthrough);
43 function google_gqueues_modality (buffer, element) {
44     if (! buffer.input_mode)
45         buffer.keymaps.push(google_gqueues_keymap);
48 define_page_mode("google_gqueues_mode",
49                  $display_name = "Google GQueues",
50                  $enable = function (buffer) {
51                      buffer.modalities.push(google_gqueues_modality);
52                  },
53                  $disable = function (buffer) {
54                      var i = buffer.modalities.indexOf(google_gqueues_modality);
55                      if (i > -1)
56                          buffer.modalities.splice(i, 1);
57                  });
59 var google_gqueues_re = build_url_regex($domain = "gqueues",
60                                         $allow_www = true,
61                                         $path = "main");
62 auto_mode_list.push([google_gqueues_re, google_gqueues_mode]);