diff --git a/data/Makefile.am b/data/Makefile.am
new file mode 100644
index 0000000..fa758cb
--- /dev/null
+++ b/data/Makefile.am
@@ -0,0 +1,21 @@
+desktopdir = $(datadir)/applications
+desktop_in_files = gnoemoe.desktop.in
+desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
+@INTLTOOL_DESKTOP_RULE@
+
+mimedir = $(datadir)/mime/packages
+mime_DATA = gnoemoe.xml
+
+langdir = $(datadir)/gtksourceview-1.0/language-specs
+lang_DATA = moo.lang
+
+EXTRA_DIST = \
+ $(desktop_in_files) \
+ $(mime_DATA) \
+ $(lang_DATA)
+
+CLEANFILES = \
+ $(desktop_DATA)
+
+
+
diff --git a/data/gnoemoe.applications b/data/gnoemoe.applications
new file mode 100644
index 0000000..0dd4e03
--- /dev/null
+++ b/data/gnoemoe.applications
@@ -0,0 +1,8 @@
+gnoemoe
+ command=gnoemoe
+ name=gnoemoe
+ can_open_multiple_files=true
+ expects_uris=true
+ requires_terminal=false
+ mime_types=text/x-moo
+ uses_gnomevfs=true
diff --git a/data/gnoemoe.desktop.in b/data/gnoemoe.desktop.in
new file mode 100644
index 0000000..88cca55
--- /dev/null
+++ b/data/gnoemoe.desktop.in
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=GnoeMoe
+GenericName=MOO Client
+Comment=GnoeMoe Gnome MOO Client
+Exec=gnoemoe
+Icon=gnoemoe-logo.svg
+Terminal=0
+Type=Application
+Categories=GNOME;GTK;Network
diff --git a/data/gnoemoe.schemas.in b/data/gnoemoe.schemas.in
new file mode 100644
index 0000000..1a776f5
--- /dev/null
+++ b/data/gnoemoe.schemas.in
@@ -0,0 +1,39 @@
+
+
+
+ /schemas/desktop/gnome/url-handlers/moo/enabled
+ /desktop/gnome/url-handlers/moo/enabled
+ gnoemoe
+ bool
+ true
+
+ Enable url handler for moo:// scheme.
+ Boolean options available, true enables gnoemoe to handle to moo:// scheme, false disables gnoemoe from handling moo:// scheme.
+
+
+
+
+ /schemas/desktop/gnome/url-handlers/moo/command
+ /desktop/gnome/url-handlers/moo/command
+ gnoemoe
+ string
+ gnoemoe "%s"
+
+ Handler command for for handling the url.
+ The command (gnoemoe) which handles the url.
+
+
+
+ /schemas/desktop/gnome/url-handlers/moo/needs-terminal
+ /desktop/gnome/url-handlers/moo/needs-terminal
+ gnoemoe
+ bool
+ false
+
+ Whether the command needs a terminal.
+ When set to true, the command is launched within a terminal. When false, the command is launched without a terminal
+
+
+
+
+
diff --git a/data/gnoemoe.xml b/data/gnoemoe.xml
new file mode 100644
index 0000000..68d8302
--- /dev/null
+++ b/data/gnoemoe.xml
@@ -0,0 +1,8 @@
+
+
+
+ MOO Code
+
+
+
+
diff --git a/data/moo.lang b/data/moo.lang
new file mode 100644
index 0000000..f7df7ee
--- /dev/null
+++ b/data/moo.lang
@@ -0,0 +1,217 @@
+
+
+
+
+ \
+
+
+ ^[ ]*"
+ "
+
+
+
+ "
+ "
+
+
+
+ if
+ else
+ elseif
+ endif
+ for
+ endfor
+ break
+ continue
+ while
+ endwhile
+ in
+ return
+ try
+ except
+ endtry
+ finally
+ fork
+ endfork
+
+
+
+ E_NONE
+ E_TYPE
+ E_DIV
+ E_PERM
+ E_PROPNF
+ E_VERBNF
+ E_VARNF
+ E_INVIND
+ E_RECMOVE
+ E_MAXREC
+ E_RANGE
+ E_ARGS
+ E_NACC
+ E_INVARG
+ E_QUOTA
+ E_FLOAT
+
+
+
+ abs
+ acos
+ add_property
+ asin
+ atan
+ binary_hash
+ boot_player
+ buffered_output_length
+ call_function
+ caller_perms
+ callers
+ ceil
+ children
+ chparent
+ clear_property
+ connected_players
+ connected_seconds
+ connection_name
+ connection_option
+ connection_options
+ cos
+ cosh
+ create
+ crypt
+ ctime
+ db_disk_size
+ decode_binary
+ delete_property
+ delete_verb
+ disassemble
+ dump_database
+ encode_binary
+ equal
+ eval
+ exp
+ floatstr
+ floor
+ flush_input
+ force_input
+ function_info
+ idle_seconds
+ index
+ is_clear_property
+ is_member
+ is_player
+ kill_task
+ length
+ listappend
+ listdelete
+ listen
+ listeners
+ listinsert
+ listset
+ log
+ log10
+ match
+ max
+ max_object
+ memory_usage
+ min
+ move
+ notify
+ object_bytes
+ open_network_connection
+ output_delimiters
+ parent
+ pass
+ players
+ properties
+ property_info
+ queue_info
+ queued_tasks
+ raise
+ random
+ read
+ recycle
+ renumber
+ reset_max_object
+ resume
+ rindex
+ rmatch
+ seconds_left
+ server_log
+ server_version
+ set_connection_option
+ set_player_flag
+ set_property_info
+ set_task_perms
+ set_verb_args
+ set_verb_code
+ set_verb_info
+ setadd
+ setremove
+ shutdown
+ sin
+ sinh
+ sqrt
+ strcmp
+ string_hash
+ strsub
+ substitute
+ suspend
+ tan
+ tanh
+ task_id
+ task_stack
+ ticks_left
+ time
+ tofloat
+ toint
+ toliteral
+ tonum
+ toobj
+ tostr
+ trunc
+ typeof
+ unlisten
+ valid
+ value_bytes
+ value_hash
+ verb_args
+ verb_code
+ verb_info
+ verbs
+
+
+
+ player
+ this
+ caller
+ verb
+ argstr
+ args
+ dobjstr
+ dobj
+ prepstr
+ iobjstr
+ iobj
+
+
+
+ ERR
+ LIST
+ STR
+ OBJ
+ INT
+ FLOAT
+ ANY
+
+
+
+ \$[A-Za-z0-9_]+
+
+
+
+ #[-]?[0-9]+
+
+
+
+