mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-03-11 11:15:45 +01:00
first commit, hurray! :)
This commit is contained in:
7
AUTHORS
Normal file
7
AUTHORS
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<pre>
|
||||||
|
Main developer/Project founder:
|
||||||
|
* Martin Stubenschrott (stubenschrott@gmx.net)
|
||||||
|
|
||||||
|
A lot of people contributed to Vimperator, which is the basis of Muttator, so please refer
|
||||||
|
to that AUTHOR file for more contributors.
|
||||||
|
</pre>
|
||||||
8
Donators
Normal file
8
Donators
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<pre>
|
||||||
|
<b>Note:</b> If you don't wish to appear on this list when making a donation, please tell me.
|
||||||
|
|
||||||
|
2008:
|
||||||
|
* YOU
|
||||||
|
|
||||||
|
I want to say a big <b>THANK YOU</b> to all people which supported this project in this way.
|
||||||
|
</pre>
|
||||||
6
Makefile
Normal file
6
Makefile
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
#### configuration
|
||||||
|
|
||||||
|
VERSION = 0.1pre
|
||||||
|
NAME = muttator
|
||||||
|
|
||||||
|
include Makefile.common
|
||||||
155
Makefile.common
Normal file
155
Makefile.common
Normal file
@@ -0,0 +1,155 @@
|
|||||||
|
#### configuration
|
||||||
|
|
||||||
|
TOP = $(shell pwd)
|
||||||
|
OS = $(shell uname -s)
|
||||||
|
BUILD_DATE = $(shell date "+%Y/%m/%d %H:%M:%S")
|
||||||
|
|
||||||
|
DOC_SRC_FILES = $(wildcard locale/*/*.txt)
|
||||||
|
DOC_FILES = ${DOC_SRC_FILES:%.txt=%.html}
|
||||||
|
|
||||||
|
# TODO: specify source files manually?
|
||||||
|
JAR_TXT_FILES = ${shell find content skin locale \
|
||||||
|
-type f \
|
||||||
|
-a ! -path '*CVS*' \
|
||||||
|
-a \( \
|
||||||
|
-path '*.js' \
|
||||||
|
-o -path '*.css' \
|
||||||
|
-o -path '*.xul' \
|
||||||
|
-o -path '*.html' \
|
||||||
|
\) \
|
||||||
|
}
|
||||||
|
JAR_DIRS = $(foreach f,${JAR_FILES},$(dir $f))
|
||||||
|
JAR_BIN_FILES = ${shell find content skin \
|
||||||
|
-type f \
|
||||||
|
-a ! -path '*CVS*' \
|
||||||
|
-a -path '*.png' \
|
||||||
|
}
|
||||||
|
JAR_FILES = ${JAR_BIN_FILES} ${JAR_TXT_FILES} ${DOC_FILES}
|
||||||
|
JAR = chrome/${NAME}.jar
|
||||||
|
|
||||||
|
XPI_TXT_FILES = install.rdf chrome.manifest TODO AUTHORS Donators NEWS
|
||||||
|
XPI_DIRS = $(foreach f,${XPI_FILES},$(dir $f))
|
||||||
|
XPI_BIN_FILES = ${JAR} Makefile.common Makefile
|
||||||
|
XPI_FILES = ${XPI_BIN_FILES} ${XPI_TXT_FILES}
|
||||||
|
XPI_NAME = ${NAME}_${VERSION}.xpi
|
||||||
|
XPI = ../downloads/${XPI_NAME}
|
||||||
|
|
||||||
|
RDF = ../downloads/update.rdf
|
||||||
|
RDF_IN = ${RDF}.in
|
||||||
|
|
||||||
|
BUILD_DIR = build.${VERSION}.${OS}
|
||||||
|
BUILD_JAR_DIR = ${BUILD_DIR}/jar
|
||||||
|
BUILD_XPI_DIR = ${BUILD_DIR}/xpi
|
||||||
|
|
||||||
|
BUILD_JAR_SUBDIRS = $(sort ${JAR_DIRS:%=${BUILD_JAR_DIR}/%})
|
||||||
|
BUILD_XPI_SUBDIRS = $(sort ${XPI_DIRS:%=${BUILD_XPI_DIR}/%})
|
||||||
|
|
||||||
|
ASCIIDOC = asciidoc
|
||||||
|
ZIP = zip
|
||||||
|
SED = sed
|
||||||
|
|
||||||
|
# specify V=1 on make line to see more verbose output
|
||||||
|
Q=$(if ${V},,@)
|
||||||
|
CP_V=$(if ${V},-v)
|
||||||
|
|
||||||
|
#### rules
|
||||||
|
|
||||||
|
.PHONY: all help info doc jar xpi install clean distclean
|
||||||
|
all: help
|
||||||
|
|
||||||
|
help:
|
||||||
|
@echo "${NAME} ${VERSION} build"
|
||||||
|
@echo
|
||||||
|
@echo " make help - display this help"
|
||||||
|
@echo " make info - show some info about the system"
|
||||||
|
@echo " make doc - build doc files"
|
||||||
|
@echo " make jar - build a JAR (${JAR})"
|
||||||
|
@echo " make xpi - build an XPI (${XPI_NAME})"
|
||||||
|
@echo " make release - updates update.rdf (this is not for you)"
|
||||||
|
@echo " make clean - clean up"
|
||||||
|
@echo " make distclean - clean up more"
|
||||||
|
@echo
|
||||||
|
@echo "running some commands with V=1 will show more build details"
|
||||||
|
|
||||||
|
info:
|
||||||
|
@echo "version ${VERSION}"
|
||||||
|
@echo "release file ${XPI}"
|
||||||
|
@echo "doc files ${DOC_SRC_FILES}"
|
||||||
|
@echo -e "jar files $(shell echo ${JAR_FILES} | sed 's/ /\\n /g' )"
|
||||||
|
|
||||||
|
doc: ${DOC_FILES}
|
||||||
|
xpi: ${XPI}
|
||||||
|
jar: ${JAR}
|
||||||
|
|
||||||
|
release: ${XPI} ${RDF}
|
||||||
|
|
||||||
|
${RDF}: ${RDF_IN} Makefile
|
||||||
|
@echo "Preparing release..."
|
||||||
|
${Q}${SED} -e "s,###VERSION###,${VERSION},g" \
|
||||||
|
-e "s,###DATE###,${BUILD_DATE},g" \
|
||||||
|
< $< > $@
|
||||||
|
@echo "SUCCESS: $@"
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@echo "Cleanup..."
|
||||||
|
${Q}rm -f ${JAR} ${XPI}
|
||||||
|
${Q}find . -name '*~' -exec rm -f {} \;
|
||||||
|
|
||||||
|
distclean: clean
|
||||||
|
@echo "More cleanup..."
|
||||||
|
${Q}rm -f ${DOC_FILES}
|
||||||
|
${Q}rm -rf ${BUILD_DIR}
|
||||||
|
|
||||||
|
#### xpi
|
||||||
|
|
||||||
|
${BUILD_XPI_SUBDIRS}:
|
||||||
|
${Q}mkdir -p $@
|
||||||
|
|
||||||
|
${XPI}: ${BUILD_XPI_SUBDIRS} ${XPI_FILES}
|
||||||
|
@echo "Building XPI..."
|
||||||
|
${Q}mkdir -p $(dir ${XPI})
|
||||||
|
${Q}for f in ${XPI_BIN_FILES} ; do \
|
||||||
|
cp $$f ${BUILD_XPI_DIR}/$$f ; \
|
||||||
|
done
|
||||||
|
${Q}for f in ${XPI_TXT_FILES} ; do \
|
||||||
|
${SED} -e "s,###VERSION###,${VERSION},g" \
|
||||||
|
-e "s,###DATE###,${BUILD_DATE},g" \
|
||||||
|
< $$f > ${BUILD_XPI_DIR}/$$f ; \
|
||||||
|
( diff -q $$f ${BUILD_XPI_DIR}/$$f 1>/dev/null ) || \
|
||||||
|
( echo "modified: $$f" ; \
|
||||||
|
diff -u $$f ${BUILD_XPI_DIR}/$$f | grep '^[-+][^-+]' ) ; \
|
||||||
|
done
|
||||||
|
# FIXME: VERSION and DATE tokens not replaced
|
||||||
|
${Q}${SED} -e 's,\(skin\|content\|locale/.*\)/$$,jar:chrome/${NAME}.jar!/\1/,' \
|
||||||
|
< chrome.manifest > ${BUILD_XPI_DIR}/chrome.manifest
|
||||||
|
${Q}( cd ${BUILD_XPI_DIR} && ${ZIP} -r ${TOP}/${XPI} ${XPI_FILES} )
|
||||||
|
@echo "SUCCESS: $@"
|
||||||
|
|
||||||
|
#### jar
|
||||||
|
|
||||||
|
${BUILD_JAR_SUBDIRS}:
|
||||||
|
${Q}mkdir -p $@
|
||||||
|
|
||||||
|
${JAR}: ${BUILD_JAR_SUBDIRS} ${JAR_FILES}
|
||||||
|
@echo "Building JAR..."
|
||||||
|
${Q}mkdir -p $(dir ${JAR})
|
||||||
|
${Q}for f in ${JAR_BIN_FILES} ; do \
|
||||||
|
cp $$f ${BUILD_JAR_DIR}/$$f ; \
|
||||||
|
done
|
||||||
|
${Q}for f in ${JAR_TXT_FILES} ; do \
|
||||||
|
${SED} -e "s,###VERSION###,${VERSION},g" \
|
||||||
|
-e "s,###DATE###,${BUILD_DATE},g" \
|
||||||
|
< $$f > ${BUILD_JAR_DIR}/$$f ; \
|
||||||
|
( diff -q $$f ${BUILD_JAR_DIR}/$$f 1>/dev/null ) || \
|
||||||
|
( echo "modified: $$f" ; \
|
||||||
|
diff -u $$f ${BUILD_JAR_DIR}/$$f | grep '^[-+][^-+]' ) ; \
|
||||||
|
done
|
||||||
|
${Q}( cd ${BUILD_JAR_DIR} && ${ZIP} -r ${TOP}/${JAR} ${JAR_FILES} )
|
||||||
|
@echo "SUCCESS: $@"
|
||||||
|
|
||||||
|
#### doc
|
||||||
|
|
||||||
|
${DOC_FILES}: %.html: %.txt Makefile.common locale/en-US/asciidoc.conf
|
||||||
|
@echo "DOC $@"
|
||||||
|
${Q}${ASCIIDOC} --unsafe -a linkcss -o $@ $<
|
||||||
|
|
||||||
6
NEWS
Normal file
6
NEWS
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<pre>
|
||||||
|
2008-xx-xx:
|
||||||
|
* version 0.1
|
||||||
|
* first public release, straight port from vimperator
|
||||||
|
</pre>
|
||||||
|
<!-- vim: set sw=4 ts=4 et: -->
|
||||||
54
TODO
Normal file
54
TODO
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
<pre>
|
||||||
|
Priority list:
|
||||||
|
1-9 as in vim (9=required for next release, 5=would be nice, 1=probably not)
|
||||||
|
|
||||||
|
BUGS:
|
||||||
|
- add window resize support to hints
|
||||||
|
- can't reverse tab through the vimperator toolbar
|
||||||
|
- gu and gU doesn't work on Windows.
|
||||||
|
- pvh option not working
|
||||||
|
- searching backwards incrementally does not work i.e. with 'incsearch' set
|
||||||
|
- http://msdn2.microsoft.com/en-us/library/ms535258.aspx does not scroll with j/k/etc.
|
||||||
|
same for http://forum.mootools.net/topic.php?id=3458
|
||||||
|
- insert abbreviations broken on <space>
|
||||||
|
|
||||||
|
FEATURES:
|
||||||
|
8 middleclick in content == p, and if command line is open, paste there the clipboard buffer
|
||||||
|
8 add more autocommands (BrowserStart, BrowserQuit, TabClose, TabOpen, TabChanged, LocationChanged, any more?)
|
||||||
|
8 ;?<hint> will show information about <hint> like id, class, image filename, etc.
|
||||||
|
8 there should be a listbox/combobox mode
|
||||||
|
8 y and Y should be changed to: yy and yl=yank location, ys=yank selection,
|
||||||
|
yd=yank domain name, yt=yank title, yw=yank current word,
|
||||||
|
yS=yank selection, if no selection then yank current word (other things to yank?)
|
||||||
|
8 all search commands should start searching from the top of the visible viewport
|
||||||
|
7 use ctrl-n/p in insert mode for word completion
|
||||||
|
7 implement LocationList window, and get rid off/change PreviewWindow to be a real preview window being able to display html pages
|
||||||
|
7 [ctrl-o/i] to Go back to a Previous Position (done partly, however currenty does not use a per tab jumplist)
|
||||||
|
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 [d could go to the last domain in the history stack. so if i browse from
|
||||||
|
google to another page and click 10 links there, [d would take me back to the google page
|
||||||
|
opera's fast forward does something like this
|
||||||
|
6 :sidebar improvements (:sidebar! Downloads while downloads is open should refocus the sidebar)
|
||||||
|
6 jump to the next heading with ]h, next image ]i, previous textbox [t and so on
|
||||||
|
6 :grep support (needs location list)
|
||||||
|
6 use '' to jump between marks like vim
|
||||||
|
6 pipe selected text/link/website to an external command
|
||||||
|
6 :set wildoptions=auto mode, which would list completions on each keystroke (maybe performance problems)
|
||||||
|
6 Use ctrl-w+j/k/w to switch between sidebar, content, preview window
|
||||||
|
5 Favicons in completion windows and some other places?
|
||||||
|
5 make a command to search within google search results
|
||||||
|
(http://gadelkareem.com/2007/01/28/using-google-ajax-api-as-an-array/)
|
||||||
|
maybe impossible, needs a per-site key from google
|
||||||
|
4 Add -nargs, -complete, etc. to :command
|
||||||
|
4 } { should jump to the next paragraph of the page (maybe impossible)
|
||||||
|
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]
|
||||||
|
have a look into the split browser extension
|
||||||
|
- many other ideas are listed in the wiki
|
||||||
|
|
||||||
|
RANDOM IDEAS:
|
||||||
|
* numbered tabs
|
||||||
|
* Would it be possible to add a setting "maxcompletionsshown" and
|
||||||
|
"maxpreviewwindowheight" or something like this?
|
||||||
|
* hide scrollbars: (window.content.document.body.style.overflow = "hidden" has problems with the mouse wheel)
|
||||||
|
|
||||||
|
</pre>
|
||||||
5
chrome.manifest
Normal file
5
chrome.manifest
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# Thunderbird
|
||||||
|
content muttator content/
|
||||||
|
locale muttator en-US locale/en-US/
|
||||||
|
skin muttator classic/1.0 skin/
|
||||||
|
overlay chrome://messenger/content/messenger.xul chrome://muttator/content/muttator.xul
|
||||||
29
install.rdf
Normal file
29
install.rdf
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
|
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
|
||||||
|
|
||||||
|
<Description about="urn:mozilla:install-manifest">
|
||||||
|
<em:id>muttator@mozdev.org</em:id>
|
||||||
|
<em:name>Muttator</em:name>
|
||||||
|
<em:version>###VERSION###</em:version>
|
||||||
|
<em:description>Make Thunderbird behave like Vim</em:description>
|
||||||
|
<em:creator>Martin Stubenschrott</em:creator>
|
||||||
|
<em:homepageURL>http://muttator.mozdev.org</em:homepageURL>
|
||||||
|
<em:iconURL>chrome://muttator/skin/icon.png</em:iconURL>
|
||||||
|
<!--em:updateURL>http://downloads.mozdev.org/vimperator/update.rdf</em:updateURL-->
|
||||||
|
<em:file>
|
||||||
|
<Description about="urn:mozilla:extension:file:vimperator.jar">
|
||||||
|
<em:package>content/muttator/</em:package>
|
||||||
|
</Description>
|
||||||
|
</em:file>
|
||||||
|
|
||||||
|
<em:targetApplication>
|
||||||
|
<Description>
|
||||||
|
<em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id>
|
||||||
|
<em:minVersion>2.0</em:minVersion>
|
||||||
|
<em:maxVersion>3.0.0.*</em:maxVersion>
|
||||||
|
</Description>
|
||||||
|
</em:targetApplication>
|
||||||
|
|
||||||
|
</Description>
|
||||||
|
</RDF>
|
||||||
Reference in New Issue
Block a user