commit 4eddbb5b36ff9479ffb7a2b296f517441b56a318 Author: Martin Stubenschrott Date: Tue Apr 10 19:32:48 2007 +0000 Initial import diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 00000000..1d9de633 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,3 @@ +date: + * version 0.2 + * first public release diff --git a/TODO b/TODO new file mode 100644 index 00000000..0615e69e --- /dev/null +++ b/TODO @@ -0,0 +1,67 @@ +First there was a Navigator, then there was an Explorer. Later it was time for +a Konqueror. Now it's time for an Imperator, the VIMperator :) + +Priority list: +1-9 as in vim (9=required for next release, 5=would be nice, 1=probably not) + +BUGS: +- switching tabs while HINT_MODE_ALWAYS is on does not redisplay hints in new tabs, but exits hint mode +- hints are not placed correctly when zoom is used +- flashing frame is not perfect + +FEATURES: +9 marks of a Location (also should work with directories), [m a-zA-Z] to set it, [' a-zA-Z] to go there + [m 0-9] marks a buffer instead [' 0-9] goes there + also mark bookmarks (with mA-Z maybe and use only lowercase marks for inbuffer marks?) + also support :mark and :marks +8 :cd .. -> Up one directory, :cd goes to top location, [Backspace] command shortcut, use count (:3cd goes 3 levels up) +8 downloading of links to filesystem (:save ) +8 provide a buffer on the bottom where more than 1 line messages can be shown, preferrable + with color support (for things like :ls) +8 middleclick in content == p, and if command line is open, paste there the clipboard buffer +8 [ctrl-o/i] to Go back to a Previous Position (done partly, however currenty does not use a per tab jumplist) +8 Use our own find-as-you-type mechanism (like conkeror does) +7 make hints smarter, not only with characters from from hintchars, but use "NE" or "NP" for 'new posts' e.g. (might be too slow) +7 whereever possible: get rid of dialogs and ask console-like dialog questions or write error prompts directly on the webpage or with :echo() +7 :hardcopy -> printing +7 Ctrl-6/Ctrl-^ -> jump to the previously active tab +7 :b[uffer] should switch to a buffer/tab + :b[uffer] - show buffers, if argument is number, switch to this tab, if url, open tab with this url + buffer Switching also after pressing 'b' and typing _any_ part of the buffer name? +7 3d should delete 3 tabs +6 :map commands to keys +6 autocommands (BrowserStart, BrowserQuit, TabClose, TabOpen, TabChanged, PageLoaded, any more?) +6 vim like mappings for caret mode and textboxes (i to start caret mode?) +6 pipe selected text/link/website to an external command +6 macros (qq) +6 :ls - show buffers +6 support firefox search engines +6 gf = view source? +6 make a real one-tab-mode, divert _all_ other targets, possible by setting a firefox option (set popup=0-3) +6 Shift-Insert in textboxes pastes clipboard contents +5 make use of the ] and [ keys to e.g. jump to the next heading ]], next image ]i, previous textbox [t and so on +5 add tag support to adding/deleting bookmarks +4 Support multiple top-level windows? +3 Splitting Windows with [:sp :vsp ctrl-w,s ctrl-w,v] and closing with [ctrl-w,q], moving with [ctrl-w,w or tab] +3 :set should also set about:config options (with autocomplete) + +DONE: +/* new shortcuts */ + ctrl-o: go back + ctrl-i: go forward +- most commands accessible as a :command (e.g. :set noplugins) +- Switchting between Frames of a website with [F] and flashing the active frame +- show current url in statusbar +- bookmarks and history handling +- Advanced Movement Keys [gg G ctrl-f/b ctrl-u/d?] +- Options: + guioptions + statusline +- beep() +- [1-9]gt Goes to tab 1-9 (13gt will go to the 13th tab) +- support for ^ and $ (move maximum left/right) +- ZZ (and :wq or :x) saves the session when quitting, ZQ (or :q) does not +- pressing 0-9 starts link following mode -> [o] = open it, [t] open in new tab, [s] saves it, [ctrl-w] open in new window, [y] yanks it + if there is 13,14,52 open all links in tabs, if there is a , open in background +- need to set keypress into dom.popup_allowed_events +- copy frame/link/image Location with easy keypresses [yy?] diff --git a/build.sh b/build.sh new file mode 100755 index 00000000..41b855e4 --- /dev/null +++ b/build.sh @@ -0,0 +1,23 @@ +VERSION=0.2 +FILES="chrome/content/ chrome.manifest" + +# echo Building XPI... +# zip conkeror-$VERSION.xpi $FILES install.js +# mv conkeror-$VERSION.xpi ../downloads + +zip -r chrome/vimperator.jar $FILES +#cp vimperator.jar chrome +# also put it in our firefox install +cp -v chrome/vimperator.jar '/home/maxauthority/.mozilla/firefox/kc3gnd7k.default/extensions/{f9570b26-e246-4753-9b68-61aa95994237}/chrome' + +# Build an xpi +if [ x$1 = xxpi ]; then + echo Building XPI... + zip -r vimperator_$VERSION.xpi chrome/vimperator.jar install.rdf chrome.manifest TODO + #mv vimperator-firefox-$VERSION.xpi ../downloads +fi + + +if [ x$1 = xtest ]; then + cp -v chrome/vimperator.jar '/home/test/.mozilla/firefox/trsj6obw.default//extensions/{f9570b26-e246-4753-9b68-61aa95994237}/chrome' +fi diff --git a/chrome.manifest b/chrome.manifest new file mode 100644 index 00000000..2c931d0a --- /dev/null +++ b/chrome.manifest @@ -0,0 +1,3 @@ +# vimperators chrome registration file +content vimperator jar:chrome/vimperator.jar!/chrome/content/vimperator/ +overlay chrome://browser/content/browser.xul chrome://vimperator/content/vimperator.xul diff --git a/install.rdf b/install.rdf new file mode 100644 index 00000000..61e6eda0 --- /dev/null +++ b/install.rdf @@ -0,0 +1,27 @@ + + + + + + {f9570b26-e246-4753-9b68-61aa95994237} + Vimperator + 0.2 + Make Firefox work like Vim + Martin Stubenschrott + http://vimperator.mozdev.org + http://downloads.mozdev.org/vimperator/update.rdf + + + content/vimperator/ + + + + + + {ec8030f7-c20a-464f-9b0e-13a3a9e97384} + 2.0 + 3.0 + + + + diff --git a/vimperator_0.1.xpi b/vimperator_0.1.xpi new file mode 100644 index 00000000..c13f49c5 Binary files /dev/null and b/vimperator_0.1.xpi differ diff --git a/vimperator_0.2.xpi b/vimperator_0.2.xpi new file mode 100644 index 00000000..71a5a535 Binary files /dev/null and b/vimperator_0.2.xpi differ