Updated runtime files and translations.
diff --git a/runtime/syntax/murphi.vim b/runtime/syntax/murphi.vim
new file mode 100644
index 0000000..5620010
--- /dev/null
+++ b/runtime/syntax/murphi.vim
@@ -0,0 +1,127 @@
+" Vim syntax file
+" Language: Murphi model checking language
+" Maintainer: Matthew Fernandez <matthew.fernandez@gmail.com>
+" Last Change: 2017 May 3
+" Version: 2
+" Remark: Originally authored by Diego Ongaro <ongaro@cs.stanford.edu> 
+
+if version < 600
+  syntax clear
+elseif exists("b:current_syntax")
+  finish
+endif
+
+" Keywords are case insensitive.
+" Keep these in alphabetical order.
+syntax case ignore
+syn keyword murphiKeyword       alias
+syn keyword murphiStructure     array
+syn keyword murphiKeyword       assert
+syn keyword murphiKeyword       begin
+syn keyword murphiType          boolean
+syn keyword murphiKeyword       by
+syn keyword murphiLabel         case
+syn keyword murphiKeyword       clear
+syn keyword murphiLabel         const
+syn keyword murphiRepeat        do
+syn keyword murphiConditional   else
+syn keyword murphiConditional   elsif
+syn keyword murphiKeyword       end
+syn keyword murphiKeyword       endalias
+syn keyword murphiRepeat        endexists
+syn keyword murphiRepeat        endfor
+syn keyword murphiRepeat        endforall
+syn keyword murphiKeyword       endfunction
+syn keyword murphiConditional   endif
+syn keyword murphiKeyword       endprocedure
+syn keyword murphiStructure     endrecord
+syn keyword murphiKeyword       endrule
+syn keyword murphiKeyword       endruleset
+syn keyword murphiKeyword       endstartstate
+syn keyword murphiConditional   endswitch
+syn keyword murphiRepeat        endwhile
+syn keyword murphiStructure     enum
+syn keyword murphiKeyword       error
+syn keyword murphiRepeat        exists
+syn keyword murphiBoolean       false
+syn keyword murphiRepeat        for
+syn keyword murphiRepeat        forall
+syn keyword murphiKeyword       function
+syn keyword murphiConditional   if
+syn keyword murphiKeyword       in
+syn keyword murphiKeyword       interleaved
+syn keyword murphiLabel         invariant
+syn keyword murphiFunction      ismember
+syn keyword murphiFunction      isundefined
+syn keyword murphiKeyword       log
+syn keyword murphiStructure     of
+syn keyword murphiType          multiset
+syn keyword murphiFunction      multisetadd
+syn keyword murphiFunction      multisetcount
+syn keyword murphiFunction      multisetremove
+syn keyword murphiFunction      multisetremovepred
+syn keyword murphiKeyword       procedure
+syn keyword murphiKeyword       process
+syn keyword murphiKeyword       program
+syn keyword murphiKeyword       put
+syn keyword murphiStructure     record
+syn keyword murphiKeyword       return
+syn keyword murphiLabel         rule
+syn keyword murphiLabel         ruleset
+syn keyword murphiType          scalarset
+syn keyword murphiLabel         startstate
+syn keyword murphiConditional   switch
+syn keyword murphiConditional   then
+syn keyword murphiRepeat        to
+syn keyword murphiKeyword       traceuntil
+syn keyword murphiBoolean       true
+syn keyword murphiLabel         type
+syn keyword murphiKeyword       undefine
+syn keyword murphiStructure     union
+syn keyword murphiLabel         var
+syn keyword murphiRepeat        while
+
+syn keyword murphiTodo contained todo xxx fixme
+syntax case match
+
+" Integers.
+syn match murphiNumber "\<\d\+\>"
+
+" Operators and special characters.
+syn match murphiOperator "[\+\-\*\/%&|=!<>:\?]\|\."
+syn match murphiDelimiter "\(:[^=]\|[;,]\)"
+syn match murphiSpecial "[()\[\]]"
+
+" Double equal sign is a common error: use one equal sign for equality testing.
+syn match murphiError "==[^>]"he=e-1
+" Double && and || are errors.
+syn match murphiError "&&\|||"
+
+" Strings. This is defined so late so that it overrides previous matches.
+syn region murphiString start=+"+ end=+"+
+
+" Comments. This is defined so late so that it overrides previous matches.
+syn region murphiComment start="--" end="$" contains=murphiTodo
+syn region murphiComment start="/\*" end="\*/" contains=murphiTodo
+
+" Link the rules to some groups.
+highlight link murphiComment        Comment
+highlight link murphiString         String
+highlight link murphiNumber         Number
+highlight link murphiBoolean        Boolean
+highlight link murphiIdentifier     Identifier
+highlight link murphiFunction       Function
+highlight link murphiStatement      Statement
+highlight link murphiConditional    Conditional
+highlight link murphiRepeat         Repeat
+highlight link murphiLabel          Label
+highlight link murphiOperator       Operator
+highlight link murphiKeyword        Keyword
+highlight link murphiType           Type
+highlight link murphiStructure      Structure
+highlight link murphiSpecial        Special
+highlight link murphiDelimiter      Delimiter
+highlight link murphiError          Error
+highlight link murphiTodo           Todo
+
+let b:current_syntax = "murphi"