| 29 | | " C-r でブラウザ再起動 |
| 30 | | map <C-r> :restart<CR> |
| 31 | | |
| 32 | | " 設定ファイルを再読み込み |
| 33 | | map ,s :so .vimperatorrc<CR> |
| 34 | | map ,S :mapc<CR>:cmapc<CR>:imapc<CR>:so .vimperatorrc<CR> |
| 35 | | |
| 36 | | " バーの表示切り替え |
| 37 | | map ,1 :set go=<CR>:set stal=1<CR> |
| 38 | | map ,2 :set go=b<CR>:set stal=1<CR> |
| 39 | | map ,3 :set go=bT<CR>:set stal=1<CR> |
| 40 | | map ,0 :set go=<CR>:set stal=0<CR> |
| 41 | | |
| 42 | | " 上のディレクトリに移動 |
| 43 | | map <BS> gu |
| 44 | | map <C-BS> gU |
| 45 | | |
| 46 | | " ]]/[[ で次/前のページに移動 |
| 47 | | set nextpattern+=next, 次(の)?ページ,\b次.*,→\b,下一頁,Следующая,・、・隹€ |
| | 36 | " ]]/[[ にヒットする文字列追加 |
| | 37 | set nextpattern+=次(の)?ページ,→\b,下一頁,Следующая,다음 |
| 50 | | " j/k でのスクロール幅を1行から3行に変更 |
| 51 | | map j 3<C-e> |
| 52 | | map k 3<C-y> |
| 53 | | |
| 54 | | " J/K をC-d/u互換に |
| 55 | | map J <C-d> |
| 56 | | map K <C-u> |
| 57 | | |
| 58 | | " h/l でタブ移動 |
| 59 | | map h <C-p><Esc> |
| 60 | | map l <C-n><Esc> |
| 61 | | |
| 62 | | " C-h/l でタブ位置変更 |
| 63 | | map <C-h> :tabmove! -1<CR> |
| 64 | | map <C-l> :tabmove! +1<CR> |
| 65 | | |
| 66 | | " . でタグリストを表示/非表示 |
| 67 | | map . :ls!<CR> |
| 68 | | |
| 69 | | " C-a で未分類のブックマークに追加/削除 |
| 70 | | noremap <C-a> A |
| 71 | | |
| 72 | | " ex modeでC-jを無効化 |
| 73 | | cmap <C-j> <Nop> |
| 74 | | |
| 75 | | " ex modeでUp/DownをTab/S-Tab互換に |
| 76 | | cmap <Down> <Tab> |
| 77 | | cmap <Up> <S-Tab> |
| 78 | | |
| 79 | | " vimperator 1.2 06-17以降でOS側のショートカットが効かなくなったので代替 |
| | 40 | " ページのアクセスキーを無効化 |
| | 41 | " Awesomebarの補完対象にBookmarkletを追加、件数を50件に変更 |
| | 42 | set! ui.key.generalAccessKey=0 |
| | 43 | set! browser.urlbar.filter.javascript=false |
| | 44 | set! browser.urlbar.maxRichResults=50 |
| | 45 | |
| | 46 | " Mappings |
| | 47 | " ====================================================================== |
| | 48 | " vimperator 1.2pre 06-17以降でOS側のショートカットが効かなくなったので代替 |
| | 49 | map <M-c> <C-v><M-c> |
| 96 | | map ! :set invum<CR> |
| 97 | | |
| | 101 | "map ! :set invum<CR> |
| | 102 | |
| | 103 | " 設定ファイルを再読み込み |
| | 104 | map ,s :so .vimperatorrc<CR> |
| | 105 | map ,S :mapc<CR>:cmapc<CR>:imapc<CR>:so .vimperatorrc<CR> |
| | 106 | |
| | 107 | " バーの表示切り替え |
| | 108 | map ,1 :set go=<CR>:set stal=1<CR> |
| | 109 | map ,2 :set go=b<CR>:set stal=1<CR> |
| | 110 | map ,3 :set go=bT<CR>:set stal=1<CR> |
| | 111 | map ,0 :set go=<CR>:set stal=0<CR> |
| | 112 | |
| | 113 | " ex modeでC-jを無効化 |
| | 114 | cmap <C-j> <Nop> |
| | 115 | |
| | 116 | " Plugins |
| | 117 | " ====================================================================== |
| 144 | | " livedoor Reader/Fastladder/OpenFL |
| 145 | | js <<EOF |
| 146 | | autocommands.add('LocationChange',/reader\.livedoor\.com\/reader\//, |
| 147 | | 'js plugins.feedKey.setup("j k s a p v c <Space> <S-Space> z Z < > q w b i".split(/ +/));'); |
| 148 | | EOF |
| 149 | | js <<EOF |
| 150 | | autocommands.add('LocationChange',/(fastladder\.com|0\.0\.0\.0\:3000)\/reader\//, |
| 151 | | 'js plugins.feedKey.setup("j k s a p v c <Space> <S-Space> z Z < > q w".split(/ +/));'); |
| 152 | | EOF |
| 153 | | autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap o vj |
| 154 | | autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap J <Space> |
| 155 | | autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap K <S-Space> |
| 156 | | autocmd LocationChange (?!http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/) js liberator.options.setPref('browser.tabs.loadDivertedInBackground', false); |
| 157 | | autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ js liberator.options.setPref('browser.tabs.loadDivertedInBackground', true); |
| 158 | | " Reblog用 (要tombloo.xpi) |
| 159 | | autocmd LocationChange http://fastladder\.com/reader/ :fmap i Tj |
| 160 | | autocmd LocationChange http://fastladder\.com/reader/ :fmap e Tj |
| 161 | | |
| 176 | | EOF |
| 177 | | |
| | 178 | EOM |
| | 179 | |
| | 180 | " livedoor Reader/Fastladder/OpenFL |
| | 181 | js <<EOM |
| | 182 | autocommands.add('LocationChange',/reader\.livedoor\.com\/reader\//, |
| | 183 | 'js plugins.feedKey.setup("j k s a p v c <Space> <S-Space> z Z < > q w b i g u".split(/ +/));'); |
| | 184 | autocommands.add('LocationChange',/(fastladder\.com|0\.0\.0\.0\:3000)\/reader\//, |
| | 185 | 'js plugins.feedKey.setup("j k s a p v c <Space> <S-Space> z Z < > q w".split(/ +/));'); |
| | 186 | EOM |
| | 187 | autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap o vj |
| | 188 | autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap J <Space> |
| | 189 | autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap K <S-Space> |
| | 190 | autocmd LocationChange (?!http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/) :set! browser.tabs.loadDivertedInBackground=false |
| | 191 | autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :set! browser.tabs.loadDivertedInBackground=true |
| | 192 | " Reblog用 (要tombloo.xpi) |
| | 193 | autocmd LocationChange http://fastladder\.com/reader/ :fmap i Tj |
| | 194 | autocmd LocationChange http://fastladder\.com/reader/ :fmap e Tj |
| | 195 | |
| | 196 | " Javascript |
| | 197 | " ====================================================================== |
| 191 | | " ページのアクセスキーを無効化 |
| 192 | | js <<EOM |
| 193 | | liberator.options.setPref('ui.key.generalAccessKey', 0); |
| 194 | | EOM |
| 195 | | |
| 196 | | " 読み込んだ事を出力 |
| | 211 | " wildoption=auto でウザいmap対策 |
| | 212 | " http://unsigned.g.hatena.ne.jp/Trapezoid/20080620/1213961754 |
| | 213 | js <<EOM |
| | 214 | [ |
| | 215 | ['<C-r>',':restart'], |
| | 216 | ['<C-h>',':tabmove! -1'], |
| | 217 | ['<C-l>',':tabmove! +1'], |
| | 218 | ['!',':set invum'], |
| | 219 | ['b',':viewSBMComments'], |
| | 220 | ['B',':bentry'], |
| | 221 | ['a',':sbm'], |
| | 222 | [',a',':btags'], |
| | 223 | ['q',':toggleldrc'], |
| | 224 | ['M',':qmarks'], |
| | 225 | ].forEach(function([key,command]){ |
| | 226 | liberator.mappings.addUserMap([liberator.modes.NORMAL], [key], |
| | 227 | "User defined mapping", |
| | 228 | function () { liberator.execute(command); }, |
| | 229 | { |
| | 230 | rhs: key, |
| | 231 | noremap: true |
| | 232 | }); |
| | 233 | }); |
| | 234 | EOM |
| | 235 | |
| | 236 | " Abbreviations |
| | 237 | " ====================================================================== |