ADDED vim/after/syntax/objc.vim Index: vim/after/syntax/objc.vim ================================================================== --- vim/after/syntax/objc.vim +++ vim/after/syntax/objc.vim @@ -0,0 +1,44 @@ +" Author: Michael Sanders (msanders42 [at] gmail [dot] com) +" Some modifications by Jonathan Schleifer +" Description: Better syntax highlighting for Objective-C files (part of the +" cocoa.vim plugin). +" Last Updated: May 6, 2011 +" +" Put to ~/.vim/after/syntax/objc.vim + +syn match objcDirective '@synthesize\|@property\|@optional\|@required\|@autoreleasepool' display +syn keyword objcType IBOutlet IBAction Method __block instancetype +syn keyword objcType __unsafe_unretained __bridge __bridge_retained __bridge_transfer __autoreleasing __strong __weak +syn keyword objcType of_unichar_t of_char16_t of_char32_t of_comparison_result_t +syn keyword objcType of_byte_order_t of_range_t of_point_t of_dimension_t +syn keyword objcType of_rectangle_t of_string_encoding_t of_time_interval_t +syn keyword objcType of_resolver_result_t of_udp_socket_address_t +syn keyword objcConstant YES NO TRUE FALSE + +syn region objcImp start='@implementation' end='@end' transparent +syn region objcHeader start='@interface' end='@end' transparent + +syn match objcSubclass '\(@implementation\|@interface\)\@<=\s*\k\+' display contained containedin=objcImp,objcHeader +syn match objcSuperclass '\(@\(implementation\|interface\)\s*\k\+\s*:\)\@<=\s*\k*' display contained containedin=objcImp,objcHeader + +" Matches "bar" in "[NSObject bar]" or "bar" in "[[NSObject foo: baz] bar]", +" but NOT "bar" in "[NSObject foo: bar]". +syn match objcMessageName '\(\[\s*\k\+\s\+\|\]\s*\)\@<=\k*\s*\]'me=e-1 display contained containedin=objcMessage +" Matches "foo:" in "[NSObject foo: bar]" or "[[NSObject new] foo: bar]" +syn match objcMessageColon '\(\_\S\+\_\s\+\)\@<=\k\+\s*:' display contained containedin=objcMessage +" Matches "foo:" in above +syn match objcMessageArg ')\@<=\s*\k\+' contained containedin=objcMessage + +" Don't match these in this strange group for edge cases... +syn cluster cMultiGroup add=objcMessageColon,objcMessageName + +hi link objcMessageArg Identifier + +hi link objcMessageName objcMessageArg +hi link objcMessageColon objcMessageName +hi link objcMessageReceiver Special + +hi link objcSubclass objcMethodName +hi link objcSuperclass String + +hi link objcError Error ADDED vim/autoload/go/complete.vim Index: vim/autoload/go/complete.vim ================================================================== --- vim/autoload/go/complete.vim +++ vim/autoload/go/complete.vim @@ -0,0 +1,71 @@ +" Copyright 2011 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. +" +" This file provides a utility function that performs auto-completion of +" package names, for use by other commands. + +let s:goos = $GOOS +let s:goarch = $GOARCH + +if len(s:goos) == 0 + if exists('g:golang_goos') + let s:goos = g:golang_goos + elseif has('win32') || has('win64') + let s:goos = 'windows' + elseif has('macunix') + let s:goos = 'darwin' + else + let s:goos = '*' + endif +endif + +if len(s:goarch) == 0 + if exists('g:golang_goarch') + let s:goarch = g:golang_goarch + else + let s:goarch = '*' + endif +endif + +function! go#complete#Package(ArgLead, CmdLine, CursorPos) + let dirs = [] + + if executable('go') + let goroot = substitute(system('go env GOROOT'), '\n', '', 'g') + if v:shell_error + echo '\'go env GOROOT\' failed' + endif + else + let goroot = $GOROOT + endif + + if len(goroot) != 0 && isdirectory(goroot) + let dirs += [ goroot ] + endif + + let workspaces = split($GOPATH, ':') + if workspaces != [] + let dirs += workspaces + endif + + if len(dirs) == 0 + " should not happen + return [] + endif + + let ret = {} + for dir in dirs + let root = expand(dir . '/pkg/' . s:goos . '_' . s:goarch) + for i in split(globpath(root, a:ArgLead.'*'), "\n") + if isdirectory(i) + let i .= '/' + elseif i !~ '\.a$' + continue + endif + let i = substitute(substitute(i[len(root)+1:], '[\\]', '/', 'g'), '\.a$', '', 'g') + let ret[i] = i + endfor + endfor + return sort(keys(ret)) +endfunction ADDED vim/colors/blackbeauty.vim Index: vim/colors/blackbeauty.vim ================================================================== --- vim/colors/blackbeauty.vim +++ vim/colors/blackbeauty.vim @@ -0,0 +1,66 @@ +" Vim color file +" Maintainer: Surya +" Last Change: 12/23/2003 10:32:41 . +" version: 1.0 +" This color scheme uses a dark background. +set background=dark +hi clear +if exists("syntax_on") + syntax reset +endif + +let g:colors_name = "koehler" +hi Normal guifg=white guibg=black +hi Scrollbar guibg=darkgray guifg=darkgray +hi Menu guifg=black guibg=gray +hi SpecialKey term=bold cterm=bold ctermfg=darkred guifg=Blue +hi NonText term=bold cterm=bold ctermfg=darkred gui=bold guifg=Blue +hi Directory term=bold cterm=bold ctermfg=brown guifg=Blue +hi ErrorMsg term=standout cterm=bold ctermfg=grey ctermbg=blue gui=bold guifg=White guibg=brown +hi Search term=reverse ctermfg=white ctermbg=red gui=bold guifg=#000000 guibg=Magenta +hi MoreMsg term=bold cterm=bold ctermfg=darkgreen gui=bold guifg=SeaGreen +hi ModeMsg term=bold cterm=bold gui=bold guifg=White guibg=Blue +hi LineNr term=underline cterm=bold ctermfg=darkcyan guibg=brown guifg=white +hi Question term=standout cterm=bold ctermfg=darkgreen gui=bold guifg=Green +hi StatusLine term=bold,reverse cterm=bold ctermfg=lightblue ctermbg=white gui=bold guibg=white guifg=brown +hi StatusLineNC term=reverse ctermfg=white ctermbg=lightblue guifg=white guibg=blue +hi Title term=bold cterm=bold ctermfg=darkmagenta gui=bold guifg=Magenta +hi Visual term=reverse cterm=reverse gui=reverse +hi WarningMsg term=standout cterm=bold ctermfg=darkblue gui=bold guifg=cyan guibg=Black +hi Cursor guifg=bg guibg=cyan +hi Comment term=bold cterm=bold ctermfg=cyan guifg=#80a0ff +hi Constant term=underline cterm=bold ctermfg=magenta guifg=#ffa0a0 +hi String term=underline cterm=bold ctermfg=magenta gui=bold guifg=brown guibg=darkgray +hi Number term=underline cterm=bold ctermfg=magenta guifg=#00ffff +hi Special term=bold gui=bold cterm=bold ctermfg=red guifg=Orange +hi Identifier term=underline ctermfg=brown guifg=#40ffff +hi Statement term=bold cterm=bold ctermfg=yellow gui=bold guifg=#ffff60 +hi PreProc term=underline ctermfg=darkblue guifg=#ff80ff +hi Type term=underline cterm=bold ctermfg=lightgreen gui=bold guifg=#60ff60 +hi Error gui=bold guifg=Yellow guibg=Black +hi Todo term=standout ctermfg=black ctermbg=darkcyan guifg=Blue guibg=Yellow +"hi VertSplit guifg=#00FFFF guibg=#000000 gui=bold +hi link IncSearch Visual +hi link Character Constant +hi link Boolean Constant +hi link Float Number +hi link Function Identifier +hi link Conditional Statement +hi link Repeat Statement +hi link Label Statement +hi link Operator Statement +hi link Keyword Statement +hi link Exception Statement +hi link Include PreProc +hi link Define PreProc +hi link Macro PreProc +hi link PreCondit PreProc +hi link StorageClass Type +hi link Structure Type +hi link Typedef Type +hi link Tag Special +hi link SpecialChar Special +hi link Delimiter Special +hi link SpecialComment Special +hi link Debug Special + ADDED vim/colors/candycode.vim Index: vim/colors/candycode.vim ================================================================== --- vim/colors/candycode.vim +++ vim/colors/candycode.vim @@ -0,0 +1,174 @@ +" Vim color file -- candycode +" Maintainer: Justin Constantino +" Last Change: 2006 Aug 12 + +set background=dark +highlight clear +let g:colors_name="candycode" + +let save_cpo = &cpo +set cpo&vim + +" basic highlight groups (:help highlight-groups) + +" text + +hi Normal guifg=#ffffff guibg=#050505 gui=NONE + \ ctermfg=white ctermbg=black cterm=NONE + +hi Folded guifg=#c2bfa5 guibg=#050505 gui=underline + \ ctermfg=lightgray ctermbg=black cterm=underline + +hi LineNr guifg=#928c75 guibg=NONE gui=NONE + \ ctermfg=darkgray ctermbg=NONE cterm=NONE + +hi Directory guifg=#00bbdd guibg=NONE gui=NONE + \ ctermfg=cyan ctermbg=NONE cterm=NONE +hi NonText guifg=#77ff22 guibg=NONE gui=bold + \ ctermfg=yellow ctermbg=NONE cterm=NONE +hi SpecialKey guifg=#559933 guibg=NONE gui=NONE + \ ctermfg=green ctermbg=NONE cterm=NONE + +hi SpellBad guifg=NONE guibg=NONE gui=undercurl + \ ctermfg=white ctermbg=darkred guisp=#ff0011 +hi SpellCap guifg=NONE guibg=NONE gui=undercurl + \ ctermfg=white ctermbg=darkblue guisp=#0044ff +hi SpellLocal guifg=NONE guibg=NONE gui=undercurl + \ ctermfg=black ctermbg=cyan guisp=#00dd99 +hi SpellRare guifg=NONE guibg=NONE gui=undercurl + \ ctermfg=white ctermbg=darkmagenta guisp=#ff22ee + +hi DiffAdd guifg=#ffffff guibg=#126493 gui=NONE + \ ctermfg=white ctermbg=darkblue cterm=NONE +hi DiffChange guifg=#000000 guibg=#976398 gui=NONE + \ ctermfg=black ctermbg=darkmagenta cterm=NONE +hi DiffDelete guifg=#000000 guibg=#be1923 gui=bold + \ ctermfg=black ctermbg=red cterm=bold +hi DiffText guifg=#ffffff guibg=#976398 gui=bold + \ ctermfg=white ctermbg=green cterm=bold + +" +" borders / separators / menus + +hi FoldColumn guifg=#c8bcb9 guibg=#786d65 gui=bold + \ ctermfg=lightgray ctermbg=darkgray cterm=NONE +hi SignColumn guifg=#c8bcb9 guibg=#786d65 gui=bold + \ ctermfg=lightgray ctermbg=darkgray cterm=NONE + +hi Pmenu guifg=#000000 guibg=#a6a190 gui=NONE + \ ctermfg=white ctermbg=darkgray cterm=NONE +hi PmenuSel guifg=#ffffff guibg=#133293 gui=NONE + \ ctermfg=white ctermbg=lightblue cterm=NONE +hi PmenuSbar guifg=NONE guibg=#555555 gui=NONE + \ ctermfg=black ctermbg=black cterm=NONE +hi PmenuThumb guifg=NONE guibg=#cccccc gui=NONE + \ ctermfg=gray ctermbg=gray cterm=NONE + +hi StatusLine guifg=#000000 guibg=#c2bfa5 gui=bold + \ ctermfg=black ctermbg=white cterm=bold +hi StatusLineNC guifg=#444444 guibg=#c2bfa5 gui=NONE + \ ctermfg=darkgray ctermbg=white cterm=NONE +hi WildMenu guifg=#ffffff guibg=#133293 gui=bold + \ ctermfg=white ctermbg=darkblue cterm=bold +hi VertSplit guifg=#c2bfa5 guibg=#c2bfa5 gui=NONE + \ ctermfg=white ctermbg=white cterm=NONE + +hi TabLine guifg=#000000 guibg=#c2bfa5 gui=NONE + \ ctermfg=black ctermbg=white cterm=NONE +hi TabLineFill guifg=#000000 guibg=#c2bfa5 gui=NONE + \ ctermfg=black ctermbg=white cterm=NONE +hi TabLineSel guifg=#ffffff guibg=#133293 gui=NONE + \ ctermfg=white ctermbg=black cterm=NONE + +"hi Menu +"hi Scrollbar +"hi Tooltip + +" +" cursor / dynamic / other + +hi Cursor guifg=#000000 guibg=#ffff99 gui=NONE + \ ctermfg=black ctermbg=white cterm=NONE +hi CursorIM guifg=#000000 guibg=#aaccff gui=NONE + \ ctermfg=black ctermbg=white cterm=reverse +hi CursorLine guifg=NONE guibg=#1b1b1b gui=NONE + \ ctermfg=NONE ctermbg=NONE cterm=NONE +hi CursorColumn guifg=NONE guibg=#1b1b1b gui=NONE + \ ctermfg=NONE ctermbg=NONE cterm=NONE + +hi Visual guifg=#ffffff guibg=#606070 gui=NONE + \ ctermfg=white ctermbg=lightblue cterm=NONE + +hi IncSearch guifg=#000000 guibg=#eedd33 gui=bold + \ ctermfg=white ctermbg=yellow cterm=NONE +hi Search guifg=#efefd0 guibg=#937340 gui=NONE + \ ctermfg=white ctermbg=darkgreen cterm=NONE + +hi MatchParen guifg=NONE guibg=#3377aa gui=NONE + \ ctermfg=white ctermbg=blue cterm=NONE + +"hi VisualNOS + +" +" listings / messages + +hi ModeMsg guifg=#eecc18 guibg=NONE gui=NONE + \ ctermfg=yellow ctermbg=NONE cterm=NONE +hi Title guifg=#dd4452 guibg=NONE gui=bold + \ ctermfg=red ctermbg=NONE cterm=bold +hi Question guifg=#66d077 guibg=NONE gui=NONE + \ ctermfg=green ctermbg=NONE cterm=NONE +hi MoreMsg guifg=#39d049 guibg=NONE gui=NONE + \ ctermfg=green ctermbg=NONE cterm=NONE + +hi ErrorMsg guifg=#ffffff guibg=#ff0000 gui=bold + \ ctermfg=white ctermbg=red cterm=bold +hi WarningMsg guifg=#ccae22 guibg=NONE gui=bold + \ ctermfg=yellow ctermbg=NONE cterm=bold + +" + +" +" syntax highlighting groups (:help group-name) + +hi Comment guifg=#ff9922 guibg=NONE gui=NONE + \ ctermfg=brown ctermbg=NONE cterm=NONE + +hi Constant guifg=#ff6050 guibg=NONE gui=NONE + \ ctermfg=red ctermbg=NONE cterm=NONE +hi Boolean guifg=#ff6050 guibg=NONE gui=bold + \ ctermfg=red ctermbg=NONE cterm=bold + +hi Identifier guifg=#eecc44 guibg=NONE gui=NONE + \ ctermfg=yellow ctermbg=NONE cterm=NONE + +hi Statement guifg=#66d077 guibg=NONE gui=bold + \ ctermfg=green ctermbg=NONE cterm=bold + +hi PreProc guifg=#bb88dd guibg=NONE gui=NONE + \ ctermfg=darkmagenta ctermbg=NONE cterm=NONE + +hi Type guifg=#4093cc guibg=NONE gui=bold + \ ctermfg=lightblue ctermbg=NONE cterm=bold + +hi Special guifg=#9999aa guibg=NONE gui=bold + \ ctermfg=lightgray ctermbg=NONE cterm=bold + +hi Underlined guifg=#80a0ff guibg=NONE gui=underline + \ ctermfg=NONE ctermbg=NONE cterm=underline + \ term=underline + +hi Ignore guifg=#888888 guibg=NONE gui=NONE + \ ctermfg=darkgray ctermbg=NONE cterm=NONE + +hi Error guifg=#ffffff guibg=#ff0000 gui=NONE + \ ctermfg=white ctermbg=red cterm=NONE + +hi Todo guifg=#ffffff guibg=#ee7700 gui=bold + \ ctermfg=black ctermbg=yellow cterm=bold + +" + +let &cpo = save_cpo + +" vim: fdm=marker fdl=0 ADDED vim/colors/dante.vim Index: vim/colors/dante.vim ================================================================== --- vim/colors/dante.vim +++ vim/colors/dante.vim @@ -0,0 +1,83 @@ +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" File: "/home/caciano/.vim/dante.vim" +" Created: "Thu, 23 May 2002 00:12:20 -0300 (caciano)" +" Updated: "Sat, 24 Aug 2002 14:04:21 -0300 (caciano)" +" Copyright (C) 2002, Caciano Machado +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Colorscheme Option: +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +hi clear +if exists("syntax on") + syntax reset +endif +let g:colors_name = "dante" + +" General colors +hi Normal ctermfg=gray guifg=peachpuff3 guibg=black +hi Directory term=bold ctermfg=blue guifg=royalblue +hi ErrorMsg term=standout ctermfg=white ctermbg=red guifg=white guibg=red3 +hi NonText term=bold ctermfg=darkgray guibg=gray3 guifg=gray20 +hi SpecialKey term=bold ctermfg=darkgray guifg=gray30 +hi LineNr term=underline ctermfg=darkgray guifg=ivory4 guibg=gray4 +hi IncSearch term=reverse cterm=reverse gui=reverse,bold guifg=darkgoldenrod2 +hi Search term=reverse ctermfg=black ctermbg=yellow guifg=gray10 guibg=gold2 +hi Visual term=bold,reverse cterm=bold,reverse ctermfg=gray ctermbg=black gui=bold,reverse guifg=gray40 guibg=black +hi VisualNOS term=bold,underline cterm=bold,underline gui=bold,underline +hi MoreMsg term=bold ctermfg=green gui=bold guifg=olivedrab1 +hi ModeMsg term=bold cterm=bold gui=bold +hi Question term=standout ctermfg=green gui=bold guifg=olivedrab1 +hi WarningMsg term=standout ctermfg=red gui=bold guifg=red3 +hi WildMenu term=standout ctermfg=black ctermbg=yellow guifg=black guibg=gold2 +hi Folded term=standout ctermfg=blue ctermbg=white guifg=royalblue1 guibg=white +hi FoldColumn term=standout ctermfg=blue ctermbg=white guifg=royalblue3 guibg=white +hi DiffAdd term=bold ctermbg=blue guibg=royalblue2 +hi DiffChange term=bold ctermbg=darkmagenta guibg=maroon +hi DiffDelete term=bold cterm=bold ctermfg=lightblue ctermbg=cyan gui=bold guifg=lightblue guibg=cyan4 +hi DiffText term=reverse cterm=bold ctermbg=red gui=bold guibg=red3 +hi Cursor guifg=bg guibg=fg +hi lCursor guifg=bg guibg=fg +hi StatusLine term=reverse cterm=reverse gui=reverse guifg=gray60 +hi StatusLineNC term=reverse cterm=reverse gui=reverse guifg=gray40 +hi VertSplit term=reverse cterm=reverse gui=bold,reverse guifg=gray40 +hi Title term=bold ctermfg=magenta gui=bold guifg=aquamarine + +" syntax hi colors +hi Comment term=bold ctermfg=darkcyan guifg=cyan4 +hi PreProc term=underline ctermfg=darkblue guifg=dodgerblue4 +hi Constant term=underline ctermfg=darkred guifg=firebrick3 +hi Type term=underline ctermfg=darkgreen gui=none guifg=chartreuse3 +hi Statement term=bold ctermfg=darkyellow gui=none guifg=gold3 +hi Identifier term=underline ctermfg=darkgreen guifg=darkolivegreen4 +hi Ignore term=bold ctermfg=darkgray guifg=gray45 +hi Special term=underline ctermfg=brown guifg=sienna +hi Error term=reverse ctermfg=gray ctermbg=red guifg=gray guibg=red3 +hi Todo term=standout ctermfg=black ctermbg=yellow gui=bold guifg=gray10 guibg=yellow4 +hi Underlined term=underline cterm=underline ctermfg=darkblue gui=underline guifg=slateblue +hi Number term=underline ctermfg=darkred guifg=red2 +" syntax hi links +hi link String Constant +hi link Character Constant +hi link Number Constant +hi link Boolean Constant +hi link Float Number +hi link Function Identifier +hi link Number Constant +hi link Conditional Statement +hi link Repeat Statement +hi link Label Statement +hi link Keyword Statement +hi link Exception Statement +hi link Operator Statement +hi link Include PreProc +hi link Define PreProc +hi link Macro PreProc +hi link PreCondit PreProc +hi link StorageClass Type +hi link Structure Type +hi link Typedef Type +hi link Tag Special +hi link SpecialChar Special +hi link Delimiter Special +hi link SpecialComment Special +hi link Debug Special +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" ADDED vim/colors/darkburn.vim Index: vim/colors/darkburn.vim ================================================================== --- vim/colors/darkburn.vim +++ vim/colors/darkburn.vim @@ -0,0 +1,300 @@ +"============================================================================= +" Vim color file +" File: darkburn.vim +" Maintainer: Taurus Olson +" License: GPL +" Created: 2009-03-27 20:25:21 CET +" Modified: 2009-06-06 21:18:55 CET +" Version: 1.2 + +" Modified version of zenburn originally created by: +" Maintainer: Jani Nurminen +" Last Change: $Id: zenburn.vim,v 2.4 2008/11/18 20:43:18 slinky Exp $ +" URL: http://slinky.imukuppi.org/zenburnpage/ +" License: GPL +"============================================================================= +" +" Credits: +" - Jani Nurminen - original Zenburn +" - Steve Hall & Cream posse - higher-contrast Visual selection +" - Kurt Maier - 256 color console coloring, low and high contrast toggle, +" bug fixing +" - Charlie - spotted too bright StatusLine in non-high contrast mode +" - Pablo Castellazzi - CursorLine fix for 256 color mode +" - Tim Smith - force dark background +" +" CONFIGURABLE PARAMETERS: +" +" You can use the default (don't set any parameters), or you can +" set some parameters to tweak the Zenburn colours. +" +" * You can now set a darker background for bright environments. To activate, use: +" contrast Zenburn, use: +" + let g:darkburn_high_Contrast = 1 +" +" * To get more contrast to the Visual selection, use +" +" let g:darkburn_alternate_Visual = 1 +" +" * To use alternate colouring for Error message, use +" + let g:darkburn_alternate_Error = 1 +" +" * The new default for Include is a duller orange. To use the original +" colouring for Include, use +" + let g:darkburn_alternate_Include = 1 +" +" * Work-around to a Vim bug, it seems to misinterpret ctermfg and 234 and 237 +" as light values, and sets background to light for some people. If you have +" this problem, use: +" + let g:darkburn_force_dark_Background = 1 +" +" * To turn the parameter(s) back to defaults, use UNLET: +" +" unlet g:darkburn_alternate_Include +" +" Setting to 0 won't work! +" +" That's it, enjoy! +" +" TODO +" - Visual alternate color is broken? Try GVim >= 7.0.66 if you have trouble +" - IME colouring (CursorIM) + +set background=dark +hi clear +if exists("syntax_on") + syntax reset +endif +let g:colors_name="darkburn" + +hi Boolean guifg=#dca3a3 +hi Character guifg=#dca3a3 gui=bold +hi Comment guifg=#7f9f7f gui=italic +hi Conditional guifg=#f0dfaf gui=bold +hi Constant guifg=#dca3a3 gui=bold +hi Cursor guifg=#000d18 guibg=#8faf9f gui=bold +hi Debug guifg=#bca3a3 gui=bold +hi Define guifg=#ffcfaf gui=bold +hi Delimiter guifg=#8f8f8f +hi DiffAdd guifg=#709080 guibg=#313c36 gui=bold +hi DiffChange guibg=#333333 +hi DiffDelete guifg=#333333 guibg=#464646 +hi DiffText guifg=#ecbcbc guibg=#41363c gui=bold +hi Directory guifg=#dcdccc gui=bold +hi ErrorMsg guifg=#80d4aa guibg=#2f2f2f gui=bold +hi Exception guifg=#c3bf9f gui=bold +hi Float guifg=#c0bed1 +hi FoldColumn guifg=#93b3a3 guibg=#3f4040 +hi Folded guifg=#93b3a3 guibg=#3f4040 +hi Function guifg=#efef8f +hi Identifier guifg=#dcdcdc +hi IncSearch guibg=#f8f893 guifg=#385f38 +hi Keyword guifg=#f0dfaf gui=bold +hi Label guifg=#dfcfaf gui=underline +hi LineNr guifg=#9fafaf guibg=#262626 +hi Macro guifg=#ffcfaf gui=bold +hi ModeMsg guifg=#6fb86f gui=none +hi MoreMsg guifg=#ffffff gui=bold +hi NonText guifg=#404040 +hi Number guifg=#8cd0d3 +hi Operator guifg=#f0efd0 +hi PreCondit guifg=#dfaf8f gui=bold +hi PreProc guifg=#ffb23f gui=bold +hi Question guifg=#ffffff gui=bold +hi Repeat guifg=#ffd7a7 gui=bold +hi Search guifg=#ffffe0 guibg=#284f28 +hi SpecialChar guifg=#9fbfd6 gui=bold +hi SpecialComment guifg=#82a282 gui=bold +hi Special guifg=#9fbfd6 +hi SpecialKey guifg=#9ece9e +hi Statement guifg=#6fb86f gui=none +hi StatusLine guifg=#313633 guibg=#ccdc90 +hi StatusLineNC guifg=#2e3330 guibg=#88b090 +hi StorageClass guifg=#c3bf9f gui=bold +hi String guifg=#b75151 +hi Structure guifg=#efefaf gui=bold +hi Tag guifg=#e89393 gui=bold +hi Title guifg=#efefef gui=bold +hi Todo guifg=#dfdfdf guibg=bg gui=bold +hi Typedef guifg=#dfe4cf gui=bold +hi Type guifg=#dfdfbf gui=bold +hi Underlined guifg=#dcdccc gui=underline +hi VertSplit guifg=#2e3330 guibg=#688060 +hi VisualNOS guifg=#333333 guibg=#f18c96 gui=bold,underline +hi WarningMsg guifg=#ffffff guibg=#333333 gui=bold +hi WildMenu guibg=#2c302d guifg=#cbecd0 gui=underline + +hi SpellBad guisp=#bc6c4c guifg=#dc8c6c +hi SpellCap guisp=#6c6c9c guifg=#8c8cbc +hi SpellRare guisp=#bc6c9c guifg=#bc8cbc +hi SpellLocal guisp=#7cac7c guifg=#9ccc9c + +" Entering Kurt zone +if &t_Co > 255 + hi Boolean ctermfg=181 + hi Character ctermfg=181 cterm=bold + hi Comment ctermfg=108 + hi Conditional ctermfg=223 cterm=bold + hi Constant ctermfg=181 cterm=bold + hi Cursor ctermfg=233 ctermbg=109 cterm=bold + hi Debug ctermfg=181 cterm=bold + hi Define ctermfg=223 cterm=bold + hi Delimiter ctermfg=245 + hi DiffAdd ctermfg=66 ctermbg=237 cterm=bold + hi DiffChange ctermbg=236 + hi DiffDelete ctermfg=236 ctermbg=238 + hi DiffText ctermfg=217 ctermbg=237 cterm=bold + hi Directory ctermfg=188 cterm=bold + hi ErrorMsg ctermfg=115 ctermbg=236 cterm=bold + hi Exception ctermfg=249 cterm=bold + hi Float ctermfg=251 + hi FoldColumn ctermfg=109 ctermbg=238 + hi Folded ctermfg=109 ctermbg=238 + hi Function ctermfg=228 + hi Identifier ctermfg=223 + hi IncSearch ctermbg=228 ctermfg=238 + hi Keyword ctermfg=223 cterm=bold + hi Label ctermfg=187 cterm=underline + hi LineNr ctermfg=248 ctermbg=235 + hi Macro ctermfg=223 cterm=bold + hi ModeMsg ctermfg=223 cterm=none + hi MoreMsg ctermfg=15 cterm=bold + hi NonText ctermfg=238 + hi Number ctermfg=116 + hi Operator ctermfg=230 + hi PreCondit ctermfg=180 cterm=bold + hi PreProc ctermfg=223 cterm=bold + hi Question ctermfg=15 cterm=bold + hi Repeat ctermfg=223 cterm=bold + hi Search ctermfg=230 ctermbg=236 + hi SpecialChar ctermfg=181 cterm=bold + hi SpecialComment ctermfg=108 cterm=bold + hi Special ctermfg=181 + hi SpecialKey ctermfg=151 + hi Statement ctermfg=187 ctermbg=234 cterm=none + hi StatusLine ctermfg=236 ctermbg=186 + hi StatusLineNC ctermfg=235 ctermbg=108 + hi StorageClass ctermfg=249 cterm=bold + hi String ctermfg=174 + hi Structure ctermfg=229 cterm=bold + hi Tag ctermfg=181 cterm=bold + hi Title ctermfg=7 ctermbg=234 cterm=bold + hi Todo ctermfg=108 ctermbg=234 cterm=bold + hi Typedef ctermfg=253 cterm=bold + hi Type ctermfg=187 cterm=bold + hi Underlined ctermfg=188 ctermbg=234 cterm=bold + hi VertSplit ctermfg=236 ctermbg=65 + hi VisualNOS ctermfg=236 ctermbg=210 cterm=bold + hi WarningMsg ctermfg=15 ctermbg=236 cterm=bold + hi WildMenu ctermbg=236 ctermfg=194 cterm=bold + hi CursorLine ctermbg=236 cterm=none + + " spellchecking, always "bright" background + hi SpellLocal ctermfg=14 ctermbg=237 + hi SpellBad ctermfg=9 ctermbg=237 + hi SpellCap ctermfg=12 ctermbg=237 + hi SpellRare ctermfg=13 ctermbg=237 + + " pmenu + hi PMenu ctermfg=248 ctermbg=0 + hi PMenuSel ctermfg=223 ctermbg=235 + + if exists("g:darkburn_high_Contrast") + hi Normal ctermfg=188 ctermbg=234 + else + hi Normal ctermfg=188 ctermbg=237 + hi Cursor ctermbg=109 + hi diffadd ctermbg=237 + hi diffdelete ctermbg=238 + hi difftext ctermbg=237 + hi errormsg ctermbg=237 + hi foldcolumn ctermbg=238 + hi folded ctermbg=238 + hi incsearch ctermbg=228 + hi linenr ctermbg=238 + hi search ctermbg=238 + hi statement ctermbg=237 + hi statusline ctermbg=144 + hi statuslinenc ctermbg=108 + hi title ctermbg=237 + hi todo ctermbg=237 + hi underlined ctermbg=237 + hi vertsplit ctermbg=65 + hi visualnos ctermbg=210 + hi warningmsg ctermbg=236 + hi wildmenu ctermbg=236 + endif +endif + +if exists("g:darkburn_force_dark_Background") + " Force dark background, because of a bug in VIM: VIM sets background + " automatically during "hi Normal ctermfg=X"; it misinterprets the high + " value (234 or 237 above) as a light color, and wrongly sets background to + " light. See ":help highlight" for details. + set background=dark +endif + +if exists("g:darkburn_high_Contrast") + " use new darker background + hi Normal guifg=#ffffff guibg=#1f1f1f + hi CursorLine guibg=#121212 gui=bold + hi Pmenu guibg=#242424 guifg=#ccccbc + hi PMenuSel guibg=#353a37 guifg=#ccdc90 gui=bold + hi PmenuSbar guibg=#2e3330 guifg=#000000 + hi PMenuThumb guibg=#a0afa0 guifg=#040404 + hi MatchParen guifg=#f0f0c0 guibg=#383838 gui=bold + hi SignColumn guifg=#9fafaf guibg=#181818 gui=bold + hi TabLineFill guifg=#cfcfaf guibg=#181818 gui=bold + hi TabLineSel guifg=#efefef guibg=#1c1c1b gui=bold + hi TabLine guifg=#b6bf98 guibg=#181818 gui=bold + hi CursorColumn guifg=#dcdccc guibg=#2b2b2b +else + " Original, lighter background + hi Normal guifg=#dcdccc guibg=#3f3f3f + hi CursorLine guibg=#434443 + hi Pmenu guibg=#2c2e2e guifg=#9f9f9f + hi PMenuSel guibg=#242424 guifg=#d0d0a0 gui=bold + hi PmenuSbar guibg=#2e3330 guifg=#000000 + hi PMenuThumb guibg=#a0afa0 guifg=#040404 + hi MatchParen guifg=#b2b2a0 guibg=#2e2e2e gui=bold + hi SignColumn guifg=#9fafaf guibg=#343434 gui=bold + hi TabLineFill guifg=#cfcfaf guibg=#353535 gui=bold + hi TabLineSel guifg=#efefef guibg=#3a3a39 gui=bold + hi TabLine guifg=#b6bf98 guibg=#353535 gui=bold + hi CursorColumn guifg=#dcdccc guibg=#4f4f4f +endif + + +if exists("g:darkburn_alternate_Visual") + " Visual with more contrast, thanks to Steve Hall & Cream posse + " gui=none fixes weird highlight problem in at least GVim 7.0.66, thanks to Kurt Maier + hi Visual guifg=#000000 guibg=#71d3b4 gui=none + hi VisualNOS guifg=#000000 guibg=#71d3b4 gui=none +else + " use default visual + hi Visual guifg=#71d3b4 guibg=#233323 gui=none + hi VisualNOS guifg=#71d3b4 guibg=#233323 gui=none +endif + +if exists("g:darkburn_alternate_Error") + " use a bit different Error + hi Error guifg=#ef9f9f guibg=#201010 gui=bold +else + " default + hi Error guifg=#e37170 guibg=#332323 gui=none +endif + +if exists("g:darkburn_alternate_Include") + " original setting + hi Include guifg=#ffcfaf gui=bold +else + " new, less contrasted one + hi Include guifg=#dfaf8f gui=bold +endif + " TODO check for more obscure syntax groups that they're ok + +" vim: : ADDED vim/colors/desert.vim Index: vim/colors/desert.vim ================================================================== --- vim/colors/desert.vim +++ vim/colors/desert.vim @@ -0,0 +1,108 @@ +" Vim color file +" Maintainer: Hans Fugal +" Last Change: $Date: 2003/07/24 00:57:11 $ +" Last Change: $Date: 2003/07/24 00:57:11 $ +" URL: http://hans.fugal.net/vim/colors/desert.vim +" Version: $Id: desert.vim,v 1.7 2003/07/24 00:57:11 fugalh Exp $ + +" cool help screens +" :he group-name +" :he highlight-groups +" :he cterm-colors + +set background=dark +if version > 580 + " no guarantees for version 5.8 and below, but this makes it stop + " complaining + hi clear + if exists("syntax_on") + syntax reset + endif +endif +let g:colors_name="desert" + +hi Normal guifg=White guibg=grey20 + +" highlight groups +hi Cursor guibg=indianred guifg=khaki +"hi CursorIM +"hi Directory +"hi DiffAdd +"hi DiffChange +"hi DiffDelete +"hi DiffText +"hi ErrorMsg +hi VertSplit guibg=#c2bfa5 guifg=grey50 gui=none +hi Folded guibg=grey30 guifg=gold +hi FoldColumn guibg=grey30 guifg=tan +hi IncSearch guifg=slategrey guibg=khaki +"hi LineNr +hi ModeMsg guifg=goldenrod +hi MoreMsg guifg=SeaGreen +hi NonText guifg=LightBlue guibg=grey30 +hi Question guifg=springgreen +hi Search guibg=olivedrab guifg=wheat +hi SpecialKey guifg=yellowgreen +hi StatusLine guibg=#c2bfa5 guifg=black gui=none +hi StatusLineNC guibg=#c2bfa5 guifg=grey50 gui=none +hi Title guifg=indianred +hi Visual gui=none guifg=khaki guibg=olivedrab +"hi VisualNOS +hi WarningMsg guifg=salmon +"hi WildMenu +"hi Menu +"hi Scrollbar +"hi Tooltip + +" syntax highlighting groups +hi Comment guifg=SkyBlue +hi Constant guifg=#ffa0a0 +hi Identifier guifg=palegreen +hi Statement guifg=khaki +hi PreProc guifg=indianred +hi Type guifg=darkkhaki +hi Special guifg=navajowhite +"hi Underlined +hi Ignore guifg=grey40 +"hi Error +hi Todo guifg=orangered guibg=yellow2 + +" color terminal definitions +hi SpecialKey ctermfg=darkgreen +hi NonText cterm=bold ctermfg=darkblue +hi Directory ctermfg=darkcyan +hi ErrorMsg cterm=bold ctermfg=7 ctermbg=1 +hi IncSearch cterm=NONE ctermfg=yellow ctermbg=green +hi Search cterm=NONE ctermfg=grey ctermbg=blue +hi MoreMsg ctermfg=darkgreen +hi ModeMsg cterm=NONE ctermfg=brown +hi LineNr ctermfg=3 +hi Question ctermfg=green +hi StatusLine cterm=bold,reverse +hi StatusLineNC cterm=reverse +hi VertSplit cterm=reverse +hi Title ctermfg=5 +hi Visual cterm=reverse +hi VisualNOS cterm=bold,underline +hi WarningMsg ctermfg=1 +hi WildMenu ctermfg=0 ctermbg=3 +hi Folded ctermfg=darkgrey ctermbg=NONE +hi FoldColumn ctermfg=darkgrey ctermbg=NONE +hi DiffAdd ctermbg=4 +hi DiffChange ctermbg=5 +hi DiffDelete cterm=bold ctermfg=4 ctermbg=6 +hi DiffText cterm=bold ctermbg=1 +hi Comment ctermfg=darkcyan +hi Constant ctermfg=brown +hi Special ctermfg=5 +hi Identifier ctermfg=6 +hi Statement ctermfg=3 +hi PreProc ctermfg=5 +hi Type ctermfg=2 +hi Underlined cterm=underline ctermfg=5 +hi Ignore cterm=bold ctermfg=7 +hi Ignore ctermfg=darkgrey +hi Error cterm=bold ctermfg=7 ctermbg=1 + + +"vim: sw=4 ADDED vim/colors/desert256.vim Index: vim/colors/desert256.vim ================================================================== --- vim/colors/desert256.vim +++ vim/colors/desert256.vim @@ -0,0 +1,338 @@ +" Vim color file +" Maintainer: Henry So, Jr. + +" These are the colors of the "desert" theme by Hans Fugal with a few small +" modifications (namely that I lowered the intensity of the normal white and +" made the normal and nontext backgrounds black), modified to work with 88- +" and 256-color xterms. +" +" The original "desert" theme is available as part of the vim distribution or +" at http://hans.fugal.net/vim/colors/. +" +" The real feature of this color scheme, with a wink to the "inkpot" theme, is +" the programmatic approximation of the gui colors to the palettes of 88- and +" 256- color xterms. The functions that do this (folded away, for +" readability) are calibrated to the colors used for Thomas E. Dickey's xterm +" (version 200), which is available at http://dickey.his.com/xterm/xterm.html. +" +" I struggled with trying to parse the rgb.txt file to avoid the necessity of +" converting color names to #rrggbb form, but decided it was just not worth +" the effort. Maybe someone seeing this may decide otherwise... + +set background=dark +if version > 580 + " no guarantees for version 5.8 and below, but this makes it stop + " complaining + hi clear + if exists("syntax_on") + syntax reset + endif +endif +let g:colors_name="desert256" + +if has("gui_running") || &t_Co == 88 || &t_Co == 256 + " functions + " returns an approximate grey index for the given grey level + fun grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " returns the actual grey level represented by the grey index + fun grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif + endfun + + " returns the palette index for the given grey index + fun grey_color(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif + endfun + + " returns an approximate color index for the given color level + fun rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " returns the actual color level for the given color index + fun rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif + endfun + + " returns the palette index for the given R/G/B color indices + fun rgb_color(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif + endfun + + " returns the palette index to approximate the given R/G/B color levels + fun color(r, g, b) + " get the closest grey + let l:gx = grey_number(a:r) + let l:gy = grey_number(a:g) + let l:gz = grey_number(a:b) + + " get the closest color + let l:x = rgb_number(a:r) + let l:y = rgb_number(a:g) + let l:z = rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " there are two possibilities + let l:dgr = grey_level(l:gx) - a:r + let l:dgg = grey_level(l:gy) - a:g + let l:dgb = grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = rgb_level(l:gx) - a:r + let l:dg = rgb_level(l:gy) - a:g + let l:db = rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " use the grey + return grey_color(l:gx) + else + " use the color + return rgb_color(l:x, l:y, l:z) + endif + else + " only one possibility + return rgb_color(l:x, l:y, l:z) + endif + endfun + + " returns the palette index to approximate the 'rrggbb' hex string + fun rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + + return color(l:r, l:g, l:b) + endfun + + " sets the highlighting for the given group + fun X(group, fg, bg, attr) + if a:fg != "" + exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . rgb(a:fg) + endif + if a:bg != "" + exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . rgb(a:bg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif + endfun + " + + call X("Normal", "cccccc", "000000", "") + + " highlight groups + call X("Cursor", "708090", "f0e68c", "") + "CursorIM + "Directory + "DiffAdd + "DiffChange + "DiffDelete + "DiffText + "ErrorMsg + call X("VertSplit", "c2bfa5", "7f7f7f", "reverse") + call X("Folded", "ffd700", "4d4d4d", "") + call X("FoldColumn", "d2b48c", "4d4d4d", "") + call X("IncSearch", "708090", "f0e68c", "") + "LineNr + call X("ModeMsg", "daa520", "", "") + call X("MoreMsg", "2e8b57", "", "") + call X("NonText", "addbe7", "000000", "bold") + call X("Question", "00ff7f", "", "") + call X("Search", "f5deb3", "cd853f", "") + call X("SpecialKey", "9acd32", "", "") + call X("StatusLine", "c2bfa5", "000000", "reverse") + call X("StatusLineNC", "c2bfa5", "7f7f7f", "reverse") + call X("Title", "cd5c5c", "", "") + call X("Visual", "6b8e23", "f0e68c", "reverse") + "VisualNOS + call X("WarningMsg", "fa8072", "", "") + "WildMenu + "Menu + "Scrollbar + "Tooltip + + " syntax highlighting groups + call X("Comment", "87ceeb", "", "") + call X("Constant", "ffa0a0", "", "") + call X("Identifier", "98fb98", "", "none") + call X("Statement", "f0e68c", "", "bold") + call X("PreProc", "cd5c5c", "", "") + call X("Type", "bdb76b", "", "bold") + call X("Special", "ffdead", "", "") + "Underlined + call X("Ignore", "666666", "", "") + "Error + call X("Todo", "ff4500", "eeee00", "") + + " delete functions + delf X + delf rgb + delf color + delf rgb_color + delf rgb_level + delf rgb_number + delf grey_color + delf grey_level + delf grey_number + " +else + " color terminal definitions + hi SpecialKey ctermfg=darkgreen + hi NonText cterm=bold ctermfg=darkblue + hi Directory ctermfg=darkcyan + hi ErrorMsg cterm=bold ctermfg=7 ctermbg=1 + hi IncSearch cterm=NONE ctermfg=yellow ctermbg=green + hi Search cterm=NONE ctermfg=grey ctermbg=blue + hi MoreMsg ctermfg=darkgreen + hi ModeMsg cterm=NONE ctermfg=brown + hi LineNr ctermfg=3 + hi Question ctermfg=green + hi StatusLine cterm=bold,reverse + hi StatusLineNC cterm=reverse + hi VertSplit cterm=reverse + hi Title ctermfg=5 + hi Visual cterm=reverse + hi VisualNOS cterm=bold,underline + hi WarningMsg ctermfg=1 + hi WildMenu ctermfg=0 ctermbg=3 + hi Folded ctermfg=darkgrey ctermbg=NONE + hi FoldColumn ctermfg=darkgrey ctermbg=NONE + hi DiffAdd ctermbg=4 + hi DiffChange ctermbg=5 + hi DiffDelete cterm=bold ctermfg=4 ctermbg=6 + hi DiffText cterm=bold ctermbg=1 + hi Comment ctermfg=darkcyan + hi Constant ctermfg=brown + hi Special ctermfg=5 + hi Identifier ctermfg=6 + hi Statement ctermfg=3 + hi PreProc ctermfg=5 + hi Type ctermfg=2 + hi Underlined cterm=underline ctermfg=5 + hi Ignore ctermfg=darkgrey + hi Error cterm=bold ctermfg=7 ctermbg=1 +endif + +" vim: set fdl=0 fdm=marker: ADDED vim/colors/freya.vim Index: vim/colors/freya.vim ================================================================== --- vim/colors/freya.vim +++ vim/colors/freya.vim @@ -0,0 +1,79 @@ +set background=dark + +hi clear + +if exists("syntax_on") + syntax reset +endif + +let colors_name = "freya" + +hi Normal ctermbg=0 ctermfg=7 cterm=none guibg=#2a2a2a guifg=#dcdccc gui=none + +hi Cursor guibg=fg guifg=bg gui=none +hi CursorColumn guibg=#3f3f3f gui=none +hi CursorLine guibg=#3f3f3f gui=none +hi DiffAdd guibg=#008b00 guifg=fg gui=none +hi DiffChange guibg=#00008b guifg=fg gui=none +hi DiffDelete guibg=#8b0000 guifg=fg gui=none +hi DiffText guibg=#0000cd guifg=fg gui=bold +hi Directory guibg=bg guifg=#d4b064 gui=none +hi ErrorMsg guibg=bg guifg=#f07070 gui=bold +hi FoldColumn ctermbg=bg guibg=bg guifg=#c2b680 gui=none +hi Folded guibg=#101010 guifg=#c2b680 gui=none +hi IncSearch guibg=#866a4f guifg=fg gui=none +hi LineNr guibg=bg guifg=#9f8f80 gui=none +hi ModeMsg guibg=bg guifg=fg gui=bold +hi MoreMsg guibg=bg guifg=#dabfa5 gui=bold +hi NonText ctermfg=8 guibg=bg guifg=#9f8f80 gui=bold +hi Pmenu guibg=#a78869 guifg=#000000 gui=none +hi PmenuSbar guibg=#B99F86 guifg=fg gui=none +hi PmenuSel guibg=#c0aa94 guifg=bg gui=none +hi PmenuThumb guibg=#f7f7f1 guifg=bg gui=none +hi Question guibg=bg guifg=#dabfa5 gui=bold +hi Search guibg=#c0aa94 guifg=bg gui=none +hi SignColumn ctermbg=bg guibg=bg guifg=#c2b680 gui=none +hi SpecialKey guibg=bg guifg=#d4b064 gui=none +if has("spell") + hi SpellBad guisp=#f07070 gui=undercurl + hi SpellCap guisp=#7070f0 gui=undercurl + hi SpellLocal guisp=#70f0f0 gui=undercurl + hi SpellRare guisp=#f070f0 gui=undercurl +endif +hi StatusLine ctermbg=7 ctermfg=0 guibg=#736559 guifg=#f7f7f1 gui=bold +hi StatusLineNC ctermbg=8 ctermfg=0 guibg=#564d43 guifg=#f7f7f1 gui=none +hi TabLine guibg=#564d43 guifg=#f7f7f1 gui=underline +hi TabLineFill guibg=#564d43 guifg=#f7f7f1 gui=underline +hi TabLineSel guibg=bg guifg=#f7f7f1 gui=bold +hi Title ctermbg=0 ctermfg=15 guifg=#f7f7f1 gui=bold +hi VertSplit ctermbg=7 ctermfg=0 guibg=#564d43 guifg=#f7f7f1 gui=none +if version >= 700 + hi Visual ctermbg=7 ctermfg=0 guibg=#5f5f5f gui=none +else + hi Visual ctermbg=7 ctermfg=0 guibg=#5f5f5f guifg=fg gui=none +endif +hi VisualNOS guibg=bg guifg=#c0aa94 gui=bold,underline +hi WarningMsg guibg=bg guifg=#f07070 gui=none +hi WildMenu guibg=#c0aa94 guifg=bg gui=bold + +hi Comment guibg=bg guifg=#c2b680 gui=none +hi Constant guibg=bg guifg=#afe091 gui=none +hi Error guibg=bg guifg=#f07070 gui=none +hi Identifier guibg=bg guifg=#dabfa5 gui=none +hi Ignore guibg=bg guifg=bg gui=none +hi lCursor guibg=#c0aa94 guifg=bg gui=none +hi MatchParen guibg=#008b8b gui=none +hi PreProc guibg=bg guifg=#c2aed0 gui=none +hi Special guibg=bg guifg=#d4b064 gui=none +hi Statement guibg=bg guifg=#e0af91 gui=bold +hi Todo guibg=#aed0ae guifg=bg gui=none +hi Type guibg=bg guifg=#dabfa5 gui=bold +hi Underlined guibg=bg guifg=#d4b064 gui=underline + +hi htmlBold ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=bold +hi htmlItalic ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=italic +hi htmlUnderline ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=underline +hi htmlBoldItalic ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=bold,italic +hi htmlBoldUnderline ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=bold,underline +hi htmlBoldUnderlineItalic ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=bold,underline,italic +hi htmlUnderlineItalic ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=underline,italic ADDED vim/colors/fruity.vim Index: vim/colors/fruity.vim ================================================================== --- vim/colors/fruity.vim +++ vim/colors/fruity.vim @@ -0,0 +1,147 @@ +" +" Fruity Color Scheme +" =================== +" +" Author: Armin Ronacher +" Version: 0.2 +" +set background=dark + +hi clear +if exists("syntax_on") + syntax reset +endif + +let colors_name = "fruity" + +" Default Colors +hi Normal guifg=#ffffff guibg=#111111 +hi NonText guifg=#444444 guibg=#000000 +hi Cursor guibg=#aaaaaa +hi lCursor guibg=#aaaaaa + +" Search +hi Search guifg=#800000 guibg=#ffae00 +hi IncSearch guifg=#800000 guibg=#ffae00 + +" Window Elements +hi StatusLine guifg=#ffffff guibg=#8090a0 gui=bold +hi StatusLineNC guifg=#506070 guibg=#a0b0c0 +hi VertSplit guifg=#a0b0c0 guibg=#a0b0c0 +hi Folded guifg=#111111 guibg=#8090a0 +hi IncSearch guifg=#708090 guibg=#f0e68c +hi Pmenu guifg=#ffffff guibg=#cb2f27 +hi SignColumn guibg=#111111 +hi CursorLine guibg=#181818 +hi LineNr guifg=#aaaaaa guibg=#222222 + +" Specials +hi Todo guifg=#e50808 guibg=#520000 gui=bold +hi Title guifg=#ffffff gui=bold +hi Special guifg=#fd8900 + +" Syntax Elements +hi String guifg=#0086d2 +hi Constant guifg=#0086d2 +hi Number guifg=#0086f7 gui=bold +hi Statement guifg=#fb660a gui=bold +hi Function guifg=#ff0086 gui=bold +hi PreProc guifg=#ff0007 gui=bold +hi Comment guifg=#00d2ff guibg=#0f140f gui=italic +hi Type guifg=#cdcaa9 gui=bold +hi Error guifg=#ffffff guibg=#ab0000 +hi Identifier guifg=#ff0086 gui=bold +hi Label guifg=#ff0086 + +" Python Highlighting for python.vim +hi pythonCoding guifg=#ff0086 +hi pythonRun guifg=#ff0086 +hi pythonBuiltinObj guifg=#2b6ba2 gui=bold +hi pythonBuiltinFunc guifg=#2b6ba2 gui=bold +hi pythonException guifg=#ee0000 gui=bold +hi pythonExClass guifg=#66cd66 gui=bold +hi pythonSpaceError guibg=#270000 +hi pythonDocTest guifg=#2f5f49 +hi pythonDocTest2 guifg=#3b916a +hi pythonFunction guifg=#ee0000 gui=bold +hi pythonClass guifg=#ff0086 gui=bold + +" JavaScript Highlighting +hi javaScript guifg=#ffffff +hi javaScriptRegexpString guifg=#aa6600 +hi javaScriptDocComment guifg=#aaaaaa +hi javaScriptCssStyles guifg=#dd7700 +hi javaScriptDomElemFuncs guifg=#66cd66 +hi javaScriptHtmlElemFuncs guifg=#dd7700 +hi javaScriptLabel guifg=#00bdec gui=italic +hi javaScriptPrototype guifg=#00bdec +hi javaScriptConditional guifg=#ff0007 gui=bold +hi javaScriptRepeat guifg=#ff0007 gui=bold +hi javaScriptFunction guifg=#ff0086 gui=bold + +" CSS Highlighting +hi cssIdentifier guifg=#66cd66 gui=bold +hi cssBraces guifg=#00bdec gui=bold + +" Ruby Highlighting +hi rubyFunction guifg=#0066bb gui=bold +hi rubyClass guifg=#ff0086 gui=bold +hi rubyModule guifg=#ff0086 gui=bold,underline +hi rubyKeyword guifg=#008800 gui=bold +hi rubySymbol guifg=#aa6600 +hi rubyIndentifier guifg=#008aff +hi rubyGlobalVariable guifg=#dd7700 +hi rubyConstant guifg=#5894d2 gui=bold +hi rubyBlockParameter guifg=#66cd66 +hi rubyPredefinedIdentifier guifg=#555555 gui=bold +hi rubyString guifg=#0086d2 +hi rubyStringDelimiter guifg=#dd7700 +hi rubySpaceError guibg=#270000 +hi rubyDocumentation guifg=#aaaaaa +hi rubyData guifg=#555555 + +" XML Highlighting +hi xmlTag guifg=#00bdec +hi xmlTagName guifg=#00bdec +hi xmlEndTag guifg=#00bdec +hi xmlNamespace guifg=#00bdec gui=underline +hi xmlAttribPunct guifg=#cccaa9 gui=bold +hi xmlEqual guifg=#cccaa9 gui=bold +hi xmlCdata guifg=#bf0945 gui=bold +hi xmlCdataCdata guifg=#ac1446 guibg=#23010c gui=none +hi xmlCdataStart guifg=#bf0945 gui=bold +hi xmlCdataEnd guifg=#bf0945 gui=bold + +" HTML Highlighting +hi htmlTag guifg=#00bdec gui=bold +hi htmlEndTag guifg=#00bdec gui=bold +hi htmlSpecialTagName guifg=#66cd66 +hi htmlTagName guifg=#66cd66 +hi htmlTagN guifg=#66cd66 +hi htmlEvent guifg=#ffffff + +" Django Highlighting +hi djangoTagBlock guifg=#ff0007 guibg=#200000 gui=bold +hi djangoVarBlock guifg=#ff0007 guibg=#200000 +hi djangoArgument guifg=#0086d2 guibg=#200000 +hi djangoStatement guifg=#fb660a guibg=#200000 gui=bold +hi djangoComment guifg=#008800 guibg=#002300 gui=italic +hi djangoFilter guifg=#ff0086 guibg=#200000 gui=italic + +" Jinja Highlighting +hi jinjaTagBlock guifg=#ff0007 guibg=#200000 gui=bold +hi jinjaVarBlock guifg=#ff0007 guibg=#200000 +hi jinjaString guifg=#0086d2 guibg=#200000 +hi jinjaNumber guifg=#bf0945 guibg=#200000 gui=bold +hi jinjaStatement guifg=#fb660a guibg=#200000 gui=bold +hi jinjaComment guifg=#008800 guibg=#002300 gui=italic +hi jinjaFilter guifg=#ff0086 guibg=#200000 +hi jinjaRaw guifg=#aaaaaa guibg=#200000 +hi jinjaOperator guifg=#ffffff guibg=#200000 +hi jinjaVariable guifg=#92cd35 guibg=#200000 +hi jinjaAttribute guifg=#dd7700 guibg=#200000 +hi jinjaSpecial guifg=#008ffd guibg=#200000 + +" ERuby Highlighting (for my eruby.vim) +hi erubyRubyDelim guifg=#2c8a16 gui=bold +hi erubyComment guifg=#4d9b3a gui=italic ADDED vim/colors/fu.vim Index: vim/colors/fu.vim ================================================================== --- vim/colors/fu.vim +++ vim/colors/fu.vim @@ -0,0 +1,121 @@ +" Vim color file +" +" Name: fu.vim +" Version: 1.1 +" Maintainer: Aaron Mueller +" Contributors: Florian Eitel +" Tinou +" +" This is a compositon from railscast, mustang and xoria256 with a lot of +" improvemts in the colors. Want to change toe colors to your needs? Go to +" this page to see what number is set wo what color: +" http://www.calmar.ws/vim/256-xterm-24bit-rgb-color-chart.html +" +" History: +" 2010-06-09 - Merge changes from Florian Eitel in this file. There was many +" whitespace issues and some unused highlight settings which are removed +" now. Also merged Tinous GUI version of the whole colorscheme. Thanks a +" lot dudes! +" +" 2010-06-09 - Initial setup and creation of this file. Additional colors for +" Ruby and the diff view are added. +" + +if &t_Co != 256 && ! has("gui_running") + echomsg "err: please use GUI or a 256-color terminal (so that t_Co=256 could be set)" + finish +endif + +set background=dark +hi clear + +if exists("syntax_on") + syntax reset +endif +let colors_name = "fu" + + +" General colors +hi Normal ctermfg=252 ctermbg=234 guifg=#d0d0d0 guibg=#1c1c1c +hi CursorColumn ctermbg=238 guibg=#444444 +hi Cursor ctermbg=214 guibg=#ffaf00 +hi CursorLine ctermbg=238 guibg=#444444 +hi FoldColumn ctermfg=248 ctermbg=bg guifg=#a8a8a8 guibg=#000000 +hi Folded ctermfg=255 ctermbg=60 guifg=#eeeeee guibg=#5f5f87 +hi IncSearch ctermfg=0 ctermbg=223 guifg=#000000 guibg=#ffd7af +hi NonText ctermfg=248 ctermbg=233 cterm=bold guifg=#a8a8a8 guibg=#121212 +hi Search ctermfg=0 ctermbg=149 guifg=#000000 guibg=#afd75f +hi SignColumn ctermfg=248 guifg=#a8a8a8 +hi SpecialKey ctermfg=77 guifg=#5fd75f +hi StatusLine ctermfg=232 ctermbg=255 guifg=#080808 guibg=#eeeeee +hi StatusLineNC ctermfg=237 ctermbg=253 guifg=#3a3a3a guibg=#dadada +hi TabLine ctermfg=253 ctermbg=237 guifg=#dadada guibg=#3a3a3a +hi TabLineFill ctermfg=0 ctermbg=0 guifg=#000000 guibg=#000000 +hi TabLineSel ctermfg=255 ctermbg=33 guifg=#eeeeee guibg=#0087ff +hi VertSplit ctermfg=237 ctermbg=237 guifg=#3a3a3a guibg=#3a3a3a +hi Visual ctermfg=24 ctermbg=153 guifg=#005f87 guibg=#afd7ff +hi VIsualNOS ctermfg=24 ctermbg=153 guifg=#005f87 guibg=#afd7ff +hi LineNr ctermfg=248 ctermbg=232 guifg=#a8a8a8 guibg=#080808 +hi ModeMsg ctermfg=220 guifg=#ffd700 + +hi ErrorMsg ctermfg=196 ctermbg=52 guifg=#ff0000 guibg=#5f0000 +hi SpellBad ctermfg=196 ctermbg=52 + +if version >= 700 + hi CursorLine ctermbg=236 guibg=#303030 + hi CursorColumn ctermbg=236 guibg=#303030 + hi MatchParen ctermfg=157 ctermbg=237 cterm=bold guifg=#afffaf guibg=#3a3a3a + hi Pmenu ctermfg=255 ctermbg=236 guifg=#eeeeee guibg=#303030 + hi PmenuSel ctermfg=0 ctermbg=74 guifg=#000000 guibg=#5fafd7 + hi PmenuSbar ctermbg=243 guibg=#767676 + hi PmenuThumb ctermbg=252 guibg=#d0d0d0 + hi WildMenu ctermfg=255 ctermbg=33 guifg=#eeeeee guibg=#0087ff +endif + +" Syntax highlighting +hi Comment ctermfg=244 guifg=#808080 + +hi Constant ctermfg=220 cterm=bold guifg=#ffd700 +hi String ctermfg=107 ctermbg=233 guifg=#87af5f guibg=#121212 +hi Character ctermfg=228 ctermbg=16 guifg=#ffff87 guibg=#000000 +hi Number ctermfg=214 guifg=#ffaf00 +hi Boolean ctermfg=148 guifg=#afd700 + +hi Identifier ctermfg=149 guifg=#afd75f +hi Function ctermfg=231 guifg=#ffffff + +hi Statement ctermfg=103 guifg=#8787af +hi Conditional ctermfg=105 guifg=#8787ff +hi Repeat ctermfg=105 guifg=#8787ff +hi Label ctermfg=105 guifg=#8787ff +hi Operator ctermfg=243 guifg=#767676 +hi Keyword ctermfg=190 guifg=#d7ff00 +hi Exception ctermfg=166 ctermbg=0 guifg=#d75f00 guibg=#000000 + +hi PreProc ctermfg=229 guifg=#ffffaf + +hi Type ctermfg=111 guifg=#87afff +hi Structure ctermfg=111 ctermbg=233 guifg=#87afff guibg=#121212 + +hi Special ctermfg=220 guifg=#ffd700 +hi SpecialComment ctermfg=228 ctermbg=16 guifg=#ffff87 guibg=#000000 + +hi Error ctermfg=196 ctermbg=52 guifg=#ff0000 guibg=#5f0000 +hi Todo ctermfg=46 ctermbg=22 guifg=#00ff00 guibg=#005f00 + +" Diff +hi diffAdd ctermfg=bg ctermbg=151 guifg=#afd787 +hi diffDelete ctermfg=bg ctermbg=246 guifg=#d78787 +hi diffChange ctermfg=bg ctermbg=181 guifg=#000000 guibg=#afd7af +hi diffText ctermfg=bg ctermbg=174 cterm=bold guifg=#000000 guibg=#949494 + +" Ruby +hi rubyBlockParameter ctermfg=27 guifg=#005fff +hi rubyClass ctermfg=75 guifg=#5fafff +hi rubyConstant ctermfg=167 guifg=#d75f5f +hi rubyInterpolation ctermfg=107 guifg=#87af5f +hi rubyLocalVariableOrMethod ctermfg=189 guifg=#d7d7ff +hi rubyPredefinedConstant ctermfg=167 guifg=#d75f5f +hi rubyPseudoVariable ctermfg=221 guifg=#ffd75f +hi rubyStringDelimiter ctermfg=143 guifg=#afaf5f + ADDED vim/colors/herald.vim Index: vim/colors/herald.vim ================================================================== --- vim/colors/herald.vim +++ vim/colors/herald.vim @@ -0,0 +1,385 @@ +" Vim color file +" Name: herald.vim +" Author: Fabio Cevasco +" Version: 0.2.0 +" Notes: Supports 8, 16, 256 and 16,777,216 (RGB) color modes + +hi clear + +if exists("syntax_on") + syntax reset +endif + +let colors_name = "herald" + +set background=dark + +" Set some syntax-related variables +let ruby_operators = 1 + +if has("gui_running") + + " -> Text; Miscellaneous + hi Normal guibg=#1F1F1F guifg=#D0D0D0 gui=none + hi SpecialKey guibg=#1F1F1F guifg=#E783E9 gui=none + hi VertSplit guibg=#1F1F1F guifg=#FFEE68 gui=none + hi SignColumn guibg=#1F1F1F guifg=#BF81FA gui=none + hi NonText guibg=#1F1F1F guifg=#FC6984 gui=none + hi Directory guibg=#1F1F1F guifg=#FFEE68 gui=none + hi Title guibg=#1F1F1F guifg=#6DF584 gui=bold + + " -> Cursor + hi Cursor guibg=#FFEE68 guifg=#1F1F1F gui=none + hi CursorIM guibg=#FFEE68 guifg=#1F1F1F gui=none + hi CursorColumn guibg=#000000 gui=none + hi CursorLine guibg=#000000 gui=none + + " -> Folding + hi FoldColumn guibg=#001336 guifg=#003DAD gui=none + hi Folded guibg=#001336 guifg=#003DAD gui=none + + " -> Line info + hi LineNr guibg=#000000 guifg=#696567 gui=none + hi StatusLine guibg=#000000 guifg=#696567 gui=none + hi StatusLineNC guibg=#25365a guifg=#696567 gui=none + + " -> Messages + hi ErrorMsg guibg=#A32024 guifg=#D0D0D0 gui=none + hi Question guibg=#1F1F1F guifg=#FFA500 gui=none + hi WarningMsg guibg=#FFA500 guifg=#000000 gui=none + hi MoreMsg guibg=#1F1F1F guifg=#FFA500 gui=none + hi ModeMsg guibg=#1F1F1F guifg=#FFA500 gui=none + + " -> Search + hi Search guibg=#696567 guifg=#FFEE68 gui=none + hi IncSearch guibg=#696567 guifg=#FFEE68 gui=none + + " -> Diff + hi DiffAdd guibg=#006124 guifg=#ED9000 gui=none + hi DiffChange guibg=#0B294A guifg=#A36000 gui=none + hi DiffDelete guibg=#081F38 guifg=#ED9000 gui=none + hi DiffText guibg=#12457D guifg=#ED9000 gui=underline + + " -> Menu + hi Pmenu guibg=#140100 guifg=#660300 gui=none + hi PmenuSel guibg=#F17A00 guifg=#4C0200 gui=none + hi PmenuSbar guibg=#430300 gui=none + hi PmenuThumb guibg=#720300 gui=none + hi PmenuSel guibg=#F17A00 guifg=#4C0200 gui=none + + " -> Tabs + hi TabLine guibg=#141414 guifg=#1F1F1F gui=none + hi TabLineFill guibg=#000000 gui=none + hi TabLineSel guibg=#1F1F1F guifg=#D0D0D0 gui=bold + " + " -> Visual Mode + hi Visual guibg=#000000 guifg=#FFB539 gui=none + hi VisualNOS guibg=#000000 guifg=#696567 gui=none + + " -> Code + hi Comment guibg=#1F1F1F guifg=#696567 gui=none + hi Constant guibg=#1F1F1F guifg=#6DF584 gui=none + hi String guibg=#1F1F1F guifg=#FFB539 gui=none + hi Error guibg=#1F1F1F guifg=#FC4234 gui=none + hi Identifier guibg=#1F1F1F guifg=#70BDF1 gui=none + hi Function guibg=#1F1F1F guifg=#90CBF1 gui=none + hi Ignore guibg=#1F1F1F guifg=#1F1F1F gui=none + hi MatchParen guibg=#FFA500 guifg=#1F1F1F gui=none + hi PreProc guibg=#1F1F1F guifg=#BF81FA gui=none + hi Special guibg=#1F1F1F guifg=#FFEE68 gui=none + hi Todo guibg=#1F1F1F guifg=#FC4234 gui=bold + hi Underlined guibg=#1F1F1F guifg=#FC4234 gui=underline + hi Statement guibg=#1F1F1F guifg=#E783E9 gui=none + hi Operator guibg=#1F1F1F guifg=#FC6984 gui=none + hi Delimiter guibg=#1F1F1F guifg=#FC6984 gui=none + hi Type guibg=#1F1F1F guifg=#FFEE68 gui=none + hi Exception guibg=#1F1F1F guifg=#FC4234 gui=none + + " -> HTML-specific + hi htmlBold guibg=#1F1F1F guifg=#D0D0D0 gui=bold + hi htmlBoldItalic guibg=#1F1F1F guifg=#D0D0D0 gui=bold,italic + hi htmlBoldUnderline guibg=#1F1F1F guifg=#D0D0D0 gui=bold,underline + hi htmlBoldUnderlineItalic guibg=#1F1F1F guifg=#D0D0D0 gui=bold,underline,italic + hi htmlItalic guibg=#1F1F1F guifg=#D0D0D0 gui=italic + hi htmlUnderline guibg=#1F1F1F guifg=#D0D0D0 gui=underline + hi htmlUnderlineItalic guibg=#1F1F1F guifg=#D0D0D0 gui=underline,italic + +elseif &t_Co == 256 + + " -> Text; Miscellaneous + hi Normal ctermbg=234 ctermfg=252 cterm=none + hi SpecialKey ctermbg=234 ctermfg=176 cterm=none + hi VertSplit ctermbg=234 ctermfg=227 cterm=none + hi SignColumn ctermbg=234 ctermfg=141 cterm=none + hi NonText ctermbg=234 ctermfg=204 cterm=none + hi Directory ctermbg=234 ctermfg=227 cterm=none + hi Title ctermbg=234 ctermfg=84 cterm=bold + + " -> Cursor + hi Cursor ctermbg=227 ctermfg=234 cterm=none + hi CursorIM ctermbg=227 ctermfg=234 cterm=none + hi CursorColumn ctermbg=0 cterm=none + hi CursorLine ctermbg=0 cterm=none + + " -> Folding + hi FoldColumn ctermbg=234 ctermfg=25 cterm=none + hi Folded ctermbg=234 ctermfg=25 cterm=none + + " -> Line info + hi LineNr ctermbg=0 ctermfg=241 cterm=none + hi StatusLine ctermbg=0 ctermfg=241 cterm=none + hi StatusLineNC ctermbg=237 ctermfg=241 cterm=none + + " -> Messages + hi ErrorMsg ctermbg=124 ctermfg=252 cterm=none + hi Question ctermbg=234 ctermfg=214 cterm=none + hi WarningMsg ctermbg=214 ctermfg=0 cterm=none + hi MoreMsg ctermbg=234 ctermfg=214 cterm=none + hi ModeMsg ctermbg=234 ctermfg=214 cterm=none + + " -> Search + hi Search ctermbg=241 ctermfg=227 cterm=none + hi IncSearch ctermbg=241 ctermfg=227 cterm=none + + " -> Diff + hi DiffAdd ctermbg=22 ctermfg=208 cterm=none + hi DiffChange ctermbg=235 ctermfg=130 cterm=none + hi DiffDelete ctermbg=234 ctermfg=208 cterm=none + hi DiffText ctermbg=24 ctermfg=208 cterm=underline + + " -> Menu + hi Pmenu ctermbg=0 ctermfg=52 cterm=none + hi PmenuSel ctermbg=208 ctermfg=52 cterm=none + hi PmenuSbar ctermbg=52 cterm=none + hi PmenuThumb ctermbg=52 cterm=none + hi PmenuSel ctermbg=208 ctermfg=52 cterm=none + + " -> Tabs + hi TabLine ctermbg=233 ctermfg=234 cterm=none + hi TabLineFill ctermbg=0 cterm=none + hi TabLineSel ctermbg=234 ctermfg=252 cterm=bold + " + " -> Visual Mode + hi Visual ctermbg=0 ctermfg=215 cterm=none + hi VisualNOS ctermbg=0 ctermfg=241 cterm=none + + " -> Code + hi Comment ctermbg=234 ctermfg=241 cterm=none + hi Constant ctermbg=234 ctermfg=84 cterm=none + hi String ctermbg=234 ctermfg=215 cterm=none + hi Error ctermbg=234 ctermfg=203 cterm=none + hi Identifier ctermbg=234 ctermfg=75 cterm=none + hi Function ctermbg=234 ctermfg=117 cterm=none + hi Ignore ctermbg=234 ctermfg=234 cterm=none + hi MatchParen ctermbg=214 ctermfg=234 cterm=none + hi PreProc ctermbg=234 ctermfg=141 cterm=none + hi Special ctermbg=234 ctermfg=227 cterm=none + hi Todo ctermbg=234 ctermfg=203 cterm=bold + hi Underlined ctermbg=234 ctermfg=203 cterm=underline + hi Statement ctermbg=234 ctermfg=176 cterm=none + hi Operator ctermbg=234 ctermfg=204 cterm=none + hi Delimiter ctermbg=234 ctermfg=204 cterm=none + hi Type ctermbg=234 ctermfg=227 cterm=none + hi Exception ctermbg=234 ctermfg=203 cterm=none + + " -> HTML-specific + hi htmlBold ctermbg=234 ctermfg=252 cterm=bold + hi htmlBoldItalic ctermbg=234 ctermfg=252 cterm=bold,italic + hi htmlBoldUnderline ctermbg=234 ctermfg=252 cterm=bold,underline + hi htmlBoldUnderlineItalic ctermbg=234 ctermfg=252 cterm=bold,underline,italic + hi htmlItalic ctermbg=234 ctermfg=252 cterm=italic + hi htmlUnderline ctermbg=234 ctermfg=252 cterm=underline + hi htmlUnderlineItalic ctermbg=234 ctermfg=252 cterm=underline,italic + +elseif &t_Co == 16 + + " -> Text; Miscellaneous + hi Normal ctermbg=8 ctermfg=15 cterm=none + hi SpecialKey ctermbg=8 ctermfg=5 cterm=none + hi VertSplit ctermbg=8 ctermfg=14 cterm=none + hi SignColumn ctermbg=8 ctermfg=5 cterm=none + hi NonText ctermbg=8 ctermfg=4 cterm=none + hi Directory ctermbg=8 ctermfg=14 cterm=none + hi Title ctermbg=8 ctermfg=10 cterm=bold + + " -> Cursor + hi Cursor ctermbg=14 ctermfg=8 cterm=none + hi CursorIM ctermbg=14 ctermfg=8 cterm=none + hi CursorColumn ctermbg=0 cterm=none + hi CursorLine ctermbg=0 cterm=none + + " -> Folding + hi FoldColumn ctermbg=0 ctermfg=1 cterm=none + hi Folded ctermbg=0 ctermfg=1 cterm=none + + " -> Line info + hi LineNr ctermbg=0 ctermfg=7 cterm=none + hi StatusLine ctermbg=0 ctermfg=7 cterm=none + hi StatusLineNC ctermbg=0 ctermfg=7 cterm=none + + " -> Messages + hi ErrorMsg ctermbg=4 ctermfg=7 cterm=none + hi Question ctermbg=8 ctermfg=14 cterm=none + hi WarningMsg ctermbg=14 ctermfg=0 cterm=none + hi MoreMsg ctermbg=8 ctermfg=14 cterm=none + hi ModeMsg ctermbg=8 ctermfg=14 cterm=none + + " -> Search + hi Search ctermbg=7 ctermfg=14 cterm=none + hi IncSearch ctermbg=7 ctermfg=14 cterm=none + + " -> Diff + hi DiffAdd ctermbg=0 ctermfg=10 cterm=none + hi DiffChange ctermbg=0 ctermfg=14 cterm=none + hi DiffDelete ctermbg=0 ctermfg=12 cterm=none + hi DiffText ctermbg=1 ctermfg=14 cterm=underline + + " -> Menu + hi Pmenu ctermbg=0 ctermfg=4 cterm=none + hi PmenuSel ctermbg=14 ctermfg=4 cterm=none + hi PmenuSbar ctermbg=0 cterm=none + hi PmenuThumb ctermbg=4 cterm=none + hi PmenuSel ctermbg=14 ctermfg=4 cterm=none + + " -> Tabs + hi TabLine ctermbg=7 ctermfg=8 cterm=none + hi TabLineFill ctermbg=0 cterm=none + hi TabLineSel ctermbg=8 ctermfg=7 cterm=bold + " + " -> Visual Mode + hi Visual ctermbg=0 ctermfg=14 cterm=none + hi VisualNOS ctermbg=0 ctermfg=7 cterm=none + + " -> Code + hi Comment ctermbg=8 ctermfg=7 cterm=none + hi Constant ctermbg=8 ctermfg=10 cterm=none + hi String ctermbg=8 ctermfg=6 cterm=none + hi Error ctermbg=8 ctermfg=4 cterm=none + hi Identifier ctermbg=8 ctermfg=11 cterm=none + hi Function ctermbg=8 ctermfg=11 cterm=none + hi Ignore ctermbg=8 ctermfg=8 cterm=none + hi MatchParen ctermbg=14 ctermfg=8 cterm=none + hi PreProc ctermbg=8 ctermfg=5 cterm=none + hi Special ctermbg=8 ctermfg=14 cterm=none + hi Todo ctermbg=8 ctermfg=12 cterm=bold + hi Underlined ctermbg=8 ctermfg=12 cterm=underline + hi Statement ctermbg=8 ctermfg=13 cterm=none + hi Operator ctermbg=8 ctermfg=4 cterm=none + hi Delimiter ctermbg=8 ctermfg=4 cterm=none + hi Type ctermbg=8 ctermfg=14 cterm=none + hi Exception ctermbg=8 ctermfg=12 cterm=none + + " -> HTML-specific + hi htmlBold ctermbg=8 ctermfg=7 cterm=bold + hi htmlBoldItalic ctermbg=8 ctermfg=7 cterm=bold,italic + hi htmlBoldUnderline ctermbg=8 ctermfg=7 cterm=bold,underline + hi htmlBoldUnderlineItalic ctermbg=8 ctermfg=7 cterm=bold,underline,italic + hi htmlItalic ctermbg=8 ctermfg=7 cterm=italic + hi htmlUnderline ctermbg=8 ctermfg=7 cterm=underline + hi htmlUnderlineItalic ctermbg=8 ctermfg=7 cterm=underline,italic + + +elseif &t_Co == 8 + + " -> Text; Miscellaneous + hi Normal ctermbg=8 ctermfg=7 cterm=none + hi SpecialKey ctermbg=8 ctermfg=5 cterm=none + hi VertSplit ctermbg=8 ctermfg=6 cterm=none + hi SignColumn ctermbg=8 ctermfg=5 cterm=none + hi NonText ctermbg=8 ctermfg=4 cterm=none + hi Directory ctermbg=8 ctermfg=6 cterm=none + hi Title ctermbg=8 ctermfg=2 cterm=bold + + " -> Cursor + hi Cursor ctermbg=6 ctermfg=8 cterm=none + hi CursorIM ctermbg=6 ctermfg=8 cterm=none + hi CursorColumn ctermbg=0 cterm=none + hi CursorLine ctermbg=0 cterm=none + + " -> Folding + hi FoldColumn ctermbg=0 ctermfg=1 cterm=none + hi Folded ctermbg=0 ctermfg=1 cterm=none + + " -> Line info + hi LineNr ctermbg=0 ctermfg=7 cterm=none + hi StatusLine ctermbg=0 ctermfg=7 cterm=none + hi StatusLineNC ctermbg=0 ctermfg=7 cterm=none + + " -> Messages + hi ErrorMsg ctermbg=4 ctermfg=7 cterm=none + hi Question ctermbg=8 ctermfg=6 cterm=none + hi WarningMsg ctermbg=6 ctermfg=0 cterm=none + hi MoreMsg ctermbg=8 ctermfg=6 cterm=none + hi ModeMsg ctermbg=8 ctermfg=6 cterm=none + + " -> Search + hi Search ctermbg=7 ctermfg=6 cterm=none + hi IncSearch ctermbg=7 ctermfg=6 cterm=none + + " -> Diff + hi DiffAdd ctermbg=0 ctermfg=2 cterm=none + hi DiffChange ctermbg=0 ctermfg=6 cterm=none + hi DiffDelete ctermbg=0 ctermfg=4 cterm=none + hi DiffText ctermbg=1 ctermfg=6 cterm=underline + + " -> Menu + hi Pmenu ctermbg=0 ctermfg=4 cterm=none + hi PmenuSel ctermbg=6 ctermfg=4 cterm=none + hi PmenuSbar ctermbg=0 cterm=none + hi PmenuThumb ctermbg=4 cterm=none + hi PmenuSel ctermbg=6 ctermfg=4 cterm=none + + " -> Tabs + hi TabLine ctermbg=7 ctermfg=8 cterm=none + hi TabLineFill ctermbg=0 cterm=none + hi TabLineSel ctermbg=8 ctermfg=7 cterm=bold + " + " -> Visual Mode + hi Visual ctermbg=0 ctermfg=6 cterm=none + hi VisualNOS ctermbg=0 ctermfg=7 cterm=none + + " -> Code + hi Comment ctermbg=8 ctermfg=7 cterm=none + hi Constant ctermbg=8 ctermfg=2 cterm=none + hi String ctermbg=8 ctermfg=6 cterm=none + hi Error ctermbg=8 ctermfg=4 cterm=none + hi Identifier ctermbg=8 ctermfg=3 cterm=none + hi Function ctermbg=8 ctermfg=3 cterm=none + hi Ignore ctermbg=8 ctermfg=8 cterm=none + hi MatchParen ctermbg=6 ctermfg=8 cterm=none + hi PreProc ctermbg=8 ctermfg=5 cterm=none + hi Special ctermbg=8 ctermfg=6 cterm=none + hi Todo ctermbg=8 ctermfg=4 cterm=bold + hi Underlined ctermbg=8 ctermfg=4 cterm=underline + hi Statement ctermbg=8 ctermfg=5 cterm=none + hi Operator ctermbg=8 ctermfg=4 cterm=none + hi Delimiter ctermbg=8 ctermfg=4 cterm=none + hi Type ctermbg=8 ctermfg=6 cterm=none + hi Exception ctermbg=8 ctermfg=4 cterm=none + + " -> HTML-specific + hi htmlBold ctermbg=8 ctermfg=7 cterm=bold + hi htmlBoldItalic ctermbg=8 ctermfg=7 cterm=bold,italic + hi htmlBoldUnderline ctermbg=8 ctermfg=7 cterm=bold,underline + hi htmlBoldUnderlineItalic ctermbg=8 ctermfg=7 cterm=bold,underline,italic + hi htmlItalic ctermbg=8 ctermfg=7 cterm=italic + hi htmlUnderline ctermbg=8 ctermfg=7 cterm=underline + hi htmlUnderlineItalic ctermbg=8 ctermfg=7 cterm=underline,italic + +endif + +hi! default link bbcodeBold htmlBold +hi! default link bbcodeBoldItalic htmlBoldItalic +hi! default link bbcodeBoldItalicUnderline htmlBoldUnderlineItalic +hi! default link bbcodeBoldUnderline htmlBoldUnderline +hi! default link bbcodeItalic htmlItalic +hi! default link bbcodeItalicUnderline htmlUnderlineItalic +hi! default link bbcodeUnderline htmlUnderline + +" Spellcheck formatting +if has("spell") + hi SpellBad guisp=#FC4234 gui=undercurl + hi SpellCap guisp=#70BDF1 gui=undercurl + hi SpellLocal guisp=#FFEE68 gui=undercurl + hi SpellRare guisp=#6DF584 gui=undercurl +endif ADDED vim/colors/inkpot.vim Index: vim/colors/inkpot.vim ================================================================== --- vim/colors/inkpot.vim +++ vim/colors/inkpot.vim @@ -0,0 +1,220 @@ +" Vim color file +" Name: inkpot.vim +" Maintainer: Ciaran McCreesh +" Homepage: http://github.com/ciaranm/inkpot/ +" +" This should work in the GUI, rxvt-unicode (88 colour mode) and xterm (256 +" colour mode). It won't work in 8/16 colour terminals. +" +" To use a black background, :let g:inkpot_black_background = 1 + +set background=dark +hi clear +if exists("syntax_on") + syntax reset +endif + +let colors_name = "inkpot" + +" map a urxvt cube number to an xterm-256 cube number +fun! M(a) + return strpart("0135", a:a, 1) + 0 +endfun + +" map a urxvt colour to an xterm-256 colour +fun! X(a) + if &t_Co == 88 + return a:a + else + if a:a == 8 + return 237 + elseif a:a < 16 + return a:a + elseif a:a > 79 + return 232 + (3 * (a:a - 80)) + else + let l:b = a:a - 16 + let l:x = l:b % 4 + let l:y = (l:b / 4) % 4 + let l:z = (l:b / 16) + return 16 + M(l:x) + (6 * M(l:y)) + (36 * M(l:z)) + endif + endif +endfun + +if ! exists("g:inkpot_black_background") + let g:inkpot_black_background = 0 +endif + +if has("gui_running") + if ! g:inkpot_black_background + hi Normal gui=NONE guifg=#cfbfad guibg=#1e1e27 + else + hi Normal gui=NONE guifg=#cfbfad guibg=#000000 + endif + + hi CursorLine guibg=#2e2e37 + + hi IncSearch gui=BOLD guifg=#303030 guibg=#cd8b60 + hi Search gui=NONE guifg=#303030 guibg=#ad7b57 + hi ErrorMsg gui=BOLD guifg=#ffffff guibg=#ce4e4e + hi WarningMsg gui=BOLD guifg=#ffffff guibg=#ce8e4e + hi ModeMsg gui=BOLD guifg=#7e7eae guibg=NONE + hi MoreMsg gui=BOLD guifg=#7e7eae guibg=NONE + hi Question gui=BOLD guifg=#ffcd00 guibg=NONE + + hi StatusLine gui=BOLD guifg=#b9b9b9 guibg=#3e3e5e + hi User1 gui=BOLD guifg=#00ff8b guibg=#3e3e5e + hi User2 gui=BOLD guifg=#7070a0 guibg=#3e3e5e + hi StatusLineNC gui=NONE guifg=#b9b9b9 guibg=#3e3e5e + hi VertSplit gui=NONE guifg=#b9b9b9 guibg=#3e3e5e + + hi WildMenu gui=BOLD guifg=#eeeeee guibg=#6e6eaf + + hi MBENormal guifg=#cfbfad guibg=#2e2e3f + hi MBEChanged guifg=#eeeeee guibg=#2e2e3f + hi MBEVisibleNormal guifg=#cfcfcd guibg=#4e4e8f + hi MBEVisibleChanged guifg=#eeeeee guibg=#4e4e8f + + hi DiffText gui=NONE guifg=#ffffcd guibg=#4a2a4a + hi DiffChange gui=NONE guifg=#ffffcd guibg=#306b8f + hi DiffDelete gui=NONE guifg=#ffffcd guibg=#6d3030 + hi DiffAdd gui=NONE guifg=#ffffcd guibg=#306d30 + + hi Cursor gui=NONE guifg=#404040 guibg=#8b8bff + hi lCursor gui=NONE guifg=#404040 guibg=#8fff8b + hi CursorIM gui=NONE guifg=#404040 guibg=#8b8bff + + hi Folded gui=NONE guifg=#cfcfcd guibg=#4b208f + hi FoldColumn gui=NONE guifg=#8b8bcd guibg=#2e2e2e + + hi Directory gui=NONE guifg=#00ff8b guibg=NONE + hi LineNr gui=NONE guifg=#8b8bcd guibg=#2e2e2e + hi NonText gui=BOLD guifg=#8b8bcd guibg=NONE + hi SpecialKey gui=BOLD guifg=#ab60ed guibg=NONE + hi Title gui=BOLD guifg=#af4f4b guibg=NONE + hi Visual gui=NONE guifg=#eeeeee guibg=#4e4e8f + + hi Comment gui=NONE guifg=#cd8b00 guibg=NONE + hi Constant gui=NONE guifg=#ffcd8b guibg=NONE + hi String gui=NONE guifg=#ffcd8b guibg=#404040 + hi Error gui=NONE guifg=#ffffff guibg=#6e2e2e + hi Identifier gui=NONE guifg=#ff8bff guibg=NONE + hi Ignore gui=NONE + hi Number gui=NONE guifg=#f0ad6d guibg=NONE + hi PreProc gui=NONE guifg=#409090 guibg=NONE + hi Special gui=NONE guifg=#c080d0 guibg=NONE + hi SpecialChar gui=NONE guifg=#c080d0 guibg=#404040 + hi Statement gui=NONE guifg=#808bed guibg=NONE + hi Todo gui=BOLD guifg=#303030 guibg=#d0a060 + hi Type gui=NONE guifg=#ff8bff guibg=NONE + hi Underlined gui=BOLD guifg=#df9f2d guibg=NONE + hi TaglistTagName gui=BOLD guifg=#808bed guibg=NONE + + hi perlSpecialMatch gui=NONE guifg=#c080d0 guibg=#404040 + hi perlSpecialString gui=NONE guifg=#c080d0 guibg=#404040 + + hi cSpecialCharacter gui=NONE guifg=#c080d0 guibg=#404040 + hi cFormat gui=NONE guifg=#c080d0 guibg=#404040 + + hi doxygenBrief gui=NONE guifg=#fdab60 guibg=NONE + hi doxygenParam gui=NONE guifg=#fdd090 guibg=NONE + hi doxygenPrev gui=NONE guifg=#fdd090 guibg=NONE + hi doxygenSmallSpecial gui=NONE guifg=#fdd090 guibg=NONE + hi doxygenSpecial gui=NONE guifg=#fdd090 guibg=NONE + hi doxygenComment gui=NONE guifg=#ad7b20 guibg=NONE + hi doxygenSpecial gui=NONE guifg=#fdab60 guibg=NONE + hi doxygenSpecialMultilineDesc gui=NONE guifg=#ad600b guibg=NONE + hi doxygenSpecialOnelineDesc gui=NONE guifg=#ad600b guibg=NONE + + if v:version >= 700 + hi Pmenu gui=NONE guifg=#eeeeee guibg=#4e4e8f + hi PmenuSel gui=BOLD guifg=#eeeeee guibg=#2e2e3f + hi PmenuSbar gui=BOLD guifg=#eeeeee guibg=#6e6eaf + hi PmenuThumb gui=BOLD guifg=#eeeeee guibg=#6e6eaf + + hi SpellBad gui=undercurl guisp=#cc6666 + hi SpellRare gui=undercurl guisp=#cc66cc + hi SpellLocal gui=undercurl guisp=#cccc66 + hi SpellCap gui=undercurl guisp=#66cccc + + hi MatchParen gui=NONE guifg=#cfbfad guibg=#4e4e8f + endif +else + if ! g:inkpot_black_background + exec "hi Normal cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(80) + else + exec "hi Normal cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(16) + endif + + exec "hi IncSearch cterm=BOLD ctermfg=" . X(80) . " ctermbg=" . X(73) + exec "hi Search cterm=NONE ctermfg=" . X(80) . " ctermbg=" . X(52) + exec "hi ErrorMsg cterm=BOLD ctermfg=" . X(16) . " ctermbg=" . X(48) + exec "hi WarningMsg cterm=BOLD ctermfg=" . X(16) . " ctermbg=" . X(68) + exec "hi ModeMsg cterm=BOLD ctermfg=" . X(38) . " ctermbg=" . "NONE" + exec "hi MoreMsg cterm=BOLD ctermfg=" . X(38) . " ctermbg=" . "NONE" + exec "hi Question cterm=BOLD ctermfg=" . X(52) . " ctermbg=" . "NONE" + + exec "hi StatusLine cterm=BOLD ctermfg=" . X(85) . " ctermbg=" . X(81) + exec "hi User1 cterm=BOLD ctermfg=" . X(28) . " ctermbg=" . X(81) + exec "hi User2 cterm=BOLD ctermfg=" . X(39) . " ctermbg=" . X(81) + exec "hi StatusLineNC cterm=NONE ctermfg=" . X(84) . " ctermbg=" . X(81) + exec "hi VertSplit cterm=NONE ctermfg=" . X(84) . " ctermbg=" . X(81) + + exec "hi WildMenu cterm=BOLD ctermfg=" . X(87) . " ctermbg=" . X(38) + + exec "hi MBENormal ctermfg=" . X(85) . " ctermbg=" . X(81) + exec "hi MBEChanged ctermfg=" . X(87) . " ctermbg=" . X(81) + exec "hi MBEVisibleNormal ctermfg=" . X(85) . " ctermbg=" . X(82) + exec "hi MBEVisibleChanged ctermfg=" . X(87) . " ctermbg=" . X(82) + + exec "hi DiffText cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(34) + exec "hi DiffChange cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(17) + exec "hi DiffDelete cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(32) + exec "hi DiffAdd cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(20) + + exec "hi Folded cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(35) + exec "hi FoldColumn cterm=NONE ctermfg=" . X(39) . " ctermbg=" . X(80) + + exec "hi Directory cterm=NONE ctermfg=" . X(28) . " ctermbg=" . "NONE" + exec "hi LineNr cterm=NONE ctermfg=" . X(39) . " ctermbg=" . X(80) + exec "hi NonText cterm=BOLD ctermfg=" . X(39) . " ctermbg=" . "NONE" + exec "hi SpecialKey cterm=BOLD ctermfg=" . X(55) . " ctermbg=" . "NONE" + exec "hi Title cterm=BOLD ctermfg=" . X(48) . " ctermbg=" . "NONE" + exec "hi Visual cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(38) + + exec "hi Comment cterm=NONE ctermfg=" . X(52) . " ctermbg=" . "NONE" + exec "hi Constant cterm=NONE ctermfg=" . X(73) . " ctermbg=" . "NONE" + exec "hi String cterm=NONE ctermfg=" . X(73) . " ctermbg=" . X(81) + exec "hi Error cterm=NONE ctermfg=" . X(79) . " ctermbg=" . X(32) + exec "hi Identifier cterm=NONE ctermfg=" . X(53) . " ctermbg=" . "NONE" + exec "hi Ignore cterm=NONE" + exec "hi Number cterm=NONE ctermfg=" . X(69) . " ctermbg=" . "NONE" + exec "hi PreProc cterm=NONE ctermfg=" . X(25) . " ctermbg=" . "NONE" + exec "hi Special cterm=NONE ctermfg=" . X(55) . " ctermbg=" . "NONE" + exec "hi SpecialChar cterm=NONE ctermfg=" . X(55) . " ctermbg=" . X(81) + exec "hi Statement cterm=NONE ctermfg=" . X(27) . " ctermbg=" . "NONE" + exec "hi Todo cterm=BOLD ctermfg=" . X(16) . " ctermbg=" . X(57) + exec "hi Type cterm=NONE ctermfg=" . X(71) . " ctermbg=" . "NONE" + exec "hi Underlined cterm=BOLD ctermfg=" . X(77) . " ctermbg=" . "NONE" + exec "hi TaglistTagName cterm=BOLD ctermfg=" . X(39) . " ctermbg=" . "NONE" + + if v:version >= 700 + exec "hi Pmenu cterm=NONE ctermfg=" . X(87) . " ctermbg=" . X(82) + exec "hi PmenuSel cterm=BOLD ctermfg=" . X(87) . " ctermbg=" . X(38) + exec "hi PmenuSbar cterm=BOLD ctermfg=" . X(87) . " ctermbg=" . X(39) + exec "hi PmenuThumb cterm=BOLD ctermfg=" . X(87) . " ctermbg=" . X(39) + + exec "hi SpellBad cterm=NONE ctermbg=" . X(32) + exec "hi SpellRare cterm=NONE ctermbg=" . X(33) + exec "hi SpellLocal cterm=NONE ctermbg=" . X(36) + exec "hi SpellCap cterm=NONE ctermbg=" . X(21) + exec "hi MatchParen cterm=NONE ctermbg=" . X(14) . "ctermfg=" . X(25) + endif +endif + +hi! link diffAdded PreProc +hi! link diffRemoved Identifier +hi! link diffChanged Special + +" vim: set et : ADDED vim/colors/jellybeans.vim Index: vim/colors/jellybeans.vim ================================================================== --- vim/colors/jellybeans.vim +++ vim/colors/jellybeans.vim @@ -0,0 +1,458 @@ +" Vim color file +" +" " __ _ _ _ " +" " \ \ ___| | |_ _| |__ ___ __ _ _ __ ___ " +" " \ \/ _ \ | | | | | _ \ / _ \/ _ | _ \/ __| " +" " /\_/ / __/ | | |_| | |_| | __/ |_| | | | \__ \ " +" " \___/ \___|_|_|\__ |____/ \___|\____|_| |_|___/ " +" " \___/ " +" +" "A colorful, dark color scheme for Vim." +" +" File: jellybeans.vim +" Maintainer: NanoTech +" Version: 1.4 +" Last Change: April 11th, 2011 +" Contributors: Daniel Herbert , +" Henry So, Jr. , +" David Liang +" +" Copyright (c) 2009-2011 NanoTech +" +" Permission is hereby granted, free of charge, to any person obtaining a copy +" of this software and associated documentation files (the "Software"), to deal +" in the Software without restriction, including without limitation the rights +" to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +" copies of the Software, and to permit persons to whom the Software is +" furnished to do so, subject to the following conditions: +" +" The above copyright notice and this permission notice shall be included in +" all copies or substantial portions of the Software. +" +" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +" OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +" THE SOFTWARE. + +set background=dark + +hi clear + +if exists("syntax_on") + syntax reset +endif + +let colors_name = "jellybeans" + +if has("gui_running") || &t_Co == 88 || &t_Co == 256 + let s:low_color = 0 +else + let s:low_color = 1 +endif + +" Color approximation functions by Henry So, Jr. and David Liang {{{ +" Added to jellybeans.vim by Daniel Herbert + +" returns an approximate grey index for the given grey level +fun! s:grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif +endfun + +" returns the actual grey level represented by the grey index +fun! s:grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif +endfun + +" returns the palette index for the given grey index +fun! s:grey_color(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif +endfun + +" returns an approximate color index for the given color level +fun! s:rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif +endfun + +" returns the actual color level for the given color index +fun! s:rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif +endfun + +" returns the palette index for the given R/G/B color indices +fun! s:rgb_color(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif +endfun + +" returns the palette index to approximate the given R/G/B color levels +fun! s:color(r, g, b) + " get the closest grey + let l:gx = s:grey_number(a:r) + let l:gy = s:grey_number(a:g) + let l:gz = s:grey_number(a:b) + + " get the closest color + let l:x = s:rgb_number(a:r) + let l:y = s:rgb_number(a:g) + let l:z = s:rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " there are two possibilities + let l:dgr = s:grey_level(l:gx) - a:r + let l:dgg = s:grey_level(l:gy) - a:g + let l:dgb = s:grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = s:rgb_level(l:gx) - a:r + let l:dg = s:rgb_level(l:gy) - a:g + let l:db = s:rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " use the grey + return s:grey_color(l:gx) + else + " use the color + return s:rgb_color(l:x, l:y, l:z) + endif + else + " only one possibility + return s:rgb_color(l:x, l:y, l:z) + endif +endfun + +" returns the palette index to approximate the 'rrggbb' hex string +fun! s:rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + return s:color(l:r, l:g, l:b) +endfun + +" sets the highlighting for the given group +fun! s:X(group, fg, bg, attr, lcfg, lcbg) + if s:low_color + let l:fge = empty(a:lcfg) + let l:bge = empty(a:lcbg) + + if !l:fge && !l:bge + exec "hi ".a:group." ctermfg=".a:lcfg." ctermbg=".a:lcbg + elseif !l:fge && l:bge + exec "hi ".a:group." ctermfg=".a:lcfg." ctermbg=NONE" + elseif l:fge && !l:bge + exec "hi ".a:group." ctermfg=NONE ctermbg=".a:lcbg + endif + else + let l:fge = empty(a:fg) + let l:bge = empty(a:bg) + + if !l:fge && !l:bge + exec "hi ".a:group." guifg=#".a:fg." guibg=#".a:bg." ctermfg=".s:rgb(a:fg)." ctermbg=".s:rgb(a:bg) + elseif !l:fge && l:bge + exec "hi ".a:group." guifg=#".a:fg." guibg=NONE ctermfg=".s:rgb(a:fg)." ctermbg=NONE" + elseif l:fge && !l:bge + exec "hi ".a:group." guifg=NONE guibg=#".a:bg." ctermfg=NONE ctermbg=".s:rgb(a:bg) + endif + endif + + if a:attr == "" + exec "hi ".a:group." gui=none cterm=none" + else + let noitalic = join(filter(split(a:attr, ","), "v:val !=? 'italic'"), ",") + if empty(noitalic) + let noitalic = "none" + endif + exec "hi ".a:group." gui=".a:attr." cterm=".noitalic + endif +endfun +" }}} + +call s:X("Normal","e8e8d3","","","White","") +set background=dark + +if version >= 700 + call s:X("CursorLine","","1c1c1c","","","Black") + call s:X("CursorColumn","","1c1c1c","","","Black") + call s:X("MatchParen","ffffff","80a090","bold","","DarkCyan") + + call s:X("TabLine","000000","b0b8c0","italic","","Black") + call s:X("TabLineFill","9098a0","","","","Black") + call s:X("TabLineSel","000000","f0f0f0","italic,bold","Black","White") + + " Auto-completion + call s:X("Pmenu","ffffff","606060","","White","Black") + call s:X("PmenuSel","101010","eeeeee","","Black","White") +endif + +call s:X("Visual","","404040","","","Black") +call s:X("Cursor","","b0d0f0","","","") + +call s:X("LineNr","605958","","none","Black","") +call s:X("Comment","888888","","italic","Grey","") +call s:X("Todo","808080","","bold","White","Black") + +call s:X("StatusLine","000000","dddddd","italic","Black","White") +call s:X("StatusLineNC","ffffff","403c41","italic","White","Black") +call s:X("VertSplit","777777","403c41","italic","Black","Black") +call s:X("WildMenu","f0a0c0","302028","","Magenta","") + +call s:X("Folded","a0a8b0","384048","italic","Black","") +call s:X("FoldColumn","a0a8b0","384048","","","Black") +hi! link SignColumn FoldColumn + +call s:X("Title","70b950","","bold","Green","") + +call s:X("Constant","cf6a4c","","","Red","") +call s:X("Special","799d6a","","","Green","") +call s:X("Delimiter","668799","","","Grey","") + +call s:X("String","99ad6a","","","Green","") +call s:X("StringDelimiter","556633","","","DarkGreen","") + +call s:X("Identifier","c6b6ee","","","LightCyan","") +call s:X("Structure","8fbfdc","","","LightCyan","") +call s:X("Function","fad07a","","","Yellow","") +call s:X("Statement","8197bf","","","DarkBlue","") +call s:X("PreProc","8fbfdc","","","LightBlue","") + +hi! link Operator Normal + +call s:X("Type","ffb964","","","Yellow","") +call s:X("NonText","606060","","","Black","") + +call s:X("SpecialKey","444444","1c1c1c","","Black","") + +call s:X("Search","f0a0c0","302028","underline","Magenta","") + +call s:X("Directory","dad085","","","Yellow","") +call s:X("ErrorMsg","","902020","","","DarkRed") +hi! link Error ErrorMsg +hi! link MoreMsg Special +call s:X("Question","65C254","","","Green","") + + +" Spell Checking + +call s:X("SpellBad","","902020","underline","","DarkRed") +call s:X("SpellCap","","0000df","underline","","Blue") +call s:X("SpellRare","","540063","underline","","DarkMagenta") +call s:X("SpellLocal","","2D7067","underline","","Green") + +" Diff + +hi! link diffRemoved Constant +hi! link diffAdded String + +" VimDiff + +call s:X("DiffAdd","","032218","","Black","DarkGreen") +call s:X("DiffChange","","100920","","Black","DarkMagenta") +call s:X("DiffDelete","220000","220000","","DarkRed","DarkRed") +call s:X("DiffText","","000940","","","DarkRed") + +" PHP + +hi! link phpFunctions Function +call s:X("StorageClass","c59f6f","","","Red","") +hi! link phpSuperglobal Identifier +hi! link phpQuoteSingle StringDelimiter +hi! link phpQuoteDouble StringDelimiter +hi! link phpBoolean Constant +hi! link phpNull Constant +hi! link phpArrayPair Operator + +" Ruby + +hi! link rubySharpBang Comment +call s:X("rubyClass","447799","","","DarkBlue","") +call s:X("rubyIdentifier","c6b6fe","","","Cyan","") +hi! link rubyConstant Type +hi! link rubyFunction Function + +call s:X("rubyInstanceVariable","c6b6fe","","","Cyan","") +call s:X("rubySymbol","7697d6","","","Blue","") +hi! link rubyGlobalVariable rubyInstanceVariable +hi! link rubyModule rubyClass +call s:X("rubyControl","7597c6","","","Blue","") + +hi! link rubyString String +hi! link rubyStringDelimiter StringDelimiter +hi! link rubyInterpolationDelimiter Identifier + +call s:X("rubyRegexpDelimiter","540063","","","Magenta","") +call s:X("rubyRegexp","dd0093","","","DarkMagenta","") +call s:X("rubyRegexpSpecial","a40073","","","Magenta","") + +call s:X("rubyPredefinedIdentifier","de5577","","","Red","") + +" JavaScript +hi! link javaScriptValue Constant +hi! link javaScriptRegexpString rubyRegexp + +" CoffeeScript + +hi! link coffeeRegExp javaScriptRegexpString + +" C + +hi! link cOperator Constant + +" Objective-C/Cocoa +hi! link objcClass Type +hi! link cocoaClass objcClass +hi! link objcSubclass objcClass +hi! link objcSuperclass objcClass +hi! link objcDirective rubyClass +hi! link cocoaFunction Function +hi! link objcMethodName Identifier +hi! link objcMethodArg Normal +hi! link objcMessageName Identifier + +" Plugins, etc. + +hi! link TagListFileName Directory +call s:X("PreciseJumpTarget","B9ED67","405026","","White","Green") + +" Manual overrides for 256-color terminals. Dark colors auto-map badly. +if !s:low_color + hi StatusLineNC ctermbg=234 + hi Folded ctermbg=236 + hi FoldColumn ctermbg=236 + hi SignColumn ctermbg=236 + hi DiffAdd ctermbg=22 + hi DiffDelete ctermbg=52 + hi DiffChange ctermbg=17 + hi DiffText ctermbg=19 +endif + +" delete functions {{{ +delf s:X +delf s:rgb +delf s:color +delf s:rgb_color +delf s:rgb_level +delf s:rgb_number +delf s:grey_color +delf s:grey_level +delf s:grey_number +" }}} ADDED vim/colors/manxome.vim Index: vim/colors/manxome.vim ================================================================== --- vim/colors/manxome.vim +++ vim/colors/manxome.vim @@ -0,0 +1,47 @@ +""" local syntax file - set colors on a per-machine basis: +""" Vim color file +""" Title: Manxome Foes Color Scheme +""" Maintainer: Ricardo SIGNES +""" This Version: R2v2 [2003-07-16] +""" suggested vim editing options: tw=0 ts=4 sw=4 + +"" clear and re-initialize global variables +hi clear +set background=dark +if exists("syntax_on") + syntax reset +endif +let g:colors_name = "manxome" + +"" set highlight groups +"" you'll notice that the ctermbg is often 'none'; this is so that when +"" console vim runs in a terminal, transparency (if any) is not broken + +highlight Title ctermfg=3 ctermbg=none cterm=bold guifg=#ffff00 guibg=#000000 gui=none +highlight Directory ctermfg=4 ctermbg=none cterm=bold guifg=#0000ff guibg=#000000 gui=none +highlight StatusLine ctermfg=7 ctermbg=4 cterm=bold guifg=#ffffff guibg=#0000ff gui=none +highlight StatusLineNC ctermfg=0 ctermbg=4 cterm=bold guifg=#000000 guibg=#0000ff gui=none +highlight Normal ctermfg=7 ctermbg=none cterm=none guifg=#cccccc guibg=#000000 gui=none +highlight Search ctermfg=7 ctermbg=4 cterm=bold guifg=#ffffff guibg=#0000ff gui=none +highlight Visual ctermfg=7 ctermbg=6 cterm=bold guifg=#ffffff guibg=#00aaaa gui=none + +"" set major preferred groups + +highlight Comment ctermfg=2 ctermbg=none cterm=bold guifg=#00ff00 guibg=#000000 gui=none +highlight Constant ctermfg=6 ctermbg=none cterm=bold guifg=#00ffff guibg=#000000 gui=none +highlight Identifier ctermfg=4 ctermbg=none cterm=bold guifg=#0000ee guibg=#000000 gui=none +highlight Statement ctermfg=6 ctermbg=none cterm=none guifg=#00aaaa guibg=#000000 gui=none +highlight PreProc ctermfg=7 ctermbg=none cterm=bold guifg=#ffffff guibg=#000000 gui=none +highlight Type ctermfg=6 ctermbg=none cterm=none guifg=#00aaaa guibg=#000000 gui=none +highlight Special ctermfg=7 ctermbg=none cterm=bold guifg=#ffffff guibg=#000000 gui=none +highlight Underlined ctermfg=2 ctermbg=none cterm=none guifg=#00aa00 guibg=#000000 gui=none +highlight Ignore ctermfg=0 ctermbg=none cterm=bold guifg=#aaaaaa guibg=#000000 gui=none +highlight Error ctermfg=1 ctermbg=none cterm=bold guibg=#ff0000 guibg=#000000 gui=none +highlight Todo ctermfg=3 ctermbg=none cterm=none guifg=#aaaa00 guibg=#000000 gui=none + +" set syntax-specific groups +" I'd like to avoid using these, but the default settings for these two are +" just no good. Seeing italic text in Vim is just plain wrong. + +highlight htmlBold ctermfg=7 ctermbg=none cterm=bold guifg=#ffffff guibg=#000000 gui=none +highlight htmlItalic ctermfg=5 ctermbg=none cterm=bold guifg=#ff00ff guibg=#000000 gui=none ADDED vim/colors/night_vision.vim Index: vim/colors/night_vision.vim ================================================================== --- vim/colors/night_vision.vim +++ vim/colors/night_vision.vim @@ -0,0 +1,47 @@ +" Vim color file +" Maintainer: iyerns +" Last Change: 25 August 2005 +" Version:1.0 + +set background=light +hi clear +if exists("syntax_on") + syntax reset +endif +let g:colors_name="night_vision" + +hi Normal guifg=#00cc00 guibg=#003300 +hi LineNr guifg=#009900 guibg=#003300 +hi Statusline gui=none guibg=#339933 guifg=#ffffff +hi StatuslineNC gui=none guibg=#006633 guifg=#ffffff + +hi Title guifg=black guibg=white gui=BOLD +hi lCursor guibg=Cyan guifg=NONE + +" syntax highlighting groups +hi Comment gui=NONE guifg=#009933 +hi Operator guifg=#ff0000 +hi Identifier guifg=#33ff99 gui=NONE + +hi Statement guifg=#ccff00 gui=NONE +hi TypeDef guifg=#c000c8 gui=NONE +hi Type guifg=#ccffff gui=NONE +hi Boolean guifg=#ff00aa gui=NONE + +hi String guifg=#9999cc gui=NONE +hi Number guifg=#66ff66 gui=NONE +hi Constant guifg=#f0f000 gui=NONE + +hi Function gui=NONE guifg=#fffcfc +hi PreProc guifg=#ffffff gui=NONE +hi Define gui=bold guifg=#f0f0f0 +hi Special gui=none guifg=#cccccc +hi BrowseDirectory gui=bold guifg=#FFFF00 + +hi Keyword guifg=#ff8088 gui=NONE +hi Search gui=NONE guibg=#ffff00 guifg=#330000 +hi IncSearch gui=NONE guifg=#fcfcfc guibg=#8888ff +hi SpecialKey gui=NONE guifg=#fcfcfc guibg=#8888ff +hi NonText gui=NONE guifg=#fcfcfc +hi Directory gui=NONE guifg=#999900 +hi Conditional gui=NONE guifg=#ff9900 ADDED vim/colors/railscasts.vim Index: vim/colors/railscasts.vim ================================================================== --- vim/colors/railscasts.vim +++ vim/colors/railscasts.vim @@ -0,0 +1,96 @@ +" Vim color scheme +" +" Name: railscasts.vim +" Maintainer: Nick Moffitt +" Last Change: 01 Mar 2008 +" License: WTFPL +" Version: 2.1 +" +" This theme is based on Josh O'Rourke's Vim clone of the railscast +" textmate theme. The key thing I have done here is supply 256-color +" terminal equivalents for as many of the colors as possible, and fixed +" up some of the funny behaviors for editing e-mails and such. +" +" To use for gvim: +" 1: install this file as ~/.vim/colors/railscasts.vim +" 2: put "colorscheme railscasts" in your .gvimrc +" +" If you are using Ubuntu, you can get the benefit of this in your +" terminals using ordinary vim by taking the following steps: +" +" 1: sudo apt-get install ncurses-term +" 2: put the following in your .vimrc +" if $COLORTERM == 'gnome-terminal' +" set term=gnome-256color +" colorscheme railscasts +" else +" colorscheme default +" endif +" 3: if you wish to use this with screen, add the following to your .screenrc: +" attrcolor b ".I" +" termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' +" defbce "on" +" term screen-256color-bce + +set background=dark +hi clear +if exists("syntax_on") + syntax reset +endif + +let g:colors_name = "railscasts" + +hi link htmlTag xmlTag +hi link htmlTagName xmlTagName +hi link htmlEndTag xmlEndTag + +highlight Normal guifg=#E6E1DC guibg=#111111 +highlight Cursor guifg=#000000 ctermfg=0 guibg=#FFFFFF ctermbg=15 +highlight CursorLine guibg=#000000 ctermbg=233 cterm=NONE + +highlight Comment guifg=#BC9458 ctermfg=180 gui=italic +highlight Constant guifg=#6D9CBE ctermfg=73 +highlight Define guifg=#CC7833 ctermfg=173 +highlight Error guifg=#FFC66D ctermfg=221 guibg=#990000 ctermbg=88 +highlight Function guifg=#FFC66D ctermfg=221 gui=NONE cterm=NONE +highlight Identifier guifg=#6D9CBE ctermfg=73 gui=NONE cterm=NONE +highlight Include guifg=#CC7833 ctermfg=173 gui=NONE cterm=NONE +highlight PreCondit guifg=#CC7833 ctermfg=173 gui=NONE cterm=NONE +highlight Keyword guifg=#CC7833 ctermfg=173 cterm=NONE +highlight LineNr guifg=#2B2B2B ctermfg=159 guibg=#C0C0FF +highlight Number guifg=#A5C261 ctermfg=107 +highlight PreProc guifg=#E6E1DC ctermfg=103 +highlight Search guifg=NONE ctermfg=NONE guibg=#2b2b2b ctermbg=235 gui=italic cterm=underline +highlight Statement guifg=#CC7833 ctermfg=173 gui=NONE cterm=NONE +highlight String guifg=#A5C261 ctermfg=107 +highlight Title guifg=#FFFFFF ctermfg=15 +highlight Type guifg=#DA4939 ctermfg=167 gui=NONE cterm=NONE +highlight Visual guibg=#5A647E ctermbg=60 + +highlight DiffAdd guifg=#E6E1DC ctermfg=7 guibg=#519F50 ctermbg=71 +highlight DiffDelete guifg=#E6E1DC ctermfg=7 guibg=#660000 ctermbg=52 +highlight Special guifg=#DA4939 ctermfg=167 + +highlight pythonBuiltin guifg=#6D9CBE ctermfg=73 gui=NONE cterm=NONE +highlight rubyBlockParameter guifg=#FFFFFF ctermfg=15 +highlight rubyClass guifg=#FFFFFF ctermfg=15 +highlight rubyConstant guifg=#DA4939 ctermfg=167 +highlight rubyInstanceVariable guifg=#D0D0FF ctermfg=189 +highlight rubyInterpolation guifg=#519F50 ctermfg=107 +highlight rubyLocalVariableOrMethod guifg=#D0D0FF ctermfg=189 +highlight rubyPredefinedConstant guifg=#DA4939 ctermfg=167 +highlight rubyPseudoVariable guifg=#FFC66D ctermfg=221 +highlight rubyStringDelimiter guifg=#A5C261 ctermfg=143 + +highlight xmlTag guifg=#E8BF6A ctermfg=179 +highlight xmlTagName guifg=#E8BF6A ctermfg=179 +highlight xmlEndTag guifg=#E8BF6A ctermfg=179 + +highlight mailSubject guifg=#A5C261 ctermfg=107 +highlight mailHeaderKey guifg=#FFC66D ctermfg=221 +highlight mailEmail guifg=#A5C261 ctermfg=107 gui=italic cterm=underline + +highlight SpellBad guifg=#D70000 ctermfg=160 ctermbg=NONE cterm=underline +highlight SpellRare guifg=#D75F87 ctermfg=168 guibg=NONE ctermbg=NONE gui=underline cterm=underline +highlight SpellCap guifg=#D0D0FF ctermfg=189 guibg=NONE ctermbg=NONE gui=underline cterm=underline +highlight MatchParen guifg=#FFFFFF ctermfg=15 guibg=#005f5f ctermbg=23 ADDED vim/colors/tango.vim Index: vim/colors/tango.vim ================================================================== --- vim/colors/tango.vim +++ vim/colors/tango.vim @@ -0,0 +1,78 @@ +" +" Tango Vim Color Scheme +" ======================= +" +" For best results, set up your terminal with a Tango palette. +" Instructions for GNOME Terminal: +" http://uwstopia.nl/blog/2006/07/tango-terminal +" +" author: Michele Campeotto +" +set background=dark + +hi clear +if exists("syntax_on") + syntax reset +endif + +let colors_name = "tango" + +" Default Colors +hi Normal guifg=#eeeeec guibg=#000000 +hi NonText guifg=#555753 guibg=#000000 gui=none +hi NonText ctermfg=darkgray +hi Cursor guibg=#d3d7cf +hi lCursor guibg=#d3d7cf + +" Search +hi Search guifg=#eeeeec guibg=#c4a000 +hi Search cterm=none ctermfg=grey ctermbg=blue +hi IncSearch guibg=#eeeeec guifg=#729fcf +hi IncSearch cterm=none ctermfg=yellow ctermbg=green + +" Window Elements +hi StatusLine guifg=#eeeeec guibg=#4e9a06 gui=bold +hi StatusLine ctermfg=white ctermbg=green cterm=bold +hi StatusLineNC guifg=#d3d7df guibg=#4e9a06 +hi StatusLineNC ctermfg=lightgray ctermbg=darkgreen +hi VertSplit guifg=#eeeeec guibg=#eeeeec +hi Folded guifg=#eeeeec guibg=#75507b +hi Folded ctermfg=white ctermbg=magenta +hi Visual guifg=#d3d7cf guibg=#4e9a06 +hi Visual ctermbg=white ctermfg=lightgreen cterm=reverse + +" Specials +hi Todo guifg=#8ae234 guibg=#4e9a06 gui=bold +hi Todo ctermfg=white ctermbg=green +hi Title guifg=#eeeeec gui=bold +hi Title ctermfg=white cterm=bold + +" Syntax +hi Constant guifg=#c4a000 +hi Constant ctermfg=darkyellow +hi Number guifg=#729fcf +hi Number ctermfg=darkblue +hi Statement guifg=#4e9a06 gui=bold +hi Statement ctermfg=green +hi Identifier guifg=#8ae234 +hi Identifier ctermfg=darkgreen +hi PreProc guifg=#cc0000 +hi PreProc ctermfg=darkred +hi Comment guifg=#06989a gui=italic +hi Comment ctermfg=cyan cterm=none +hi Type guifg=#d3d7cf gui=bold +hi Type ctermfg=gray cterm=bold +hi Special guifg=#75507b +hi Special ctermfg=magenta cterm=none +hi Error guifg=#eeeeec guibg=#ef2929 +hi Error ctermfg=white ctermbg=red + +" Diff +hi DiffAdd guifg=fg guibg=#3465a4 gui=none +hi DiffAdd ctermfg=gray ctermbg=blue cterm=none +hi DiffChange guifg=fg guibg=#555753 gui=none +hi DiffChange ctermfg=gray ctermbg=darkgray cterm=none +hi DiffDelete guibg=bg +hi DiffDelete ctermfg=gray ctermbg=none cterm=none +hi DiffText guifg=fg guibg=#c4a000 gui=none +hi DiffText ctermfg=gray ctermbg=yellow cterm=none ADDED vim/colors/wuye.vim Index: vim/colors/wuye.vim ================================================================== --- vim/colors/wuye.vim +++ vim/colors/wuye.vim @@ -0,0 +1,82 @@ +" Vim color file +" Name: WuYe +" Maintainer: Yeii +" Last Change: 2009-08-12 +" Version: 1.2.1 +" URL: http://www.vim.org/scripts/script.php?script_id=2088 + +" Init +highlight clear +set background=dark +if exists("syntax_on") + syntax reset +endif +let g:colors_name = "wuye" + +""""""""\ Highlighting groups for various occasions \"""""""" +hi SpecialKey guifg=SlateBlue ctermfg=Blue +hi NonText guifg=MidnightBlue ctermfg=DarkBlue +hi Directory gui=BOLD guifg=LightSeaGreen ctermfg=DarkCyan +hi ErrorMsg guifg=Yellow guibg=Firebrick ctermfg=Yellow ctermbg=DarkRed +hi IncSearch gui=BOLD guifg=Red cterm=BOLD ctermfg=Red +hi Search gui=BOLD guifg=MintCream guibg=Red cterm=BOLD ctermfg=White ctermbg=Red +hi MoreMsg gui=BOLD guifg=MediumSpringGreen cterm=BOLD ctermfg=DarkCyan +hi ModeMsg guifg=LawnGreen guibg=DeepSkyBlue4 ctermfg=Yellow ctermbg=DarkCyan +hi LineNr gui=UNDERLINE guifg=LightSkyBlue3 guibg=Gray10 cterm=UNDERLINE ctermfg=DarkGray +hi Question gui=BOLD guifg=green cterm=BOLD ctermfg=green +hi StatusLine gui=BOLD guifg=White guibg=RoyalBlue4 cterm=BOLD ctermfg=White ctermbg=DarkBlue +hi StatusLineNC gui=BOLD guifg=Bisque guibg=DimGray cterm=BOLD ctermfg=Black ctermbg=Gray +hi VertSplit gui=BOLD guifg=Bisque guibg=DimGray cterm=BOLD ctermfg=Black ctermbg=Gray +hi Title gui=BOLD guifg=DodgerBlue cterm=BOLD ctermfg=LightBlue +hi Visual gui=REVERSE guibg=Yellow guifg=SlateBlue4 cterm=REVERSE ctermbg=Yellow ctermfg=DarkBlue +hi WarningMsg guifg=Gold ctermfg=Yellow +hi WildMenu gui=BOLD guifg=Black guibg=Chartreuse cterm=BOLD ctermfg=Black ctermbg=Darkgreen +hi Folded guifg=LightCyan guibg=DodgerBlue4 ctermfg=White ctermbg=DarkBlue +hi FoldColumn gui=BOLD guifg=DodgerBlue guibg=Gray16 cterm=BOLD ctermfg=Blue ctermbg=DarkGray +hi DiffAdd guifg=White guibg=Turquoise4 ctermfg=White ctermbg=Darkcyan +hi DiffChange guifg=White guibg=ForestGreen ctermbg=Darkgreen +hi DiffDelete guifg=HotPink4 guibg=SlateGray4 ctermfg=DarkMagenta ctermbg=DarkGray +hi DiffText gui=BOLD guifg=Tomato guibg=DarkBlue cterm=BOLD ctermfg=Magenta ctermbg=DarkBlue +hi Cursor guifg=Black guibg=Green ctermfg=Black ctermbg=Green +hi CursorIM guifg=Black guibg=Red ctermfg=Black ctermbg=Red +hi CursorLine gui=BOLD guibg=Black +hi CursorColumn gui=BOLD guibg=Black + +""""""\ Syntax highlighting groups \"""""" +hi Normal gui=NONE guifg=GhostWhite guibg=Gray8 cterm=NONE ctermfg=LightGray ctermbg=NONE +hi MatchParen gui=BOLD guifg=Gold cterm=BOLD ctermfg=Yellow +hi Comment guifg=LightSlateGray ctermfg=DarkGray +hi Constant guifg=CornflowerBlue ctermfg=DarkCyan + hi String guifg=SteelBlue1 ctermfg=DarkCyan + hi Character guifg=SteelBlue ctermfg=DarkCyan + hi Number guifg=Turquoise ctermfg=DarkCyan + hi Boolean gui=BOLD guifg=DarkTurquoise cterm=BOLD ctermfg=DarkCyan + hi Float guifg=Turquoise ctermfg=DarkCyan +hi Identifier guifg=DeepSkyBlue ctermfg=lightcyan + hi Function gui=BOLD guifg=DeepSkyBlue cterm=BOLD ctermfg=lightcyan +hi Statement guifg=SpringGreen ctermfg=LightGreen + hi Conditional guifg=SeaGreen1 ctermfg=LightGreen + hi Repeat guifg=SpringGreen ctermfg=LightGreen + hi Label guifg=MediumSpringGreen ctermfg=LightGreen + hi Operator guifg=Green2 ctermfg=LightGreen + hi Keyword gui=BOLD guifg=SpringGreen cterm=BOLD ctermfg=LightGreen + hi Exception gui=BOLD guifg=SpringGreen2 cterm=BOLD ctermfg=LightGreen +hi PreProc guifg=Purple ctermfg=DarkMagenta + hi Include guifg=Purple2 ctermfg=DarkMagenta + hi Define guifg=BlueViolet ctermfg=DarkMagenta + hi Macro guifg=DarkViolet ctermfg=DarkMagenta + hi PreCondit guifg=DarkOrchid ctermfg=DarkMagenta +hi Type gui=BOLD guifg=RoyalBlue cterm=BOLD ctermfg=LightBlue + hi StorageClass gui=BOLD guifg=RoyalBlue2 cterm=BOLD ctermfg=LightBlue + hi Structure gui=BOLD guifg=DodgerBlue3 cterm=BOLD ctermfg=LightBlue + hi Typedef gui=BOLD guifg=RoyalBlue1 cterm=BOLD ctermfg=LightBlue +hi Special guifg=BurlyWood ctermfg=DarkYellow + hi Tag guifg=Moccasin ctermfg=DarkYellow + hi Specialchar guifg=Tan ctermfg=DarkYellow + hi Delimiter guifg=Wheat3 ctermfg=DarkYellow + hi Debug guifg=peru ctermfg=DarkYellow +hi Underlined gui=UNDERLINE cterm=UNDERLINE +hi Ignore guifg=Gray75 ctermfg=DarkGray +hi Error guifg=Khaki guibg=VioletRed ctermfg=Yellow ctermbg=LightMagenta +hi Todo guifg=Yellow guibg=NavyBlue ctermfg=Yellow ctermbg=DarkBlue + ADDED vim/colors/xoria256.vim Index: vim/colors/xoria256.vim ================================================================== --- vim/colors/xoria256.vim +++ vim/colors/xoria256.vim @@ -0,0 +1,173 @@ +" Vim color file +" Name: xoria256.vim +" Version: 0.3.2 +" License: Public Domain +" Maintainer: Dmitriy Y. Zotikov (xio) +" +" Heavily based on 'moria' color scheme. +" +" Sould work in a 256 color terminal (like latest versions of xterm, konsole, +" etc). Will not, however, work in 88 color terminals like urxvt. +" +" Color numbers (0-255) see: +" http://www.calmar.ws/vim/256-xterm-24bit-rgb-color-chart.html +" +" TODO: +" - Diff (currently *VERY* ugly) +" - Html + + + +if &t_Co != 256 && ! has("gui_running") + echomsg "" + echomsg "err: please use GUI or a 256-color terminal (so that t_Co=256 could be set)" + echomsg "" + finish +endif + +set background=dark +hi clear +if exists("syntax_on") + syntax reset +endif + +" Which one is right? +"let colors_name = "xoria256" +let g:colors_name = "xoria256" + + + +hi Normal cterm=none ctermfg=252 ctermbg=0 gui=none guifg=#d0d0d0 guibg=#202020 + +hi Cursor cterm=none ctermfg=bg ctermbg=214 gui=none guifg=bg guibg=#ffaf00 +hi CursorColumn cterm=none ctermbg=238 gui=none guibg=#444444 +hi CursorLine cterm=none ctermbg=238 gui=none guibg=#444444 +hi lCursor cterm=none ctermfg=0 ctermbg=40 gui=none guifg=#000000 guibg=#00df00 +"hi CursorIM cterm= ctermfg= ctermbg= gui= guifg= guibg= +hi IncSearch cterm=none ctermfg=0 ctermbg=223 gui=none guifg=#000000 guibg=#ffdfaf +hi Search cterm=none ctermfg=0 ctermbg=149 gui=none guifg=#000000 guibg=#afdf5f +hi ErrorMsg cterm=none ctermfg=15 ctermbg=160 gui=bold guifg=#ffffff guibg=#df0000 +hi WarningMsg cterm=bold ctermfg=196 ctermbg=bg gui=bold guifg=#ff0000 guibg=bg +hi ModeMsg cterm=bold ctermfg=fg ctermbg=bg gui=bold guifg=fg guibg=bg +hi MoreMsg cterm=bold ctermfg=250 ctermbg=bg gui=bold guifg=#bcbcbc guibg=bg +hi Question cterm=bold ctermfg=113 ctermbg=bg gui=bold guifg=#87df7f guibg=bg + +hi StatusLine cterm=bold ctermfg=fg ctermbg=239 gui=bold guifg=fg guibg=#4e4e4e +hi StatusLineNC cterm=none ctermfg=fg ctermbg=237 gui=none guifg=fg guibg=#3a3a3a +hi User1 cterm=none ctermfg=15 ctermbg=20 gui=none guifg=#ffffff guibg=#0000df +hi User2 cterm=none ctermfg=46 ctermbg=20 gui=none guifg=#00ff00 guibg=#0000df +hi User3 cterm=none ctermfg=46 ctermbg=20 gui=none guifg=#00ff00 guibg=#0000df +hi User4 cterm=none ctermfg=50 ctermbg=20 gui=none guifg=#00ffdf guibg=#0000df +hi User5 cterm=none ctermfg=46 ctermbg=20 gui=none guifg=#00ff00 guibg=#0000df +hi VertSplit cterm=reverse ctermfg=fg ctermbg=237 gui=reverse guifg=fg guibg=#3a3a3a + +hi WildMenu cterm=bold ctermfg=0 ctermbg=184 gui=bold guifg=#000000 guibg=#dfdf00 +"hi Menu cterm= ctermfg= ctermbg= gui= guifg= guibg= +"hi Scrollbar cterm= ctermfg= ctermbg= gui= guifg= guibg= +"hi Tooltip cterm= ctermfg= ctermbg= gui= guifg= guibg= + +"hi MBENormal cterm= ctermfg= ctermbg= gui= guifg= guibg= +"hi MBEChanged cterm= ctermfg= ctermbg= gui= guifg= guibg= +"hi MBEVisibleNormal cterm= ctermfg= ctermbg= gui= guifg= guibg= +"hi MBEVisibleChanged cterm= ctermfg= ctermbg= gui= guifg= guibg= + +"hi DiffText cterm=bold ctermfg=fg ctermbg=20 gui=bold guifg=fg guibg=#0000df +"hi DiffDelete cterm=none ctermfg=fg ctermbg=88 gui=none guifg=fg guibg=#870000 +"hi DiffChange cterm=none ctermfg=fg ctermbg=18 gui=none guifg=fg guibg=#000087 +"hi DiffAdd cterm=none ctermfg=fg ctermbg=28 gui=none guifg=fg guibg=#008700 + +hi Folded cterm=none ctermfg=255 ctermbg=60 gui=none guifg=#eeeeee guibg=#5f5f87 +"hi Folded cterm=none ctermfg=251 ctermbg=240 gui=bold guifg=#c6c6c6 guibg=#585858 +"hi Folded cterm=none ctermfg=251 ctermbg=95 gui=none guifg=#c6c6c6 guibg=#585858 +hi FoldColumn cterm=none ctermfg=248 ctermbg=58 gui=none guifg=#a8a8a8 guibg=bg +hi SignColumn cterm=none ctermfg=248 ctermbg=bg gui=none guifg=#a8a8a8 guibg=bg + +hi Directory cterm=none ctermfg=39 ctermbg=bg gui=none guifg=#00afff guibg=bg +hi LineNr cterm=none ctermfg=248 gui=none guifg=#a8a8a8 +hi NonText cterm=bold ctermfg=248 ctermbg=bg gui=bold guifg=#a8a8a8 guibg=bg +hi SpecialKey cterm=none ctermfg=77 ctermbg=bg gui=none guifg=#5fdf5f guibg=bg +hi Title cterm=none ctermfg=0 ctermbg=184 gui=none guifg=#000000 guibg=#dfdf00 +hi Visual cterm=none ctermfg=24 ctermbg=153 gui=none guifg=#005f87 guibg=#afdfff +"hi Visual cterm=none ctermfg=18 ctermbg=153 gui=none guifg=#005f87 guibg=#afdfff +hi VisualNOS cterm=bold,underline ctermfg=247 ctermbg=bg gui=bold,underline guifg=#9e9e9e guibg=bg + +hi Comment cterm=none ctermfg=244 ctermbg=bg gui=none guifg=#808080 guibg=bg +""" COLD +hi Constant cterm=none ctermfg=187 ctermbg=bg gui=none guifg=#dfdfaf guibg=bg +""" COLD-DARK +"hi Constant cterm=none ctermfg=223 ctermbg=bg gui=none guifg=#ffdfaf guibg=bg +""" NEUTRAL +"hi Constant cterm=none ctermfg=229 ctermbg=bg gui=none guifg=#ffffaf guibg=bg +""" WARM +"hi Constant cterm=none ctermfg=222 ctermbg=bg gui=none guifg=#ffdf87 guibg=bg +"hi String cterm= ctermfg= ctermbg= gui= guifg= guibg= +hi Error cterm=none ctermfg=196 ctermbg=bg gui=none guifg=#ff0000 guibg=bg +""" COLD +"hi Identifier cterm=none ctermfg=115 ctermbg=bg gui=none guifg=#87dfaf guibg=bg +""" NEUTRAL +"hi Identifier cterm=none ctermfg=114 ctermbg=bg gui=none guifg=#87df87 guibg=bg +""" WARM +hi Identifier cterm=none ctermfg=150 ctermbg=bg gui=none guifg=#afdf87 guibg=bg +hi Ignore cterm=none ctermfg=238 ctermbg=bg gui=none guifg=#444444 guibg=bg +hi Number cterm=none ctermfg=180 ctermbg=bg gui=none guifg=#dfaf87 guibg=bg +"hi Number cterm=none ctermfg=222 ctermbg=bg gui=none guifg=#ffaf87 guibg=bg +"hi Number cterm=none ctermfg=215 ctermbg=bg gui=none guifg=#ffaf87 guibg=bg +"hi Number cterm=none ctermfg=209 ctermbg=0 gui=none guifg=#ff875f guibg=#000000 +"hi Number cterm=none ctermfg=210 ctermbg=0 gui=none guifg=#ff8787 guibg=#000000 +hi PreProc cterm=none ctermfg=182 ctermbg=bg gui=none guifg=#dfafdf guibg=bg +"hi PreProc cterm=none ctermfg=218 ctermbg=bg gui=none guifg=#ffafdf guibg=bg +""" LIGHT +"hi Special cterm=none ctermfg=174 ctermbg=bg gui=none guifg=#ffafaf guibg=bg +""" DARK +hi Special cterm=none ctermfg=174 ctermbg=bg gui=none guifg=#df8787 guibg=bg +"hi Special cterm=none ctermfg=114 ctermbg=bg gui=none guifg=#87df87 guibg=bg +"hi SpecialChar cterm= ctermfg= ctermbg= gui= guifg= guibg= +hi Statement cterm=none ctermfg=74 ctermbg=bg gui=none guifg=#5fafdf guibg=bg +"hi Statement cterm=none ctermfg=75 ctermbg=bg gui=none guifg=#5fafff guibg=bg +hi Todo cterm=none ctermfg=0 ctermbg=184 gui=none guifg=#000000 guibg=#dfdf00 +"hi Type cterm=none ctermfg=153 ctermbg=bg gui=none guifg=#afdfff guibg=bg +hi Type cterm=none ctermfg=146 ctermbg=bg gui=none guifg=#afafdf guibg=bg +hi Underlined cterm=underline ctermfg=39 ctermbg=bg gui=underline guifg=#00afff guibg=bg + +"hi htmlBold cterm= ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=bold +"hi htmlBoldItalic cterm= ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=bold,italic +"hi htmlBoldUnderline cterm= ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=bold,underline +"hi htmlBoldUnderlineItalic cterm= ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=bold,underline,italic +"hi htmlItalic cterm= ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=italic +"hi htmlUnderline cterm= ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=underline +"hi htmlUnderlineItalici cterm= ctermbg=0 ctermfg=15 guibg=bg guifg=fg gui=underline,italic + + +" For taglist plugin +if exists('loaded_taglist') + hi TagListTagName cterm=none ctermfg=16 ctermbg=28 gui=none guifg=#000000 guibg=#008700 + hi TagListTagScope cterm=none ctermfg=16 ctermbg=28 gui=none guifg=#000000 guibg=#008700 + hi TagListTitle cterm=none ctermfg=199 ctermbg=16 gui=none guifg=#ff00af guibg=#000000 + hi TagListComment cterm=none ctermfg=16 ctermbg=28 gui=none guifg=#000000 guibg=#008700 + hi TagListFileName cterm=none ctermfg=15 ctermbg=90 gui=none guifg=#ffffff guibg=#870087 +endif + + +" For features in vim v.7.0 and higher +if v:version >= 700 + hi Pmenu cterm=none ctermfg=0 ctermbg=246 gui=none guifg=#000000 guibg=#949494 + hi PmenuSel cterm=none ctermfg=0 ctermbg=243 gui=none guifg=#000000 guibg=#767676 + hi PmenuSbar cterm=none ctermfg=fg ctermbg=243 gui=none guifg=fg guibg=#767676 + hi PmenuThumb cterm=none ctermfg=bg ctermbg=252 gui=none guifg=bg guibg=#d0d0d0 + + " if has("spell") + " hi SpellBad guisp=#ee2c2c gui=undercurl + " hi SpellCap guisp=#2c2cee gui=undercurl + " hi SpellLocal guisp=#2ceeee gui=undercurl + " hi SpellRare guisp=#ee2cee gui=undercurl + " endif + + hi MatchParen cterm=none ctermfg=188 ctermbg=68 gui=bold guifg=#dfdfdf guibg=#5f87df + "hi MatchParen cterm=none ctermfg=24 ctermbg=153 gui=none guifg=#005f87 guibg=#afdfff + "hi MatchParen cterm=none ctermfg=117 ctermbg=31 gui=bold guifg=#87dfff guibg=#0087af + "hi MatchParen cterm=none ctermfg=187 ctermbg=67 gui=none guifg=#005f87 guibg=#afdfff + + hi TabLineSel cterm=bold ctermfg=fg ctermbg=bg gui=bold guifg=fg guibg=bg + hi TabLine cterm=underline ctermfg=fg ctermbg=242 gui=underline guifg=fg guibg=#666666 + hi TabLineFill cterm=underline ctermfg=fg ctermbg=242 gui=underline guifg=fg guibg=#666666 +endif ADDED vim/ftdetect/coffee.vim Index: vim/ftdetect/coffee.vim ================================================================== --- vim/ftdetect/coffee.vim +++ vim/ftdetect/coffee.vim @@ -0,0 +1,8 @@ +" Language: CoffeeScript +" Maintainer: Mick Koch +" URL: http://github.com/kchmck/vim-coffee-script +" License: WTFPL + +autocmd BufNewFile,BufRead *.coffee set filetype=coffee +autocmd BufNewFile,BufRead *Cakefile set filetype=coffee +autocmd BufNewFile,BufRead *.coffeekup set filetype=coffee ADDED vim/ftdetect/gas.vim Index: vim/ftdetect/gas.vim ================================================================== --- vim/ftdetect/gas.vim +++ vim/ftdetect/gas.vim @@ -0,0 +1,2 @@ +autocmd BufNewFile,BufRead *.s set filetype=gas +autocmd BufNewFile,BufRead *.S set filetype=gas ADDED vim/ftdetect/gofiletype.vim Index: vim/ftdetect/gofiletype.vim ================================================================== --- vim/ftdetect/gofiletype.vim +++ vim/ftdetect/gofiletype.vim @@ -0,0 +1,23 @@ +" We take care to preserve the user's fileencodings and fileformats, +" because those settings are global (not buffer local), yet we want +" to override them for loading Go files, which are defined to be UTF-8. +let s:current_fileformats = '' +let s:current_fileencodings = '' + +" define fileencodings to open as utf-8 encoding even if it's ascii. +function! s:gofiletype_pre() + let s:current_fileformats = &g:fileformats + let s:current_fileencodings = &g:fileencodings + set fileencodings=utf-8 fileformats=unix + setlocal filetype=go +endfunction + +" restore fileencodings as others +function! s:gofiletype_post() + let &g:fileformats = s:current_fileformats + let &g:fileencodings = s:current_fileencodings +endfunction + +au BufNewFile *.go setlocal filetype=go fileencoding=utf-8 fileformat=unix +au BufRead *.go call s:gofiletype_pre() +au BufReadPost *.go call s:gofiletype_post() ADDED vim/ftdetect/nasm.vim Index: vim/ftdetect/nasm.vim ================================================================== --- vim/ftdetect/nasm.vim +++ vim/ftdetect/nasm.vim @@ -0,0 +1,1 @@ +autocmd BufNewFile,BufRead *.asm set filetype=nasm ADDED vim/ftplugin/go/fmt.vim Index: vim/ftplugin/go/fmt.vim ================================================================== --- vim/ftplugin/go/fmt.vim +++ vim/ftplugin/go/fmt.vim @@ -0,0 +1,44 @@ +" Copyright 2011 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. +" +" fmt.vim: Vim command to format Go files with gofmt. +" +" This filetype plugin add a new commands for go buffers: +" +" :Fmt +" +" Filter the current Go buffer through gofmt. +" It tries to preserve cursor position and avoids +" replacing the buffer with stderr output. +" + +command! -buffer Fmt call s:GoFormat() + +function! s:GoFormat() + let view = winsaveview() + silent %!gofmt + if v:shell_error + let errors = [] + for line in getline(1, line('$')) + let tokens = matchlist(line, '^\(.\{-}\):\(\d\+\):\(\d\+\)\s*\(.*\)') + if !empty(tokens) + call add(errors, {"filename": @%, + \"lnum": tokens[2], + \"col": tokens[3], + \"text": tokens[4]}) + endif + endfor + if empty(errors) + % | " Couldn't detect gofmt error format, output errors + endif + undo + if !empty(errors) + call setloclist(0, errors, 'r') + endif + echohl Error | echomsg "Gofmt returned error" | echohl None + endif + call winrestview(view) +endfunction + +" vim:ts=4:sw=4:et ADDED vim/ftplugin/go/godoc.vim Index: vim/ftplugin/go/godoc.vim ================================================================== --- vim/ftplugin/go/godoc.vim +++ vim/ftplugin/go/godoc.vim @@ -0,0 +1,13 @@ +" Copyright 2011 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. +" +" godoc.vim: Vim command to see godoc. + +if exists("b:did_ftplugin") + finish +endif + +silent! nmap K (godoc-keyword) + +" vim:ts=4:sw=4:et ADDED vim/ftplugin/go/import.vim Index: vim/ftplugin/go/import.vim ================================================================== --- vim/ftplugin/go/import.vim +++ vim/ftplugin/go/import.vim @@ -0,0 +1,231 @@ +" Copyright 2011 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. +" +" import.vim: Vim commands to import/drop Go packages. +" +" This filetype plugin adds three new commands for go buffers: +" +" :Import {path} +" +" Import ensures that the provided package {path} is imported +" in the current Go buffer, using proper style and ordering. +" If {path} is already being imported, an error will be +" displayed and the buffer will be untouched. +" +" :ImportAs {localname} {path} +" +" Same as Import, but uses a custom local name for the package. +" +" :Drop {path} +" +" Remove the import line for the provided package {path}, if +" present in the current Go buffer. If {path} is not being +" imported, an error will be displayed and the buffer will be +" untouched. +" +" In addition to these commands, there are also two shortcuts mapped: +" +" \f - Runs :Import fmt +" \F - Runs :Drop fmt +" +" The backslash is the default maplocalleader, so it is possible that +" your vim is set to use a different character (:help maplocalleader). +" +if exists("b:did_ftplugin") + finish +endif + +command! -buffer -nargs=? -complete=customlist,go#complete#Package Drop call s:SwitchImport(0, '', ) +command! -buffer -nargs=1 -complete=customlist,go#complete#Package Import call s:SwitchImport(1, '', ) +command! -buffer -nargs=* -complete=customlist,go#complete#Package ImportAs call s:SwitchImport(1, ) +map f :Import fmt +map F :Drop fmt + +function! s:SwitchImport(enabled, localname, path) + let view = winsaveview() + let path = a:path + + " Quotes are not necessary, so remove them if provided. + if path[0] == '"' + let path = strpart(path, 1) + endif + if path[len(path)-1] == '"' + let path = strpart(path, 0, len(path) - 1) + endif + if path == '' + call s:Error('Import path not provided') + return + endif + + " Extract any site prefix (e.g. github.com/). + " If other imports with the same prefix are grouped separately, + " we will add this new import with them. + " Only up to and including the first slash is used. + let siteprefix = matchstr(path, "^[^/]*/") + + let qpath = '"' . path . '"' + if a:localname != '' + let qlocalpath = a:localname . ' ' . qpath + else + let qlocalpath = qpath + endif + let indentstr = 0 + let packageline = -1 " Position of package name statement + let appendline = -1 " Position to introduce new import + let deleteline = -1 " Position of line with existing import + let linesdelta = 0 " Lines added/removed + + " Find proper place to add/remove import. + let line = 0 + while line <= line('$') + let linestr = getline(line) + + if linestr =~# '^package\s' + let packageline = line + let appendline = line + + elseif linestr =~# '^import\s\+(' + let appendstr = qlocalpath + let indentstr = 1 + let appendline = line + let firstblank = -1 + let lastprefix = "" + while line <= line("$") + let line = line + 1 + let linestr = getline(line) + let m = matchlist(getline(line), '^\()\|\(\s\+\)\(\S*\s*\)"\(.\+\)"\)') + if empty(m) + if siteprefix == "" + " must be in the first group + break + endif + " record this position, but keep looking + if firstblank < 0 + let firstblank = line + endif + continue + endif + if m[1] == ')' + " if there's no match, add it to the first group + if appendline < 0 && firstblank >= 0 + let appendline = firstblank + endif + break + endif + let lastprefix = matchstr(m[4], "^[^/]*/") + if a:localname != '' && m[3] != '' + let qlocalpath = printf('%-' . (len(m[3])-1) . 's %s', a:localname, qpath) + endif + let appendstr = m[2] . qlocalpath + let indentstr = 0 + if m[4] == path + let appendline = -1 + let deleteline = line + break + elseif m[4] < path + " don't set candidate position if we have a site prefix, + " we've passed a blank line, and this doesn't share the same + " site prefix. + if siteprefix == "" || firstblank < 0 || match(m[4], "^" . siteprefix) >= 0 + let appendline = line + endif + elseif siteprefix != "" && match(m[4], "^" . siteprefix) >= 0 + " first entry of site group + let appendline = line - 1 + break + endif + endwhile + break + + elseif linestr =~# '^import ' + if appendline == packageline + let appendstr = 'import ' . qlocalpath + let appendline = line - 1 + endif + let m = matchlist(linestr, '^import\(\s\+\)\(\S*\s*\)"\(.\+\)"') + if !empty(m) + if m[3] == path + let appendline = -1 + let deleteline = line + break + endif + if m[3] < path + let appendline = line + endif + if a:localname != '' && m[2] != '' + let qlocalpath = printf("%s %" . len(m[2])-1 . "s", a:localname, qpath) + endif + let appendstr = 'import' . m[1] . qlocalpath + endif + + elseif linestr =~# '^\(var\|const\|type\|func\)\>' + break + + endif + let line = line + 1 + endwhile + + " Append or remove the package import, as requested. + if a:enabled + if deleteline != -1 + call s:Error(qpath . ' already being imported') + elseif appendline == -1 + call s:Error('No package line found') + else + if appendline == packageline + call append(appendline + 0, '') + call append(appendline + 1, 'import (') + call append(appendline + 2, ')') + let appendline += 2 + let linesdelta += 3 + let appendstr = qlocalpath + let indentstr = 1 + endif + call append(appendline, appendstr) + execute appendline + 1 + if indentstr + execute 'normal >>' + endif + let linesdelta += 1 + endif + else + if deleteline == -1 + call s:Error(qpath . ' not being imported') + else + execute deleteline . 'd' + let linesdelta -= 1 + + if getline(deleteline-1) =~# '^import\s\+(' && getline(deleteline) =~# '^)' + " Delete empty import block + let deleteline -= 1 + execute deleteline . "d" + execute deleteline . "d" + let linesdelta -= 2 + endif + + if getline(deleteline) == '' && getline(deleteline - 1) == '' + " Delete spacing for removed line too. + execute deleteline . "d" + let linesdelta -= 1 + endif + endif + endif + + " Adjust view for any changes. + let view.lnum += linesdelta + let view.topline += linesdelta + if view.topline < 0 + let view.topline = 0 + endif + + " Put buffer back where it was. + call winrestview(view) + +endfunction + +function! s:Error(s) + echohl Error | echo a:s | echohl None +endfunction + +" vim:ts=4:sw=4:et ADDED vim/indent/coffee.vim Index: vim/indent/coffee.vim ================================================================== --- vim/indent/coffee.vim +++ vim/indent/coffee.vim @@ -0,0 +1,328 @@ +" Language: CoffeeScript +" Maintainer: Mick Koch +" URL: http://github.com/kchmck/vim-coffee-script +" License: WTFPL + +if exists("b:did_indent") + finish +endif + +let b:did_indent = 1 + +setlocal autoindent +setlocal indentexpr=GetCoffeeIndent(v:lnum) +" Make sure GetCoffeeIndent is run when these are typed so they can be +" indented or outdented. +setlocal indentkeys+=0],0),0.,=else,=when,=catch,=finally + +" Only define the function once. +if exists("*GetCoffeeIndent") + finish +endif + +" Keywords to indent after +let s:INDENT_AFTER_KEYWORD = '^\%(if\|unless\|else\|for\|while\|until\|' +\ . 'loop\|switch\|when\|try\|catch\|finally\|' +\ . 'class\)\>' + +" Operators to indent after +let s:INDENT_AFTER_OPERATOR = '\%([([{:=]\|[-=]>\)$' + +" Keywords and operators that continue a line +let s:CONTINUATION = '\<\%(is\|isnt\|and\|or\)\>$' +\ . '\|' +\ . '\%(-\@\|\*\|/\@' + +" A compound assignment like `... = if ...` +let s:COMPOUND_ASSIGNMENT = '[:=]\s*\%(if\|unless\|for\|while\|until\|' +\ . 'switch\|try\|class\)\>' + +" A postfix condition like `return ... if ...`. +let s:POSTFIX_CONDITION = '\S\s\+\zs\<\%(if\|unless\)\>' + +" A single-line else statement like `else ...` but not `else if ... +let s:SINGLE_LINE_ELSE = '^else\s\+\%(\<\%(if\|unless\)\>\)\@!' + +" Max lines to look back for a match +let s:MAX_LOOKBACK = 50 + +" Syntax names for strings +let s:SYNTAX_STRING = 'coffee\%(String\|AssignString\|Embed\|Regex\|Heregex\|' +\ . 'Heredoc\)' + +" Syntax names for comments +let s:SYNTAX_COMMENT = 'coffee\%(Comment\|BlockComment\|HeregexComment\)' + +" Syntax names for strings and comments +let s:SYNTAX_STRING_COMMENT = s:SYNTAX_STRING . '\|' . s:SYNTAX_COMMENT + +" Get the linked syntax name of a character. +function! s:SyntaxName(linenum, col) + return synIDattr(synID(a:linenum, a:col, 1), 'name') +endfunction + +" Check if a character is in a comment. +function! s:IsComment(linenum, col) + return s:SyntaxName(a:linenum, a:col) =~ s:SYNTAX_COMMENT +endfunction + +" Check if a character is in a string. +function! s:IsString(linenum, col) + return s:SyntaxName(a:linenum, a:col) =~ s:SYNTAX_STRING +endfunction + +" Check if a character is in a comment or string. +function! s:IsCommentOrString(linenum, col) + return s:SyntaxName(a:linenum, a:col) =~ s:SYNTAX_STRING_COMMENT +endfunction + +" Check if a whole line is a comment. +function! s:IsCommentLine(linenum) + " Check the first non-whitespace character. + return s:IsComment(a:linenum, indent(a:linenum) + 1) +endfunction + +" Repeatedly search a line for a regex until one is found outside a string or +" comment. +function! s:SmartSearch(linenum, regex) + " Start at the first column. + let col = 0 + + " Search until there are no more matches, unless a good match is found. + while 1 + call cursor(a:linenum, col + 1) + let [_, col] = searchpos(a:regex, 'cn', a:linenum) + + " No more matches. + if !col + break + endif + + if !s:IsCommentOrString(a:linenum, col) + return 1 + endif + endwhile + + " No good match found. + return 0 +endfunction + +" Skip a match if it's in a comment or string, is a single-line statement that +" isn't adjacent, or is a postfix condition. +function! s:ShouldSkip(startlinenum, linenum, col) + if s:IsCommentOrString(a:linenum, a:col) + return 1 + endif + + " Check for a single-line statement that isn't adjacent. + if s:SmartSearch(a:linenum, '\') && a:startlinenum - a:linenum > 1 + return 1 + endif + + if s:SmartSearch(a:linenum, s:POSTFIX_CONDITION) && + \ !s:SmartSearch(a:linenum, s:COMPOUND_ASSIGNMENT) + return 1 + endif + + return 0 +endfunction + +" Find the farthest line to look back to, capped to line 1 (zero and negative +" numbers cause bad things). +function! s:MaxLookback(startlinenum) + return max([1, a:startlinenum - s:MAX_LOOKBACK]) +endfunction + +" Get the skip expression for searchpair(). +function! s:SkipExpr(startlinenum) + return "s:ShouldSkip(" . a:startlinenum . ", line('.'), col('.'))" +endfunction + +" Search for pairs of text. +function! s:SearchPair(start, end) + " The cursor must be in the first column for regexes to match. + call cursor(0, 1) + + let startlinenum = line('.') + + " Don't need the W flag since MaxLookback caps the search to line 1. + return searchpair(a:start, '', a:end, 'bcn', + \ s:SkipExpr(startlinenum), + \ s:MaxLookback(startlinenum)) +endfunction + +" Try to find a previous matching line. +function! s:GetMatch(curline) + let firstchar = a:curline[0] + + if firstchar == '}' + return s:SearchPair('{', '}') + elseif firstchar == ')' + return s:SearchPair('(', ')') + elseif firstchar == ']' + return s:SearchPair('\[', '\]') + elseif a:curline =~ '^else\>' + return s:SearchPair('\<\%(if\|unless\|when\)\>', '\') + elseif a:curline =~ '^catch\>' + return s:SearchPair('\', '\') + elseif a:curline =~ '^finally\>' + return s:SearchPair('\', '\') + endif + + return 0 +endfunction + +" Get the nearest previous line that isn't a comment. +function! s:GetPrevNormalLine(startlinenum) + let curlinenum = a:startlinenum + + while curlinenum > 0 + let curlinenum = prevnonblank(curlinenum - 1) + + if !s:IsCommentLine(curlinenum) + return curlinenum + endif + endwhile + + return 0 +endfunction + +" Try to find a comment in a line. +function! s:FindComment(linenum) + let col = 0 + + while 1 + call cursor(a:linenum, col + 1) + let [_, col] = searchpos('#', 'cn', a:linenum) + + if !col + break + endif + + if s:IsComment(a:linenum, col) + return col + endif + endwhile + + return 0 +endfunction + +" Get a line without comments or surrounding whitespace. +function! s:GetTrimmedLine(linenum) + let comment = s:FindComment(a:linenum) + let line = getline(a:linenum) + + if comment + " Subtract 1 to get to the column before the comment and another 1 for + " zero-based indexing. + let line = line[:comment - 2] + endif + + return substitute(substitute(line, '^\s\+', '', ''), + \ '\s\+$', '', '') +endfunction + +function! s:GetCoffeeIndent(curlinenum) + let prevlinenum = s:GetPrevNormalLine(a:curlinenum) + + " Don't do anything if there's no previous line. + if !prevlinenum + return -1 + endif + + let curline = s:GetTrimmedLine(a:curlinenum) + + " Try to find a previous matching statement. This handles outdenting. + let matchlinenum = s:GetMatch(curline) + + if matchlinenum + return indent(matchlinenum) + endif + + " Try to find a matching `when`. + if curline =~ '^when\>' && !s:SmartSearch(prevlinenum, '\') + let linenum = a:curlinenum + + while linenum > 0 + let linenum = s:GetPrevNormalLine(linenum) + + if getline(linenum) =~ '^\s*when\>' + return indent(linenum) + endif + endwhile + + return -1 + endif + + let prevline = s:GetTrimmedLine(prevlinenum) + let previndent = indent(prevlinenum) + + " Always indent after these operators. + if prevline =~ s:INDENT_AFTER_OPERATOR + return previndent + &shiftwidth + endif + + " Indent after a continuation if it's the first. + if prevline =~ s:CONTINUATION + let prevprevlinenum = s:GetPrevNormalLine(prevlinenum) + + " If the continuation is the first in the file, don't run the other checks. + if !prevprevlinenum + return previndent + &shiftwidth + endif + + let prevprevline = s:GetTrimmedLine(prevprevlinenum) + + if prevprevline !~ s:CONTINUATION && prevprevline !~ s:CONTINUATION_BLOCK + return previndent + &shiftwidth + endif + + return -1 + endif + + " Indent after these keywords and compound assignments if they aren't a + " single-line statement. + if prevline =~ s:INDENT_AFTER_KEYWORD || prevline =~ s:COMPOUND_ASSIGNMENT + if !s:SmartSearch(prevlinenum, '\') && prevline !~ s:SINGLE_LINE_ELSE + return previndent + &shiftwidth + endif + + return -1 + endif + + " Indent a dot access if it's the first. + if curline =~ s:DOT_ACCESS && prevline !~ s:DOT_ACCESS + return previndent + &shiftwidth + endif + + " Outdent after these keywords if they don't have a postfix condition or are + " a single-line statement. + if prevline =~ s:OUTDENT_AFTER + if !s:SmartSearch(prevlinenum, s:POSTFIX_CONDITION) || + \ s:SmartSearch(prevlinenum, '\') + return previndent - &shiftwidth + endif + endif + + " No indenting or outdenting is needed. + return -1 +endfunction + +" Wrap s:GetCoffeeIndent to keep the cursor position. +function! GetCoffeeIndent(curlinenum) + let oldcursor = getpos('.') + let indent = s:GetCoffeeIndent(a:curlinenum) + call setpos('.', oldcursor) + + return indent +endfunction ADDED vim/indent/go.vim Index: vim/indent/go.vim ================================================================== --- vim/indent/go.vim +++ vim/indent/go.vim @@ -0,0 +1,65 @@ +" Copyright 2011 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. +" +" indent/go.vim: Vim indent file for Go. +" +" TODO: +" - function invocations split across lines +" - general line splits (line ends in an operator) + +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 + +" C indentation is too far off useful, mainly due to Go's := operator. +" Let's just define our own. +setlocal nolisp +setlocal autoindent +setlocal indentexpr=GoIndent(v:lnum) +setlocal indentkeys+=<:>,0=},0=) + +if exists("*GoIndent") + finish +endif + +function! GoIndent(lnum) + let prevlnum = prevnonblank(a:lnum-1) + if prevlnum == 0 + " top of file + return 0 + endif + + " grab the previous and current line, stripping comments. + let prevl = substitute(getline(prevlnum), '//.*$', '', '') + let thisl = substitute(getline(a:lnum), '//.*$', '', '') + let previ = indent(prevlnum) + + let ind = previ + + if prevl =~ '[({]\s*$' + " previous line opened a block + let ind += &sw + endif + if prevl =~# '^\s*\(case .*\|default\):$' + " previous line is part of a switch statement + let ind += &sw + endif + " TODO: handle if the previous line is a label. + + if thisl =~ '^\s*[)}]' + " this line closed a block + let ind -= &sw + endif + + " Colons are tricky. + " We want to outdent if it's part of a switch ("case foo:" or "default:"). + " We ignore trying to deal with jump labels because (a) they're rare, and + " (b) they're hard to disambiguate from a composite literal key. + if thisl =~# '^\s*\(case .*\|default\):$' + let ind -= &sw + endif + + return ind +endfunction ADDED vim/indent/objc.vim Index: vim/indent/objc.vim ================================================================== --- vim/indent/objc.vim +++ vim/indent/objc.vim @@ -0,0 +1,79 @@ +" Vim indent file +" Language: Objective-C +" Maintainer: Kazunobu Kuriyama +" Last Change: 2004 May 16 +" + + +" Only load this indent file when no other was loaded. +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 +setlocal cindent + +" Set the function to do the work. +setlocal indentexpr=GetObjCIndent() + +" To make a colon (:) suggest an indentation other than a goto/swich label, +setlocal indentkeys-=: +setlocal indentkeys+=<:> + +" Only define the function once. +if exists("*GetObjCIndent") + finish +endif + +function s:GetWidth(line, regexp) + let end = matchend(a:line, a:regexp) + let width = 0 + let i = 0 + while i < end + if a:line[i] != "\t" + let width = width + 1 + else + let width = width + &ts - (width % &ts) + endif + let i = i + 1 + endwhile + return width +endfunction + +function s:LeadingWhiteSpace(line) + let end = strlen(a:line) + let width = 0 + let i = 0 + while i < end + let char = a:line[i] + if char != " " && char != "\t" + break + endif + if char != "\t" + let width = width + 1 + else + let width = width + &ts - (width % &ts) + endif + let i = i + 1 + endwhile + return width +endfunction + + +function GetObjCIndent() + let theIndent = cindent(v:lnum) + + let prev_line = getline(v:lnum - 1) + let cur_line = getline(v:lnum) + + if prev_line !~# ":" || cur_line !~# ":" + return theIndent + endif + + if prev_line !~# ";" && prev_line !~# "{" + let prev_colon_pos = s:GetWidth(prev_line, ":") + let delta = s:GetWidth(cur_line, ":") - s:LeadingWhiteSpace(cur_line) + let theIndent = prev_colon_pos - delta + endif + + return theIndent +endfunction ADDED vim/indent/objcpp.vim Index: vim/indent/objcpp.vim ================================================================== --- vim/indent/objcpp.vim +++ vim/indent/objcpp.vim @@ -0,0 +1,79 @@ +" Vim indent file +" Language: Objective-C +" Maintainer: Kazunobu Kuriyama +" Last Change: 2004 May 16 +" + + +" Only load this indent file when no other was loaded. +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 +setlocal cindent + +" Set the function to do the work. +setlocal indentexpr=GetObjCIndent() + +" To make a colon (:) suggest an indentation other than a goto/swich label, +setlocal indentkeys-=: +setlocal indentkeys+=<:> + +" Only define the function once. +if exists("*GetObjCIndent") + finish +endif + +function s:GetWidth(line, regexp) + let end = matchend(a:line, a:regexp) + let width = 0 + let i = 0 + while i < end + if a:line[i] != "\t" + let width = width + 1 + else + let width = width + &ts - (width % &ts) + endif + let i = i + 1 + endwhile + return width +endfunction + +function s:LeadingWhiteSpace(line) + let end = strlen(a:line) + let width = 0 + let i = 0 + while i < end + let char = a:line[i] + if char != " " && char != "\t" + break + endif + if char != "\t" + let width = width + 1 + else + let width = width + &ts - (width % &ts) + endif + let i = i + 1 + endwhile + return width +endfunction + + +function GetObjCIndent() + let theIndent = cindent(v:lnum) + + let prev_line = getline(v:lnum - 1) + let cur_line = getline(v:lnum) + + if prev_line !~# ":" || cur_line !~# ":" + return theIndent + endif + + if prev_line !~# ";" && prev_line !~# "{" + let prev_colon_pos = s:GetWidth(prev_line, ":") + let delta = s:GetWidth(cur_line, ":") - s:LeadingWhiteSpace(cur_line) + let theIndent = prev_colon_pos - delta + endif + + return theIndent +endfunction ADDED vim/plugin/godoc.vim Index: vim/plugin/godoc.vim ================================================================== --- vim/plugin/godoc.vim +++ vim/plugin/godoc.vim @@ -0,0 +1,85 @@ +" Copyright 2011 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. +" +" godoc.vim: Vim command to see godoc. + +if exists("g:loaded_godoc") + finish +endif +let g:loaded_godoc = 1 + +let s:buf_nr = -1 +let s:last_word = '' + +function! s:GodocView() + if !bufexists(s:buf_nr) + leftabove new + file `="[Godoc]"` + let s:buf_nr = bufnr('%') + elseif bufwinnr(s:buf_nr) == -1 + leftabove split + execute s:buf_nr . 'buffer' + delete _ + elseif bufwinnr(s:buf_nr) != bufwinnr('%') + execute bufwinnr(s:buf_nr) . 'wincmd w' + endif + + setlocal filetype=godoc + setlocal bufhidden=delete + setlocal buftype=nofile + setlocal noswapfile + setlocal nobuflisted + setlocal modifiable + setlocal nocursorline + setlocal nocursorcolumn + setlocal iskeyword+=: + setlocal iskeyword-=- + + nnoremap K :Godoc + + au BufHidden call let buf_nr = -1 +endfunction + +function! s:GodocWord(word) + let word = a:word + silent! let content = system('godoc ' . word) + if v:shell_error || !len(content) + if len(s:last_word) + silent! let content = system('godoc ' . s:last_word.'/'.word) + if v:shell_error || !len(content) + echo 'No documentation found for "' . word . '".' + return + endif + let word = s:last_word.'/'.word + else + echo 'No documentation found for "' . word . '".' + return + endif + endif + let s:last_word = word + silent! call s:GodocView() + setlocal modifiable + silent! %d _ + silent! put! =content + silent! normal gg + setlocal nomodifiable + setfiletype godoc +endfunction + +function! s:Godoc(...) + let word = join(a:000, ' ') + if !len(word) + let word = expand('') + endif + let word = substitute(word, '[^a-zA-Z0-9\\/._~-]', '', 'g') + if !len(word) + return + endif + call s:GodocWord(word) +endfunction + +command! -nargs=* -range -complete=customlist,go#complete#Package Godoc :call s:Godoc() +nnoremap (godoc-keyword) :call Godoc('') + +" vim:ts=4:sw=4:et ADDED vim/syntax/armasm.vim Index: vim/syntax/armasm.vim ================================================================== --- vim/syntax/armasm.vim +++ vim/syntax/armasm.vim @@ -0,0 +1,905 @@ +" Vim syntax file +" Language: ARM Assembler +" Maintainer: Gerald S. Williams +" Last Change: 2005 Mar 16 +" URL: http://www.vim.org +" Revision: 1.2 +" +" based on PIC16F84 Assembler syntax file (pic.vim) by Aleksandar Veselinovic + +" This includes V2, V3, V4, V5, T, E, M, XS, and VFP extensions + +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +syn case match +syn keyword armasmTodo NOTE TODO XXX contained + + +syn case ignore + +syn match armasmIdentifier "[a-z_$][a-z0-9_$]*" +syn match armasmLabel "^[A-Z_$][A-Z0-9_$]*" +syn region armasmLabel start="||" end="||" oneline +syn region armasmLabel start="|" end="|" oneline + +syn region armasmASCII start="'" end="'" skip="\\'" oneline +syn match armasmDecimal "\d\+" +syn match armasmHexadecimal "0[xX]\x\+" +syn match armasmHexadecimal "&\x\+" +syn match armasmBinary "2_[0-1]\+" +syn match armasmBase3 "3_[0-2]\+" +syn match armasmBase4 "4_[0-3]\+" +syn match armasmBase5 "5_[0-4]\+" +syn match armasmBase6 "6_[0-5]\+" +syn match armasmBase7 "7_[0-6]\+" +syn match armasmOctal "8_[0-7]\o*" +syn match armasmBase9 "9_[0-8]\+" +syn match armasmFloat "-\=[0-9]\+[eE]-\=[0-9]\+" +syn match armasmFloat "-\=[0-9]*\.[0-9]\+\([eE]-\=[0-9]\+\)\=" +syn match armasmBoolean "{TRUE}" +syn match armasmBoolean "{FALSE}" + +syn match armasmBuiltIn "{PC}" +syn match armasmBuiltIn "{VAR}" +syn match armasmBuiltIn "{TRUE}" +syn match armasmBuiltIn "{FALSE}" +syn match armasmBuiltIn "{OPT}" +syn match armasmBuiltIn "{CONFIG}" +syn match armasmBuiltIn "{ENDIAN}" +syn match armasmBuiltIn "{CODESIZE}" +syn match armasmBuiltIn "{CPU}" +syn match armasmBuiltIn "{FPU}" +syn match armasmBuiltIn "{ARCHITECTURE}" +syn match armasmBuiltIn "{PCSTOREOFFSET}" +syn match armasmBuiltIn "{ARMASM_VERSION}" +syn match armasmBuiltIn "{INTER}" +syn match armasmBuiltIn "{ROPI}" +syn match armasmBuiltIn "{RWPI}" +syn match armasmBuiltIn "{SWST}" +syn match armasmBuiltIn "{NOSWST}" + +" TODO: consider handling for string expansions ($x) + +syn match armasmComment ";.*" contains=armasmTodo + +syn region armasmString start=+"+ end=+"+ oneline + +syn match armasmOperator ":BASE:" +syn match armasmOperator ":INDEX:" +syn match armasmOperator ":LEN:" +syn match armasmOperator ":CHR:" +syn match armasmOperator ":STR:" +syn match armasmOperator ":NOT:" +syn match armasmOperator ":LNOT:" +syn match armasmOperator ":DEF:" +syn match armasmOperator ":SB_OFFSET_19_12:" +syn match armasmOperator ":SB_OFFSET_11_0:" +syn match armasmOperator ":MOD:" +syn match armasmOperator ":LEFT:" +syn match armasmOperator ":RIGHT:" +syn match armasmOperator ":CC:" +syn match armasmOperator ":ROL:" +syn match armasmOperator ":ROR:" +syn match armasmOperator ":SHL:" +syn match armasmOperator ":SHR:" +syn match armasmOperator ":AND:" +syn match armasmOperator ":OR:" +syn match armasmOperator ":EOR:" +syn match armasmOperator ":LAND:" +syn match armasmOperator ":LOR:" +syn match armasmOperator ":LEOR:" + + +syn keyword armasmRegister r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 +syn keyword armasmRegister r14 r15 +syn keyword armasmRegister pc lr sp ip sl sb +syn keyword armasmRegister a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 +syn keyword armasmRegister cpsr cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx +syn keyword armasmRegister cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf +syn keyword armasmRegister spsr spsr_c spsr_x spsr_s spsr_f spsr_cx +syn keyword armasmRegister spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf +syn keyword armasmRegister p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 +syn keyword armasmRegister p14 p15 +syn keyword armasmRegister c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 +syn keyword armasmRegister c14 c15 +syn keyword armasmRegister f0 f1 f2 f3 f4 f5 f6 f7 +syn keyword armasmRegister s0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 +syn keyword armasmRegister s14 s15 s16 s17 s18 s19 s20 s21 s22 s23 s24 s25 +syn keyword armasmRegister s26 s27 s28 s29 s30 s31 +syn keyword armasmRegister d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 +syn keyword armasmRegister d14 d15 + + +syn keyword armasmOpcode MOV MOVEQ MOVNE MOVCS MOVHS MOVCC MOVLO +syn keyword armasmOpcode MOVMI MOVPL MOVVS MOVVC MOVHI MOVLS +syn keyword armasmOpcode MOVGE MOVLT MOVGT MOVLE MOVAL +syn keyword armasmOpcode MOVS MOVEQS MOVNES MOVCSS MOVHSS MOVCCS MOVLOS +syn keyword armasmOpcode MOVMIS MOVPLS MOVVSS MOVVCS MOVHIS MOVLSS +syn keyword armasmOpcode MOVGES MOVLTS MOVGTS MOVLES MOVALS + +syn keyword armasmOpcode MVN MVNEQ MVNNE MVNCS MVNHS MVNCC MVNLO +syn keyword armasmOpcode MVNMI MVNPL MVNVS MVNVC MVNHI MVNLS +syn keyword armasmOpcode MVNGE MVNLT MVNGT MVNLE MVNAL +syn keyword armasmOpcode MVNS MVNEQS MVNNES MVNCSS MVNHSS MVNCCS MVNLOS +syn keyword armasmOpcode MVNMIS MVNPLS MVNVSS MVNVCS MVNHIS MVNLSS +syn keyword armasmOpcode MVNGES MVNLTS MVNGTS MVNLES MVNALS + +syn keyword armasmOpcode MRS MRSEQ MRSNE MRSCS MRSHS MRSCC MRSLO +syn keyword armasmOpcode MRSMI MRSPL MRSVS MRSVC MRSHI MRSLS +syn keyword armasmOpcode MRSGE MRSLT MRSGT MRSLE MRSAL + +syn keyword armasmOpcode MSR MSREQ MSRNE MSRCS MSRHS MSRCC MSRLO +syn keyword armasmOpcode MSRMI MSRPL MSRVS MSRVC MSRHI MSRLS +syn keyword armasmOpcode MSRGE MSRLT MSRGT MSRLE MSRAL + +syn keyword armasmOpcode MRA MRAEQ MRANE MRACS MRAHS MRACC MRALO +syn keyword armasmOpcode MRAMI MRAPL MRAVS MRAVC MRAHI MRALS +syn keyword armasmOpcode MRAGE MRALT MRAGT MRALE MRAAL + +syn keyword armasmOpcode MAR MAREQ MARNE MARCS MARHS MARCC MARLO +syn keyword armasmOpcode MARMI MARPL MARVS MARVC MARHI MARLS +syn keyword armasmOpcode MARGE MARLT MARGT MARLE MARAL + +syn keyword armasmOpcode ADD ADDEQ ADDNE ADDCS ADDHS ADDCC ADDLO +syn keyword armasmOpcode ADDMI ADDPL ADDVS ADDVC ADDHI ADDLS +syn keyword armasmOpcode ADDGE ADDLT ADDGT ADDLE ADDAL +syn keyword armasmOpcode ADDS ADDEQS ADDNES ADDCSS ADDHSS ADDCCS ADDLOS +syn keyword armasmOpcode ADDMIS ADDPLS ADDVSS ADDVCS ADDHIS ADDLSS +syn keyword armasmOpcode ADDGES ADDLTS ADDGTS ADDLES ADDALS + +syn keyword armasmOpcode ADC ADCEQ ADCNE ADCCS ADCHS ADCCC ADCLO +syn keyword armasmOpcode ADCMI ADCPL ADCVS ADCVC ADCHI ADCLS +syn keyword armasmOpcode ADCGE ADCLT ADCGT ADCLE ADCAL +syn keyword armasmOpcode ADCS ADCEQS ADCNES ADCCSS ADCHSS ADCCCS ADCLOS +syn keyword armasmOpcode ADCMIS ADCPLS ADCVSS ADCVCS ADCHIS ADCLSS +syn keyword armasmOpcode ADCGES ADCLTS ADCGTS ADCLES ADCALS + +syn keyword armasmOpcode QADD QADDEQ QADDNE QADDCS QADDHS QADDCC QADDLO +syn keyword armasmOpcode QADDMI QADDPL QADDVS QADDVC QADDHI QADDLS +syn keyword armasmOpcode QADDGE QADDLT QADDGT QADDLE QADDAL + +syn keyword armasmOpcode QDADD QDADDEQ QDADDNE QDADDCS QDADDHS QDADDCC +syn keyword armasmOpcode QDADDLO QDADDMI QDADDPL QDADDVS QDADDVC QDADDHI +syn keyword armasmOpcode QDADDLS QDADDGE QDADDLT QDADDGT QDADDLE QDADDAL + +syn keyword armasmOpcode SUB SUBEQ SUBNE SUBCS SUBHS SUBCC SUBLO +syn keyword armasmOpcode SUBMI SUBPL SUBVS SUBVC SUBHI SUBLS +syn keyword armasmOpcode SUBGE SUBLT SUBGT SUBLE SUBAL +syn keyword armasmOpcode SUBS SUBEQS SUBNES SUBCSS SUBHSS SUBCCS SUBLOS +syn keyword armasmOpcode SUBMIS SUBPLS SUBVSS SUBVCS SUBHIS SUBLSS +syn keyword armasmOpcode SUBGES SUBLTS SUBGTS SUBLES SUBALS + +syn keyword armasmOpcode SBC SBCEQ SBCNE SBCCS SBCHS SBCCC SBCLO +syn keyword armasmOpcode SBCMI SBCPL SBCVS SBCVC SBCHI SBCLS +syn keyword armasmOpcode SBCGE SBCLT SBCGT SBCLE SBCAL +syn keyword armasmOpcode SBCS SBCEQS SBCNES SBCCSS SBCHSS SBCCCS SBCLOS +syn keyword armasmOpcode SBCMIS SBCPLS SBCVSS SBCVCS SBCHIS SBCLSS +syn keyword armasmOpcode SBCGES SBCLTS SBCGTS SBCLES SBCALS + +syn keyword armasmOpcode RSB RSBEQ RSBNE RSBCS RSBHS RSBCC RSBLO +syn keyword armasmOpcode RSBMI RSBPL RSBVS RSBVC RSBHI RSBLS +syn keyword armasmOpcode RSBGE RSBLT RSBGT RSBLE RSBAL +syn keyword armasmOpcode RSBS RSBEQS RSBNES RSBCSS RSBHSS RSBCCS RSBLOS +syn keyword armasmOpcode RSBMIS RSBPLS RSBVSS RSBVCS RSBHIS RSBLSS +syn keyword armasmOpcode RSBGES RSBLTS RSBGTS RSBLES RSBALS + +syn keyword armasmOpcode RSC RSCEQ RSCNE RSCCS RSCHS RSCCC RSCLO +syn keyword armasmOpcode RSCMI RSCPL RSCVS RSCVC RSCHI RSCLS +syn keyword armasmOpcode RSCGE RSCLT RSCGT RSCLE RSCAL +syn keyword armasmOpcode RSCS RSCEQS RSCNES RSCCSS RSCHSS RSCCCS RSCLOS +syn keyword armasmOpcode RSCMIS RSCPLS RSCVSS RSCVCS RSCHIS RSCLSS +syn keyword armasmOpcode RSCGES RSCLTS RSCGTS RSCLES RSCALS + +syn keyword armasmOpcode QSUB QSUBEQ QSUBNE QSUBCS QSUBHS QSUBCC QSUBLO +syn keyword armasmOpcode QSUBMI QSUBPL QSUBVS QSUBVC QSUBHI QSUBLS +syn keyword armasmOpcode QSUBGE QSUBLT QSUBGT QSUBLE QSUBAL + +syn keyword armasmOpcode QDSUB QDSUBEQ QDSUBNE QDSUBCS QDSUBHS QDSUBCC +syn keyword armasmOpcode QDSUBLO QDSUBMI QDSUBPL QDSUBVS QDSUBVC QDSUBHI +syn keyword armasmOpcode QDSUBLS QDSUBGE QDSUBLT QDSUBGT QDSUBLE QDSUBAL + +syn keyword armasmOpcode MUL MULEQ MULNE MULCS MULHS MULCC MULLO +syn keyword armasmOpcode MULMI MULPL MULVS MULVC MULHI MULLS +syn keyword armasmOpcode MULGE MULLT MULGT MULLE MULAL +syn keyword armasmOpcode MULS MULEQS MULNES MULCSS MULHSS MULCCS MULLOS +syn keyword armasmOpcode MULMIS MULPLS MULVSS MULVCS MULHIS MULLSS +syn keyword armasmOpcode MULGES MULLTS MULGTS MULLES MULALS + +syn keyword armasmOpcode MLA MLAEQ MLANE MLACS MLAHS MLACC MLALO +syn keyword armasmOpcode MLAMI MLAPL MLAVS MLAVC MLAHI MLALS +syn keyword armasmOpcode MLAGE MLALT MLAGT MLALE MLAAL +syn keyword armasmOpcode MLAS MLAEQS MLANES MLACSS MLAHSS MLACCS MLALOS +syn keyword armasmOpcode MLAMIS MLAPLS MLAVSS MLAVCS MLAHIS MLALSS +syn keyword armasmOpcode MLAGES MLALTS MLAGTS MLALES MLAALS + +syn keyword armasmOpcode UMULL UMULLEQ UMULLNE UMULLCS UMULLHS UMULLCC +syn keyword armasmOpcode UMULLLO UMULLMI UMULLPL UMULLVS UMULLVC UMULLHI +syn keyword armasmOpcode UMULLLS UMULLGE UMULLLT UMULLGT UMULLLE UMULLAL +syn keyword armasmOpcode UMULLS UMULLEQS UMULLNES UMULLCSS UMULLHSS +syn keyword armasmOpcode UMULLCCS UMULLLOS UMULLMIS UMULLPLS UMULLVSS +syn keyword armasmOpcode UMULLVCS UMULLHIS UMULLLSS UMULLGES UMULLLTS +syn keyword armasmOpcode UMULLGTS UMULLLES UMULLALS + +syn keyword armasmOpcode UMLAL UMLALEQ UMLALNE UMLALCS UMLALHS UMLALCC +syn keyword armasmOpcode UMLALLO UMLALMI UMLALPL UMLALVS UMLALVC UMLALHI +syn keyword armasmOpcode UMLALLS UMLALGE UMLALLT UMLALGT UMLALLE UMLALAL +syn keyword armasmOpcode UMLALS UMLALEQS UMLALNES UMLALCSS UMLALHSS +syn keyword armasmOpcode UMLALCCS UMLALLOS UMLALMIS UMLALPLS UMLALVSS +syn keyword armasmOpcode UMLALVCS UMLALHIS UMLALLSS UMLALGES UMLALLTS +syn keyword armasmOpcode UMLALGTS UMLALLES UMLALALS + +syn keyword armasmOpcode SMULL SMULLEQ SMULLNE SMULLCS SMULLHS SMULLCC +syn keyword armasmOpcode SMULLLO SMULLMI SMULLPL SMULLVS SMULLVC SMULLHI +syn keyword armasmOpcode SMULLLS SMULLGE SMULLLT SMULLGT SMULLLE SMULLAL +syn keyword armasmOpcode SMULLS SMULLEQS SMULLNES SMULLCSS SMULLHSS +syn keyword armasmOpcode SMULLCCS SMULLLOS SMULLMIS SMULLPLS SMULLVSS +syn keyword armasmOpcode SMULLVCS SMULLHIS SMULLLSS SMULLGES SMULLLTS +syn keyword armasmOpcode SMULLGTS SMULLLES SMULLALS + +syn keyword armasmOpcode SMLAL SMLALEQ SMLALNE SMLALCS SMLALHS SMLALCC +syn keyword armasmOpcode SMLALLO SMLALMI SMLALPL SMLALVS SMLALVC SMLALHI +syn keyword armasmOpcode SMLALLS SMLALGE SMLALLT SMLALGT SMLALLE SMLALAL +syn keyword armasmOpcode SMLALS SMLALEQS SMLALNES SMLALCSS SMLALHSS +syn keyword armasmOpcode SMLALCCS SMLALLOS SMLALMIS SMLALPLS SMLALVSS +syn keyword armasmOpcode SMLALVCS SMLALHIS SMLALLSS SMLALGES SMLALLTS +syn keyword armasmOpcode SMLALGTS SMLALLES SMLALALS + +syn keyword armasmOpcode SMULxy SMULxyEQ SMULxyNE SMULxyCS SMULxyHS +syn keyword armasmOpcode SMULxyCC SMULxyLO SMULxyMI SMULxyPL SMULxyVS +syn keyword armasmOpcode SMULxyVC SMULxyHI SMULxyLS SMULxyGE SMULxyLT +syn keyword armasmOpcode SMULxyGT SMULxyLE SMULxyAL + +syn keyword armasmOpcode SMULWy SMULWyEQ SMULWyNE SMULWyCS SMULWyHS +syn keyword armasmOpcode SMULWyCC SMULWyLO SMULWyMI SMULWyPL SMULWyVS +syn keyword armasmOpcode SMULWyVC SMULWyHI SMULWyLS SMULWyGE SMULWyLT +syn keyword armasmOpcode SMULWyGT SMULWyLE SMULWyAL + +syn keyword armasmOpcode SMLAxy SMLAxyEQ SMLAxyNE SMLAxyCS SMLAxyHS +syn keyword armasmOpcode SMLAxyCC SMLAxyLO SMLAxyMI SMLAxyPL SMLAxyVS +syn keyword armasmOpcode SMLAxyVC SMLAxyHI SMLAxyLS SMLAxyGE SMLAxyLT +syn keyword armasmOpcode SMLAxyGT SMLAxyLE SMLAxyAL + +syn keyword armasmOpcode SMLAWy SMLAWyEQ SMLAWyNE SMLAWyCS SMLAWyHS +syn keyword armasmOpcode SMLAWyCC SMLAWyLO SMLAWyMI SMLAWyPL SMLAWyVS +syn keyword armasmOpcode SMLAWyVC SMLAWyHI SMLAWyLS SMLAWyGE SMLAWyLT +syn keyword armasmOpcode SMLAWyGT SMLAWyLE SMLAWyAL + +syn keyword armasmOpcode SMLALxy SMLALxyEQ SMLALxyNE SMLALxyCS SMLALxyHS +syn keyword armasmOpcode SMLALxyCC SMLALxyLO SMLALxyMI SMLALxyPL +syn keyword armasmOpcode SMLALxyVS SMLALxyVC SMLALxyHI SMLALxyLS +syn keyword armasmOpcode SMLALxyGE SMLALxyLT SMLALxyGT SMLALxyLE +syn keyword armasmOpcode SMLALxyAL + +syn keyword armasmOpcode MIA MIAEQ MIANE MIACS MIAHS MIACC MIALO +syn keyword armasmOpcode MIAMI MIAPL MIAVS MIAVC MIAHI MIALS +syn keyword armasmOpcode MIAGE MIALT MIAGT MIALE MIAAL + +syn keyword armasmOpcode MIAPH MIAPHEQ MIAPHNE MIAPHCS MIAPHHS MIAPHCC +syn keyword armasmOpcode MIAPHLO MIAPHMI MIAPHPL MIAPHVS MIAPHVC MIAPHHI +syn keyword armasmOpcode MIAPHLS MIAPHGE MIAPHLT MIAPHGT MIAPHLE MIAPHAL + +syn keyword armasmOpcode MIAxy MIAxyEQ MIAxyNE MIAxyCS MIAxyHS MIAxyCC +syn keyword armasmOpcode MIAxyLO MIAxyMI MIAxyPL MIAxyVS MIAxyVC MIAxyHI +syn keyword armasmOpcode MIAxyLS MIAxyGE MIAxyLT MIAxyGT MIAxyLE MIAxyAL + +syn keyword armasmOpcode CLZ CLZEQ CLZNE CLZCS CLZHS CLZCC CLZLO +syn keyword armasmOpcode CLZMI CLZPL CLZVS CLZVC CLZHI CLZLS +syn keyword armasmOpcode CLZGE CLZLT CLZGT CLZLE CLZAL + +syn keyword armasmOpcode TST TSTEQ TSTNE TSTCS TSTHS TSTCC TSTLO +syn keyword armasmOpcode TSTMI TSTPL TSTVS TSTVC TSTHI TSTLS +syn keyword armasmOpcode TSTGE TSTLT TSTGT TSTLE TSTAL + +syn keyword armasmOpcode TEQ TEQEQ TEQNE TEQCS TEQHS TEQCC TEQLO +syn keyword armasmOpcode TEQMI TEQPL TEQVS TEQVC TEQHI TEQLS +syn keyword armasmOpcode TEQGE TEQLT TEQGT TEQLE TEQAL + +syn keyword armasmOpcode AND ANDEQ ANDNE ANDCS ANDHS ANDCC ANDLO +syn keyword armasmOpcode ANDMI ANDPL ANDVS ANDVC ANDHI ANDLS +syn keyword armasmOpcode ANDGE ANDLT ANDGT ANDLE ANDAL +syn keyword armasmOpcode ANDS ANDEQS ANDNES ANDCSS ANDHSS ANDCCS ANDLOS +syn keyword armasmOpcode ANDMIS ANDPLS ANDVSS ANDVCS ANDHIS ANDLSS +syn keyword armasmOpcode ANDGES ANDLTS ANDGTS ANDLES ANDALS + +syn keyword armasmOpcode EOR EOREQ EORNE EORCS EORHS EORCC EORLO +syn keyword armasmOpcode EORMI EORPL EORVS EORVC EORHI EORLS +syn keyword armasmOpcode EORGE EORLT EORGT EORLE EORAL +syn keyword armasmOpcode EORS EOREQS EORNES EORCSS EORHSS EORCCS EORLOS +syn keyword armasmOpcode EORMIS EORPLS EORVSS EORVCS EORHIS EORLSS +syn keyword armasmOpcode EORGES EORLTS EORGTS EORLES EORALS + +syn keyword armasmOpcode ORR ORREQ ORRNE ORRCS ORRHS ORRCC ORRLO +syn keyword armasmOpcode ORRMI ORRPL ORRVS ORRVC ORRHI ORRLS +syn keyword armasmOpcode ORRGE ORRLT ORRGT ORRLE ORRAL +syn keyword armasmOpcode ORRS ORREQS ORRNES ORRCSS ORRHSS ORRCCS ORRLOS +syn keyword armasmOpcode ORRMIS ORRPLS ORRVSS ORRVCS ORRHIS ORRLSS +syn keyword armasmOpcode ORRGES ORRLTS ORRGTS ORRLES ORRALS + +syn keyword armasmOpcode BIC BICEQ BICNE BICCS BICHS BICCC BICLO +syn keyword armasmOpcode BICMI BICPL BICVS BICVC BICHI BICLS +syn keyword armasmOpcode BICGE BICLT BICGT BICLE BICAL +syn keyword armasmOpcode BICS BICEQS BICNES BICCSS BICHSS BICCCS BICLOS +syn keyword armasmOpcode BICMIS BICPLS BICVSS BICVCS BICHIS BICLSS +syn keyword armasmOpcode BICGES BICLTS BICGTS BICLES BICALS + +syn keyword armasmOpcode CMP CMPEQ CMPNE CMPCS CMPHS CMPCC CMPLO +syn keyword armasmOpcode CMPMI CMPPL CMPVS CMPVC CMPHI CMPLS +syn keyword armasmOpcode CMPGE CMPLT CMPGT CMPLE CMPAL + +syn keyword armasmOpcode CMN CMNEQ CMNNE CMNCS CMNHS CMNCC CMNLO +syn keyword armasmOpcode CMNMI CMNPL CMNVS CMNVC CMNHI CMNLS +syn keyword armasmOpcode CMNGE CMNLT CMNGT CMNLE CMNAL + +syn keyword armasmOpcode NOP + +syn keyword armasmOpcode B BEQ BNE BCS BHS BCC BLO +syn keyword armasmOpcode BMI BPL BVS BVC BHI BLS +syn keyword armasmOpcode BGE BLT BGT BLE BAL + +syn keyword armasmOpcode BL BLEQ BLNE BLCS BLHS BLCC BLLO +syn keyword armasmOpcode BLMI BLPL BLVS BLVC BLHI BLLS +syn keyword armasmOpcode BLGE BLLT BLGT BLLE BLAL + +syn keyword armasmOpcode BX BXEQ BXNE BXCS BXHS BXCC BXLO +syn keyword armasmOpcode BXMI BXPL BXVS BXVC BXHI BXLS +syn keyword armasmOpcode BXGE BXLT BXGT BXLE BXAL + +syn keyword armasmOpcode BLX BLXEQ BLXNE BLXCS BLXHS BLXCC BLXLO +syn keyword armasmOpcode BLXMI BLXPL BLXVS BLXVC BLXHI BLXLS +syn keyword armasmOpcode BLXGE BLXLT BLXGT BLXLE BLXAL + +syn keyword armasmOpcode LDR LDREQ LDRNE LDRCS LDRHS LDRCC LDRLO +syn keyword armasmOpcode LDRMI LDRPL LDRVS LDRVC LDRHI LDRLS +syn keyword armasmOpcode LDRGE LDRLT LDRGT LDRLE LDRAL +syn keyword armasmOpcode LDRT LDREQT LDRNET LDRCST LDRHST LDRCCT LDRLOT +syn keyword armasmOpcode LDRMIT LDRPLT LDRVST LDRVCT LDRHIT LDRLST +syn keyword armasmOpcode LDRGET LDRLTT LDRGTT LDRLET LDRALT +syn keyword armasmOpcode LDRB LDREQB LDRNEB LDRCSB LDRHSB LDRCCB LDRLOB +syn keyword armasmOpcode LDRMIB LDRPLB LDRVSB LDRVCB LDRHIB LDRLSB +syn keyword armasmOpcode LDRGEB LDRLTB LDRGTB LDRLEB LDRALB +syn keyword armasmOpcode LDRBT LDREQBT LDRNEBT LDRCSBT LDRHSBT LDRCCBT +syn keyword armasmOpcode LDRLOBT LDRMIBT LDRPLBT LDRVSBT LDRVCBT LDRHIBT +syn keyword armasmOpcode LDRLSBT LDRGEBT LDRLTBT LDRGTBT LDRLEBT LDRALBT +syn keyword armasmOpcode LDRSB LDREQSB LDRNESB LDRCSSB LDRHSSB LDRCCSB +syn keyword armasmOpcode LDRLOSB LDRMISB LDRPLSB LDRVSSB LDRVCSB LDRHISB +syn keyword armasmOpcode LDRLSSB LDRGESB LDRLTSB LDRGTSB LDRLESB LDRALSB +syn keyword armasmOpcode LDRH LDREQH LDRNEH LDRCSH LDRHSH LDRCCH LDRLOH +syn keyword armasmOpcode LDRMIH LDRPLH LDRVSH LDRVCH LDRHIH LDRLSH +syn keyword armasmOpcode LDRGEH LDRLTH LDRGTH LDRLEH LDRALH +syn keyword armasmOpcode LDRSH LDREQSH LDRNESH LDRCSSH LDRHSSH LDRCCSH +syn keyword armasmOpcode LDRLOSH LDRMISH LDRPLSH LDRVSSH LDRVCSH LDRHISH +syn keyword armasmOpcode LDRLSSH LDRGESH LDRLTSH LDRGTSH LDRLESH LDRALSH +syn keyword armasmOpcode LDRD LDREQD LDRNED LDRCSD LDRHSD LDRCCD LDRLOD +syn keyword armasmOpcode LDRMID LDRPLD LDRVSD LDRVCD LDRHID LDRLSD +syn keyword armasmOpcode LDRGED LDRLTD LDRGTD LDRLED LDRALD + +syn keyword armasmOpcode LDMIA LDMEQIA LDMNEIA LDMCSIA LDMHSIA LDMCCIA +syn keyword armasmOpcode LDMLOIA LDMMIIA LDMPLIA LDMVSIA LDMVCIA LDMHIIA +syn keyword armasmOpcode LDMLSIA LDMGEIA LDMLTIA LDMGTIA LDMLEIA LDMALIA +syn keyword armasmOpcode LDMIB LDMEQIB LDMNEIB LDMCSIB LDMHSIB LDMCCIB +syn keyword armasmOpcode LDMLOIB LDMMIIB LDMPLIB LDMVSIB LDMVCIB LDMHIIB +syn keyword armasmOpcode LDMLSIB LDMGEIB LDMLTIB LDMGTIB LDMLEIB LDMALIB +syn keyword armasmOpcode LDMDA LDMEQDA LDMNEDA LDMCSDA LDMHSDA LDMCCDA +syn keyword armasmOpcode LDMLODA LDMMIDA LDMPLDA LDMVSDA LDMVCDA LDMHIDA +syn keyword armasmOpcode LDMLSDA LDMGEDA LDMLTDA LDMGTDA LDMLEDA LDMALDA +syn keyword armasmOpcode LDMDB LDMEQDB LDMNEDB LDMCSDB LDMHSDB LDMCCDB +syn keyword armasmOpcode LDMLODB LDMMIDB LDMPLDB LDMVSDB LDMVCDB LDMHIDB +syn keyword armasmOpcode LDMLSDB LDMGEDB LDMLTDB LDMGTDB LDMLEDB LDMALDB +syn keyword armasmOpcode LDMFD LDMEQFD LDMNEFD LDMCSFD LDMHSFD LDMCCFD +syn keyword armasmOpcode LDMLOFD LDMMIFD LDMPLFD LDMVSFD LDMVCFD LDMHIFD +syn keyword armasmOpcode LDMLSFD LDMGEFD LDMLTFD LDMGTFD LDMLEFD LDMALFD +syn keyword armasmOpcode LDMED LDMEQED LDMNEED LDMCSED LDMHSED LDMCCED +syn keyword armasmOpcode LDMLOED LDMMIED LDMPLED LDMVSED LDMVCED LDMHIED +syn keyword armasmOpcode LDMLSED LDMGEED LDMLTED LDMGTED LDMLEED LDMALED +syn keyword armasmOpcode LDMFA LDMEQFA LDMNEFA LDMCSFA LDMHSFA LDMCCFA +syn keyword armasmOpcode LDMLOFA LDMMIFA LDMPLFA LDMVSFA LDMVCFA LDMHIFA +syn keyword armasmOpcode LDMLSFA LDMGEFA LDMLTFA LDMGTFA LDMLEFA LDMALFA +syn keyword armasmOpcode LDMEA LDMEQEA LDMNEEA LDMCSEA LDMHSEA LDMCCEA +syn keyword armasmOpcode LDMLOEA LDMMIEA LDMPLEA LDMVSEA LDMVCEA LDMHIEA +syn keyword armasmOpcode LDMLSEA LDMGEEA LDMLTEA LDMGTEA LDMLEEA LDMALEA + +syn keyword armasmOpcode PLD + +syn keyword armasmOpcode STR STREQ STRNE STRCS STRHS STRCC STRLO +syn keyword armasmOpcode STRMI STRPL STRVS STRVC STRHI STRLS +syn keyword armasmOpcode STRGE STRLT STRGT STRLE STRAL +syn keyword armasmOpcode STRT STREQT STRNET STRCST STRHST STRCCT STRLOT +syn keyword armasmOpcode STRMIT STRPLT STRVST STRVCT STRHIT STRLST +syn keyword armasmOpcode STRGET STRLTT STRGTT STRLET STRALT +syn keyword armasmOpcode STRB STREQB STRNEB STRCSB STRHSB STRCCB STRLOB +syn keyword armasmOpcode STRMIB STRPLB STRVSB STRVCB STRHIB STRLSB +syn keyword armasmOpcode STRGEB STRLTB STRGTB STRLEB STRALB +syn keyword armasmOpcode STRBT STREQBT STRNEBT STRCSBT STRHSBT STRCCBT +syn keyword armasmOpcode STRLOBT STRMIBT STRPLBT STRVSBT STRVCBT STRHIBT +syn keyword armasmOpcode STRLSBT STRGEBT STRLTBT STRGTBT STRLEBT STRALBT +syn keyword armasmOpcode STRH STREQH STRNEH STRCSH STRHSH STRCCH STRLOH +syn keyword armasmOpcode STRMIH STRPLH STRVSH STRVCH STRHIH STRLSH +syn keyword armasmOpcode STRGEH STRLTH STRGTH STRLEH STRALH +syn keyword armasmOpcode STRD STREQD STRNED STRCSD STRHSD STRCCD STRLOD +syn keyword armasmOpcode STRMID STRPLD STRVSD STRVCD STRHID STRLSD +syn keyword armasmOpcode STRGED STRLTD STRGTD STRLED STRALD + +syn keyword armasmOpcode STMIA STMEQIA STMNEIA STMCSIA STMHSIA STMCCIA +syn keyword armasmOpcode STMLOIA STMMIIA STMPLIA STMVSIA STMVCIA STMHIIA +syn keyword armasmOpcode STMLSIA STMGEIA STMLTIA STMGTIA STMLEIA STMALIA +syn keyword armasmOpcode STMIB STMEQIB STMNEIB STMCSIB STMHSIB STMCCIB +syn keyword armasmOpcode STMLOIB STMMIIB STMPLIB STMVSIB STMVCIB STMHIIB +syn keyword armasmOpcode STMLSIB STMGEIB STMLTIB STMGTIB STMLEIB STMALIB +syn keyword armasmOpcode STMDA STMEQDA STMNEDA STMCSDA STMHSDA STMCCDA +syn keyword armasmOpcode STMLODA STMMIDA STMPLDA STMVSDA STMVCDA STMHIDA +syn keyword armasmOpcode STMLSDA STMGEDA STMLTDA STMGTDA STMLEDA STMALDA +syn keyword armasmOpcode STMDB STMEQDB STMNEDB STMCSDB STMHSDB STMCCDB +syn keyword armasmOpcode STMLODB STMMIDB STMPLDB STMVSDB STMVCDB STMHIDB +syn keyword armasmOpcode STMLSDB STMGEDB STMLTDB STMGTDB STMLEDB STMALDB +syn keyword armasmOpcode STMFD STMEQFD STMNEFD STMCSFD STMHSFD STMCCFD +syn keyword armasmOpcode STMLOFD STMMIFD STMPLFD STMVSFD STMVCFD STMHIFD +syn keyword armasmOpcode STMLSFD STMGEFD STMLTFD STMGTFD STMLEFD STMALFD +syn keyword armasmOpcode STMED STMEQED STMNEED STMCSED STMHSED STMCCED +syn keyword armasmOpcode STMLOED STMMIED STMPLED STMVSED STMVCED STMHIED +syn keyword armasmOpcode STMLSED STMGEED STMLTED STMGTED STMLEED STMALED +syn keyword armasmOpcode STMFA STMEQFA STMNEFA STMCSFA STMHSFA STMCCFA +syn keyword armasmOpcode STMLOFA STMMIFA STMPLFA STMVSFA STMVCFA STMHIFA +syn keyword armasmOpcode STMLSFA STMGEFA STMLTFA STMGTFA STMLEFA STMALFA +syn keyword armasmOpcode STMEA STMEQEA STMNEEA STMCSEA STMHSEA STMCCEA +syn keyword armasmOpcode STMLOEA STMMIEA STMPLEA STMVSEA STMVCEA STMHIEA +syn keyword armasmOpcode STMLSEA STMGEEA STMLTEA STMGTEA STMLEEA STMALEA +syn keyword armasmOpcode FSTMFDD FLDMFD + +syn keyword armasmOpcode SWP SWPEQ SWPNE SWPCS SWPHS SWPCC SWPLO +syn keyword armasmOpcode SWPMI SWPPL SWPVS SWPVC SWPHI SWPLS +syn keyword armasmOpcode SWPGE SWPLT SWPGT SWPLE SWPAL + +syn keyword armasmOpcode SWPB SWPEQB SWPNEB SWPCSB SWPHSB SWPCCB SWPLOB +syn keyword armasmOpcode SWPMIB SWPPLB SWPVSB SWPVCB SWPHIB SWPLSB +syn keyword armasmOpcode SWPGEB SWPLTB SWPGTB SWPLEB SWPALB + +syn keyword armasmOpcode CDP CDPEQ CDPNE CDPCS CDPHS CDPCC CDPLO +syn keyword armasmOpcode CDPMI CDPPL CDPVS CDPVC CDPHI CDPLS +syn keyword armasmOpcode CDPGE CDPLT CDPGT CDPLE CDPAL + +syn keyword armasmOpcode CDP2 CDP2EQ CDP2NE CDP2CS CDP2HS CDP2CC CDP2LO +syn keyword armasmOpcode CDP2MI CDP2PL CDP2VS CDP2VC CDP2HI CDP2LS +syn keyword armasmOpcode CDP2GE CDP2LT CDP2GT CDP2LE CDP2AL + +syn keyword armasmOpcode MRC MRCEQ MRCNE MRCCS MRCHS MRCCC MRCLO +syn keyword armasmOpcode MRCMI MRCPL MRCVS MRCVC MRCHI MRCLS +syn keyword armasmOpcode MRCGE MRCLT MRCGT MRCLE MRCAL + +syn keyword armasmOpcode MRC2 MRC2EQ MRC2NE MRC2CS MRC2HS MRC2CC MRC2LO +syn keyword armasmOpcode MRC2MI MRC2PL MRC2VS MRC2VC MRC2HI MRC2LS +syn keyword armasmOpcode MRC2GE MRC2LT MRC2GT MRC2LE MRC2AL + +syn keyword armasmOpcode MRRC MRRCEQ MRRCNE MRRCCS MRRCHS MRRCCC MRRCLO +syn keyword armasmOpcode MRRCMI MRRCPL MRRCVS MRRCVC MRRCHI MRRCLS +syn keyword armasmOpcode MRRCGE MRRCLT MRRCGT MRRCLE MRRCAL + +syn keyword armasmOpcode MCR MCREQ MCRNE MCRCS MCRHS MCRCC MCRLO +syn keyword armasmOpcode MCRMI MCRPL MCRVS MCRVC MCRHI MCRLS +syn keyword armasmOpcode MCRGE MCRLT MCRGT MCRLE MCRAL + +syn keyword armasmOpcode MCR2 MCR2EQ MCR2NE MCR2CS MCR2HS MCR2CC MCR2LO +syn keyword armasmOpcode MCR2MI MCR2PL MCR2VS MCR2VC MCR2HI MCR2LS +syn keyword armasmOpcode MCR2GE MCR2LT MCR2GT MCR2LE MCR2AL + +syn keyword armasmOpcode MCRR MCRREQ MCRRNE MCRRCS MCRRHS MCRRCC MCRRLO +syn keyword armasmOpcode MCRRMI MCRRPL MCRRVS MCRRVC MCRRHI MCRRLS +syn keyword armasmOpcode MCRRGE MCRRLT MCRRGT MCRRLE MCRRAL + +syn keyword armasmOpcode LDC LDCEQ LDCNE LDCCS LDCHS LDCCC LDCLO +syn keyword armasmOpcode LDCMI LDCPL LDCVS LDCVC LDCHI LDCLS +syn keyword armasmOpcode LDCGE LDCLT LDCGT LDCLE LDCAL + +syn keyword armasmOpcode LDC2 LDC2EQ LDC2NE LDC2CS LDC2HS LDC2CC LDC2LO +syn keyword armasmOpcode LDC2MI LDC2PL LDC2VS LDC2VC LDC2HI LDC2LS +syn keyword armasmOpcode LDC2GE LDC2LT LDC2GT LDC2LE LDC2AL + +syn keyword armasmOpcode STC STCEQ STCNE STCCS STCHS STCCC STCLO +syn keyword armasmOpcode STCMI STCPL STCVS STCVC STCHI STCLS +syn keyword armasmOpcode STCGE STCLT STCGT STCLE STCAL + +syn keyword armasmOpcode STC2 STC2EQ STC2NE STC2CS STC2HS STC2CC STC2LO +syn keyword armasmOpcode STC2MI STC2PL STC2VS STC2VC STC2HI STC2LS +syn keyword armasmOpcode STC2GE STC2LT STC2GT STC2LE STC2AL + +syn keyword armasmOpcode SWI SWIEQ SWINE SWICS SWIHS SWICC SWILO +syn keyword armasmOpcode SWIMI SWIPL SWIVS SWIVC SWIHI SWILS +syn keyword armasmOpcode SWIGE SWILT SWIGT SWILE SWIAL + +syn keyword armasmOpcode BKPT + +syn keyword armasmOpcode NEG LSL LSR ASR ROR RRX PUSH POP + +syn keyword armasmOpcode FMULS FMULSEQ FMULSNE FMULSCS FMULSHS FMULSCC +syn keyword armasmOpcode FMULSLO FMULSMI FMULSPL FMULSVS FMULSVC FMULSHI +syn keyword armasmOpcode FMULSLS FMULSGE FMULSLT FMULSGT FMULSLE FMULSAL +syn keyword armasmOpcode FMULD FMULDEQ FMULDNE FMULDCS FMULDHS FMULDCC +syn keyword armasmOpcode FMULDLO FMULDMI FMULDPL FMULDVS FMULDVC FMULDHI +syn keyword armasmOpcode FMULDLS FMULDGE FMULDLT FMULDGT FMULDLE FMULDAL + +syn keyword armasmOpcode FNMULS FNMULSEQ FNMULSNE FNMULSCS FNMULSHS +syn keyword armasmOpcode FNMULSCC FNMULSLO FNMULSMI FNMULSPL FNMULSVS +syn keyword armasmOpcode FNMULSVC FNMULSHI FNMULSLS FNMULSGE FNMULSLT +syn keyword armasmOpcode FNMULSGT FNMULSLE FNMULSAL FNMULD FNMULDEQ +syn keyword armasmOpcode FNMULDNE FNMULDCS FNMULDHS FNMULDCC FNMULDLO +syn keyword armasmOpcode FNMULDMI FNMULDPL FNMULDVS FNMULDVC FNMULDHI +syn keyword armasmOpcode FNMULDLS FNMULDGE FNMULDLT FNMULDGT FNMULDLE +syn keyword armasmOpcode FNMULDAL + +syn keyword armasmOpcode FMACS FMACSEQ FMACSNE FMACSCS FMACSHS FMACSCC +syn keyword armasmOpcode FMACSLO FMACSMI FMACSPL FMACSVS FMACSVC FMACSHI +syn keyword armasmOpcode FMACSLS FMACSGE FMACSLT FMACSGT FMACSLE FMACSAL +syn keyword armasmOpcode FMACD FMACDEQ FMACDNE FMACDCS FMACDHS FMACDCC +syn keyword armasmOpcode FMACDLO FMACDMI FMACDPL FMACDVS FMACDVC FMACDHI +syn keyword armasmOpcode FMACDLS FMACDGE FMACDLT FMACDGT FMACDLE FMACDAL + +syn keyword armasmOpcode FNMACS FNMACSEQ FNMACSNE FNMACSCS FNMACSHS +syn keyword armasmOpcode FNMACSCC FNMACSLO FNMACSMI FNMACSPL FNMACSVS +syn keyword armasmOpcode FNMACSVC FNMACSHI FNMACSLS FNMACSGE FNMACSLT +syn keyword armasmOpcode FNMACSGT FNMACSLE FNMACSAL FNMACD FNMACDEQ +syn keyword armasmOpcode FNMACDNE FNMACDCS FNMACDHS FNMACDCC FNMACDLO +syn keyword armasmOpcode FNMACDMI FNMACDPL FNMACDVS FNMACDVC FNMACDHI +syn keyword armasmOpcode FNMACDLS FNMACDGE FNMACDLT FNMACDGT FNMACDLE +syn keyword armasmOpcode FNMACDAL + +syn keyword armasmOpcode FMSCS FMSCSEQ FMSCSNE FMSCSCS FMSCSHS FMSCSCC +syn keyword armasmOpcode FMSCSLO FMSCSMI FMSCSPL FMSCSVS FMSCSVC FMSCSHI +syn keyword armasmOpcode FMSCSLS FMSCSGE FMSCSLT FMSCSGT FMSCSLE FMSCSAL +syn keyword armasmOpcode FMSCD FMSCDEQ FMSCDNE FMSCDCS FMSCDHS FMSCDCC +syn keyword armasmOpcode FMSCDLO FMSCDMI FMSCDPL FMSCDVS FMSCDVC FMSCDHI +syn keyword armasmOpcode FMSCDLS FMSCDGE FMSCDLT FMSCDGT FMSCDLE FMSCDAL + +syn keyword armasmOpcode FNMSCS FNMSCSEQ FNMSCSNE FNMSCSCS FNMSCSHS +syn keyword armasmOpcode FNMSCSCC FNMSCSLO FNMSCSMI FNMSCSPL FNMSCSVS +syn keyword armasmOpcode FNMSCSVC FNMSCSHI FNMSCSLS FNMSCSGE FNMSCSLT +syn keyword armasmOpcode FNMSCSGT FNMSCSLE FNMSCSAL FNMSCD FNMSCDEQ +syn keyword armasmOpcode FNMSCDNE FNMSCDCS FNMSCDHS FNMSCDCC FNMSCDLO +syn keyword armasmOpcode FNMSCDMI FNMSCDPL FNMSCDVS FNMSCDVC FNMSCDHI +syn keyword armasmOpcode FNMSCDLS FNMSCDGE FNMSCDLT FNMSCDGT FNMSCDLE +syn keyword armasmOpcode FNMSCDAL + +syn keyword armasmOpcode FADDS FADDSEQ FADDSNE FADDSCS FADDSHS FADDSCC +syn keyword armasmOpcode FADDSLO FADDSMI FADDSPL FADDSVS FADDSVC FADDSHI +syn keyword armasmOpcode FADDSLS FADDSGE FADDSLT FADDSGT FADDSLE FADDSAL +syn keyword armasmOpcode FADDD FADDDEQ FADDDNE FADDDCS FADDDHS FADDDCC +syn keyword armasmOpcode FADDDLO FADDDMI FADDDPL FADDDVS FADDDVC FADDDHI +syn keyword armasmOpcode FADDDLS FADDDGE FADDDLT FADDDGT FADDDLE FADDDAL + +syn keyword armasmOpcode FSUBS FSUBSEQ FSUBSNE FSUBSCS FSUBSHS FSUBSCC +syn keyword armasmOpcode FSUBSLO FSUBSMI FSUBSPL FSUBSVS FSUBSVC FSUBSHI +syn keyword armasmOpcode FSUBSLS FSUBSGE FSUBSLT FSUBSGT FSUBSLE FSUBSAL +syn keyword armasmOpcode FSUBD FSUBDEQ FSUBDNE FSUBDCS FSUBDHS FSUBDCC +syn keyword armasmOpcode FSUBDLO FSUBDMI FSUBDPL FSUBDVS FSUBDVC FSUBDHI +syn keyword armasmOpcode FSUBDLS FSUBDGE FSUBDLT FSUBDGT FSUBDLE FSUBDAL + +syn keyword armasmOpcode FDIVS FDIVSEQ FDIVSNE FDIVSCS FDIVSHS FDIVSCC +syn keyword armasmOpcode FDIVSLO FDIVSMI FDIVSPL FDIVSVS FDIVSVC FDIVSHI +syn keyword armasmOpcode FDIVSLS FDIVSGE FDIVSLT FDIVSGT FDIVSLE FDIVSAL +syn keyword armasmOpcode FDIVD FDIVDEQ FDIVDNE FDIVDCS FDIVDHS FDIVDCC +syn keyword armasmOpcode FDIVDLO FDIVDMI FDIVDPL FDIVDVS FDIVDVC FDIVDHI +syn keyword armasmOpcode FDIVDLS FDIVDGE FDIVDLT FDIVDGT FDIVDLE FDIVDAL + +syn keyword armasmOpcode FCPYS FCPYSEQ FCPYSNE FCPYSCS FCPYSHS FCPYSCC +syn keyword armasmOpcode FCPYSLO FCPYSMI FCPYSPL FCPYSVS FCPYSVC FCPYSHI +syn keyword armasmOpcode FCPYSLS FCPYSGE FCPYSLT FCPYSGT FCPYSLE FCPYSAL +syn keyword armasmOpcode FCPYD FCPYDEQ FCPYDNE FCPYDCS FCPYDHS FCPYDCC +syn keyword armasmOpcode FCPYDLO FCPYDMI FCPYDPL FCPYDVS FCPYDVC FCPYDHI +syn keyword armasmOpcode FCPYDLS FCPYDGE FCPYDLT FCPYDGT FCPYDLE FCPYDAL + +syn keyword armasmOpcode FABSS FABSSEQ FABSSNE FABSSCS FABSSHS FABSSCC +syn keyword armasmOpcode FABSSLO FABSSMI FABSSPL FABSSVS FABSSVC FABSSHI +syn keyword armasmOpcode FABSSLS FABSSGE FABSSLT FABSSGT FABSSLE FABSSAL +syn keyword armasmOpcode FABSD FABSDEQ FABSDNE FABSDCS FABSDHS FABSDCC +syn keyword armasmOpcode FABSDLO FABSDMI FABSDPL FABSDVS FABSDVC FABSDHI +syn keyword armasmOpcode FABSDLS FABSDGE FABSDLT FABSDGT FABSDLE FABSDAL + +syn keyword armasmOpcode FNEGS FNEGSEQ FNEGSNE FNEGSCS FNEGSHS FNEGSCC +syn keyword armasmOpcode FNEGSLO FNEGSMI FNEGSPL FNEGSVS FNEGSVC FNEGSHI +syn keyword armasmOpcode FNEGSLS FNEGSGE FNEGSLT FNEGSGT FNEGSLE FNEGSAL +syn keyword armasmOpcode FNEGD FNEGDEQ FNEGDNE FNEGDCS FNEGDHS FNEGDCC +syn keyword armasmOpcode FNEGDLO FNEGDMI FNEGDPL FNEGDVS FNEGDVC FNEGDHI +syn keyword armasmOpcode FNEGDLS FNEGDGE FNEGDLT FNEGDGT FNEGDLE FNEGDAL + +syn keyword armasmOpcode FSQRTS FSQRTSEQ FSQRTSNE FSQRTSCS FSQRTSHS +syn keyword armasmOpcode FSQRTSCC FSQRTSLO FSQRTSMI FSQRTSPL FSQRTSVS +syn keyword armasmOpcode FSQRTSVC FSQRTSHI FSQRTSLS FSQRTSGE FSQRTSLT +syn keyword armasmOpcode FSQRTSGT FSQRTSLE FSQRTSAL FSQRTD FSQRTDEQ +syn keyword armasmOpcode FSQRTDNE FSQRTDCS FSQRTDHS FSQRTDCC FSQRTDLO +syn keyword armasmOpcode FSQRTDMI FSQRTDPL FSQRTDVS FSQRTDVC FSQRTDHI +syn keyword armasmOpcode FSQRTDLS FSQRTDGE FSQRTDLT FSQRTDGT FSQRTDLE +syn keyword armasmOpcode FSQRTDAL + +syn keyword armasmOpcode FCMPS FCMPSEQ FCMPSNE FCMPSCS FCMPSHS FCMPSCC +syn keyword armasmOpcode FCMPSLO FCMPSMI FCMPSPL FCMPSVS FCMPSVC FCMPSHI +syn keyword armasmOpcode FCMPSLS FCMPSGE FCMPSLT FCMPSGT FCMPSLE FCMPSAL +syn keyword armasmOpcode FCMPD FCMPDEQ FCMPDNE FCMPDCS FCMPDHS FCMPDCC +syn keyword armasmOpcode FCMPDLO FCMPDMI FCMPDPL FCMPDVS FCMPDVC FCMPDHI +syn keyword armasmOpcode FCMPDLS FCMPDGE FCMPDLT FCMPDGT FCMPDLE FCMPDAL + +syn keyword armasmOpcode FCMPES FCMPESEQ FCMPESNE FCMPESCS FCMPESHS +syn keyword armasmOpcode FCMPESCC FCMPESLO FCMPESMI FCMPESPL FCMPESVS +syn keyword armasmOpcode FCMPESVC FCMPESHI FCMPESLS FCMPESGE FCMPESLT +syn keyword armasmOpcode FCMPESGT FCMPESLE FCMPESAL FCMPED FCMPEDEQ +syn keyword armasmOpcode FCMPEDNE FCMPEDCS FCMPEDHS FCMPEDCC FCMPEDLO +syn keyword armasmOpcode FCMPEDMI FCMPEDPL FCMPEDVS FCMPEDVC FCMPEDHI +syn keyword armasmOpcode FCMPEDLS FCMPEDGE FCMPEDLT FCMPEDGT FCMPEDLE +syn keyword armasmOpcode FCMPEDAL + +syn keyword armasmOpcode FCMPZS FCMPZSEQ FCMPZSNE FCMPZSCS FCMPZSHS +syn keyword armasmOpcode FCMPZSCC FCMPZSLO FCMPZSMI FCMPZSPL FCMPZSVS +syn keyword armasmOpcode FCMPZSVC FCMPZSHI FCMPZSLS FCMPZSGE FCMPZSLT +syn keyword armasmOpcode FCMPZSGT FCMPZSLE FCMPZSAL FCMPZD FCMPZDEQ +syn keyword armasmOpcode FCMPZDNE FCMPZDCS FCMPZDHS FCMPZDCC FCMPZDLO +syn keyword armasmOpcode FCMPZDMI FCMPZDPL FCMPZDVS FCMPZDVC FCMPZDHI +syn keyword armasmOpcode FCMPZDLS FCMPZDGE FCMPZDLT FCMPZDGT FCMPZDLE +syn keyword armasmOpcode FCMPZDAL + +syn keyword armasmOpcode FCMPEZS FCMPEZSEQ FCMPEZSNE FCMPEZSCS FCMPEZSHS +syn keyword armasmOpcode FCMPEZSCC FCMPEZSLO FCMPEZSMI FCMPEZSPL +syn keyword armasmOpcode FCMPEZSVS FCMPEZSVC FCMPEZSHI FCMPEZSLS +syn keyword armasmOpcode FCMPEZSGE FCMPEZSLT FCMPEZSGT FCMPEZSLE +syn keyword armasmOpcode FCMPEZSAL FCMPEZD FCMPEZDEQ FCMPEZDNE FCMPEZDCS +syn keyword armasmOpcode FCMPEZDHS FCMPEZDCC FCMPEZDLO FCMPEZDMI +syn keyword armasmOpcode FCMPEZDPL FCMPEZDVS FCMPEZDVC FCMPEZDHI +syn keyword armasmOpcode FCMPEZDLS FCMPEZDGE FCMPEZDLT FCMPEZDGT +syn keyword armasmOpcode FCMPEZDLE FCMPEZDAL + +syn keyword armasmOpcode FCVTDS FCVTDSEQ FCVTDSNE FCVTDSCS FCVTDSHS +syn keyword armasmOpcode FCVTDSCC FCVTDSLO FCVTDSMI FCVTDSPL FCVTDSVS +syn keyword armasmOpcode FCVTDSVC FCVTDSHI FCVTDSLS FCVTDSGE FCVTDSLT +syn keyword armasmOpcode FCVTDSGT FCVTDSLE FCVTDSAL + +syn keyword armasmOpcode FCVTSD FCVTSDEQ FCVTSDNE FCVTSDCS FCVTSDHS +syn keyword armasmOpcode FCVTSDCC FCVTSDLO FCVTSDMI FCVTSDPL FCVTSDVS +syn keyword armasmOpcode FCVTSDVC FCVTSDHI FCVTSDLS FCVTSDGE FCVTSDLT +syn keyword armasmOpcode FCVTSDGT FCVTSDLE FCVTSDAL + +syn keyword armasmOpcode FUITOS FUITOSEQ FUITOSNE FUITOSCS FUITOSHS +syn keyword armasmOpcode FUITOSCC FUITOSLO FUITOSMI FUITOSPL FUITOSVS +syn keyword armasmOpcode FUITOSVC FUITOSHI FUITOSLS FUITOSGE FUITOSLT +syn keyword armasmOpcode FUITOSGT FUITOSLE FUITOSAL +syn keyword armasmOpcode FUITOD FUITODEQ FUITODNE FUITODCS FUITODHS +syn keyword armasmOpcode FUITODCC FUITODLO FUITODMI FUITODPL FUITODVS +syn keyword armasmOpcode FUITODVC FUITODHI FUITODLS FUITODGE FUITODLT +syn keyword armasmOpcode FUITODGT FUITODLE FUITODAL + +syn keyword armasmOpcode FSITOS FSITOSEQ FSITOSNE FSITOSCS FSITOSHS +syn keyword armasmOpcode FSITOSCC FSITOSLO FSITOSMI FSITOSPL FSITOSVS +syn keyword armasmOpcode FSITOSVC FSITOSHI FSITOSLS FSITOSGE FSITOSLT +syn keyword armasmOpcode FSITOSGT FSITOSLE FSITOSAL +syn keyword armasmOpcode FSITOD FSITODEQ FSITODNE FSITODCS FSITODHS +syn keyword armasmOpcode FSITODCC FSITODLO FSITODMI FSITODPL FSITODVS +syn keyword armasmOpcode FSITODVC FSITODHI FSITODLS FSITODGE FSITODLT +syn keyword armasmOpcode FSITODGT FSITODLE FSITODAL + +syn keyword armasmOpcode FTOUIS FTOUISEQ FTOUISNE FTOUISCS FTOUISHS +syn keyword armasmOpcode FTOUISCC FTOUISLO FTOUISMI FTOUISPL FTOUISVS +syn keyword armasmOpcode FTOUISVC FTOUISHI FTOUISLS FTOUISGE FTOUISLT +syn keyword armasmOpcode FTOUISGT FTOUISLE FTOUISAL +syn keyword armasmOpcode FTOUID FTOUIDEQ FTOUIDNE FTOUIDCS FTOUIDHS +syn keyword armasmOpcode FTOUIDCC FTOUIDLO FTOUIDMI FTOUIDPL FTOUIDVS +syn keyword armasmOpcode FTOUIDVC FTOUIDHI FTOUIDLS FTOUIDGE FTOUIDLT +syn keyword armasmOpcode FTOUIDGT FTOUIDLE FTOUIDAL + +syn keyword armasmOpcode FTOUIZS FTOUIZSEQ FTOUIZSNE FTOUIZSCS FTOUIZSHS +syn keyword armasmOpcode FTOUIZSCC FTOUIZSLO FTOUIZSMI FTOUIZSPL +syn keyword armasmOpcode FTOUIZSVS FTOUIZSVC FTOUIZSHI FTOUIZSLS +syn keyword armasmOpcode FTOUIZSGE FTOUIZSLT FTOUIZSGT FTOUIZSLE +syn keyword armasmOpcode FTOUIZSAL +syn keyword armasmOpcode FTOUIZD FTOUIZDEQ FTOUIZDNE FTOUIZDCS FTOUIZDHS +syn keyword armasmOpcode FTOUIZDCC FTOUIZDLO FTOUIZDMI FTOUIZDPL +syn keyword armasmOpcode FTOUIZDVS FTOUIZDVC FTOUIZDHI FTOUIZDLS +syn keyword armasmOpcode FTOUIZDGE FTOUIZDLT FTOUIZDGT FTOUIZDLE +syn keyword armasmOpcode FTOUIZDAL + +syn keyword armasmOpcode FTOSIS FTOSISEQ FTOSISNE FTOSISCS FTOSISHS +syn keyword armasmOpcode FTOSISCC FTOSISLO FTOSISMI FTOSISPL FTOSISVS +syn keyword armasmOpcode FTOSISVC FTOSISHI FTOSISLS FTOSISGE FTOSISLT +syn keyword armasmOpcode FTOSISGT FTOSISLE FTOSISAL +syn keyword armasmOpcode FTOSID FTOSIDEQ FTOSIDNE FTOSIDCS FTOSIDHS +syn keyword armasmOpcode FTOSIDCC FTOSIDLO FTOSIDMI FTOSIDPL FTOSIDVS +syn keyword armasmOpcode FTOSIDVC FTOSIDHI FTOSIDLS FTOSIDGE FTOSIDLT +syn keyword armasmOpcode FTOSIDGT FTOSIDLE FTOSIDAL + +syn keyword armasmOpcode FTOSIZS FTOSIZSEQ FTOSIZSNE FTOSIZSCS FTOSIZSHS +syn keyword armasmOpcode FTOSIZSCC FTOSIZSLO FTOSIZSMI FTOSIZSPL +syn keyword armasmOpcode FTOSIZSVS FTOSIZSVC FTOSIZSHI FTOSIZSLS +syn keyword armasmOpcode FTOSIZSGE FTOSIZSLT FTOSIZSGT FTOSIZSLE +syn keyword armasmOpcode FTOSIZSAL +syn keyword armasmOpcode FTOSIZD FTOSIZDEQ FTOSIZDNE FTOSIZDCS FTOSIZDHS +syn keyword armasmOpcode FTOSIZDCC FTOSIZDLO FTOSIZDMI FTOSIZDPL +syn keyword armasmOpcode FTOSIZDVS FTOSIZDVC FTOSIZDHI FTOSIZDLS +syn keyword armasmOpcode FTOSIZDGE FTOSIZDLT FTOSIZDGT FTOSIZDLE +syn keyword armasmOpcode FTOSIZDAL + +syn keyword armasmOpcode FSTS FSTSEQ FSTSNE FSTSCS FSTSHS FSTSCC FSTSLO +syn keyword armasmOpcode FSTSMI FSTSPL FSTSVS FSTSVC FSTSHI FSTSLS +syn keyword armasmOpcode FSTSGE FSTSLT FSTSGT FSTSLE FSTSAL +syn keyword armasmOpcode FSTD FSTDEQ FSTDNE FSTDCS FSTDHS FSTDCC FSTDLO +syn keyword armasmOpcode FSTDMI FSTDPL FSTDVS FSTDVC FSTDHI FSTDLS +syn keyword armasmOpcode FSTDGE FSTDLT FSTDGT FSTDLE FSTDAL + +syn keyword armasmOpcode FSTMIAS FSTMIASEQ FSTMIASNE FSTMIASCS FSTMIASHS +syn keyword armasmOpcode FSTMIASCC FSTMIASLO FSTMIASMI FSTMIASPL +syn keyword armasmOpcode FSTMIASVS FSTMIASVC FSTMIASHI FSTMIASLS +syn keyword armasmOpcode FSTMIASGE FSTMIASLT FSTMIASGT FSTMIASLE +syn keyword armasmOpcode FSTMIASAL +syn keyword armasmOpcode FSTMIAD FSTMIADEQ FSTMIADNE FSTMIADCS FSTMIADHS +syn keyword armasmOpcode FSTMIADCC FSTMIADLO FSTMIADMI FSTMIADPL +syn keyword armasmOpcode FSTMIADVS FSTMIADVC FSTMIADHI FSTMIADLS +syn keyword armasmOpcode FSTMIADGE FSTMIADLT FSTMIADGT FSTMIADLE +syn keyword armasmOpcode FSTMIADAL +syn keyword armasmOpcode FSTMIAX FSTMIAXEQ FSTMIAXNE FSTMIAXCS FSTMIAXHS +syn keyword armasmOpcode FSTMIAXCC FSTMIAXLO FSTMIAXMI FSTMIAXPL +syn keyword armasmOpcode FSTMIAXVS FSTMIAXVC FSTMIAXHI FSTMIAXLS +syn keyword armasmOpcode FSTMIAXGE FSTMIAXLT FSTMIAXGT FSTMIAXLE +syn keyword armasmOpcode FSTMIAXAL + +syn keyword armasmOpcode FSTMDBS FSTMDBSEQ FSTMDBSNE FSTMDBSCS FSTMDBSHS +syn keyword armasmOpcode FSTMDBSCC FSTMDBSLO FSTMDBSMI FSTMDBSPL +syn keyword armasmOpcode FSTMDBSVS FSTMDBSVC FSTMDBSHI FSTMDBSLS +syn keyword armasmOpcode FSTMDBSGE FSTMDBSLT FSTMDBSGT FSTMDBSLE +syn keyword armasmOpcode FSTMDBSAL +syn keyword armasmOpcode FSTMDBD FSTMDBDEQ FSTMDBDNE FSTMDBDCS FSTMDBDHS +syn keyword armasmOpcode FSTMDBDCC FSTMDBDLO FSTMDBDMI FSTMDBDPL +syn keyword armasmOpcode FSTMDBDVS FSTMDBDVC FSTMDBDHI FSTMDBDLS +syn keyword armasmOpcode FSTMDBDGE FSTMDBDLT FSTMDBDGT FSTMDBDLE +syn keyword armasmOpcode FSTMDBDAL +syn keyword armasmOpcode FSTMDBX FSTMDBXEQ FSTMDBXNE FSTMDBXCS FSTMDBXHS +syn keyword armasmOpcode FSTMDBXCC FSTMDBXLO FSTMDBXMI FSTMDBXPL +syn keyword armasmOpcode FSTMDBXVS FSTMDBXVC FSTMDBXHI FSTMDBXLS +syn keyword armasmOpcode FSTMDBXGE FSTMDBXLT FSTMDBXGT FSTMDBXLE +syn keyword armasmOpcode FSTMDBXAL + +syn keyword armasmOpcode FLDS FLDSEQ FLDSNE FLDSCS FLDSHS FLDSCC FLDSLO +syn keyword armasmOpcode FLDSMI FLDSPL FLDSVS FLDSVC FLDSHI FLDSLS +syn keyword armasmOpcode FLDSGE FLDSLT FLDSGT FLDSLE FLDSAL +syn keyword armasmOpcode FLDD FLDDEQ FLDDNE FLDDCS FLDDHS FLDDCC FLDDLO +syn keyword armasmOpcode FLDDMI FLDDPL FLDDVS FLDDVC FLDDHI FLDDLS +syn keyword armasmOpcode FLDDGE FLDDLT FLDDGT FLDDLE FLDDAL + +syn keyword armasmOpcode FLDMIAS FLDMIASEQ FLDMIASNE FLDMIASCS FLDMIASHS +syn keyword armasmOpcode FLDMIASCC FLDMIASLO FLDMIASMI FLDMIASPL +syn keyword armasmOpcode FLDMIASVS FLDMIASVC FLDMIASHI FLDMIASLS +syn keyword armasmOpcode FLDMIASGE FLDMIASLT FLDMIASGT FLDMIASLE +syn keyword armasmOpcode FLDMIASAL +syn keyword armasmOpcode FLDMIAD FLDMIADEQ FLDMIADNE FLDMIADCS FLDMIADHS +syn keyword armasmOpcode FLDMIADCC FLDMIADLO FLDMIADMI FLDMIADPL +syn keyword armasmOpcode FLDMIADVS FLDMIADVC FLDMIADHI FLDMIADLS +syn keyword armasmOpcode FLDMIADGE FLDMIADLT FLDMIADGT FLDMIADLE +syn keyword armasmOpcode FLDMIADAL +syn keyword armasmOpcode FLDMIAX FLDMIAXEQ FLDMIAXNE FLDMIAXCS FLDMIAXHS +syn keyword armasmOpcode FLDMIAXCC FLDMIAXLO FLDMIAXMI FLDMIAXPL +syn keyword armasmOpcode FLDMIAXVS FLDMIAXVC FLDMIAXHI FLDMIAXLS +syn keyword armasmOpcode FLDMIAXGE FLDMIAXLT FLDMIAXGT FLDMIAXLE +syn keyword armasmOpcode FLDMIAXAL + +syn keyword armasmOpcode FLDMDBS FLDMDBSEQ FLDMDBSNE FLDMDBSCS FLDMDBSHS +syn keyword armasmOpcode FLDMDBSCC FLDMDBSLO FLDMDBSMI FLDMDBSPL +syn keyword armasmOpcode FLDMDBSVS FLDMDBSVC FLDMDBSHI FLDMDBSLS +syn keyword armasmOpcode FLDMDBSGE FLDMDBSLT FLDMDBSGT FLDMDBSLE +syn keyword armasmOpcode FLDMDBSAL +syn keyword armasmOpcode FLDMDBD FLDMDBDEQ FLDMDBDNE FLDMDBDCS FLDMDBDHS +syn keyword armasmOpcode FLDMDBDCC FLDMDBDLO FLDMDBDMI FLDMDBDPL +syn keyword armasmOpcode FLDMDBDVS FLDMDBDVC FLDMDBDHI FLDMDBDLS +syn keyword armasmOpcode FLDMDBDGE FLDMDBDLT FLDMDBDGT FLDMDBDLE +syn keyword armasmOpcode FLDMDBDAL +syn keyword armasmOpcode FLDMDBX FLDMDBXEQ FLDMDBXNE FLDMDBXCS FLDMDBXHS +syn keyword armasmOpcode FLDMDBXCC FLDMDBXLO FLDMDBXMI FLDMDBXPL +syn keyword armasmOpcode FLDMDBXVS FLDMDBXVC FLDMDBXHI FLDMDBXLS +syn keyword armasmOpcode FLDMDBXGE FLDMDBXLT FLDMDBXGT FLDMDBXLE +syn keyword armasmOpcode FLDMDBXAL + +syn keyword armasmOpcode FMSR FMSREQ FMSRNE FMSRCS FMSRHS FMSRCC FMSRLO +syn keyword armasmOpcode FMSRMI FMSRPL FMSRVS FMSRVC FMSRHI FMSRLS +syn keyword armasmOpcode FMSRGE FMSRLT FMSRGT FMSRLE FMSRAL + +syn keyword armasmOpcode FMRS FMRSEQ FMRSNE FMRSCS FMRSHS FMRSCC FMRSLO +syn keyword armasmOpcode FMRSMI FMRSPL FMRSVS FMRSVC FMRSHI FMRSLS +syn keyword armasmOpcode FMRSGE FMRSLT FMRSGT FMRSLE FMRSAL + +syn keyword armasmOpcode FMDLR FMDLREQ FMDLRNE FMDLRCS FMDLRHS FMDLRCC +syn keyword armasmOpcode FMDLRLO FMDLRMI FMDLRPL FMDLRVS FMDLRVC FMDLRHI +syn keyword armasmOpcode FMDLRLS FMDLRGE FMDLRLT FMDLRGT FMDLRLE FMDLRAL + +syn keyword armasmOpcode FMRDL FMRDLEQ FMRDLNE FMRDLCS FMRDLHS FMRDLCC +syn keyword armasmOpcode FMRDLLO FMRDLMI FMRDLPL FMRDLVS FMRDLVC FMRDLHI +syn keyword armasmOpcode FMRDLLS FMRDLGE FMRDLLT FMRDLGT FMRDLLE FMRDLAL + +syn keyword armasmOpcode FMDHR FMDHREQ FMDHRNE FMDHRCS FMDHRHS FMDHRCC +syn keyword armasmOpcode FMDHRLO FMDHRMI FMDHRPL FMDHRVS FMDHRVC FMDHRHI +syn keyword armasmOpcode FMDHRLS FMDHRGE FMDHRLT FMDHRGT FMDHRLE FMDHRAL + +syn keyword armasmOpcode FMRDH FMRDHEQ FMRDHNE FMRDHCS FMRDHHS FMRDHCC +syn keyword armasmOpcode FMRDHLO FMRDHMI FMRDHPL FMRDHVS FMRDHVC FMRDHHI +syn keyword armasmOpcode FMRDHLS FMRDHGE FMRDHLT FMRDHGT FMRDHLE FMRDHAL + +syn keyword armasmOpcode FMXR FMXREQ FMXRNE FMXRCS FMXRHS FMXRCC FMXRLO +syn keyword armasmOpcode FMXRMI FMXRPL FMXRVS FMXRVC FMXRHI FMXRLS +syn keyword armasmOpcode FMXRGE FMXRLT FMXRGT FMXRLE FMXRAL + +syn keyword armasmOpcode FMRX FMRXEQ FMRXNE FMRXCS FMRXHS FMRXCC FMRXLO +syn keyword armasmOpcode FMRXMI FMRXPL FMRXVS FMRXVC FMRXHI FMRXLS +syn keyword armasmOpcode FMRXGE FMRXLT FMRXGT FMRXLE FMRXAL + +syn keyword armasmOpcode FMSTAT FMSTATEQ FMSTATNE FMSTATCS FMSTATHS +syn keyword armasmOpcode FMSTATCC FMSTATLO FMSTATMI FMSTATPL FMSTATVS +syn keyword armasmOpcode FMSTATVC FMSTATHI FMSTATLS FMSTATGE FMSTATLT +syn keyword armasmOpcode FMSTATGT FMSTATLE FMSTATAL + +syn keyword armasmOpcode ADR ADREQ ADRNE ADRCS ADRHS ADRCC ADRLO +syn keyword armasmOpcode ADRMI ADRPL ADRVS ADRVC ADRHI ADRLS +syn keyword armasmOpcode ADRGE ADRLT ADRGT ADRLE ADRAL +syn keyword armasmOpcode ADRL ADREQL ADRNEL ADRCSL ADRHSL ADRCCL ADRLOL +syn keyword armasmOpcode ADRMIL ADRPLL ADRVSL ADRVCL ADRHIL ADRLSL +syn keyword armasmOpcode ADRGEL ADRLTL ADRGTL ADRLEL ADRALL + +syn keyword armasmDirective ADDRESS ALIGN AREA ASSERT CN CODE16 CODE32 CP +syn keyword armasmDirective DATA DCB DCD DCDO DCDU DCFD DCFDU DCFS DCFSU +syn keyword armasmDirective DCI DCQ DCQU DCW DCWU DN ELSE END ENDFUNC ENDIF +syn keyword armasmDirective ENDP ENTRY EQU EXPORT EXPORTAS EXTERN FIELD FN +syn keyword armasmDirective FRAME FUNCTION GBLA GBLL GBLS GET GLOBAL IF +syn keyword armasmDirective IMPORT INCBIN INCLUDE INFO KEEP LCLA LCLL LCLS +syn keyword armasmDirective LTORG MACRO MAP MEND MEXIT NOFP OPT POP PROC +syn keyword armasmDirective PUSH REGISTER REMEMBER REQUIRE RESTORE RLIST RN +syn keyword armasmDirective ROUT SAVE SETA SETL SETS SN SPACE STATE SUBT +syn keyword armasmDirective TTL WEND WHILE +syn keyword armasmDirective ASSOC CODE COMDEF COMMON NOINIT READONLY +syn keyword armasmDirective READWRITE WEAK + + +" Define the default highlighting. +" For version 5.7 and earlier: only when not done already +" For version 5.8 and later: only when an item doesn't have highlighting yet +if version >= 508 || !exists("did_armasm_syntax_inits") + if version < 508 + let did_armasm_syntax_inits = 1 + command -nargs=+ HiLink hi link + else + command -nargs=+ HiLink hi def link + endif + + HiLink armasmTodo Todo + HiLink armasmComment Comment + HiLink armasmDirective Statement + HiLink armasmString String + HiLink armasmRegister Structure + HiLink armasmASCII Character + HiLink armasmBinary Number + HiLink armasmDecimal Number + HiLink armasmHexadecimal Number + HiLink armasmOctal Number + HiLink armasmBase3 Number + HiLink armasmBase4 Number + HiLink armasmBase5 Number + HiLink armasmBase6 Number + HiLink armasmBase7 Number + HiLink armasmBase9 Number + HiLink armasmFloat Float + HiLink armasmBoolean Boolean + HiLink armasmBuiltIn Constant + HiLink armasmIdentifier Identifier + + " + " The following look better (for me, at least) with the alternate mappings, + " although the more "natural" way to highlight them is as follows: + " + HiLink armasmLabel Label + HiLink armasmOpcode Keyword + HiLink armasmOperator Operator + + "HiLink armasmLabel Identifier + "HiLink armasmOpcode Normal + "HiLink armasmOperator Special + + delcommand HiLink +endif + +let b:current_syntax = "armasm" + +" vim: ts=8 ADDED vim/syntax/coffee.vim Index: vim/syntax/coffee.vim ================================================================== --- vim/syntax/coffee.vim +++ vim/syntax/coffee.vim @@ -0,0 +1,236 @@ +" Language: CoffeeScript +" Maintainer: Mick Koch +" URL: http://github.com/kchmck/vim-coffee-script +" License: WTFPL + +" Bail if our syntax is already loaded. +if exists('b:current_syntax') && b:current_syntax == 'coffee' + finish +endif + +" Include JavaScript for coffeeEmbed. +syn include @coffeeJS syntax/javascript.vim + +" Highlight long strings. +syn sync minlines=100 + +" CoffeeScript identifiers can have dollar signs. +setlocal isident+=$ + +" These are `matches` instead of `keywords` because vim's highlighting +" priority for keywords is higher than matches. This causes keywords to be +" highlighted inside matches, even if a match says it shouldn't contain them -- +" like with coffeeAssign and coffeeDot. +syn match coffeeStatement /\<\%(return\|break\|continue\|throw\)\>/ display +hi def link coffeeStatement Statement + +syn match coffeeRepeat /\<\%(for\|while\|until\|loop\)\>/ display +hi def link coffeeRepeat Repeat + +syn match coffeeConditional /\<\%(if\|else\|unless\|switch\|when\|then\)\>/ +\ display +hi def link coffeeConditional Conditional + +syn match coffeeException /\<\%(try\|catch\|finally\)\>/ display +hi def link coffeeException Exception + +syn match coffeeKeyword /\<\%(new\|in\|of\|by\|and\|or\|not\|is\|isnt\|class\|extends\|super\|do\)\>/ +\ display +" The `own` keyword is only a keyword after `for`. +syn match coffeeKeyword /\/ contained containedin=coffeeRepeat +\ display +hi def link coffeeKeyword Keyword + +syn match coffeeOperator /\<\%(instanceof\|typeof\|delete\)\>/ display +hi def link coffeeOperator Operator + +" The first case matches symbol operators only if they have an operand before. +syn match coffeeExtendedOp /\%(\S\s*\)\@<=[+\-*/%&|\^=!<>?.]\+\|[-=]>\|--\|++\|::/ +\ display +syn match coffeeExtendedOp /\%(and\|or\)=/ display +hi def link coffeeExtendedOp coffeeOperator + +" This is separate from `coffeeExtendedOp` to help differentiate commas from +" dots. +syn match coffeeSpecialOp /[,;]/ display +hi def link coffeeSpecialOp SpecialChar + +syn match coffeeBoolean /\<\%(true\|on\|yes\|false\|off\|no\)\>/ display +hi def link coffeeBoolean Boolean + +syn match coffeeGlobal /\<\%(null\|undefined\)\>/ display +hi def link coffeeGlobal Type + +" A special variable +syn match coffeeSpecialVar /\<\%(this\|prototype\|arguments\)\>/ display +" An @-variable +syn match coffeeSpecialVar /@\%(\I\i*\)\?/ display +hi def link coffeeSpecialVar Special + +" A class-like name that starts with a capital letter +syn match coffeeObject /\<\u\w*\>/ display +hi def link coffeeObject Structure + +" A constant-like name in SCREAMING_CAPS +syn match coffeeConstant /\<\u[A-Z0-9_]\+\>/ display +hi def link coffeeConstant Constant + +" A variable name +syn cluster coffeeIdentifier contains=coffeeSpecialVar,coffeeObject, +\ coffeeConstant + +" A non-interpolated string +syn cluster coffeeBasicString contains=@Spell,coffeeEscape +" An interpolated string +syn cluster coffeeInterpString contains=@coffeeBasicString,coffeeInterp + +" Regular strings +syn region coffeeString start=/"/ skip=/\\\\\|\\"/ end=/"/ +\ contains=@coffeeInterpString +syn region coffeeString start=/'/ skip=/\\\\\|\\'/ end=/'/ +\ contains=@coffeeBasicString +hi def link coffeeString String + +" A integer, including a leading plus or minus +syn match coffeeNumber /\i\@/ display +hi def link coffeeNumber Number + +" A floating-point number, including a leading plus or minus +syn match coffeeFloat /\i\@/ + \ display + hi def link coffeeReservedError Error +endif + +" This is separate from `coffeeExtendedOp` since assignments require it. +syn match coffeeAssignOp /:/ contained display +hi def link coffeeAssignOp coffeeOperator + +" Strings used in string assignments, which can't have interpolations +syn region coffeeAssignString start=/"/ skip=/\\\\\|\\"/ end=/"/ contained +\ contains=@coffeeBasicString +syn region coffeeAssignString start=/'/ skip=/\\\\\|\\'/ end=/'/ contained +\ contains=@coffeeBasicString +hi def link coffeeAssignString String + +" A normal object assignment +syn match coffeeObjAssign /@\?\I\i*\s*:\@ +" Last Change: 2009 Dec 29 +" Version: 0.8 +" Remark: Intel compatible instructions only (for now) + +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +setlocal iskeyword +=%,.,-,_ +setlocal isident +=%,.,-,_ + +syn case ignore + +" directives +syn keyword gasDirective .abort .ABORT .align .balignw .balignl +syn keyword gasDirective .cfi_startproc .cfi_sections .cfi_endproc .cfi_personality +syn keyword gasDirective .cfi_lsda .cfi_def_cfa .cfi_def_cfa_register .cfi_def_cfa_offset +syn keyword gasDirective .cfi_adjust_cfa_offset .cfi_offset .cfi_rel_offset .cfi_register +syn keyword gasDirective .cfi_restore .cfi_undefined .cfi_same_value .cfi_remember_state +syn keyword gasDirective .cfi_return_column .cfi_signal_frame .cfi_window_save .cfi_escape +syn keyword gasDirective .cfi_val_encoded_addr .data .def .desc .dim .eject +syn keyword gasDirective .else .elseif .endef .endif .equ .equiv .eqv .err +syn keyword gasDirective .error .exitm .extern .fail .file .fill .global .globl +syn keyword gasDirective .gnu_attribute .hidden .ident .if .incbin .include .internal +syn keyword gasDirective .irp .irpc .lcomm .lflags .line .linkonce .list .ln .loc .loc_mark_labels +syn keyword gasDirective .local .mri .nolist .octa .org .p2alignw .p2alignl +syn keyword gasDirective .popsection .previous .print .protected .psize .purgem .pushsection .quad +syn keyword gasDirective .reloc .rept .sbttl .scl .section .set .single .size .skip .sleb128 +syn keyword gasDirective .space .stabd .stabn .stabs .struct .subsection +syn keyword gasDirective .symver .tag .text .title .type .uleb128 .val .version +syn keyword gasDirective .vtable_entry .vtable_inherit .warning .weak .weakref + +syn keyword gasDirectiveStore .byte .hword .word .int .long .double .short .float +syn keyword gasDirectiveStore .string .string8 .string16 .ascii .asciz .comm + +syn keyword gasDirectiveMacro .altmacro .macro .noaltmacro .end .func .endfunc + +" i*86 directives +syn keyword gasDirectiveX86 .att_syntax .intel_syntax .att_mnemonic .intel_mnemonic .lcomm + +" i*86 register set +syn keyword gasRegisterX86 %rax %rbx %rcx %rdx %rdi %rsi %rsp %rbp +syn keyword gasRegisterX86 %eax %ebx %ecx %edx %ax %bx %cx %dx %ah %al %bh %bl %ch %cl %dh %dl +syn keyword gasRegisterX86 %edi %esi %esp %ebp %di %si %sp %bp %sph %spl %bph %bpl +syn keyword gasRegisterX86 %cs %ds %es %fs %gs %ss %ip %eip %rip %eflags +syn match gasRegisterX86 /\<%r\([8-9]\|1[0-5]\)[lwd]\?\>/ + +" i*86 special registers +syn match gasRegisterX86Cr /\<%cr[0-8]\>/ +syn match gasRegisterX86Dr /\<%dr[0-8]\>/ +syn match gasRegisterX86Tr /\<%tr[0-8]\>/ +syn match gasRegisterX86Fp /\<%sp\(([0-7])\)\?\>/ +syn match gasRegisterX86MMX /\<%x\?mm[0-7]\>/ + +" symbols and labels + +syn match gasLabel /[-_$.A-Za-z0-9]\+\s*:/ +syn match gasSymbol /\<[^; \t()]\+\>/ +syn match gasSymbolRef /\$[-_$.A-Za-z][-_$.A-Za-z0-9]*\>/ +syn match gasSpecial /\<[$.]\>/ + +" constants +syn region gasString start=/"/ end=/"/ skip=/\\"/ +syn match gasCharacter /'\(?\|\\?\)/ +syn match gasDecimalNumber /\$\?-\?\d\+/ +syn match gasBinaryNumber /\$\?-\?0b[01]\+/ +syn match gasOctalNumber /\$\?-\?0\d\+/ +syn match gasHexNumber /\$\?-\?0x\x\+/ +" -- TODO: gasFloatNumber + +" local label needs to be matched *after* numerics +syn match gasLocalLabel /\d\{1,2\}[:fb]/ + +" comments etc. +syn match gasOperator /[+-/*=|&~<>]\|<=\|>=\|<>/ +syn region gasComment start=/\/\*/ end=/\*\// +syn region gasCommentSingle start=/#/ end=/$/ + +" finally: Opcodes +" +"-- Section: Willamette MMX instructions (SSE2 SIMD Integer Instructions) +syn keyword gasOpcode_SSE2 movd movdb movdw movdl movdq +syn keyword gasOpcode_SSE2 movdqa +syn keyword gasOpcode_SSE2 movdqu +syn keyword gasOpcode_SSE2 movdq2q +syn keyword gasOpcode_X64_SSE2 movq +syn keyword gasOpcode_SSE2 movq2dq +syn keyword gasOpcode_SSE2 packsswb packsswbb packsswbw packsswbl packsswbq +syn keyword gasOpcode_SSE2 packssdw packssdwb packssdww packssdwl packssdwq +syn keyword gasOpcode_SSE2 packuswb packuswbb packuswbw packuswbl packuswbq +syn keyword gasOpcode_SSE2 paddb paddbb paddbw paddbl paddbq +syn keyword gasOpcode_SSE2 paddw paddwb paddww paddwl paddwq +syn keyword gasOpcode_SSE2 paddd padddb padddw padddl padddq +syn keyword gasOpcode_SSE2 paddq paddqb paddqw paddql paddqq +syn keyword gasOpcode_SSE2 paddsb paddsbb paddsbw paddsbl paddsbq +syn keyword gasOpcode_SSE2 paddsw paddswb paddsww paddswl paddswq +syn keyword gasOpcode_SSE2 paddusb paddusbb paddusbw paddusbl paddusbq +syn keyword gasOpcode_SSE2 paddusw padduswb paddusww padduswl padduswq +syn keyword gasOpcode_SSE2 pand pandb pandw pandl pandq +syn keyword gasOpcode_SSE2 pandn pandnb pandnw pandnl pandnq +syn keyword gasOpcode_SSE2 pavgb pavgbb pavgbw pavgbl pavgbq +syn keyword gasOpcode_SSE2 pavgw pavgwb pavgww pavgwl pavgwq +syn keyword gasOpcode_SSE2 pcmpeqb pcmpeqbb pcmpeqbw pcmpeqbl pcmpeqbq +syn keyword gasOpcode_SSE2 pcmpeqw pcmpeqwb pcmpeqww pcmpeqwl pcmpeqwq +syn keyword gasOpcode_SSE2 pcmpeqd pcmpeqdb pcmpeqdw pcmpeqdl pcmpeqdq +syn keyword gasOpcode_SSE2 pcmpgtb pcmpgtbb pcmpgtbw pcmpgtbl pcmpgtbq +syn keyword gasOpcode_SSE2 pcmpgtw pcmpgtwb pcmpgtww pcmpgtwl pcmpgtwq +syn keyword gasOpcode_SSE2 pcmpgtd pcmpgtdb pcmpgtdw pcmpgtdl pcmpgtdq +syn keyword gasOpcode_SSE2 pextrw pextrwb pextrww pextrwl pextrwq +syn keyword gasOpcode_SSE2 pinsrw pinsrwb pinsrww pinsrwl pinsrwq +syn keyword gasOpcode_SSE2 pmaddwd pmaddwdb pmaddwdw pmaddwdl pmaddwdq +syn keyword gasOpcode_SSE2 pmaxsw pmaxswb pmaxsww pmaxswl pmaxswq +syn keyword gasOpcode_SSE2 pmaxub pmaxubb pmaxubw pmaxubl pmaxubq +syn keyword gasOpcode_SSE2 pminsw pminswb pminsww pminswl pminswq +syn keyword gasOpcode_SSE2 pminub pminubb pminubw pminubl pminubq +syn keyword gasOpcode_SSE2 pmovmskb +syn keyword gasOpcode_SSE2 pmulhuw pmulhuwb pmulhuww pmulhuwl pmulhuwq +syn keyword gasOpcode_SSE2 pmulhw pmulhwb pmulhww pmulhwl pmulhwq +syn keyword gasOpcode_SSE2 pmullw pmullwb pmullww pmullwl pmullwq +syn keyword gasOpcode_SSE2 pmuludq pmuludqb pmuludqw pmuludql pmuludqq +syn keyword gasOpcode_SSE2 por porb porw porl porq +syn keyword gasOpcode_SSE2 psadbw psadbwb psadbww psadbwl psadbwq +syn keyword gasOpcode_Base pshufd pshufdb pshufdw pshufdl pshufdq +syn keyword gasOpcode_Base pshufhw pshufhwb pshufhww pshufhwl pshufhwq +syn keyword gasOpcode_Base pshuflw pshuflwb pshuflww pshuflwl pshuflwq +syn keyword gasOpcode_SSE2 pslldq pslldqb pslldqw pslldql pslldqq +syn keyword gasOpcode_SSE2 psllw psllwb psllww psllwl psllwq +syn keyword gasOpcode_SSE2 pslld pslldb pslldw pslldl pslldq +syn keyword gasOpcode_SSE2 psllq psllqb psllqw psllql psllqq +syn keyword gasOpcode_SSE2 psraw psrawb psraww psrawl psrawq +syn keyword gasOpcode_SSE2 psrad psradb psradw psradl psradq +syn keyword gasOpcode_SSE2 psrldq psrldqb psrldqw psrldql psrldqq +syn keyword gasOpcode_SSE2 psrlw psrlwb psrlww psrlwl psrlwq +syn keyword gasOpcode_SSE2 psrld psrldb psrldw psrldl psrldq +syn keyword gasOpcode_SSE2 psrlq psrlqb psrlqw psrlql psrlqq +syn keyword gasOpcode_SSE2 psubb psubbb psubbw psubbl psubbq +syn keyword gasOpcode_SSE2 psubw psubwb psubww psubwl psubwq +syn keyword gasOpcode_SSE2 psubd psubdb psubdw psubdl psubdq +syn keyword gasOpcode_SSE2 psubq psubqb psubqw psubql psubqq +syn keyword gasOpcode_SSE2 psubsb psubsbb psubsbw psubsbl psubsbq +syn keyword gasOpcode_SSE2 psubsw psubswb psubsww psubswl psubswq +syn keyword gasOpcode_SSE2 psubusb psubusbb psubusbw psubusbl psubusbq +syn keyword gasOpcode_SSE2 psubusw psubuswb psubusww psubuswl psubuswq +syn keyword gasOpcode_SSE2 punpckhbw punpckhbwb punpckhbww punpckhbwl punpckhbwq +syn keyword gasOpcode_SSE2 punpckhwd punpckhwdb punpckhwdw punpckhwdl punpckhwdq +syn keyword gasOpcode_SSE2 punpckhdq punpckhdqb punpckhdqw punpckhdql punpckhdqq +syn keyword gasOpcode_SSE2 punpckhqdq punpckhqdqb punpckhqdqw punpckhqdql punpckhqdqq +syn keyword gasOpcode_SSE2 punpcklbw punpcklbwb punpcklbww punpcklbwl punpcklbwq +syn keyword gasOpcode_SSE2 punpcklwd punpcklwdb punpcklwdw punpcklwdl punpcklwdq +syn keyword gasOpcode_SSE2 punpckldq punpckldqb punpckldqw punpckldql punpckldqq +syn keyword gasOpcode_SSE2 punpcklqdq punpcklqdqb punpcklqdqw punpcklqdql punpcklqdqq +syn keyword gasOpcode_SSE2 pxor pxorb pxorw pxorl pxorq + +"-- Section: Nehalem New Instructions (SSE4.2) +syn keyword gasOpcode_X64_SSE42 crc32 +syn keyword gasOpcode_SSE42 pcmpestri pcmpestrib pcmpestriw pcmpestril pcmpestriq +syn keyword gasOpcode_SSE42 pcmpestrm pcmpestrmb pcmpestrmw pcmpestrml pcmpestrmq +syn keyword gasOpcode_SSE42 pcmpistri pcmpistrib pcmpistriw pcmpistril pcmpistriq +syn keyword gasOpcode_SSE42 pcmpistrm pcmpistrmb pcmpistrmw pcmpistrml pcmpistrmq +syn keyword gasOpcode_SSE42 pcmpgtq pcmpgtqb pcmpgtqw pcmpgtql pcmpgtqq +syn keyword gasOpcode_NEHALEM_Base popcnt + +"-- Section: Intel new instructions in ??? +syn keyword gasOpcode_NEHALEM_Base movbe movbeb movbew movbel movbeq + +"-- Section: AMD XOP, FMA4 and CVT16 instructions (SSE5) +syn keyword gasOpcode_AMD_SSE5 vcvtph2ps vcvtph2psb vcvtph2psw vcvtph2psl vcvtph2psq +syn keyword gasOpcode_AMD_SSE5 vcvtps2ph vcvtps2phb vcvtps2phw vcvtps2phl vcvtps2phq +syn keyword gasOpcode_AMD_SSE5 vfmaddpd vfmaddpdb vfmaddpdw vfmaddpdl vfmaddpdq +syn keyword gasOpcode_AMD_SSE5 vfmaddps vfmaddpsb vfmaddpsw vfmaddpsl vfmaddpsq +syn keyword gasOpcode_AMD_SSE5 vfmaddsd vfmaddsdb vfmaddsdw vfmaddsdl vfmaddsdq +syn keyword gasOpcode_AMD_SSE5 vfmaddss vfmaddssb vfmaddssw vfmaddssl vfmaddssq +syn keyword gasOpcode_AMD_SSE5 vfmaddsubpd vfmaddsubpdb vfmaddsubpdw vfmaddsubpdl vfmaddsubpdq +syn keyword gasOpcode_AMD_SSE5 vfmaddsubps vfmaddsubpsb vfmaddsubpsw vfmaddsubpsl vfmaddsubpsq +syn keyword gasOpcode_AMD_SSE5 vfmsubaddpd vfmsubaddpdb vfmsubaddpdw vfmsubaddpdl vfmsubaddpdq +syn keyword gasOpcode_AMD_SSE5 vfmsubaddps vfmsubaddpsb vfmsubaddpsw vfmsubaddpsl vfmsubaddpsq +syn keyword gasOpcode_AMD_SSE5 vfmsubpd vfmsubpdb vfmsubpdw vfmsubpdl vfmsubpdq +syn keyword gasOpcode_AMD_SSE5 vfmsubps vfmsubpsb vfmsubpsw vfmsubpsl vfmsubpsq +syn keyword gasOpcode_AMD_SSE5 vfmsubsd vfmsubsdb vfmsubsdw vfmsubsdl vfmsubsdq +syn keyword gasOpcode_AMD_SSE5 vfmsubss vfmsubssb vfmsubssw vfmsubssl vfmsubssq +syn keyword gasOpcode_AMD_SSE5 vfnmaddpd vfnmaddpdb vfnmaddpdw vfnmaddpdl vfnmaddpdq +syn keyword gasOpcode_AMD_SSE5 vfnmaddps vfnmaddpsb vfnmaddpsw vfnmaddpsl vfnmaddpsq +syn keyword gasOpcode_AMD_SSE5 vfnmaddsd vfnmaddsdb vfnmaddsdw vfnmaddsdl vfnmaddsdq +syn keyword gasOpcode_AMD_SSE5 vfnmaddss vfnmaddssb vfnmaddssw vfnmaddssl vfnmaddssq +syn keyword gasOpcode_AMD_SSE5 vfnmsubpd vfnmsubpdb vfnmsubpdw vfnmsubpdl vfnmsubpdq +syn keyword gasOpcode_AMD_SSE5 vfnmsubps vfnmsubpsb vfnmsubpsw vfnmsubpsl vfnmsubpsq +syn keyword gasOpcode_AMD_SSE5 vfnmsubsd vfnmsubsdb vfnmsubsdw vfnmsubsdl vfnmsubsdq +syn keyword gasOpcode_AMD_SSE5 vfnmsubss vfnmsubssb vfnmsubssw vfnmsubssl vfnmsubssq +syn keyword gasOpcode_AMD_SSE5 vfrczpd vfrczpdb vfrczpdw vfrczpdl vfrczpdq +syn keyword gasOpcode_AMD_SSE5 vfrczps vfrczpsb vfrczpsw vfrczpsl vfrczpsq +syn keyword gasOpcode_AMD_SSE5 vfrczsd vfrczsdb vfrczsdw vfrczsdl vfrczsdq +syn keyword gasOpcode_AMD_SSE5 vfrczss vfrczssb vfrczssw vfrczssl vfrczssq +syn keyword gasOpcode_AMD_SSE5 vpcmov vpcmovb vpcmovw vpcmovl vpcmovq +syn keyword gasOpcode_AMD_SSE5 vpcomb vpcombb vpcombw vpcombl vpcombq +syn keyword gasOpcode_AMD_SSE5 vpcomd vpcomdb vpcomdw vpcomdl vpcomdq +syn keyword gasOpcode_AMD_SSE5 vpcomq vpcomqb vpcomqw vpcomql vpcomqq +syn keyword gasOpcode_AMD_SSE5 vpcomub vpcomubb vpcomubw vpcomubl vpcomubq +syn keyword gasOpcode_AMD_SSE5 vpcomud vpcomudb vpcomudw vpcomudl vpcomudq +syn keyword gasOpcode_AMD_SSE5 vpcomuq vpcomuqb vpcomuqw vpcomuql vpcomuqq +syn keyword gasOpcode_AMD_SSE5 vpcomuw vpcomuwb vpcomuww vpcomuwl vpcomuwq +syn keyword gasOpcode_AMD_SSE5 vpcomw vpcomwb vpcomww vpcomwl vpcomwq +syn keyword gasOpcode_AMD_SSE5 vphaddbd vphaddbdb vphaddbdw vphaddbdl vphaddbdq +syn keyword gasOpcode_AMD_SSE5 vphaddbq vphaddbqb vphaddbqw vphaddbql vphaddbqq +syn keyword gasOpcode_AMD_SSE5 vphaddbw vphaddbwb vphaddbww vphaddbwl vphaddbwq +syn keyword gasOpcode_AMD_SSE5 vphadddq vphadddqb vphadddqw vphadddql vphadddqq +syn keyword gasOpcode_AMD_SSE5 vphaddubd vphaddubdb vphaddubdw vphaddubdl vphaddubdq +syn keyword gasOpcode_AMD_SSE5 vphaddubq vphaddubqb vphaddubqw vphaddubql vphaddubqq +syn keyword gasOpcode_AMD_SSE5 vphaddubwd vphaddubwdb vphaddubwdw vphaddubwdl vphaddubwdq +syn keyword gasOpcode_AMD_SSE5 vphaddudq vphaddudqb vphaddudqw vphaddudql vphaddudqq +syn keyword gasOpcode_AMD_SSE5 vphadduwd vphadduwdb vphadduwdw vphadduwdl vphadduwdq +syn keyword gasOpcode_AMD_SSE5 vphadduwq vphadduwqb vphadduwqw vphadduwql vphadduwqq +syn keyword gasOpcode_AMD_SSE5 vphaddwd vphaddwdb vphaddwdw vphaddwdl vphaddwdq +syn keyword gasOpcode_AMD_SSE5 vphaddwq vphaddwqb vphaddwqw vphaddwql vphaddwqq +syn keyword gasOpcode_AMD_SSE5 vphsubbw vphsubbwb vphsubbww vphsubbwl vphsubbwq +syn keyword gasOpcode_AMD_SSE5 vphsubdq vphsubdqb vphsubdqw vphsubdql vphsubdqq +syn keyword gasOpcode_AMD_SSE5 vphsubwd vphsubwdb vphsubwdw vphsubwdl vphsubwdq +syn keyword gasOpcode_AMD_SSE5 vpmacsdd vpmacsddb vpmacsddw vpmacsddl vpmacsddq +syn keyword gasOpcode_AMD_SSE5 vpmacsdqh vpmacsdqhb vpmacsdqhw vpmacsdqhl vpmacsdqhq +syn keyword gasOpcode_AMD_SSE5 vpmacsdql vpmacsdqlb vpmacsdqlw vpmacsdqll vpmacsdqlq +syn keyword gasOpcode_AMD_SSE5 vpmacssdd vpmacssddb vpmacssddw vpmacssddl vpmacssddq +syn keyword gasOpcode_AMD_SSE5 vpmacssdqh vpmacssdqhb vpmacssdqhw vpmacssdqhl vpmacssdqhq +syn keyword gasOpcode_AMD_SSE5 vpmacssdql vpmacssdqlb vpmacssdqlw vpmacssdqll vpmacssdqlq +syn keyword gasOpcode_AMD_SSE5 vpmacsswd vpmacsswdb vpmacsswdw vpmacsswdl vpmacsswdq +syn keyword gasOpcode_AMD_SSE5 vpmacssww vpmacsswwb vpmacsswww vpmacsswwl vpmacsswwq +syn keyword gasOpcode_AMD_SSE5 vpmacswd vpmacswdb vpmacswdw vpmacswdl vpmacswdq +syn keyword gasOpcode_AMD_SSE5 vpmacsww vpmacswwb vpmacswww vpmacswwl vpmacswwq +syn keyword gasOpcode_AMD_SSE5 vpmadcsswd vpmadcsswdb vpmadcsswdw vpmadcsswdl vpmadcsswdq +syn keyword gasOpcode_AMD_SSE5 vpmadcswd vpmadcswdb vpmadcswdw vpmadcswdl vpmadcswdq +syn keyword gasOpcode_AMD_SSE5 vpperm vppermb vppermw vpperml vppermq +syn keyword gasOpcode_AMD_SSE5 vprotb vprotbb vprotbw vprotbl vprotbq +syn keyword gasOpcode_AMD_SSE5 vprotd vprotdb vprotdw vprotdl vprotdq +syn keyword gasOpcode_AMD_SSE5 vprotq vprotqb vprotqw vprotql vprotqq +syn keyword gasOpcode_AMD_SSE5 vprotw vprotwb vprotww vprotwl vprotwq +syn keyword gasOpcode_AMD_SSE5 vpshab vpshabb vpshabw vpshabl vpshabq +syn keyword gasOpcode_AMD_SSE5 vpshad vpshadb vpshadw vpshadl vpshadq +syn keyword gasOpcode_AMD_SSE5 vpshaq vpshaqb vpshaqw vpshaql vpshaqq +syn keyword gasOpcode_AMD_SSE5 vpshaw vpshawb vpshaww vpshawl vpshawq +syn keyword gasOpcode_AMD_SSE5 vpshlb vpshlbb vpshlbw vpshlbl vpshlbq +syn keyword gasOpcode_AMD_SSE5 vpshld vpshldb vpshldw vpshldl vpshldq +syn keyword gasOpcode_AMD_SSE5 vpshlq vpshlqb vpshlqw vpshlql vpshlqq +syn keyword gasOpcode_AMD_SSE5 vpshlw vpshlwb vpshlww vpshlwl vpshlwq + +"-- Section: Generic memory operations +syn keyword gasOpcode_KATMAI_Base prefetchnta prefetchntab prefetchntaw prefetchntal prefetchntaq +syn keyword gasOpcode_KATMAI_Base prefetcht0 prefetcht0b prefetcht0w prefetcht0l prefetcht0q +syn keyword gasOpcode_KATMAI_Base prefetcht1 prefetcht1b prefetcht1w prefetcht1l prefetcht1q +syn keyword gasOpcode_KATMAI_Base prefetcht2 prefetcht2b prefetcht2w prefetcht2l prefetcht2q +syn keyword gasOpcode_KATMAI_Base sfence + +"-- Section: Tejas New Instructions (SSSE3) +syn keyword gasOpcode_Base pabsb pabsbb pabsbw pabsbl pabsbq +syn keyword gasOpcode_Base pabsw pabswb pabsww pabswl pabswq +syn keyword gasOpcode_Base pabsd pabsdb pabsdw pabsdl pabsdq +syn keyword gasOpcode_Base palignr palignrb palignrw palignrl palignrq +syn keyword gasOpcode_Base phaddw phaddwb phaddww phaddwl phaddwq +syn keyword gasOpcode_Base phaddd phadddb phadddw phadddl phadddq +syn keyword gasOpcode_Base phaddsw phaddswb phaddsww phaddswl phaddswq +syn keyword gasOpcode_Base phsubw phsubwb phsubww phsubwl phsubwq +syn keyword gasOpcode_Base phsubd phsubdb phsubdw phsubdl phsubdq +syn keyword gasOpcode_Base phsubsw phsubswb phsubsww phsubswl phsubswq +syn keyword gasOpcode_Base pmaddubsw pmaddubswb pmaddubsww pmaddubswl pmaddubswq +syn keyword gasOpcode_Base pmulhrsw pmulhrswb pmulhrsww pmulhrswl pmulhrswq +syn keyword gasOpcode_Base pshufb pshufbb pshufbw pshufbl pshufbq +syn keyword gasOpcode_Base psignb psignbb psignbw psignbl psignbq +syn keyword gasOpcode_Base psignw psignwb psignww psignwl psignwq +syn keyword gasOpcode_Base psignd psigndb psigndw psigndl psigndq + +"-- Section: Intel Fused Multiply-Add instructions (FMA) +syn keyword gasOpcode_FUTURE_FMA vfmadd132ps vfmadd132psb vfmadd132psw vfmadd132psl vfmadd132psq +syn keyword gasOpcode_FUTURE_FMA vfmadd132pd vfmadd132pdb vfmadd132pdw vfmadd132pdl vfmadd132pdq +syn keyword gasOpcode_FUTURE_FMA vfmadd312ps vfmadd312psb vfmadd312psw vfmadd312psl vfmadd312psq +syn keyword gasOpcode_FUTURE_FMA vfmadd312pd vfmadd312pdb vfmadd312pdw vfmadd312pdl vfmadd312pdq +syn keyword gasOpcode_FUTURE_FMA vfmadd213ps vfmadd213psb vfmadd213psw vfmadd213psl vfmadd213psq +syn keyword gasOpcode_FUTURE_FMA vfmadd213pd vfmadd213pdb vfmadd213pdw vfmadd213pdl vfmadd213pdq +syn keyword gasOpcode_FUTURE_FMA vfmadd123ps vfmadd123psb vfmadd123psw vfmadd123psl vfmadd123psq +syn keyword gasOpcode_FUTURE_FMA vfmadd123pd vfmadd123pdb vfmadd123pdw vfmadd123pdl vfmadd123pdq +syn keyword gasOpcode_FUTURE_FMA vfmadd231ps vfmadd231psb vfmadd231psw vfmadd231psl vfmadd231psq +syn keyword gasOpcode_FUTURE_FMA vfmadd231pd vfmadd231pdb vfmadd231pdw vfmadd231pdl vfmadd231pdq +syn keyword gasOpcode_FUTURE_FMA vfmadd321ps vfmadd321psb vfmadd321psw vfmadd321psl vfmadd321psq +syn keyword gasOpcode_FUTURE_FMA vfmadd321pd vfmadd321pdb vfmadd321pdw vfmadd321pdl vfmadd321pdq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub132ps vfmaddsub132psb vfmaddsub132psw vfmaddsub132psl vfmaddsub132psq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub132pd vfmaddsub132pdb vfmaddsub132pdw vfmaddsub132pdl vfmaddsub132pdq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub312ps vfmaddsub312psb vfmaddsub312psw vfmaddsub312psl vfmaddsub312psq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub312pd vfmaddsub312pdb vfmaddsub312pdw vfmaddsub312pdl vfmaddsub312pdq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub213ps vfmaddsub213psb vfmaddsub213psw vfmaddsub213psl vfmaddsub213psq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub213pd vfmaddsub213pdb vfmaddsub213pdw vfmaddsub213pdl vfmaddsub213pdq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub123ps vfmaddsub123psb vfmaddsub123psw vfmaddsub123psl vfmaddsub123psq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub123pd vfmaddsub123pdb vfmaddsub123pdw vfmaddsub123pdl vfmaddsub123pdq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub231ps vfmaddsub231psb vfmaddsub231psw vfmaddsub231psl vfmaddsub231psq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub231pd vfmaddsub231pdb vfmaddsub231pdw vfmaddsub231pdl vfmaddsub231pdq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub321ps vfmaddsub321psb vfmaddsub321psw vfmaddsub321psl vfmaddsub321psq +syn keyword gasOpcode_FUTURE_FMA vfmaddsub321pd vfmaddsub321pdb vfmaddsub321pdw vfmaddsub321pdl vfmaddsub321pdq +syn keyword gasOpcode_FUTURE_FMA vfmsub132ps vfmsub132psb vfmsub132psw vfmsub132psl vfmsub132psq +syn keyword gasOpcode_FUTURE_FMA vfmsub132pd vfmsub132pdb vfmsub132pdw vfmsub132pdl vfmsub132pdq +syn keyword gasOpcode_FUTURE_FMA vfmsub312ps vfmsub312psb vfmsub312psw vfmsub312psl vfmsub312psq +syn keyword gasOpcode_FUTURE_FMA vfmsub312pd vfmsub312pdb vfmsub312pdw vfmsub312pdl vfmsub312pdq +syn keyword gasOpcode_FUTURE_FMA vfmsub213ps vfmsub213psb vfmsub213psw vfmsub213psl vfmsub213psq +syn keyword gasOpcode_FUTURE_FMA vfmsub213pd vfmsub213pdb vfmsub213pdw vfmsub213pdl vfmsub213pdq +syn keyword gasOpcode_FUTURE_FMA vfmsub123ps vfmsub123psb vfmsub123psw vfmsub123psl vfmsub123psq +syn keyword gasOpcode_FUTURE_FMA vfmsub123pd vfmsub123pdb vfmsub123pdw vfmsub123pdl vfmsub123pdq +syn keyword gasOpcode_FUTURE_FMA vfmsub231ps vfmsub231psb vfmsub231psw vfmsub231psl vfmsub231psq +syn keyword gasOpcode_FUTURE_FMA vfmsub231pd vfmsub231pdb vfmsub231pdw vfmsub231pdl vfmsub231pdq +syn keyword gasOpcode_FUTURE_FMA vfmsub321ps vfmsub321psb vfmsub321psw vfmsub321psl vfmsub321psq +syn keyword gasOpcode_FUTURE_FMA vfmsub321pd vfmsub321pdb vfmsub321pdw vfmsub321pdl vfmsub321pdq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd132ps vfmsubadd132psb vfmsubadd132psw vfmsubadd132psl vfmsubadd132psq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd132pd vfmsubadd132pdb vfmsubadd132pdw vfmsubadd132pdl vfmsubadd132pdq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd312ps vfmsubadd312psb vfmsubadd312psw vfmsubadd312psl vfmsubadd312psq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd312pd vfmsubadd312pdb vfmsubadd312pdw vfmsubadd312pdl vfmsubadd312pdq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd213ps vfmsubadd213psb vfmsubadd213psw vfmsubadd213psl vfmsubadd213psq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd213pd vfmsubadd213pdb vfmsubadd213pdw vfmsubadd213pdl vfmsubadd213pdq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd123ps vfmsubadd123psb vfmsubadd123psw vfmsubadd123psl vfmsubadd123psq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd123pd vfmsubadd123pdb vfmsubadd123pdw vfmsubadd123pdl vfmsubadd123pdq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd231ps vfmsubadd231psb vfmsubadd231psw vfmsubadd231psl vfmsubadd231psq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd231pd vfmsubadd231pdb vfmsubadd231pdw vfmsubadd231pdl vfmsubadd231pdq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd321ps vfmsubadd321psb vfmsubadd321psw vfmsubadd321psl vfmsubadd321psq +syn keyword gasOpcode_FUTURE_FMA vfmsubadd321pd vfmsubadd321pdb vfmsubadd321pdw vfmsubadd321pdl vfmsubadd321pdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd132ps vfnmadd132psb vfnmadd132psw vfnmadd132psl vfnmadd132psq +syn keyword gasOpcode_FUTURE_FMA vfnmadd132pd vfnmadd132pdb vfnmadd132pdw vfnmadd132pdl vfnmadd132pdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd312ps vfnmadd312psb vfnmadd312psw vfnmadd312psl vfnmadd312psq +syn keyword gasOpcode_FUTURE_FMA vfnmadd312pd vfnmadd312pdb vfnmadd312pdw vfnmadd312pdl vfnmadd312pdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd213ps vfnmadd213psb vfnmadd213psw vfnmadd213psl vfnmadd213psq +syn keyword gasOpcode_FUTURE_FMA vfnmadd213pd vfnmadd213pdb vfnmadd213pdw vfnmadd213pdl vfnmadd213pdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd123ps vfnmadd123psb vfnmadd123psw vfnmadd123psl vfnmadd123psq +syn keyword gasOpcode_FUTURE_FMA vfnmadd123pd vfnmadd123pdb vfnmadd123pdw vfnmadd123pdl vfnmadd123pdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd231ps vfnmadd231psb vfnmadd231psw vfnmadd231psl vfnmadd231psq +syn keyword gasOpcode_FUTURE_FMA vfnmadd231pd vfnmadd231pdb vfnmadd231pdw vfnmadd231pdl vfnmadd231pdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd321ps vfnmadd321psb vfnmadd321psw vfnmadd321psl vfnmadd321psq +syn keyword gasOpcode_FUTURE_FMA vfnmadd321pd vfnmadd321pdb vfnmadd321pdw vfnmadd321pdl vfnmadd321pdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub132ps vfnmsub132psb vfnmsub132psw vfnmsub132psl vfnmsub132psq +syn keyword gasOpcode_FUTURE_FMA vfnmsub132pd vfnmsub132pdb vfnmsub132pdw vfnmsub132pdl vfnmsub132pdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub312ps vfnmsub312psb vfnmsub312psw vfnmsub312psl vfnmsub312psq +syn keyword gasOpcode_FUTURE_FMA vfnmsub312pd vfnmsub312pdb vfnmsub312pdw vfnmsub312pdl vfnmsub312pdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub213ps vfnmsub213psb vfnmsub213psw vfnmsub213psl vfnmsub213psq +syn keyword gasOpcode_FUTURE_FMA vfnmsub213pd vfnmsub213pdb vfnmsub213pdw vfnmsub213pdl vfnmsub213pdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub123ps vfnmsub123psb vfnmsub123psw vfnmsub123psl vfnmsub123psq +syn keyword gasOpcode_FUTURE_FMA vfnmsub123pd vfnmsub123pdb vfnmsub123pdw vfnmsub123pdl vfnmsub123pdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub231ps vfnmsub231psb vfnmsub231psw vfnmsub231psl vfnmsub231psq +syn keyword gasOpcode_FUTURE_FMA vfnmsub231pd vfnmsub231pdb vfnmsub231pdw vfnmsub231pdl vfnmsub231pdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub321ps vfnmsub321psb vfnmsub321psw vfnmsub321psl vfnmsub321psq +syn keyword gasOpcode_FUTURE_FMA vfnmsub321pd vfnmsub321pdb vfnmsub321pdw vfnmsub321pdl vfnmsub321pdq +syn keyword gasOpcode_FUTURE_FMA vfmadd132ss vfmadd132ssb vfmadd132ssw vfmadd132ssl vfmadd132ssq +syn keyword gasOpcode_FUTURE_FMA vfmadd132sd vfmadd132sdb vfmadd132sdw vfmadd132sdl vfmadd132sdq +syn keyword gasOpcode_FUTURE_FMA vfmadd312ss vfmadd312ssb vfmadd312ssw vfmadd312ssl vfmadd312ssq +syn keyword gasOpcode_FUTURE_FMA vfmadd312sd vfmadd312sdb vfmadd312sdw vfmadd312sdl vfmadd312sdq +syn keyword gasOpcode_FUTURE_FMA vfmadd213ss vfmadd213ssb vfmadd213ssw vfmadd213ssl vfmadd213ssq +syn keyword gasOpcode_FUTURE_FMA vfmadd213sd vfmadd213sdb vfmadd213sdw vfmadd213sdl vfmadd213sdq +syn keyword gasOpcode_FUTURE_FMA vfmadd123ss vfmadd123ssb vfmadd123ssw vfmadd123ssl vfmadd123ssq +syn keyword gasOpcode_FUTURE_FMA vfmadd123sd vfmadd123sdb vfmadd123sdw vfmadd123sdl vfmadd123sdq +syn keyword gasOpcode_FUTURE_FMA vfmadd231ss vfmadd231ssb vfmadd231ssw vfmadd231ssl vfmadd231ssq +syn keyword gasOpcode_FUTURE_FMA vfmadd231sd vfmadd231sdb vfmadd231sdw vfmadd231sdl vfmadd231sdq +syn keyword gasOpcode_FUTURE_FMA vfmadd321ss vfmadd321ssb vfmadd321ssw vfmadd321ssl vfmadd321ssq +syn keyword gasOpcode_FUTURE_FMA vfmadd321sd vfmadd321sdb vfmadd321sdw vfmadd321sdl vfmadd321sdq +syn keyword gasOpcode_FUTURE_FMA vfmsub132ss vfmsub132ssb vfmsub132ssw vfmsub132ssl vfmsub132ssq +syn keyword gasOpcode_FUTURE_FMA vfmsub132sd vfmsub132sdb vfmsub132sdw vfmsub132sdl vfmsub132sdq +syn keyword gasOpcode_FUTURE_FMA vfmsub312ss vfmsub312ssb vfmsub312ssw vfmsub312ssl vfmsub312ssq +syn keyword gasOpcode_FUTURE_FMA vfmsub312sd vfmsub312sdb vfmsub312sdw vfmsub312sdl vfmsub312sdq +syn keyword gasOpcode_FUTURE_FMA vfmsub213ss vfmsub213ssb vfmsub213ssw vfmsub213ssl vfmsub213ssq +syn keyword gasOpcode_FUTURE_FMA vfmsub213sd vfmsub213sdb vfmsub213sdw vfmsub213sdl vfmsub213sdq +syn keyword gasOpcode_FUTURE_FMA vfmsub123ss vfmsub123ssb vfmsub123ssw vfmsub123ssl vfmsub123ssq +syn keyword gasOpcode_FUTURE_FMA vfmsub123sd vfmsub123sdb vfmsub123sdw vfmsub123sdl vfmsub123sdq +syn keyword gasOpcode_FUTURE_FMA vfmsub231ss vfmsub231ssb vfmsub231ssw vfmsub231ssl vfmsub231ssq +syn keyword gasOpcode_FUTURE_FMA vfmsub231sd vfmsub231sdb vfmsub231sdw vfmsub231sdl vfmsub231sdq +syn keyword gasOpcode_FUTURE_FMA vfmsub321ss vfmsub321ssb vfmsub321ssw vfmsub321ssl vfmsub321ssq +syn keyword gasOpcode_FUTURE_FMA vfmsub321sd vfmsub321sdb vfmsub321sdw vfmsub321sdl vfmsub321sdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd132ss vfnmadd132ssb vfnmadd132ssw vfnmadd132ssl vfnmadd132ssq +syn keyword gasOpcode_FUTURE_FMA vfnmadd132sd vfnmadd132sdb vfnmadd132sdw vfnmadd132sdl vfnmadd132sdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd312ss vfnmadd312ssb vfnmadd312ssw vfnmadd312ssl vfnmadd312ssq +syn keyword gasOpcode_FUTURE_FMA vfnmadd312sd vfnmadd312sdb vfnmadd312sdw vfnmadd312sdl vfnmadd312sdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd213ss vfnmadd213ssb vfnmadd213ssw vfnmadd213ssl vfnmadd213ssq +syn keyword gasOpcode_FUTURE_FMA vfnmadd213sd vfnmadd213sdb vfnmadd213sdw vfnmadd213sdl vfnmadd213sdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd123ss vfnmadd123ssb vfnmadd123ssw vfnmadd123ssl vfnmadd123ssq +syn keyword gasOpcode_FUTURE_FMA vfnmadd123sd vfnmadd123sdb vfnmadd123sdw vfnmadd123sdl vfnmadd123sdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd231ss vfnmadd231ssb vfnmadd231ssw vfnmadd231ssl vfnmadd231ssq +syn keyword gasOpcode_FUTURE_FMA vfnmadd231sd vfnmadd231sdb vfnmadd231sdw vfnmadd231sdl vfnmadd231sdq +syn keyword gasOpcode_FUTURE_FMA vfnmadd321ss vfnmadd321ssb vfnmadd321ssw vfnmadd321ssl vfnmadd321ssq +syn keyword gasOpcode_FUTURE_FMA vfnmadd321sd vfnmadd321sdb vfnmadd321sdw vfnmadd321sdl vfnmadd321sdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub132ss vfnmsub132ssb vfnmsub132ssw vfnmsub132ssl vfnmsub132ssq +syn keyword gasOpcode_FUTURE_FMA vfnmsub132sd vfnmsub132sdb vfnmsub132sdw vfnmsub132sdl vfnmsub132sdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub312ss vfnmsub312ssb vfnmsub312ssw vfnmsub312ssl vfnmsub312ssq +syn keyword gasOpcode_FUTURE_FMA vfnmsub312sd vfnmsub312sdb vfnmsub312sdw vfnmsub312sdl vfnmsub312sdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub213ss vfnmsub213ssb vfnmsub213ssw vfnmsub213ssl vfnmsub213ssq +syn keyword gasOpcode_FUTURE_FMA vfnmsub213sd vfnmsub213sdb vfnmsub213sdw vfnmsub213sdl vfnmsub213sdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub123ss vfnmsub123ssb vfnmsub123ssw vfnmsub123ssl vfnmsub123ssq +syn keyword gasOpcode_FUTURE_FMA vfnmsub123sd vfnmsub123sdb vfnmsub123sdw vfnmsub123sdl vfnmsub123sdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub231ss vfnmsub231ssb vfnmsub231ssw vfnmsub231ssl vfnmsub231ssq +syn keyword gasOpcode_FUTURE_FMA vfnmsub231sd vfnmsub231sdb vfnmsub231sdw vfnmsub231sdl vfnmsub231sdq +syn keyword gasOpcode_FUTURE_FMA vfnmsub321ss vfnmsub321ssb vfnmsub321ssw vfnmsub321ssl vfnmsub321ssq +syn keyword gasOpcode_FUTURE_FMA vfnmsub321sd vfnmsub321sdb vfnmsub321sdw vfnmsub321sdl vfnmsub321sdq + +"-- Section: Willamette SSE2 Cacheability Instructions +syn keyword gasOpcode_SSE2 maskmovdqu +syn keyword gasOpcode_SSE2 clflush clflushb clflushw clflushl clflushq +syn keyword gasOpcode_SSE2 movntdq movntdqb movntdqw movntdql movntdqq +syn keyword gasOpcode_X64_Base movnti movntib movntiw movntil movntiq +syn keyword gasOpcode_SSE2 movntpd movntpdb movntpdw movntpdl movntpdq +syn keyword gasOpcode_SSE2 lfence +syn keyword gasOpcode_SSE2 mfence + +"-- Section: Systematic names for the hinting nop instructions +syn keyword gasOpcode_X64_Base hint_nop0 +syn keyword gasOpcode_X64_Base hint_nop1 +syn keyword gasOpcode_X64_Base hint_nop2 +syn keyword gasOpcode_X64_Base hint_nop3 +syn keyword gasOpcode_X64_Base hint_nop4 +syn keyword gasOpcode_X64_Base hint_nop5 +syn keyword gasOpcode_X64_Base hint_nop6 +syn keyword gasOpcode_X64_Base hint_nop7 +syn keyword gasOpcode_X64_Base hint_nop8 +syn keyword gasOpcode_X64_Base hint_nop9 +syn keyword gasOpcode_X64_Base hint_nop10 +syn keyword gasOpcode_X64_Base hint_nop11 +syn keyword gasOpcode_X64_Base hint_nop12 +syn keyword gasOpcode_X64_Base hint_nop13 +syn keyword gasOpcode_X64_Base hint_nop14 +syn keyword gasOpcode_X64_Base hint_nop15 +syn keyword gasOpcode_X64_Base hint_nop16 +syn keyword gasOpcode_X64_Base hint_nop17 +syn keyword gasOpcode_X64_Base hint_nop18 +syn keyword gasOpcode_X64_Base hint_nop19 +syn keyword gasOpcode_X64_Base hint_nop20 +syn keyword gasOpcode_X64_Base hint_nop21 +syn keyword gasOpcode_X64_Base hint_nop22 +syn keyword gasOpcode_X64_Base hint_nop23 +syn keyword gasOpcode_X64_Base hint_nop24 +syn keyword gasOpcode_X64_Base hint_nop25 +syn keyword gasOpcode_X64_Base hint_nop26 +syn keyword gasOpcode_X64_Base hint_nop27 +syn keyword gasOpcode_X64_Base hint_nop28 +syn keyword gasOpcode_X64_Base hint_nop29 +syn keyword gasOpcode_X64_Base hint_nop30 +syn keyword gasOpcode_X64_Base hint_nop31 +syn keyword gasOpcode_X64_Base hint_nop32 +syn keyword gasOpcode_X64_Base hint_nop33 +syn keyword gasOpcode_X64_Base hint_nop34 +syn keyword gasOpcode_X64_Base hint_nop35 +syn keyword gasOpcode_X64_Base hint_nop36 +syn keyword gasOpcode_X64_Base hint_nop37 +syn keyword gasOpcode_X64_Base hint_nop38 +syn keyword gasOpcode_X64_Base hint_nop39 +syn keyword gasOpcode_X64_Base hint_nop40 +syn keyword gasOpcode_X64_Base hint_nop41 +syn keyword gasOpcode_X64_Base hint_nop42 +syn keyword gasOpcode_X64_Base hint_nop43 +syn keyword gasOpcode_X64_Base hint_nop44 +syn keyword gasOpcode_X64_Base hint_nop45 +syn keyword gasOpcode_X64_Base hint_nop46 +syn keyword gasOpcode_X64_Base hint_nop47 +syn keyword gasOpcode_X64_Base hint_nop48 +syn keyword gasOpcode_X64_Base hint_nop49 +syn keyword gasOpcode_X64_Base hint_nop50 +syn keyword gasOpcode_X64_Base hint_nop51 +syn keyword gasOpcode_X64_Base hint_nop52 +syn keyword gasOpcode_X64_Base hint_nop53 +syn keyword gasOpcode_X64_Base hint_nop54 +syn keyword gasOpcode_X64_Base hint_nop55 +syn keyword gasOpcode_X64_Base hint_nop56 +syn keyword gasOpcode_X64_Base hint_nop57 +syn keyword gasOpcode_X64_Base hint_nop58 +syn keyword gasOpcode_X64_Base hint_nop59 +syn keyword gasOpcode_X64_Base hint_nop60 +syn keyword gasOpcode_X64_Base hint_nop61 +syn keyword gasOpcode_X64_Base hint_nop62 + +"-- Section: Geode (Cyrix) 3DNow! additions +syn keyword gasOpcode_PENT_3DNOW pfrcpv pfrcpvb pfrcpvw pfrcpvl pfrcpvq +syn keyword gasOpcode_PENT_3DNOW pfrsqrtv pfrsqrtvb pfrsqrtvw pfrsqrtvl pfrsqrtvq + +"-- Section: XSAVE group (AVX and extended state) +syn keyword gasOpcode_NEHALEM_Base xgetbv +syn keyword gasOpcode_NEHALEM_Base xsetbv +syn keyword gasOpcode_NEHALEM_Base xsave xsaveb xsavew xsavel xsaveq +syn keyword gasOpcode_NEHALEM_Base xrstor xrstorb xrstorw xrstorl xrstorq + +"-- Section: Conventional instructions +syn keyword gasOpcode_8086_Base aaa +syn keyword gasOpcode_8086_Base aad aadb aadw aadl aadq +syn keyword gasOpcode_8086_Base aam aamb aamw aaml aamq +syn keyword gasOpcode_8086_Base aas +syn keyword gasOpcode_386_Base adc adcb adcw adcl adcq +syn keyword gasOpcode_386_Base add addb addw addl addq +syn keyword gasOpcode_386_Base and andb andw andl andq +syn keyword gasOpcode_286_Base arpl +syn keyword gasOpcode_PENT_Base bb0_reset +syn keyword gasOpcode_PENT_Base bb1_reset +syn keyword gasOpcode_386_Base bound boundb boundw boundl boundq +syn keyword gasOpcode_X64_Base bsf +syn keyword gasOpcode_X64_Base bsr +syn keyword gasOpcode_X64_Base bswap +syn keyword gasOpcode_X64_Base bt btb btw btl btq +syn keyword gasOpcode_X64_Base btc btcb btcw btcl btcq +syn keyword gasOpcode_X64_Base btr btrb btrw btrl btrq +syn keyword gasOpcode_X64_Base bts btsb btsw btsl btsq +syn keyword gasOpcode_X64_Base call callb callw calll callq +syn keyword gasOpcode_8086_Base cbw +syn keyword gasOpcode_386_Base cdq +syn keyword gasOpcode_X64_Base cdqe +syn keyword gasOpcode_8086_Base clc +syn keyword gasOpcode_8086_Base cld +syn keyword gasOpcode_X64_Base clgi +syn keyword gasOpcode_8086_Base cli +syn keyword gasOpcode_286_Base clts +syn keyword gasOpcode_8086_Base cmc +syn keyword gasOpcode_386_Base cmp cmpb cmpw cmpl cmpq +syn keyword gasOpcode_8086_Base cmpsb +syn keyword gasOpcode_386_Base cmpsd +syn keyword gasOpcode_X64_Base cmpsq +syn keyword gasOpcode_8086_Base cmpsw +syn keyword gasOpcode_X64_Base cmpxchg +syn keyword gasOpcode_486_Base cmpxchg486 +syn keyword gasOpcode_PENT_Base cmpxchg8b cmpxchg8bb cmpxchg8bw cmpxchg8bl cmpxchg8bq +syn keyword gasOpcode_X64_Base cmpxchg16b cmpxchg16bb cmpxchg16bw cmpxchg16bl cmpxchg16bq +syn keyword gasOpcode_PENT_Base cpuid +syn keyword gasOpcode_PENT_Base cpu_read +syn keyword gasOpcode_PENT_Base cpu_write +syn keyword gasOpcode_X64_Base cqo +syn keyword gasOpcode_8086_Base cwd +syn keyword gasOpcode_386_Base cwde +syn keyword gasOpcode_8086_Base daa +syn keyword gasOpcode_8086_Base das +syn keyword gasOpcode_X64_Base dec +syn keyword gasOpcode_X64_Base div +syn keyword gasOpcode_P6_Base dmint +syn keyword gasOpcode_PENT_MMX emms +syn keyword gasOpcode_186_Base enter enterb enterw enterl enterq +syn keyword gasOpcode_8086_Base equ +syn keyword gasOpcode_8086_Base f2xm1 +syn keyword gasOpcode_8086_Base fabs +syn keyword gasOpcode_8086_Base fadd +syn keyword gasOpcode_8086_Base faddp +syn keyword gasOpcode_8086_Base fbld fbldb fbldw fbldl fbldq +syn keyword gasOpcode_8086_Base fbstp fbstpb fbstpw fbstpl fbstpq +syn keyword gasOpcode_8086_Base fchs +syn keyword gasOpcode_8086_Base fclex +syn keyword gasOpcode_P6_Base fcmovb +syn keyword gasOpcode_P6_Base fcmovbe +syn keyword gasOpcode_P6_Base fcmove +syn keyword gasOpcode_P6_Base fcmovnb +syn keyword gasOpcode_P6_Base fcmovnbe +syn keyword gasOpcode_P6_Base fcmovne +syn keyword gasOpcode_P6_Base fcmovnu +syn keyword gasOpcode_P6_Base fcmovu +syn keyword gasOpcode_8086_Base fcom +syn keyword gasOpcode_P6_Base fcomi +syn keyword gasOpcode_P6_Base fcomip +syn keyword gasOpcode_8086_Base fcomp +syn keyword gasOpcode_8086_Base fcompp +syn keyword gasOpcode_386_Base fcos +syn keyword gasOpcode_8086_Base fdecstp +syn keyword gasOpcode_8086_Base fdisi +syn keyword gasOpcode_8086_Base fdiv +syn keyword gasOpcode_8086_Base fdivp +syn keyword gasOpcode_8086_Base fdivr +syn keyword gasOpcode_8086_Base fdivrp +syn keyword gasOpcode_PENT_3DNOW femms +syn keyword gasOpcode_8086_Base feni +syn keyword gasOpcode_8086_Base ffree +syn keyword gasOpcode_286_Base ffreep +syn keyword gasOpcode_8086_Base fiadd fiaddb fiaddw fiaddl fiaddq +syn keyword gasOpcode_8086_Base ficom ficomb ficomw ficoml ficomq +syn keyword gasOpcode_8086_Base ficomp ficompb ficompw ficompl ficompq +syn keyword gasOpcode_8086_Base fidiv fidivb fidivw fidivl fidivq +syn keyword gasOpcode_8086_Base fidivr fidivrb fidivrw fidivrl fidivrq +syn keyword gasOpcode_8086_Base fild fildb fildw fildl fildq +syn keyword gasOpcode_8086_Base fimul fimulb fimulw fimull fimulq +syn keyword gasOpcode_8086_Base fincstp +syn keyword gasOpcode_8086_Base finit +syn keyword gasOpcode_8086_Base fist fistb fistw fistl fistq +syn keyword gasOpcode_8086_Base fistp fistpb fistpw fistpl fistpq +syn keyword gasOpcode_PRESCOTT_Base fisttp fisttpb fisttpw fisttpl fisttpq +syn keyword gasOpcode_8086_Base fisub fisubb fisubw fisubl fisubq +syn keyword gasOpcode_8086_Base fisubr fisubrb fisubrw fisubrl fisubrq +syn keyword gasOpcode_8086_Base fld +syn keyword gasOpcode_8086_Base fld1 +syn keyword gasOpcode_8086_Base fldcw fldcwb fldcww fldcwl fldcwq +syn keyword gasOpcode_8086_Base fldenv fldenvb fldenvw fldenvl fldenvq +syn keyword gasOpcode_8086_Base fldl2e +syn keyword gasOpcode_8086_Base fldl2t +syn keyword gasOpcode_8086_Base fldlg2 +syn keyword gasOpcode_8086_Base fldln2 +syn keyword gasOpcode_8086_Base fldpi +syn keyword gasOpcode_8086_Base fldz +syn keyword gasOpcode_8086_Base fmul +syn keyword gasOpcode_8086_Base fmulp +syn keyword gasOpcode_8086_Base fnclex +syn keyword gasOpcode_8086_Base fndisi +syn keyword gasOpcode_8086_Base fneni +syn keyword gasOpcode_8086_Base fninit +syn keyword gasOpcode_8086_Base fnop +syn keyword gasOpcode_8086_Base fnsave fnsaveb fnsavew fnsavel fnsaveq +syn keyword gasOpcode_8086_Base fnstcw fnstcwb fnstcww fnstcwl fnstcwq +syn keyword gasOpcode_8086_Base fnstenv fnstenvb fnstenvw fnstenvl fnstenvq +syn keyword gasOpcode_286_Base fnstsw +syn keyword gasOpcode_8086_Base fpatan +syn keyword gasOpcode_8086_Base fprem +syn keyword gasOpcode_386_Base fprem1 +syn keyword gasOpcode_8086_Base fptan +syn keyword gasOpcode_8086_Base frndint +syn keyword gasOpcode_8086_Base frstor frstorb frstorw frstorl frstorq +syn keyword gasOpcode_8086_Base fsave fsaveb fsavew fsavel fsaveq +syn keyword gasOpcode_8086_Base fscale +syn keyword gasOpcode_286_Base fsetpm +syn keyword gasOpcode_386_Base fsin +syn keyword gasOpcode_386_Base fsincos +syn keyword gasOpcode_8086_Base fsqrt +syn keyword gasOpcode_8086_Base fst +syn keyword gasOpcode_8086_Base fstcw fstcwb fstcww fstcwl fstcwq +syn keyword gasOpcode_8086_Base fstenv fstenvb fstenvw fstenvl fstenvq +syn keyword gasOpcode_8086_Base fstp +syn keyword gasOpcode_286_Base fstsw +syn keyword gasOpcode_8086_Base fsub +syn keyword gasOpcode_8086_Base fsubp +syn keyword gasOpcode_8086_Base fsubr +syn keyword gasOpcode_8086_Base fsubrp +syn keyword gasOpcode_8086_Base ftst +syn keyword gasOpcode_386_Base fucom +syn keyword gasOpcode_P6_Base fucomi +syn keyword gasOpcode_P6_Base fucomip +syn keyword gasOpcode_386_Base fucomp +syn keyword gasOpcode_386_Base fucompp +syn keyword gasOpcode_8086_Base fxam +syn keyword gasOpcode_8086_Base fxch +syn keyword gasOpcode_8086_Base fxtract +syn keyword gasOpcode_8086_Base fyl2x +syn keyword gasOpcode_8086_Base fyl2xp1 +syn keyword gasOpcode_8086_Base hlt +syn keyword gasOpcode_386_Base ibts +syn keyword gasOpcode_386_Base icebp +syn keyword gasOpcode_X64_Base idiv +syn keyword gasOpcode_X64_Base imul imulb imulw imull imulq +syn keyword gasOpcode_386_Base in +syn keyword gasOpcode_X64_Base inc incb incw incl incq +syn keyword gasOpcode_Base incbin +syn keyword gasOpcode_186_Base insb +syn keyword gasOpcode_386_Base insd +syn keyword gasOpcode_186_Base insw +syn keyword gasOpcode_8086_Base int intb intw intl intq +syn keyword gasOpcode_386_Base int01 +syn keyword gasOpcode_386_Base int1 +syn keyword gasOpcode_8086_Base int03 +syn keyword gasOpcode_8086_Base int3 +syn keyword gasOpcode_8086_Base into +syn keyword gasOpcode_486_Base invd +syn keyword gasOpcode_486_Base invlpg invlpgb invlpgw invlpgl invlpgq +syn keyword gasOpcode_X86_64_Base invlpga +syn keyword gasOpcode_8086_Base iret +syn keyword gasOpcode_386_Base iretd +syn keyword gasOpcode_X64_Base iretq +syn keyword gasOpcode_8086_Base iretw +syn keyword gasOpcode_8086_Base jcxz jcxzb jcxzw jcxzl jcxzq +syn keyword gasOpcode_386_Base jecxz jecxzb jecxzw jecxzl jecxzq +syn keyword gasOpcode_X64_Base jrcxz jrcxzb jrcxzw jrcxzl jrcxzq +syn keyword gasOpcode_X64_Base jmp jmpb jmpw jmpl jmpq +syn keyword gasOpcode_IA64_Base jmpe +syn keyword gasOpcode_8086_Base lahf +syn keyword gasOpcode_X64_Base lar +syn keyword gasOpcode_386_Base lds ldsb ldsw ldsl ldsq +syn keyword gasOpcode_X64_Base lea leab leaw leal leaq +syn keyword gasOpcode_186_Base leave +syn keyword gasOpcode_386_Base les lesb lesw lesl lesq +syn keyword gasOpcode_X64_Base lfence +syn keyword gasOpcode_386_Base lfs lfsb lfsw lfsl lfsq +syn keyword gasOpcode_286_Base lgdt lgdtb lgdtw lgdtl lgdtq +syn keyword gasOpcode_386_Base lgs lgsb lgsw lgsl lgsq +syn keyword gasOpcode_286_Base lidt lidtb lidtw lidtl lidtq +syn keyword gasOpcode_286_Base lldt +syn keyword gasOpcode_286_Base lmsw +syn keyword gasOpcode_386_Base loadall +syn keyword gasOpcode_286_Base loadall286 +syn keyword gasOpcode_8086_Base lodsb +syn keyword gasOpcode_386_Base lodsd +syn keyword gasOpcode_X64_Base lodsq +syn keyword gasOpcode_8086_Base lodsw +syn keyword gasOpcode_X64_Base loop loopb loopw loopl loopq +syn keyword gasOpcode_X64_Base loope loopeb loopew loopel loopeq +syn keyword gasOpcode_X64_Base loopne loopneb loopnew loopnel loopneq +syn keyword gasOpcode_X64_Base loopnz loopnzb loopnzw loopnzl loopnzq +syn keyword gasOpcode_X64_Base loopz loopzb loopzw loopzl loopzq +syn keyword gasOpcode_X64_Base lsl +syn keyword gasOpcode_386_Base lss lssb lssw lssl lssq +syn keyword gasOpcode_286_Base ltr +syn keyword gasOpcode_X64_Base mfence +syn keyword gasOpcode_PRESCOTT_Base monitor +syn keyword gasOpcode_386_Base mov movb movw movl movq +syn keyword gasOpcode_X64_SSE movd +syn keyword gasOpcode_X64_MMX movq +syn keyword gasOpcode_8086_Base movsb +syn keyword gasOpcode_386_Base movsd +syn keyword gasOpcode_X64_Base movsq +syn keyword gasOpcode_8086_Base movsw +syn keyword gasOpcode_X64_Base movsx +syn keyword gasOpcode_X64_Base movsxd +syn keyword gasOpcode_X64_Base movsx +syn keyword gasOpcode_X64_Base movzx +syn keyword gasOpcode_X64_Base mul +syn keyword gasOpcode_PRESCOTT_Base mwait +syn keyword gasOpcode_X64_Base neg +syn keyword gasOpcode_X64_Base nop +syn keyword gasOpcode_X64_Base not +syn keyword gasOpcode_386_Base or orb orw orl orq +syn keyword gasOpcode_386_Base out +syn keyword gasOpcode_186_Base outsb +syn keyword gasOpcode_386_Base outsd +syn keyword gasOpcode_186_Base outsw +syn keyword gasOpcode_PENT_MMX packssdw packssdwb packssdww packssdwl packssdwq +syn keyword gasOpcode_PENT_MMX packsswb packsswbb packsswbw packsswbl packsswbq +syn keyword gasOpcode_PENT_MMX packuswb packuswbb packuswbw packuswbl packuswbq +syn keyword gasOpcode_PENT_MMX paddb paddbb paddbw paddbl paddbq +syn keyword gasOpcode_PENT_MMX paddd padddb padddw padddl padddq +syn keyword gasOpcode_PENT_MMX paddsb paddsbb paddsbw paddsbl paddsbq +syn keyword gasOpcode_PENT_MMX paddsiw paddsiwb paddsiww paddsiwl paddsiwq +syn keyword gasOpcode_PENT_MMX paddsw paddswb paddsww paddswl paddswq +syn keyword gasOpcode_PENT_MMX paddusb paddusbb paddusbw paddusbl paddusbq +syn keyword gasOpcode_PENT_MMX paddusw padduswb paddusww padduswl padduswq +syn keyword gasOpcode_PENT_MMX paddw paddwb paddww paddwl paddwq +syn keyword gasOpcode_PENT_MMX pand pandb pandw pandl pandq +syn keyword gasOpcode_PENT_MMX pandn pandnb pandnw pandnl pandnq +syn keyword gasOpcode_8086_Base pause +syn keyword gasOpcode_PENT_MMX paveb pavebb pavebw pavebl pavebq +syn keyword gasOpcode_PENT_3DNOW pavgusb pavgusbb pavgusbw pavgusbl pavgusbq +syn keyword gasOpcode_PENT_MMX pcmpeqb pcmpeqbb pcmpeqbw pcmpeqbl pcmpeqbq +syn keyword gasOpcode_PENT_MMX pcmpeqd pcmpeqdb pcmpeqdw pcmpeqdl pcmpeqdq +syn keyword gasOpcode_PENT_MMX pcmpeqw pcmpeqwb pcmpeqww pcmpeqwl pcmpeqwq +syn keyword gasOpcode_PENT_MMX pcmpgtb pcmpgtbb pcmpgtbw pcmpgtbl pcmpgtbq +syn keyword gasOpcode_PENT_MMX pcmpgtd pcmpgtdb pcmpgtdw pcmpgtdl pcmpgtdq +syn keyword gasOpcode_PENT_MMX pcmpgtw pcmpgtwb pcmpgtww pcmpgtwl pcmpgtwq +syn keyword gasOpcode_PENT_MMX pdistib pdistibb pdistibw pdistibl pdistibq +syn keyword gasOpcode_PENT_3DNOW pf2id pf2idb pf2idw pf2idl pf2idq +syn keyword gasOpcode_PENT_3DNOW pfacc pfaccb pfaccw pfaccl pfaccq +syn keyword gasOpcode_PENT_3DNOW pfadd pfaddb pfaddw pfaddl pfaddq +syn keyword gasOpcode_PENT_3DNOW pfcmpeq pfcmpeqb pfcmpeqw pfcmpeql pfcmpeqq +syn keyword gasOpcode_PENT_3DNOW pfcmpge pfcmpgeb pfcmpgew pfcmpgel pfcmpgeq +syn keyword gasOpcode_PENT_3DNOW pfcmpgt pfcmpgtb pfcmpgtw pfcmpgtl pfcmpgtq +syn keyword gasOpcode_PENT_3DNOW pfmax pfmaxb pfmaxw pfmaxl pfmaxq +syn keyword gasOpcode_PENT_3DNOW pfmin pfminb pfminw pfminl pfminq +syn keyword gasOpcode_PENT_3DNOW pfmul pfmulb pfmulw pfmull pfmulq +syn keyword gasOpcode_PENT_3DNOW pfrcp pfrcpb pfrcpw pfrcpl pfrcpq +syn keyword gasOpcode_PENT_3DNOW pfrcpit1 pfrcpit1b pfrcpit1w pfrcpit1l pfrcpit1q +syn keyword gasOpcode_PENT_3DNOW pfrcpit2 pfrcpit2b pfrcpit2w pfrcpit2l pfrcpit2q +syn keyword gasOpcode_PENT_3DNOW pfrsqit1 pfrsqit1b pfrsqit1w pfrsqit1l pfrsqit1q +syn keyword gasOpcode_PENT_3DNOW pfrsqrt pfrsqrtb pfrsqrtw pfrsqrtl pfrsqrtq +syn keyword gasOpcode_PENT_3DNOW pfsub pfsubb pfsubw pfsubl pfsubq +syn keyword gasOpcode_PENT_3DNOW pfsubr pfsubrb pfsubrw pfsubrl pfsubrq +syn keyword gasOpcode_PENT_3DNOW pi2fd pi2fdb pi2fdw pi2fdl pi2fdq +syn keyword gasOpcode_PENT_MMX pmachriw pmachriwb pmachriww pmachriwl pmachriwq +syn keyword gasOpcode_PENT_MMX pmaddwd pmaddwdb pmaddwdw pmaddwdl pmaddwdq +syn keyword gasOpcode_PENT_MMX pmagw pmagwb pmagww pmagwl pmagwq +syn keyword gasOpcode_PENT_MMX pmulhriw pmulhriwb pmulhriww pmulhriwl pmulhriwq +syn keyword gasOpcode_PENT_3DNOW pmulhrwa pmulhrwab pmulhrwaw pmulhrwal pmulhrwaq +syn keyword gasOpcode_PENT_MMX pmulhrwc pmulhrwcb pmulhrwcw pmulhrwcl pmulhrwcq +syn keyword gasOpcode_PENT_MMX pmulhw pmulhwb pmulhww pmulhwl pmulhwq +syn keyword gasOpcode_PENT_MMX pmullw pmullwb pmullww pmullwl pmullwq +syn keyword gasOpcode_PENT_MMX pmvgezb pmvgezbb pmvgezbw pmvgezbl pmvgezbq +syn keyword gasOpcode_PENT_MMX pmvlzb pmvlzbb pmvlzbw pmvlzbl pmvlzbq +syn keyword gasOpcode_PENT_MMX pmvnzb pmvnzbb pmvnzbw pmvnzbl pmvnzbq +syn keyword gasOpcode_PENT_MMX pmvzb pmvzbb pmvzbw pmvzbl pmvzbq +syn keyword gasOpcode_X64_Base pop popb popw popl popq +syn keyword gasOpcode_386_Base pop +syn keyword gasOpcode_186_Base popa +syn keyword gasOpcode_386_Base popad +syn keyword gasOpcode_186_Base popaw +syn keyword gasOpcode_8086_Base popf +syn keyword gasOpcode_386_Base popfd popfl +syn keyword gasOpcode_X64_Base popfq +syn keyword gasOpcode_8086_Base popfw +syn keyword gasOpcode_PENT_MMX por porb porw porl porq +syn keyword gasOpcode_PENT_3DNOW prefetch prefetchb prefetchw prefetchl prefetchq +syn keyword gasOpcode_PENT_3DNOW prefetchw prefetchwb prefetchww prefetchwl prefetchwq +syn keyword gasOpcode_PENT_MMX pslld pslldb pslldw pslldl pslldq +syn keyword gasOpcode_PENT_MMX psllq psllqb psllqw psllql psllqq +syn keyword gasOpcode_PENT_MMX psllw psllwb psllww psllwl psllwq +syn keyword gasOpcode_PENT_MMX psrad psradb psradw psradl psradq +syn keyword gasOpcode_PENT_MMX psraw psrawb psraww psrawl psrawq +syn keyword gasOpcode_PENT_MMX psrld psrldb psrldw psrldl psrldq +syn keyword gasOpcode_PENT_MMX psrlq psrlqb psrlqw psrlql psrlqq +syn keyword gasOpcode_PENT_MMX psrlw psrlwb psrlww psrlwl psrlwq +syn keyword gasOpcode_PENT_MMX psubb psubbb psubbw psubbl psubbq +syn keyword gasOpcode_PENT_MMX psubd psubdb psubdw psubdl psubdq +syn keyword gasOpcode_PENT_MMX psubsb psubsbb psubsbw psubsbl psubsbq +syn keyword gasOpcode_PENT_MMX psubsiw psubsiwb psubsiww psubsiwl psubsiwq +syn keyword gasOpcode_PENT_MMX psubsw psubswb psubsww psubswl psubswq +syn keyword gasOpcode_PENT_MMX psubusb psubusbb psubusbw psubusbl psubusbq +syn keyword gasOpcode_PENT_MMX psubusw psubuswb psubusww psubuswl psubuswq +syn keyword gasOpcode_PENT_MMX psubw psubwb psubww psubwl psubwq +syn keyword gasOpcode_PENT_MMX punpckhbw punpckhbwb punpckhbww punpckhbwl punpckhbwq +syn keyword gasOpcode_PENT_MMX punpckhdq punpckhdqb punpckhdqw punpckhdql punpckhdqq +syn keyword gasOpcode_PENT_MMX punpckhwd punpckhwdb punpckhwdw punpckhwdl punpckhwdq +syn keyword gasOpcode_PENT_MMX punpcklbw punpcklbwb punpcklbww punpcklbwl punpcklbwq +syn keyword gasOpcode_PENT_MMX punpckldq punpckldqb punpckldqw punpckldql punpckldqq +syn keyword gasOpcode_PENT_MMX punpcklwd punpcklwdb punpcklwdw punpcklwdl punpcklwdq +syn keyword gasOpcode_X64_Base push pushb pushw pushl pushq +syn keyword gasOpcode_186_Base pusha +syn keyword gasOpcode_386_Base pushad +syn keyword gasOpcode_186_Base pushaw +syn keyword gasOpcode_8086_Base pushf +syn keyword gasOpcode_386_Base pushfd +syn keyword gasOpcode_X64_Base pushfq +syn keyword gasOpcode_8086_Base pushfw +syn keyword gasOpcode_PENT_MMX pxor pxorb pxorw pxorl pxorq +syn keyword gasOpcode_X64_Base rcl rclb rclw rcll rclq +syn keyword gasOpcode_X64_Base rcr rcrb rcrw rcrl rcrq +syn keyword gasOpcode_P6_Base rdshr +syn keyword gasOpcode_PENT_Base rdmsr +syn keyword gasOpcode_P6_Base rdpmc +syn keyword gasOpcode_PENT_Base rdtsc +syn keyword gasOpcode_X86_64_Base rdtscp +syn keyword gasOpcode_8086_Base ret retb retw retl retq +syn keyword gasOpcode_8086_Base retf retfb retfw retfl retfq +syn keyword gasOpcode_8086_Base retn retnb retnw retnl retnq +syn keyword gasOpcode_X64_Base rol rolb rolw roll rolq +syn keyword gasOpcode_X64_Base ror rorb rorw rorl rorq +syn keyword gasOpcode_P6_Base rdm +syn keyword gasOpcode_486_Base rsdc rsdcb rsdcw rsdcl rsdcq +syn keyword gasOpcode_486_Base rsldt rsldtb rsldtw rsldtl rsldtq +syn keyword gasOpcode_PENTM_Base rsm +syn keyword gasOpcode_486_Base rsts rstsb rstsw rstsl rstsq +syn keyword gasOpcode_8086_Base sahf +syn keyword gasOpcode_X64_Base sal salb salw sall salq +syn keyword gasOpcode_8086_Base salc +syn keyword gasOpcode_X64_Base sar sarb sarw sarl sarq +syn keyword gasOpcode_386_Base sbb sbbb sbbw sbbl sbbq +syn keyword gasOpcode_8086_Base scasb +syn keyword gasOpcode_386_Base scasd +syn keyword gasOpcode_X64_Base scasq +syn keyword gasOpcode_8086_Base scasw +syn keyword gasOpcode_X64_Base sfence +syn keyword gasOpcode_286_Base sgdt sgdtb sgdtw sgdtl sgdtq +syn keyword gasOpcode_X64_Base shl shlb shlw shll shlq +syn keyword gasOpcode_X64_Base shld +syn keyword gasOpcode_X64_Base shr shrb shrw shrl shrq +syn keyword gasOpcode_X64_Base shrd +syn keyword gasOpcode_286_Base sidt sidtb sidtw sidtl sidtq +syn keyword gasOpcode_X64_Base sldt +syn keyword gasOpcode_X64_Base skinit +syn keyword gasOpcode_386_Base smi +syn keyword gasOpcode_P6_Base smint +syn keyword gasOpcode_486_Base smintold +syn keyword gasOpcode_386_Base smsw +syn keyword gasOpcode_8086_Base stc +syn keyword gasOpcode_8086_Base std +syn keyword gasOpcode_X64_Base stgi +syn keyword gasOpcode_8086_Base sti +syn keyword gasOpcode_8086_Base stosb +syn keyword gasOpcode_386_Base stosd stosl +syn keyword gasOpcode_X64_Base stosq +syn keyword gasOpcode_8086_Base stosw +syn keyword gasOpcode_X64_Base str +syn keyword gasOpcode_386_Base sub subb subw subl subq +syn keyword gasOpcode_486_Base svdc svdcb svdcw svdcl svdcq +syn keyword gasOpcode_486_Base svldt svldtb svldtw svldtl svldtq +syn keyword gasOpcode_486_Base svts svtsb svtsw svtsl svtsq +syn keyword gasOpcode_X64_Base swapgs +syn keyword gasOpcode_P6_Base syscall +syn keyword gasOpcode_P6_Base sysenter +syn keyword gasOpcode_P6_Base sysexit +syn keyword gasOpcode_P6_Base sysret +syn keyword gasOpcode_386_Base test testb testw testl testq +syn keyword gasOpcode_186_Base ud0 +syn keyword gasOpcode_186_Base ud1 +syn keyword gasOpcode_186_Base ud2b +syn keyword gasOpcode_186_Base ud2 +syn keyword gasOpcode_186_Base ud2a +syn keyword gasOpcode_386_Base umov +syn keyword gasOpcode_286_Base verr +syn keyword gasOpcode_286_Base verw +syn keyword gasOpcode_8086_Base fwait +syn keyword gasOpcode_486_Base wbinvd +syn keyword gasOpcode_P6_Base wrshr +syn keyword gasOpcode_PENT_Base wrmsr +syn keyword gasOpcode_X64_Base xadd +syn keyword gasOpcode_386_Base xbts +syn keyword gasOpcode_X64_Base xchg +syn keyword gasOpcode_8086_Base xlatb +syn keyword gasOpcode_8086_Base xlat +syn keyword gasOpcode_386_Base xor xorb xorw xorl xorq +syn keyword gasOpcode_X64_Base cmovcc +syn match gasOpcode_8086_Base /\/ +syn match gasOpcode_386_Base /\/ + +"-- Section: VIA (Centaur) security instructions +syn keyword gasOpcode_PENT_Base xstore +syn keyword gasOpcode_PENT_Base xcryptecb +syn keyword gasOpcode_PENT_Base xcryptcbc +syn keyword gasOpcode_PENT_Base xcryptctr +syn keyword gasOpcode_PENT_Base xcryptcfb +syn keyword gasOpcode_PENT_Base xcryptofb +syn keyword gasOpcode_PENT_Base montmul +syn keyword gasOpcode_PENT_Base xsha1 +syn keyword gasOpcode_PENT_Base xsha256 + +"-- Section: Intel AVX Carry-Less Multiplication instructions (CLMUL) +syn keyword gasOpcode_SANDYBRIDGE_AVX vpclmullqlqdq vpclmullqlqdqb vpclmullqlqdqw vpclmullqlqdql vpclmullqlqdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpclmulhqlqdq vpclmulhqlqdqb vpclmulhqlqdqw vpclmulhqlqdql vpclmulhqlqdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpclmullqhqdq vpclmullqhqdqb vpclmullqhqdqw vpclmullqhqdql vpclmullqhqdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpclmulhqhqdq vpclmulhqhqdqb vpclmulhqhqdqw vpclmulhqhqdql vpclmulhqhqdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpclmulqdq vpclmulqdqb vpclmulqdqw vpclmulqdql vpclmulqdqq + +"-- Section: AMD SSE5 instructions +syn keyword gasOpcode_AMD_SSE5 fmaddps fmaddpsb fmaddpsw fmaddpsl fmaddpsq +syn keyword gasOpcode_AMD_SSE5 fmaddpd fmaddpdb fmaddpdw fmaddpdl fmaddpdq +syn keyword gasOpcode_AMD_SSE5 fmaddss fmaddssb fmaddssw fmaddssl fmaddssq +syn keyword gasOpcode_AMD_SSE5 fmaddsd fmaddsdb fmaddsdw fmaddsdl fmaddsdq +syn keyword gasOpcode_AMD_SSE5 fmsubps fmsubpsb fmsubpsw fmsubpsl fmsubpsq +syn keyword gasOpcode_AMD_SSE5 fmsubpd fmsubpdb fmsubpdw fmsubpdl fmsubpdq +syn keyword gasOpcode_AMD_SSE5 fmsubss fmsubssb fmsubssw fmsubssl fmsubssq +syn keyword gasOpcode_AMD_SSE5 fmsubsd fmsubsdb fmsubsdw fmsubsdl fmsubsdq +syn keyword gasOpcode_AMD_SSE5 fnmaddps fnmaddpsb fnmaddpsw fnmaddpsl fnmaddpsq +syn keyword gasOpcode_AMD_SSE5 fnmaddpd fnmaddpdb fnmaddpdw fnmaddpdl fnmaddpdq +syn keyword gasOpcode_AMD_SSE5 fnmaddss fnmaddssb fnmaddssw fnmaddssl fnmaddssq +syn keyword gasOpcode_AMD_SSE5 fnmaddsd fnmaddsdb fnmaddsdw fnmaddsdl fnmaddsdq +syn keyword gasOpcode_AMD_SSE5 fnmsubps fnmsubpsb fnmsubpsw fnmsubpsl fnmsubpsq +syn keyword gasOpcode_AMD_SSE5 fnmsubpd fnmsubpdb fnmsubpdw fnmsubpdl fnmsubpdq +syn keyword gasOpcode_AMD_SSE5 fnmsubss fnmsubssb fnmsubssw fnmsubssl fnmsubssq +syn keyword gasOpcode_AMD_SSE5 fnmsubsd fnmsubsdb fnmsubsdw fnmsubsdl fnmsubsdq +syn keyword gasOpcode_AMD_SSE5 comeqps comeqpsb comeqpsw comeqpsl comeqpsq +syn keyword gasOpcode_AMD_SSE5 comltps comltpsb comltpsw comltpsl comltpsq +syn keyword gasOpcode_AMD_SSE5 comleps comlepsb comlepsw comlepsl comlepsq +syn keyword gasOpcode_AMD_SSE5 comunordps comunordpsb comunordpsw comunordpsl comunordpsq +syn keyword gasOpcode_AMD_SSE5 comuneqps comuneqpsb comuneqpsw comuneqpsl comuneqpsq +syn keyword gasOpcode_AMD_SSE5 comunltps comunltpsb comunltpsw comunltpsl comunltpsq +syn keyword gasOpcode_AMD_SSE5 comunleps comunlepsb comunlepsw comunlepsl comunlepsq +syn keyword gasOpcode_AMD_SSE5 comordps comordpsb comordpsw comordpsl comordpsq +syn keyword gasOpcode_AMD_SSE5 comueqps comueqpsb comueqpsw comueqpsl comueqpsq +syn keyword gasOpcode_AMD_SSE5 comultps comultpsb comultpsw comultpsl comultpsq +syn keyword gasOpcode_AMD_SSE5 comuleps comulepsb comulepsw comulepsl comulepsq +syn keyword gasOpcode_AMD_SSE5 comfalseps comfalsepsb comfalsepsw comfalsepsl comfalsepsq +syn keyword gasOpcode_AMD_SSE5 comneqps comneqpsb comneqpsw comneqpsl comneqpsq +syn keyword gasOpcode_AMD_SSE5 comnltps comnltpsb comnltpsw comnltpsl comnltpsq +syn keyword gasOpcode_AMD_SSE5 comnleps comnlepsb comnlepsw comnlepsl comnlepsq +syn keyword gasOpcode_AMD_SSE5 comtrueps comtruepsb comtruepsw comtruepsl comtruepsq +syn keyword gasOpcode_AMD_SSE5 comps compsb compsw compsl compsq +syn keyword gasOpcode_AMD_SSE5 comeqpd comeqpdb comeqpdw comeqpdl comeqpdq +syn keyword gasOpcode_AMD_SSE5 comltpd comltpdb comltpdw comltpdl comltpdq +syn keyword gasOpcode_AMD_SSE5 comlepd comlepdb comlepdw comlepdl comlepdq +syn keyword gasOpcode_AMD_SSE5 comunordpd comunordpdb comunordpdw comunordpdl comunordpdq +syn keyword gasOpcode_AMD_SSE5 comuneqpd comuneqpdb comuneqpdw comuneqpdl comuneqpdq +syn keyword gasOpcode_AMD_SSE5 comunltpd comunltpdb comunltpdw comunltpdl comunltpdq +syn keyword gasOpcode_AMD_SSE5 comunlepd comunlepdb comunlepdw comunlepdl comunlepdq +syn keyword gasOpcode_AMD_SSE5 comordpd comordpdb comordpdw comordpdl comordpdq +syn keyword gasOpcode_AMD_SSE5 comueqpd comueqpdb comueqpdw comueqpdl comueqpdq +syn keyword gasOpcode_AMD_SSE5 comultpd comultpdb comultpdw comultpdl comultpdq +syn keyword gasOpcode_AMD_SSE5 comulepd comulepdb comulepdw comulepdl comulepdq +syn keyword gasOpcode_AMD_SSE5 comfalsepd comfalsepdb comfalsepdw comfalsepdl comfalsepdq +syn keyword gasOpcode_AMD_SSE5 comneqpd comneqpdb comneqpdw comneqpdl comneqpdq +syn keyword gasOpcode_AMD_SSE5 comnltpd comnltpdb comnltpdw comnltpdl comnltpdq +syn keyword gasOpcode_AMD_SSE5 comnlepd comnlepdb comnlepdw comnlepdl comnlepdq +syn keyword gasOpcode_AMD_SSE5 comtruepd comtruepdb comtruepdw comtruepdl comtruepdq +syn keyword gasOpcode_AMD_SSE5 compd compdb compdw compdl compdq +syn keyword gasOpcode_AMD_SSE5 comeqss comeqssb comeqssw comeqssl comeqssq +syn keyword gasOpcode_AMD_SSE5 comltss comltssb comltssw comltssl comltssq +syn keyword gasOpcode_AMD_SSE5 comless comlessb comlessw comlessl comlessq +syn keyword gasOpcode_AMD_SSE5 comunordss comunordssb comunordssw comunordssl comunordssq +syn keyword gasOpcode_AMD_SSE5 comuneqss comuneqssb comuneqssw comuneqssl comuneqssq +syn keyword gasOpcode_AMD_SSE5 comunltss comunltssb comunltssw comunltssl comunltssq +syn keyword gasOpcode_AMD_SSE5 comunless comunlessb comunlessw comunlessl comunlessq +syn keyword gasOpcode_AMD_SSE5 comordss comordssb comordssw comordssl comordssq +syn keyword gasOpcode_AMD_SSE5 comueqss comueqssb comueqssw comueqssl comueqssq +syn keyword gasOpcode_AMD_SSE5 comultss comultssb comultssw comultssl comultssq +syn keyword gasOpcode_AMD_SSE5 comuless comulessb comulessw comulessl comulessq +syn keyword gasOpcode_AMD_SSE5 comfalsess comfalsessb comfalsessw comfalsessl comfalsessq +syn keyword gasOpcode_AMD_SSE5 comneqss comneqssb comneqssw comneqssl comneqssq +syn keyword gasOpcode_AMD_SSE5 comnltss comnltssb comnltssw comnltssl comnltssq +syn keyword gasOpcode_AMD_SSE5 comnless comnlessb comnlessw comnlessl comnlessq +syn keyword gasOpcode_AMD_SSE5 comtruess comtruessb comtruessw comtruessl comtruessq +syn keyword gasOpcode_AMD_SSE5 comss comssb comssw comssl comssq +syn keyword gasOpcode_AMD_SSE5 comeqsd comeqsdb comeqsdw comeqsdl comeqsdq +syn keyword gasOpcode_AMD_SSE5 comltsd comltsdb comltsdw comltsdl comltsdq +syn keyword gasOpcode_AMD_SSE5 comlesd comlesdb comlesdw comlesdl comlesdq +syn keyword gasOpcode_AMD_SSE5 comunordsd comunordsdb comunordsdw comunordsdl comunordsdq +syn keyword gasOpcode_AMD_SSE5 comuneqsd comuneqsdb comuneqsdw comuneqsdl comuneqsdq +syn keyword gasOpcode_AMD_SSE5 comunltsd comunltsdb comunltsdw comunltsdl comunltsdq +syn keyword gasOpcode_AMD_SSE5 comunlesd comunlesdb comunlesdw comunlesdl comunlesdq +syn keyword gasOpcode_AMD_SSE5 comordsd comordsdb comordsdw comordsdl comordsdq +syn keyword gasOpcode_AMD_SSE5 comueqsd comueqsdb comueqsdw comueqsdl comueqsdq +syn keyword gasOpcode_AMD_SSE5 comultsd comultsdb comultsdw comultsdl comultsdq +syn keyword gasOpcode_AMD_SSE5 comulesd comulesdb comulesdw comulesdl comulesdq +syn keyword gasOpcode_AMD_SSE5 comfalsesd comfalsesdb comfalsesdw comfalsesdl comfalsesdq +syn keyword gasOpcode_AMD_SSE5 comneqsd comneqsdb comneqsdw comneqsdl comneqsdq +syn keyword gasOpcode_AMD_SSE5 comnltsd comnltsdb comnltsdw comnltsdl comnltsdq +syn keyword gasOpcode_AMD_SSE5 comnlesd comnlesdb comnlesdw comnlesdl comnlesdq +syn keyword gasOpcode_AMD_SSE5 comtruesd comtruesdb comtruesdw comtruesdl comtruesdq +syn keyword gasOpcode_AMD_SSE5 comsd comsdb comsdw comsdl comsdq +syn keyword gasOpcode_AMD_SSE5 pcomltb pcomltbb pcomltbw pcomltbl pcomltbq +syn keyword gasOpcode_AMD_SSE5 pcomleb pcomlebb pcomlebw pcomlebl pcomlebq +syn keyword gasOpcode_AMD_SSE5 pcomgtb pcomgtbb pcomgtbw pcomgtbl pcomgtbq +syn keyword gasOpcode_AMD_SSE5 pcomgeb pcomgebb pcomgebw pcomgebl pcomgebq +syn keyword gasOpcode_AMD_SSE5 pcomeqb pcomeqbb pcomeqbw pcomeqbl pcomeqbq +syn keyword gasOpcode_AMD_SSE5 pcomneqb pcomneqbb pcomneqbw pcomneqbl pcomneqbq +syn keyword gasOpcode_AMD_SSE5 pcomfalseb pcomfalsebb pcomfalsebw pcomfalsebl pcomfalsebq +syn keyword gasOpcode_AMD_SSE5 pcomtrueb pcomtruebb pcomtruebw pcomtruebl pcomtruebq +syn keyword gasOpcode_AMD_SSE5 pcomb pcombb pcombw pcombl pcombq +syn keyword gasOpcode_AMD_SSE5 pcomltw pcomltwb pcomltww pcomltwl pcomltwq +syn keyword gasOpcode_AMD_SSE5 pcomlew pcomlewb pcomleww pcomlewl pcomlewq +syn keyword gasOpcode_AMD_SSE5 pcomgtw pcomgtwb pcomgtww pcomgtwl pcomgtwq +syn keyword gasOpcode_AMD_SSE5 pcomgew pcomgewb pcomgeww pcomgewl pcomgewq +syn keyword gasOpcode_AMD_SSE5 pcomeqw pcomeqwb pcomeqww pcomeqwl pcomeqwq +syn keyword gasOpcode_AMD_SSE5 pcomneqw pcomneqwb pcomneqww pcomneqwl pcomneqwq +syn keyword gasOpcode_AMD_SSE5 pcomfalsew pcomfalsewb pcomfalseww pcomfalsewl pcomfalsewq +syn keyword gasOpcode_AMD_SSE5 pcomtruew pcomtruewb pcomtrueww pcomtruewl pcomtruewq +syn keyword gasOpcode_AMD_SSE5 pcomw pcomwb pcomww pcomwl pcomwq +syn keyword gasOpcode_AMD_SSE5 pcomltd pcomltdb pcomltdw pcomltdl pcomltdq +syn keyword gasOpcode_AMD_SSE5 pcomled pcomledb pcomledw pcomledl pcomledq +syn keyword gasOpcode_AMD_SSE5 pcomgtd pcomgtdb pcomgtdw pcomgtdl pcomgtdq +syn keyword gasOpcode_AMD_SSE5 pcomged pcomgedb pcomgedw pcomgedl pcomgedq +syn keyword gasOpcode_AMD_SSE5 pcomeqd pcomeqdb pcomeqdw pcomeqdl pcomeqdq +syn keyword gasOpcode_AMD_SSE5 pcomneqd pcomneqdb pcomneqdw pcomneqdl pcomneqdq +syn keyword gasOpcode_AMD_SSE5 pcomfalsed pcomfalsedb pcomfalsedw pcomfalsedl pcomfalsedq +syn keyword gasOpcode_AMD_SSE5 pcomtrued pcomtruedb pcomtruedw pcomtruedl pcomtruedq +syn keyword gasOpcode_AMD_SSE5 pcomd pcomdb pcomdw pcomdl pcomdq +syn keyword gasOpcode_AMD_SSE5 pcomltq pcomltqb pcomltqw pcomltql pcomltqq +syn keyword gasOpcode_AMD_SSE5 pcomleq pcomleqb pcomleqw pcomleql pcomleqq +syn keyword gasOpcode_AMD_SSE5 pcomgtq pcomgtqb pcomgtqw pcomgtql pcomgtqq +syn keyword gasOpcode_AMD_SSE5 pcomgeq pcomgeqb pcomgeqw pcomgeql pcomgeqq +syn keyword gasOpcode_AMD_SSE5 pcomeqq pcomeqqb pcomeqqw pcomeqql pcomeqqq +syn keyword gasOpcode_AMD_SSE5 pcomneqq pcomneqqb pcomneqqw pcomneqql pcomneqqq +syn keyword gasOpcode_AMD_SSE5 pcomfalseq pcomfalseqb pcomfalseqw pcomfalseql pcomfalseqq +syn keyword gasOpcode_AMD_SSE5 pcomtrueq pcomtrueqb pcomtrueqw pcomtrueql pcomtrueqq +syn keyword gasOpcode_AMD_SSE5 pcomq pcomqb pcomqw pcomql pcomqq +syn keyword gasOpcode_AMD_SSE5 pcomltub pcomltubb pcomltubw pcomltubl pcomltubq +syn keyword gasOpcode_AMD_SSE5 pcomleub pcomleubb pcomleubw pcomleubl pcomleubq +syn keyword gasOpcode_AMD_SSE5 pcomgtub pcomgtubb pcomgtubw pcomgtubl pcomgtubq +syn keyword gasOpcode_AMD_SSE5 pcomgeub pcomgeubb pcomgeubw pcomgeubl pcomgeubq +syn keyword gasOpcode_AMD_SSE5 pcomequb pcomequbb pcomequbw pcomequbl pcomequbq +syn keyword gasOpcode_AMD_SSE5 pcomnequb pcomnequbb pcomnequbw pcomnequbl pcomnequbq +syn keyword gasOpcode_AMD_SSE5 pcomfalseub pcomfalseubb pcomfalseubw pcomfalseubl pcomfalseubq +syn keyword gasOpcode_AMD_SSE5 pcomtrueub pcomtrueubb pcomtrueubw pcomtrueubl pcomtrueubq +syn keyword gasOpcode_AMD_SSE5 pcomub pcomubb pcomubw pcomubl pcomubq +syn keyword gasOpcode_AMD_SSE5 pcomltuw pcomltuwb pcomltuww pcomltuwl pcomltuwq +syn keyword gasOpcode_AMD_SSE5 pcomleuw pcomleuwb pcomleuww pcomleuwl pcomleuwq +syn keyword gasOpcode_AMD_SSE5 pcomgtuw pcomgtuwb pcomgtuww pcomgtuwl pcomgtuwq +syn keyword gasOpcode_AMD_SSE5 pcomgeuw pcomgeuwb pcomgeuww pcomgeuwl pcomgeuwq +syn keyword gasOpcode_AMD_SSE5 pcomequw pcomequwb pcomequww pcomequwl pcomequwq +syn keyword gasOpcode_AMD_SSE5 pcomnequw pcomnequwb pcomnequww pcomnequwl pcomnequwq +syn keyword gasOpcode_AMD_SSE5 pcomfalseuw pcomfalseuwb pcomfalseuww pcomfalseuwl pcomfalseuwq +syn keyword gasOpcode_AMD_SSE5 pcomtrueuw pcomtrueuwb pcomtrueuww pcomtrueuwl pcomtrueuwq +syn keyword gasOpcode_AMD_SSE5 pcomuw pcomuwb pcomuww pcomuwl pcomuwq +syn keyword gasOpcode_AMD_SSE5 pcomltud pcomltudb pcomltudw pcomltudl pcomltudq +syn keyword gasOpcode_AMD_SSE5 pcomleud pcomleudb pcomleudw pcomleudl pcomleudq +syn keyword gasOpcode_AMD_SSE5 pcomgtud pcomgtudb pcomgtudw pcomgtudl pcomgtudq +syn keyword gasOpcode_AMD_SSE5 pcomgeud pcomgeudb pcomgeudw pcomgeudl pcomgeudq +syn keyword gasOpcode_AMD_SSE5 pcomequd pcomequdb pcomequdw pcomequdl pcomequdq +syn keyword gasOpcode_AMD_SSE5 pcomnequd pcomnequdb pcomnequdw pcomnequdl pcomnequdq +syn keyword gasOpcode_AMD_SSE5 pcomfalseud pcomfalseudb pcomfalseudw pcomfalseudl pcomfalseudq +syn keyword gasOpcode_AMD_SSE5 pcomtrueud pcomtrueudb pcomtrueudw pcomtrueudl pcomtrueudq +syn keyword gasOpcode_AMD_SSE5 pcomud pcomudb pcomudw pcomudl pcomudq +syn keyword gasOpcode_AMD_SSE5 pcomltuq pcomltuqb pcomltuqw pcomltuql pcomltuqq +syn keyword gasOpcode_AMD_SSE5 pcomleuq pcomleuqb pcomleuqw pcomleuql pcomleuqq +syn keyword gasOpcode_AMD_SSE5 pcomgtuq pcomgtuqb pcomgtuqw pcomgtuql pcomgtuqq +syn keyword gasOpcode_AMD_SSE5 pcomgeuq pcomgeuqb pcomgeuqw pcomgeuql pcomgeuqq +syn keyword gasOpcode_AMD_SSE5 pcomequq pcomequqb pcomequqw pcomequql pcomequqq +syn keyword gasOpcode_AMD_SSE5 pcomnequq pcomnequqb pcomnequqw pcomnequql pcomnequqq +syn keyword gasOpcode_AMD_SSE5 pcomfalseuq pcomfalseuqb pcomfalseuqw pcomfalseuql pcomfalseuqq +syn keyword gasOpcode_AMD_SSE5 pcomtrueuq pcomtrueuqb pcomtrueuqw pcomtrueuql pcomtrueuqq +syn keyword gasOpcode_AMD_SSE5 pcomuq pcomuqb pcomuqw pcomuql pcomuqq +syn keyword gasOpcode_AMD_SSE5 permps permpsb permpsw permpsl permpsq +syn keyword gasOpcode_AMD_SSE5 permpd permpdb permpdw permpdl permpdq +syn keyword gasOpcode_AMD_SSE5 pcmov pcmovb pcmovw pcmovl pcmovq +syn keyword gasOpcode_AMD_SSE5 pperm ppermb ppermw pperml ppermq +syn keyword gasOpcode_AMD_SSE5 pmacssww pmacsswwb pmacsswww pmacsswwl pmacsswwq +syn keyword gasOpcode_AMD_SSE5 pmacsww pmacswwb pmacswww pmacswwl pmacswwq +syn keyword gasOpcode_AMD_SSE5 pmacsswd pmacsswdb pmacsswdw pmacsswdl pmacsswdq +syn keyword gasOpcode_AMD_SSE5 pmacswd pmacswdb pmacswdw pmacswdl pmacswdq +syn keyword gasOpcode_AMD_SSE5 pmacssdd pmacssddb pmacssddw pmacssddl pmacssddq +syn keyword gasOpcode_AMD_SSE5 pmacsdd pmacsddb pmacsddw pmacsddl pmacsddq +syn keyword gasOpcode_AMD_SSE5 pmacssdql pmacssdqlb pmacssdqlw pmacssdqll pmacssdqlq +syn keyword gasOpcode_AMD_SSE5 pmacsdql pmacsdqlb pmacsdqlw pmacsdqll pmacsdqlq +syn keyword gasOpcode_AMD_SSE5 pmacssdqh pmacssdqhb pmacssdqhw pmacssdqhl pmacssdqhq +syn keyword gasOpcode_AMD_SSE5 pmacsdqh pmacsdqhb pmacsdqhw pmacsdqhl pmacsdqhq +syn keyword gasOpcode_AMD_SSE5 pmadcsswd pmadcsswdb pmadcsswdw pmadcsswdl pmadcsswdq +syn keyword gasOpcode_AMD_SSE5 pmadcswd pmadcswdb pmadcswdw pmadcswdl pmadcswdq +syn keyword gasOpcode_AMD_SSE5 protb protbb protbw protbl protbq +syn keyword gasOpcode_AMD_SSE5 protw protwb protww protwl protwq +syn keyword gasOpcode_AMD_SSE5 protd protdb protdw protdl protdq +syn keyword gasOpcode_AMD_SSE5 protq protqb protqw protql protqq +syn keyword gasOpcode_AMD_SSE5 pshlb pshlbb pshlbw pshlbl pshlbq +syn keyword gasOpcode_AMD_SSE5 pshlw pshlwb pshlww pshlwl pshlwq +syn keyword gasOpcode_AMD_SSE5 pshld pshldb pshldw pshldl pshldq +syn keyword gasOpcode_AMD_SSE5 pshlq pshlqb pshlqw pshlql pshlqq +syn keyword gasOpcode_AMD_SSE5 pshab pshabb pshabw pshabl pshabq +syn keyword gasOpcode_AMD_SSE5 pshaw pshawb pshaww pshawl pshawq +syn keyword gasOpcode_AMD_SSE5 pshad pshadb pshadw pshadl pshadq +syn keyword gasOpcode_AMD_SSE5 pshaq pshaqb pshaqw pshaql pshaqq +syn keyword gasOpcode_AMD_SSE5 frczps frczpsb frczpsw frczpsl frczpsq +syn keyword gasOpcode_AMD_SSE5 frczpd frczpdb frczpdw frczpdl frczpdq +syn keyword gasOpcode_AMD_SSE5 frczss frczssb frczssw frczssl frczssq +syn keyword gasOpcode_AMD_SSE5 frczsd frczsdb frczsdw frczsdl frczsdq +syn keyword gasOpcode_AMD_SSE5 cvtph2ps cvtph2psb cvtph2psw cvtph2psl cvtph2psq +syn keyword gasOpcode_AMD_SSE5 cvtps2ph cvtps2phb cvtps2phw cvtps2phl cvtps2phq +syn keyword gasOpcode_AMD_SSE5 phaddbw phaddbwb phaddbww phaddbwl phaddbwq +syn keyword gasOpcode_AMD_SSE5 phaddbd phaddbdb phaddbdw phaddbdl phaddbdq +syn keyword gasOpcode_AMD_SSE5 phaddbq phaddbqb phaddbqw phaddbql phaddbqq +syn keyword gasOpcode_AMD_SSE5 phaddwd phaddwdb phaddwdw phaddwdl phaddwdq +syn keyword gasOpcode_AMD_SSE5 phaddwq phaddwqb phaddwqw phaddwql phaddwqq +syn keyword gasOpcode_AMD_SSE5 phadddq phadddqb phadddqw phadddql phadddqq +syn keyword gasOpcode_AMD_SSE5 phaddubw phaddubwb phaddubww phaddubwl phaddubwq +syn keyword gasOpcode_AMD_SSE5 phaddubd phaddubdb phaddubdw phaddubdl phaddubdq +syn keyword gasOpcode_AMD_SSE5 phaddubq phaddubqb phaddubqw phaddubql phaddubqq +syn keyword gasOpcode_AMD_SSE5 phadduwd phadduwdb phadduwdw phadduwdl phadduwdq +syn keyword gasOpcode_AMD_SSE5 phadduwq phadduwqb phadduwqw phadduwql phadduwqq +syn keyword gasOpcode_AMD_SSE5 phaddudq phaddudqb phaddudqw phaddudql phaddudqq +syn keyword gasOpcode_AMD_SSE5 phsubbw phsubbwb phsubbww phsubbwl phsubbwq +syn keyword gasOpcode_AMD_SSE5 phsubwd phsubwdb phsubwdw phsubwdl phsubwdq +syn keyword gasOpcode_AMD_SSE5 phsubdq phsubdqb phsubdqw phsubdql phsubdqq +syn keyword gasOpcode_AMD_SSE5 protb protbb protbw protbl protbq +syn keyword gasOpcode_AMD_SSE5 protw protwb protww protwl protwq +syn keyword gasOpcode_AMD_SSE5 protd protdb protdw protdl protdq +syn keyword gasOpcode_AMD_SSE5 protq protqb protqw protql protqq +syn keyword gasOpcode_AMD_SSE5 roundps roundpsb roundpsw roundpsl roundpsq +syn keyword gasOpcode_AMD_SSE5 roundpd roundpdb roundpdw roundpdl roundpdq +syn keyword gasOpcode_AMD_SSE5 roundss roundssb roundssw roundssl roundssq +syn keyword gasOpcode_AMD_SSE5 roundsd roundsdb roundsdw roundsdl roundsdq + +"-- Section: Introduced in Deschutes but necessary for SSE support +syn keyword gasOpcode_P6_SSE fxrstor fxrstorb fxrstorw fxrstorl fxrstorq +syn keyword gasOpcode_P6_SSE fxsave fxsaveb fxsavew fxsavel fxsaveq + +"-- Section: Prescott New Instructions (SSE3) +syn keyword gasOpcode_PRESCOTT_SSE3 addsubpd addsubpdb addsubpdw addsubpdl addsubpdq +syn keyword gasOpcode_PRESCOTT_SSE3 addsubps addsubpsb addsubpsw addsubpsl addsubpsq +syn keyword gasOpcode_PRESCOTT_SSE3 haddpd haddpdb haddpdw haddpdl haddpdq +syn keyword gasOpcode_PRESCOTT_SSE3 haddps haddpsb haddpsw haddpsl haddpsq +syn keyword gasOpcode_PRESCOTT_SSE3 hsubpd hsubpdb hsubpdw hsubpdl hsubpdq +syn keyword gasOpcode_PRESCOTT_SSE3 hsubps hsubpsb hsubpsw hsubpsl hsubpsq +syn keyword gasOpcode_PRESCOTT_SSE3 lddqu lddqub lddquw lddqul lddquq +syn keyword gasOpcode_PRESCOTT_SSE3 movddup movddupb movddupw movddupl movddupq +syn keyword gasOpcode_PRESCOTT_SSE3 movshdup movshdupb movshdupw movshdupl movshdupq +syn keyword gasOpcode_PRESCOTT_SSE3 movsldup movsldupb movsldupw movsldupl movsldupq + +"-- Section: Intel AES instructions +syn keyword gasOpcode_SSE aesenc aesencb aesencw aesencl aesencq +syn keyword gasOpcode_SSE aesenclast aesenclastb aesenclastw aesenclastl aesenclastq +syn keyword gasOpcode_SSE aesdec aesdecb aesdecw aesdecl aesdecq +syn keyword gasOpcode_SSE aesdeclast aesdeclastb aesdeclastw aesdeclastl aesdeclastq +syn keyword gasOpcode_SSE aesimc aesimcb aesimcw aesimcl aesimcq +syn keyword gasOpcode_SSE aeskeygenassist aeskeygenassistb aeskeygenassistw aeskeygenassistl aeskeygenassistq + +"-- Section: Willamette Streaming SIMD instructions (SSE2) +syn keyword gasOpcode_SSE2 addpd addpdb addpdw addpdl addpdq +syn keyword gasOpcode_SSE2 addsd addsdb addsdw addsdl addsdq +syn keyword gasOpcode_SSE2 andnpd andnpdb andnpdw andnpdl andnpdq +syn keyword gasOpcode_SSE2 andpd andpdb andpdw andpdl andpdq +syn keyword gasOpcode_SSE2 cmpeqpd cmpeqpdb cmpeqpdw cmpeqpdl cmpeqpdq +syn keyword gasOpcode_SSE2 cmpeqsd cmpeqsdb cmpeqsdw cmpeqsdl cmpeqsdq +syn keyword gasOpcode_SSE2 cmplepd cmplepdb cmplepdw cmplepdl cmplepdq +syn keyword gasOpcode_SSE2 cmplesd cmplesdb cmplesdw cmplesdl cmplesdq +syn keyword gasOpcode_SSE2 cmpltpd cmpltpdb cmpltpdw cmpltpdl cmpltpdq +syn keyword gasOpcode_SSE2 cmpltsd cmpltsdb cmpltsdw cmpltsdl cmpltsdq +syn keyword gasOpcode_SSE2 cmpneqpd cmpneqpdb cmpneqpdw cmpneqpdl cmpneqpdq +syn keyword gasOpcode_SSE2 cmpneqsd cmpneqsdb cmpneqsdw cmpneqsdl cmpneqsdq +syn keyword gasOpcode_SSE2 cmpnlepd cmpnlepdb cmpnlepdw cmpnlepdl cmpnlepdq +syn keyword gasOpcode_SSE2 cmpnlesd cmpnlesdb cmpnlesdw cmpnlesdl cmpnlesdq +syn keyword gasOpcode_SSE2 cmpnltpd cmpnltpdb cmpnltpdw cmpnltpdl cmpnltpdq +syn keyword gasOpcode_SSE2 cmpnltsd cmpnltsdb cmpnltsdw cmpnltsdl cmpnltsdq +syn keyword gasOpcode_SSE2 cmpordpd cmpordpdb cmpordpdw cmpordpdl cmpordpdq +syn keyword gasOpcode_SSE2 cmpordsd cmpordsdb cmpordsdw cmpordsdl cmpordsdq +syn keyword gasOpcode_SSE2 cmpunordpd cmpunordpdb cmpunordpdw cmpunordpdl cmpunordpdq +syn keyword gasOpcode_SSE2 cmpunordsd cmpunordsdb cmpunordsdw cmpunordsdl cmpunordsdq +syn keyword gasOpcode_Base cmppd cmppdb cmppdw cmppdl cmppdq +syn keyword gasOpcode_SSE2 cmpsd cmpsdb cmpsdw cmpsdl cmpsdq +syn keyword gasOpcode_SSE2 comisd comisdb comisdw comisdl comisdq +syn keyword gasOpcode_SSE2 cvtdq2pd cvtdq2pdb cvtdq2pdw cvtdq2pdl cvtdq2pdq +syn keyword gasOpcode_SSE2 cvtdq2ps cvtdq2psb cvtdq2psw cvtdq2psl cvtdq2psq +syn keyword gasOpcode_SSE2 cvtpd2dq cvtpd2dqb cvtpd2dqw cvtpd2dql cvtpd2dqq +syn keyword gasOpcode_SSE2 cvtpd2pi cvtpd2pib cvtpd2piw cvtpd2pil cvtpd2piq +syn keyword gasOpcode_SSE2 cvtpd2ps cvtpd2psb cvtpd2psw cvtpd2psl cvtpd2psq +syn keyword gasOpcode_SSE2 cvtpi2pd cvtpi2pdb cvtpi2pdw cvtpi2pdl cvtpi2pdq +syn keyword gasOpcode_SSE2 cvtps2dq cvtps2dqb cvtps2dqw cvtps2dql cvtps2dqq +syn keyword gasOpcode_SSE2 cvtps2pd cvtps2pdb cvtps2pdw cvtps2pdl cvtps2pdq +syn keyword gasOpcode_X64_SSE2 cvtsd2si cvtsd2sib cvtsd2siw cvtsd2sil cvtsd2siq +syn keyword gasOpcode_SSE2 cvtsd2ss cvtsd2ssb cvtsd2ssw cvtsd2ssl cvtsd2ssq +syn keyword gasOpcode_X64_SSE2 cvtsi2sd +syn keyword gasOpcode_SSE2 cvtss2sd cvtss2sdb cvtss2sdw cvtss2sdl cvtss2sdq +syn keyword gasOpcode_SSE2 cvttpd2pi cvttpd2pib cvttpd2piw cvttpd2pil cvttpd2piq +syn keyword gasOpcode_SSE2 cvttpd2dq cvttpd2dqb cvttpd2dqw cvttpd2dql cvttpd2dqq +syn keyword gasOpcode_SSE2 cvttps2dq cvttps2dqb cvttps2dqw cvttps2dql cvttps2dqq +syn keyword gasOpcode_X64_SSE2 cvttsd2si cvttsd2sib cvttsd2siw cvttsd2sil cvttsd2siq +syn keyword gasOpcode_SSE2 divpd divpdb divpdw divpdl divpdq +syn keyword gasOpcode_SSE2 divsd divsdb divsdw divsdl divsdq +syn keyword gasOpcode_SSE2 maxpd maxpdb maxpdw maxpdl maxpdq +syn keyword gasOpcode_SSE2 maxsd maxsdb maxsdw maxsdl maxsdq +syn keyword gasOpcode_SSE2 minpd minpdb minpdw minpdl minpdq +syn keyword gasOpcode_SSE2 minsd minsdb minsdw minsdl minsdq +syn keyword gasOpcode_SSE2 movapd movapdb movapdw movapdl movapdq +syn keyword gasOpcode_SSE2 movhpd movhpdb movhpdw movhpdl movhpdq +syn keyword gasOpcode_SSE2 movlpd movlpdb movlpdw movlpdl movlpdq +syn keyword gasOpcode_X64_SSE2 movmskpd +syn keyword gasOpcode_SSE2 movsd movsdb movsdw movsdl movsdq +syn keyword gasOpcode_SSE2 movupd movupdb movupdw movupdl movupdq +syn keyword gasOpcode_SSE2 mulpd mulpdb mulpdw mulpdl mulpdq +syn keyword gasOpcode_SSE2 mulsd mulsdb mulsdw mulsdl mulsdq +syn keyword gasOpcode_SSE2 orpd orpdb orpdw orpdl orpdq +syn keyword gasOpcode_SSE2 shufpd shufpdb shufpdw shufpdl shufpdq +syn keyword gasOpcode_SSE2 sqrtpd sqrtpdb sqrtpdw sqrtpdl sqrtpdq +syn keyword gasOpcode_SSE2 sqrtsd sqrtsdb sqrtsdw sqrtsdl sqrtsdq +syn keyword gasOpcode_SSE2 subpd subpdb subpdw subpdl subpdq +syn keyword gasOpcode_SSE2 subsd subsdb subsdw subsdl subsdq +syn keyword gasOpcode_SSE2 ucomisd ucomisdb ucomisdw ucomisdl ucomisdq +syn keyword gasOpcode_SSE2 unpckhpd unpckhpdb unpckhpdw unpckhpdl unpckhpdq +syn keyword gasOpcode_SSE2 unpcklpd unpcklpdb unpcklpdw unpcklpdl unpcklpdq +syn keyword gasOpcode_SSE2 xorpd xorpdb xorpdw xorpdl xorpdq + +"-- Section: Intel Carry-Less Multiplication instructions (CLMUL) +syn keyword gasOpcode_SSE pclmullqlqdq pclmullqlqdqb pclmullqlqdqw pclmullqlqdql pclmullqlqdqq +syn keyword gasOpcode_SSE pclmulhqlqdq pclmulhqlqdqb pclmulhqlqdqw pclmulhqlqdql pclmulhqlqdqq +syn keyword gasOpcode_SSE pclmullqhqdq pclmullqhqdqb pclmullqhqdqw pclmullqhqdql pclmullqhqdqq +syn keyword gasOpcode_SSE pclmulhqhqdq pclmulhqhqdqb pclmulhqhqdqw pclmulhqhqdql pclmulhqhqdqq +syn keyword gasOpcode_SSE pclmulqdq pclmulqdqb pclmulqdqw pclmulqdql pclmulqdqq + +"-- Section: New MMX instructions introduced in Katmai +syn keyword gasOpcode_KATMAI_MMX maskmovq +syn keyword gasOpcode_KATMAI_MMX movntq movntqb movntqw movntql movntqq +syn keyword gasOpcode_KATMAI_MMX pavgb pavgbb pavgbw pavgbl pavgbq +syn keyword gasOpcode_KATMAI_MMX pavgw pavgwb pavgww pavgwl pavgwq +syn keyword gasOpcode_KATMAI_MMX pextrw pextrwb pextrww pextrwl pextrwq +syn keyword gasOpcode_KATMAI_MMX pinsrw pinsrwb pinsrww pinsrwl pinsrwq +syn keyword gasOpcode_KATMAI_MMX pmaxsw pmaxswb pmaxsww pmaxswl pmaxswq +syn keyword gasOpcode_KATMAI_MMX pmaxub pmaxubb pmaxubw pmaxubl pmaxubq +syn keyword gasOpcode_KATMAI_MMX pminsw pminswb pminsww pminswl pminswq +syn keyword gasOpcode_KATMAI_MMX pminub pminubb pminubw pminubl pminubq +syn keyword gasOpcode_KATMAI_MMX pmovmskb +syn keyword gasOpcode_KATMAI_MMX pmulhuw pmulhuwb pmulhuww pmulhuwl pmulhuwq +syn keyword gasOpcode_KATMAI_MMX psadbw psadbwb psadbww psadbwl psadbwq +syn keyword gasOpcode_KATMAI_MMX2 pshufw pshufwb pshufww pshufwl pshufwq + +"-- Section: Intel SMX +syn keyword gasOpcode_KATMAI_Base getsec + +"-- Section: Katmai Streaming SIMD instructions (SSE -- a.k.a. KNI, XMM, MMX2) +syn keyword gasOpcode_KATMAI_SSE addps addpsb addpsw addpsl addpsq +syn keyword gasOpcode_KATMAI_SSE addss addssb addssw addssl addssq +syn keyword gasOpcode_KATMAI_SSE andnps andnpsb andnpsw andnpsl andnpsq +syn keyword gasOpcode_KATMAI_SSE andps andpsb andpsw andpsl andpsq +syn keyword gasOpcode_KATMAI_SSE cmpeqps cmpeqpsb cmpeqpsw cmpeqpsl cmpeqpsq +syn keyword gasOpcode_KATMAI_SSE cmpeqss cmpeqssb cmpeqssw cmpeqssl cmpeqssq +syn keyword gasOpcode_KATMAI_SSE cmpleps cmplepsb cmplepsw cmplepsl cmplepsq +syn keyword gasOpcode_KATMAI_SSE cmpless cmplessb cmplessw cmplessl cmplessq +syn keyword gasOpcode_KATMAI_SSE cmpltps cmpltpsb cmpltpsw cmpltpsl cmpltpsq +syn keyword gasOpcode_KATMAI_SSE cmpltss cmpltssb cmpltssw cmpltssl cmpltssq +syn keyword gasOpcode_KATMAI_SSE cmpneqps cmpneqpsb cmpneqpsw cmpneqpsl cmpneqpsq +syn keyword gasOpcode_KATMAI_SSE cmpneqss cmpneqssb cmpneqssw cmpneqssl cmpneqssq +syn keyword gasOpcode_KATMAI_SSE cmpnleps cmpnlepsb cmpnlepsw cmpnlepsl cmpnlepsq +syn keyword gasOpcode_KATMAI_SSE cmpnless cmpnlessb cmpnlessw cmpnlessl cmpnlessq +syn keyword gasOpcode_KATMAI_SSE cmpnltps cmpnltpsb cmpnltpsw cmpnltpsl cmpnltpsq +syn keyword gasOpcode_KATMAI_SSE cmpnltss cmpnltssb cmpnltssw cmpnltssl cmpnltssq +syn keyword gasOpcode_KATMAI_SSE cmpordps cmpordpsb cmpordpsw cmpordpsl cmpordpsq +syn keyword gasOpcode_KATMAI_SSE cmpordss cmpordssb cmpordssw cmpordssl cmpordssq +syn keyword gasOpcode_KATMAI_SSE cmpunordps cmpunordpsb cmpunordpsw cmpunordpsl cmpunordpsq +syn keyword gasOpcode_KATMAI_SSE cmpunordss cmpunordssb cmpunordssw cmpunordssl cmpunordssq +syn keyword gasOpcode_KATMAI_SSE cmpps cmppsb cmppsw cmppsl cmppsq +syn keyword gasOpcode_KATMAI_SSE cmpss cmpssb cmpssw cmpssl cmpssq +syn keyword gasOpcode_KATMAI_SSE comiss comissb comissw comissl comissq +syn keyword gasOpcode_KATMAI_SSE cvtpi2ps cvtpi2psb cvtpi2psw cvtpi2psl cvtpi2psq +syn keyword gasOpcode_KATMAI_SSE cvtps2pi cvtps2pib cvtps2piw cvtps2pil cvtps2piq +syn keyword gasOpcode_X64_SSE cvtsi2ss +syn keyword gasOpcode_X64_SSE cvtss2si cvtss2sib cvtss2siw cvtss2sil cvtss2siq +syn keyword gasOpcode_KATMAI_SSE cvttps2pi cvttps2pib cvttps2piw cvttps2pil cvttps2piq +syn keyword gasOpcode_X64_SSE cvttss2si cvttss2sib cvttss2siw cvttss2sil cvttss2siq +syn keyword gasOpcode_KATMAI_SSE divps divpsb divpsw divpsl divpsq +syn keyword gasOpcode_KATMAI_SSE divss divssb divssw divssl divssq +syn keyword gasOpcode_KATMAI_SSE ldmxcsr ldmxcsrb ldmxcsrw ldmxcsrl ldmxcsrq +syn keyword gasOpcode_KATMAI_SSE maxps maxpsb maxpsw maxpsl maxpsq +syn keyword gasOpcode_KATMAI_SSE maxss maxssb maxssw maxssl maxssq +syn keyword gasOpcode_KATMAI_SSE minps minpsb minpsw minpsl minpsq +syn keyword gasOpcode_KATMAI_SSE minss minssb minssw minssl minssq +syn keyword gasOpcode_KATMAI_SSE movaps +syn keyword gasOpcode_KATMAI_SSE movhps movhpsb movhpsw movhpsl movhpsq +syn keyword gasOpcode_KATMAI_SSE movlhps +syn keyword gasOpcode_KATMAI_SSE movlps movlpsb movlpsw movlpsl movlpsq +syn keyword gasOpcode_KATMAI_SSE movhlps +syn keyword gasOpcode_X64_SSE movmskps +syn keyword gasOpcode_KATMAI_SSE movntps movntpsb movntpsw movntpsl movntpsq +syn keyword gasOpcode_KATMAI_SSE movss +syn keyword gasOpcode_KATMAI_SSE movups +syn keyword gasOpcode_KATMAI_SSE mulps mulpsb mulpsw mulpsl mulpsq +syn keyword gasOpcode_KATMAI_SSE mulss mulssb mulssw mulssl mulssq +syn keyword gasOpcode_KATMAI_SSE orps orpsb orpsw orpsl orpsq +syn keyword gasOpcode_KATMAI_SSE rcpps rcppsb rcppsw rcppsl rcppsq +syn keyword gasOpcode_KATMAI_SSE rcpss rcpssb rcpssw rcpssl rcpssq +syn keyword gasOpcode_KATMAI_SSE rsqrtps rsqrtpsb rsqrtpsw rsqrtpsl rsqrtpsq +syn keyword gasOpcode_KATMAI_SSE rsqrtss rsqrtssb rsqrtssw rsqrtssl rsqrtssq +syn keyword gasOpcode_KATMAI_SSE shufps shufpsb shufpsw shufpsl shufpsq +syn keyword gasOpcode_KATMAI_SSE sqrtps sqrtpsb sqrtpsw sqrtpsl sqrtpsq +syn keyword gasOpcode_KATMAI_SSE sqrtss sqrtssb sqrtssw sqrtssl sqrtssq +syn keyword gasOpcode_KATMAI_SSE stmxcsr stmxcsrb stmxcsrw stmxcsrl stmxcsrq +syn keyword gasOpcode_KATMAI_SSE subps subpsb subpsw subpsl subpsq +syn keyword gasOpcode_KATMAI_SSE subss subssb subssw subssl subssq +syn keyword gasOpcode_KATMAI_SSE ucomiss ucomissb ucomissw ucomissl ucomissq +syn keyword gasOpcode_KATMAI_SSE unpckhps unpckhpsb unpckhpsw unpckhpsl unpckhpsq +syn keyword gasOpcode_KATMAI_SSE unpcklps unpcklpsb unpcklpsw unpcklpsl unpcklpsq +syn keyword gasOpcode_KATMAI_SSE xorps xorpsb xorpsw xorpsl xorpsq + +"-- Section: Extended Page Tables VMX instructions +syn keyword gasOpcode_VMX invept inveptb inveptw inveptl inveptq +syn keyword gasOpcode_VMX invvpid invvpidb invvpidw invvpidl invvpidq + +"-- Section: VMX Instructions +syn keyword gasOpcode_VMX vmcall +syn keyword gasOpcode_VMX vmclear vmclearb vmclearw vmclearl vmclearq +syn keyword gasOpcode_VMX vmlaunch +syn keyword gasOpcode_X64_VMX vmload +syn keyword gasOpcode_X64_VMX vmmcall +syn keyword gasOpcode_VMX vmptrld vmptrldb vmptrldw vmptrldl vmptrldq +syn keyword gasOpcode_VMX vmptrst vmptrstb vmptrstw vmptrstl vmptrstq +syn keyword gasOpcode_X64_VMX vmread +syn keyword gasOpcode_VMX vmresume +syn keyword gasOpcode_X64_VMX vmrun +syn keyword gasOpcode_X64_VMX vmsave +syn keyword gasOpcode_X64_VMX vmwrite +syn keyword gasOpcode_VMX vmxoff +syn keyword gasOpcode_VMX vmxon vmxonb vmxonw vmxonl vmxonq + +"-- Section: Intel AVX AES instructions +syn keyword gasOpcode_SANDYBRIDGE_AVX vaesenc vaesencb vaesencw vaesencl vaesencq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaesenclast vaesenclastb vaesenclastw vaesenclastl vaesenclastq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaesdec vaesdecb vaesdecw vaesdecl vaesdecq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaesdeclast vaesdeclastb vaesdeclastw vaesdeclastl vaesdeclastq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaesimc vaesimcb vaesimcw vaesimcl vaesimcq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaeskeygenassist vaeskeygenassistb vaeskeygenassistw vaeskeygenassistl vaeskeygenassistq + +"-- Section: New instructions in Barcelona +syn keyword gasOpcode_X64_Base lzcnt + +"-- Section: Intel AVX instructions +syn keyword gasOpcode_SANDYBRIDGE_AVX vaddpd vaddpdb vaddpdw vaddpdl vaddpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaddps vaddpsb vaddpsw vaddpsl vaddpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaddsd vaddsdb vaddsdw vaddsdl vaddsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaddss vaddssb vaddssw vaddssl vaddssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaddsubpd vaddsubpdb vaddsubpdw vaddsubpdl vaddsubpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vaddsubps vaddsubpsb vaddsubpsw vaddsubpsl vaddsubpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vandpd vandpdb vandpdw vandpdl vandpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vandps vandpsb vandpsw vandpsl vandpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vandnpd vandnpdb vandnpdw vandnpdl vandnpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vandnps vandnpsb vandnpsw vandnpsl vandnpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vblendpd vblendpdb vblendpdw vblendpdl vblendpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vblendps vblendpsb vblendpsw vblendpsl vblendpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vblendvpd vblendvpdb vblendvpdw vblendvpdl vblendvpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vblendvps vblendvpsb vblendvpsw vblendvpsl vblendvpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vblendvpd vblendvpdb vblendvpdw vblendvpdl vblendvpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vbroadcastss vbroadcastssb vbroadcastssw vbroadcastssl vbroadcastssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vbroadcastsd vbroadcastsdb vbroadcastsdw vbroadcastsdl vbroadcastsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vbroadcastf128 vbroadcastf128b vbroadcastf128w vbroadcastf128l vbroadcastf128q +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeqpd vcmpeqpdb vcmpeqpdw vcmpeqpdl vcmpeqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpltpd vcmpltpdb vcmpltpdw vcmpltpdl vcmpltpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmplepd vcmplepdb vcmplepdw vcmplepdl vcmplepdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpunordpd vcmpunordpdb vcmpunordpdw vcmpunordpdl vcmpunordpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneqpd vcmpneqpdb vcmpneqpdw vcmpneqpdl vcmpneqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnltpd vcmpnltpdb vcmpnltpdw vcmpnltpdl vcmpnltpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnlepd vcmpnlepdb vcmpnlepdw vcmpnlepdl vcmpnlepdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpordpd vcmpordpdb vcmpordpdw vcmpordpdl vcmpordpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_uqpd vcmpeq_uqpdb vcmpeq_uqpdw vcmpeq_uqpdl vcmpeq_uqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngepd vcmpngepdb vcmpngepdw vcmpngepdl vcmpngepdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngtpd vcmpngtpdb vcmpngtpdw vcmpngtpdl vcmpngtpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpfalsepd vcmpfalsepdb vcmpfalsepdw vcmpfalsepdl vcmpfalsepdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_oqpd vcmpneq_oqpdb vcmpneq_oqpdw vcmpneq_oqpdl vcmpneq_oqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgepd vcmpgepdb vcmpgepdw vcmpgepdl vcmpgepdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgtpd vcmpgtpdb vcmpgtpdw vcmpgtpdl vcmpgtpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmptruepd vcmptruepdb vcmptruepdw vcmptruepdl vcmptruepdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_ospd vcmpeq_ospdb vcmpeq_ospdw vcmpeq_ospdl vcmpeq_ospdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmplt_oqpd vcmplt_oqpdb vcmplt_oqpdw vcmplt_oqpdl vcmplt_oqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmple_oqpd vcmple_oqpdb vcmple_oqpdw vcmple_oqpdl vcmple_oqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpunord_spd vcmpunord_spdb vcmpunord_spdw vcmpunord_spdl vcmpunord_spdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_uspd vcmpneq_uspdb vcmpneq_uspdw vcmpneq_uspdl vcmpneq_uspdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnlt_uqpd vcmpnlt_uqpdb vcmpnlt_uqpdw vcmpnlt_uqpdl vcmpnlt_uqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnle_uqpd vcmpnle_uqpdb vcmpnle_uqpdw vcmpnle_uqpdl vcmpnle_uqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpord_spd vcmpord_spdb vcmpord_spdw vcmpord_spdl vcmpord_spdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_uspd vcmpeq_uspdb vcmpeq_uspdw vcmpeq_uspdl vcmpeq_uspdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnge_uqpd vcmpnge_uqpdb vcmpnge_uqpdw vcmpnge_uqpdl vcmpnge_uqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngt_uqpd vcmpngt_uqpdb vcmpngt_uqpdw vcmpngt_uqpdl vcmpngt_uqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpfalse_ospd vcmpfalse_ospdb vcmpfalse_ospdw vcmpfalse_ospdl vcmpfalse_ospdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_ospd vcmpneq_ospdb vcmpneq_ospdw vcmpneq_ospdl vcmpneq_ospdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpge_oqpd vcmpge_oqpdb vcmpge_oqpdw vcmpge_oqpdl vcmpge_oqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgt_oqpd vcmpgt_oqpdb vcmpgt_oqpdw vcmpgt_oqpdl vcmpgt_oqpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmptrue_uspd vcmptrue_uspdb vcmptrue_uspdw vcmptrue_uspdl vcmptrue_uspdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmppd vcmppdb vcmppdw vcmppdl vcmppdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeqps vcmpeqpsb vcmpeqpsw vcmpeqpsl vcmpeqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpltps vcmpltpsb vcmpltpsw vcmpltpsl vcmpltpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpleps vcmplepsb vcmplepsw vcmplepsl vcmplepsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpunordps vcmpunordpsb vcmpunordpsw vcmpunordpsl vcmpunordpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneqps vcmpneqpsb vcmpneqpsw vcmpneqpsl vcmpneqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnltps vcmpnltpsb vcmpnltpsw vcmpnltpsl vcmpnltpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnleps vcmpnlepsb vcmpnlepsw vcmpnlepsl vcmpnlepsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpordps vcmpordpsb vcmpordpsw vcmpordpsl vcmpordpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_uqps vcmpeq_uqpsb vcmpeq_uqpsw vcmpeq_uqpsl vcmpeq_uqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngeps vcmpngepsb vcmpngepsw vcmpngepsl vcmpngepsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngtps vcmpngtpsb vcmpngtpsw vcmpngtpsl vcmpngtpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpfalseps vcmpfalsepsb vcmpfalsepsw vcmpfalsepsl vcmpfalsepsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_oqps vcmpneq_oqpsb vcmpneq_oqpsw vcmpneq_oqpsl vcmpneq_oqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgeps vcmpgepsb vcmpgepsw vcmpgepsl vcmpgepsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgtps vcmpgtpsb vcmpgtpsw vcmpgtpsl vcmpgtpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmptrueps vcmptruepsb vcmptruepsw vcmptruepsl vcmptruepsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_osps vcmpeq_ospsb vcmpeq_ospsw vcmpeq_ospsl vcmpeq_ospsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmplt_oqps vcmplt_oqpsb vcmplt_oqpsw vcmplt_oqpsl vcmplt_oqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmple_oqps vcmple_oqpsb vcmple_oqpsw vcmple_oqpsl vcmple_oqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpunord_sps vcmpunord_spsb vcmpunord_spsw vcmpunord_spsl vcmpunord_spsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_usps vcmpneq_uspsb vcmpneq_uspsw vcmpneq_uspsl vcmpneq_uspsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnlt_uqps vcmpnlt_uqpsb vcmpnlt_uqpsw vcmpnlt_uqpsl vcmpnlt_uqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnle_uqps vcmpnle_uqpsb vcmpnle_uqpsw vcmpnle_uqpsl vcmpnle_uqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpord_sps vcmpord_spsb vcmpord_spsw vcmpord_spsl vcmpord_spsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_usps vcmpeq_uspsb vcmpeq_uspsw vcmpeq_uspsl vcmpeq_uspsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnge_uqps vcmpnge_uqpsb vcmpnge_uqpsw vcmpnge_uqpsl vcmpnge_uqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngt_uqps vcmpngt_uqpsb vcmpngt_uqpsw vcmpngt_uqpsl vcmpngt_uqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpfalse_osps vcmpfalse_ospsb vcmpfalse_ospsw vcmpfalse_ospsl vcmpfalse_ospsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_osps vcmpneq_ospsb vcmpneq_ospsw vcmpneq_ospsl vcmpneq_ospsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpge_oqps vcmpge_oqpsb vcmpge_oqpsw vcmpge_oqpsl vcmpge_oqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgt_oqps vcmpgt_oqpsb vcmpgt_oqpsw vcmpgt_oqpsl vcmpgt_oqpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmptrue_usps vcmptrue_uspsb vcmptrue_uspsw vcmptrue_uspsl vcmptrue_uspsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpps vcmppsb vcmppsw vcmppsl vcmppsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeqsd vcmpeqsdb vcmpeqsdw vcmpeqsdl vcmpeqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpltsd vcmpltsdb vcmpltsdw vcmpltsdl vcmpltsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmplesd vcmplesdb vcmplesdw vcmplesdl vcmplesdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpunordsd vcmpunordsdb vcmpunordsdw vcmpunordsdl vcmpunordsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneqsd vcmpneqsdb vcmpneqsdw vcmpneqsdl vcmpneqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnltsd vcmpnltsdb vcmpnltsdw vcmpnltsdl vcmpnltsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnlesd vcmpnlesdb vcmpnlesdw vcmpnlesdl vcmpnlesdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpordsd vcmpordsdb vcmpordsdw vcmpordsdl vcmpordsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_uqsd vcmpeq_uqsdb vcmpeq_uqsdw vcmpeq_uqsdl vcmpeq_uqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngesd vcmpngesdb vcmpngesdw vcmpngesdl vcmpngesdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngtsd vcmpngtsdb vcmpngtsdw vcmpngtsdl vcmpngtsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpfalsesd vcmpfalsesdb vcmpfalsesdw vcmpfalsesdl vcmpfalsesdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_oqsd vcmpneq_oqsdb vcmpneq_oqsdw vcmpneq_oqsdl vcmpneq_oqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgesd vcmpgesdb vcmpgesdw vcmpgesdl vcmpgesdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgtsd vcmpgtsdb vcmpgtsdw vcmpgtsdl vcmpgtsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmptruesd vcmptruesdb vcmptruesdw vcmptruesdl vcmptruesdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_ossd vcmpeq_ossdb vcmpeq_ossdw vcmpeq_ossdl vcmpeq_ossdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmplt_oqsd vcmplt_oqsdb vcmplt_oqsdw vcmplt_oqsdl vcmplt_oqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmple_oqsd vcmple_oqsdb vcmple_oqsdw vcmple_oqsdl vcmple_oqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpunord_ssd vcmpunord_ssdb vcmpunord_ssdw vcmpunord_ssdl vcmpunord_ssdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_ussd vcmpneq_ussdb vcmpneq_ussdw vcmpneq_ussdl vcmpneq_ussdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnlt_uqsd vcmpnlt_uqsdb vcmpnlt_uqsdw vcmpnlt_uqsdl vcmpnlt_uqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnle_uqsd vcmpnle_uqsdb vcmpnle_uqsdw vcmpnle_uqsdl vcmpnle_uqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpord_ssd vcmpord_ssdb vcmpord_ssdw vcmpord_ssdl vcmpord_ssdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_ussd vcmpeq_ussdb vcmpeq_ussdw vcmpeq_ussdl vcmpeq_ussdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnge_uqsd vcmpnge_uqsdb vcmpnge_uqsdw vcmpnge_uqsdl vcmpnge_uqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngt_uqsd vcmpngt_uqsdb vcmpngt_uqsdw vcmpngt_uqsdl vcmpngt_uqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpfalse_ossd vcmpfalse_ossdb vcmpfalse_ossdw vcmpfalse_ossdl vcmpfalse_ossdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_ossd vcmpneq_ossdb vcmpneq_ossdw vcmpneq_ossdl vcmpneq_ossdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpge_oqsd vcmpge_oqsdb vcmpge_oqsdw vcmpge_oqsdl vcmpge_oqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgt_oqsd vcmpgt_oqsdb vcmpgt_oqsdw vcmpgt_oqsdl vcmpgt_oqsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmptrue_ussd vcmptrue_ussdb vcmptrue_ussdw vcmptrue_ussdl vcmptrue_ussdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpsd vcmpsdb vcmpsdw vcmpsdl vcmpsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeqss vcmpeqssb vcmpeqssw vcmpeqssl vcmpeqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpltss vcmpltssb vcmpltssw vcmpltssl vcmpltssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpless vcmplessb vcmplessw vcmplessl vcmplessq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpunordss vcmpunordssb vcmpunordssw vcmpunordssl vcmpunordssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneqss vcmpneqssb vcmpneqssw vcmpneqssl vcmpneqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnltss vcmpnltssb vcmpnltssw vcmpnltssl vcmpnltssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnless vcmpnlessb vcmpnlessw vcmpnlessl vcmpnlessq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpordss vcmpordssb vcmpordssw vcmpordssl vcmpordssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_uqss vcmpeq_uqssb vcmpeq_uqssw vcmpeq_uqssl vcmpeq_uqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngess vcmpngessb vcmpngessw vcmpngessl vcmpngessq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngtss vcmpngtssb vcmpngtssw vcmpngtssl vcmpngtssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpfalsess vcmpfalsessb vcmpfalsessw vcmpfalsessl vcmpfalsessq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_oqss vcmpneq_oqssb vcmpneq_oqssw vcmpneq_oqssl vcmpneq_oqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgess vcmpgessb vcmpgessw vcmpgessl vcmpgessq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgtss vcmpgtssb vcmpgtssw vcmpgtssl vcmpgtssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmptruess vcmptruessb vcmptruessw vcmptruessl vcmptruessq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_osss vcmpeq_osssb vcmpeq_osssw vcmpeq_osssl vcmpeq_osssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmplt_oqss vcmplt_oqssb vcmplt_oqssw vcmplt_oqssl vcmplt_oqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmple_oqss vcmple_oqssb vcmple_oqssw vcmple_oqssl vcmple_oqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpunord_sss vcmpunord_sssb vcmpunord_sssw vcmpunord_sssl vcmpunord_sssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_usss vcmpneq_usssb vcmpneq_usssw vcmpneq_usssl vcmpneq_usssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnlt_uqss vcmpnlt_uqssb vcmpnlt_uqssw vcmpnlt_uqssl vcmpnlt_uqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnle_uqss vcmpnle_uqssb vcmpnle_uqssw vcmpnle_uqssl vcmpnle_uqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpord_sss vcmpord_sssb vcmpord_sssw vcmpord_sssl vcmpord_sssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpeq_usss vcmpeq_usssb vcmpeq_usssw vcmpeq_usssl vcmpeq_usssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpnge_uqss vcmpnge_uqssb vcmpnge_uqssw vcmpnge_uqssl vcmpnge_uqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpngt_uqss vcmpngt_uqssb vcmpngt_uqssw vcmpngt_uqssl vcmpngt_uqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpfalse_osss vcmpfalse_osssb vcmpfalse_osssw vcmpfalse_osssl vcmpfalse_osssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpneq_osss vcmpneq_osssb vcmpneq_osssw vcmpneq_osssl vcmpneq_osssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpge_oqss vcmpge_oqssb vcmpge_oqssw vcmpge_oqssl vcmpge_oqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpgt_oqss vcmpgt_oqssb vcmpgt_oqssw vcmpgt_oqssl vcmpgt_oqssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmptrue_usss vcmptrue_usssb vcmptrue_usssw vcmptrue_usssl vcmptrue_usssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcmpss vcmpssb vcmpssw vcmpssl vcmpssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcomisd vcomisdb vcomisdw vcomisdl vcomisdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcomiss vcomissb vcomissw vcomissl vcomissq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtdq2pd vcvtdq2pdb vcvtdq2pdw vcvtdq2pdl vcvtdq2pdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtdq2ps vcvtdq2psb vcvtdq2psw vcvtdq2psl vcvtdq2psq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtpd2dq vcvtpd2dqb vcvtpd2dqw vcvtpd2dql vcvtpd2dqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtpd2ps vcvtpd2psb vcvtpd2psw vcvtpd2psl vcvtpd2psq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtps2dq vcvtps2dqb vcvtps2dqw vcvtps2dql vcvtps2dqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtps2pd vcvtps2pdb vcvtps2pdw vcvtps2pdl vcvtps2pdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtsd2si vcvtsd2sib vcvtsd2siw vcvtsd2sil vcvtsd2siq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtsd2ss vcvtsd2ssb vcvtsd2ssw vcvtsd2ssl vcvtsd2ssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtsi2sd +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtsi2ss +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtss2sd vcvtss2sdb vcvtss2sdw vcvtss2sdl vcvtss2sdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvtss2si vcvtss2sib vcvtss2siw vcvtss2sil vcvtss2siq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvttpd2dq vcvttpd2dqb vcvttpd2dqw vcvttpd2dql vcvttpd2dqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvttps2dq vcvttps2dqb vcvttps2dqw vcvttps2dql vcvttps2dqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvttsd2si vcvttsd2sib vcvttsd2siw vcvttsd2sil vcvttsd2siq +syn keyword gasOpcode_SANDYBRIDGE_AVX vcvttss2si vcvttss2sib vcvttss2siw vcvttss2sil vcvttss2siq +syn keyword gasOpcode_SANDYBRIDGE_AVX vdivpd vdivpdb vdivpdw vdivpdl vdivpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vdivps vdivpsb vdivpsw vdivpsl vdivpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vdivsd vdivsdb vdivsdw vdivsdl vdivsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vdivss vdivssb vdivssw vdivssl vdivssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vdppd vdppdb vdppdw vdppdl vdppdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vdpps vdppsb vdppsw vdppsl vdppsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vextractf128 vextractf128b vextractf128w vextractf128l vextractf128q +syn keyword gasOpcode_SANDYBRIDGE_AVX vextractps vextractpsb vextractpsw vextractpsl vextractpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vhaddpd vhaddpdb vhaddpdw vhaddpdl vhaddpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vhaddps vhaddpsb vhaddpsw vhaddpsl vhaddpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vhsubpd vhsubpdb vhsubpdw vhsubpdl vhsubpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vhsubps vhsubpsb vhsubpsw vhsubpsl vhsubpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vinsertf128 vinsertf128b vinsertf128w vinsertf128l vinsertf128q +syn keyword gasOpcode_SANDYBRIDGE_AVX vinsertps vinsertpsb vinsertpsw vinsertpsl vinsertpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vlddqu vlddqub vlddquw vlddqul vlddquq +syn keyword gasOpcode_SANDYBRIDGE_AVX vldqqu vldqqub vldqquw vldqqul vldqquq +syn keyword gasOpcode_SANDYBRIDGE_AVX vlddqu vlddqub vlddquw vlddqul vlddquq +syn keyword gasOpcode_SANDYBRIDGE_AVX vldmxcsr vldmxcsrb vldmxcsrw vldmxcsrl vldmxcsrq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmaskmovdqu +syn keyword gasOpcode_SANDYBRIDGE_AVX vmaskmovps vmaskmovpsb vmaskmovpsw vmaskmovpsl vmaskmovpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmaskmovpd vmaskmovpdb vmaskmovpdw vmaskmovpdl vmaskmovpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmaxpd vmaxpdb vmaxpdw vmaxpdl vmaxpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmaxps vmaxpsb vmaxpsw vmaxpsl vmaxpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmaxsd vmaxsdb vmaxsdw vmaxsdl vmaxsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmaxss vmaxssb vmaxssw vmaxssl vmaxssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vminpd vminpdb vminpdw vminpdl vminpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vminps vminpsb vminpsw vminpsl vminpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vminsd vminsdb vminsdw vminsdl vminsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vminss vminssb vminssw vminssl vminssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovapd vmovapdb vmovapdw vmovapdl vmovapdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovaps vmovapsb vmovapsw vmovapsl vmovapsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovq vmovqb vmovqw vmovql vmovqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovd +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovd +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovddup vmovddupb vmovddupw vmovddupl vmovddupq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovdqa vmovdqab vmovdqaw vmovdqal vmovdqaq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovqqa vmovqqab vmovqqaw vmovqqal vmovqqaq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovdqa vmovdqab vmovdqaw vmovdqal vmovdqaq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovdqu vmovdqub vmovdquw vmovdqul vmovdquq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovqqu vmovqqub vmovqquw vmovqqul vmovqquq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovdqu vmovdqub vmovdquw vmovdqul vmovdquq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovhlps +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovhpd vmovhpdb vmovhpdw vmovhpdl vmovhpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovhps vmovhpsb vmovhpsw vmovhpsl vmovhpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovlhps +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovlpd vmovlpdb vmovlpdw vmovlpdl vmovlpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovlps vmovlpsb vmovlpsw vmovlpsl vmovlpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovmskpd vmovmskpdb vmovmskpdw vmovmskpdl vmovmskpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovmskps vmovmskpsb vmovmskpsw vmovmskpsl vmovmskpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovntdq vmovntdqb vmovntdqw vmovntdql vmovntdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovntqq vmovntqqb vmovntqqw vmovntqql vmovntqqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovntdq vmovntdqb vmovntdqw vmovntdql vmovntdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovntdqa vmovntdqab vmovntdqaw vmovntdqal vmovntdqaq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovntpd vmovntpdb vmovntpdw vmovntpdl vmovntpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovntps vmovntpsb vmovntpsw vmovntpsl vmovntpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovsd vmovsdb vmovsdw vmovsdl vmovsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovshdup vmovshdupb vmovshdupw vmovshdupl vmovshdupq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovsldup vmovsldupb vmovsldupw vmovsldupl vmovsldupq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovss vmovssb vmovssw vmovssl vmovssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovupd vmovupdb vmovupdw vmovupdl vmovupdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmovups vmovupsb vmovupsw vmovupsl vmovupsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmpsadbw vmpsadbwb vmpsadbww vmpsadbwl vmpsadbwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmulpd vmulpdb vmulpdw vmulpdl vmulpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmulps vmulpsb vmulpsw vmulpsl vmulpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmulsd vmulsdb vmulsdw vmulsdl vmulsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vmulss vmulssb vmulssw vmulssl vmulssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vorpd vorpdb vorpdw vorpdl vorpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vorps vorpsb vorpsw vorpsl vorpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpabsb vpabsbb vpabsbw vpabsbl vpabsbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpabsw vpabswb vpabsww vpabswl vpabswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpabsd vpabsdb vpabsdw vpabsdl vpabsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpacksswb vpacksswbb vpacksswbw vpacksswbl vpacksswbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpackssdw vpackssdwb vpackssdww vpackssdwl vpackssdwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpackuswb vpackuswbb vpackuswbw vpackuswbl vpackuswbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpackusdw vpackusdwb vpackusdww vpackusdwl vpackusdwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpaddb vpaddbb vpaddbw vpaddbl vpaddbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpaddw vpaddwb vpaddww vpaddwl vpaddwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpaddd vpadddb vpadddw vpadddl vpadddq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpaddq vpaddqb vpaddqw vpaddql vpaddqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpaddsb vpaddsbb vpaddsbw vpaddsbl vpaddsbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpaddsw vpaddswb vpaddsww vpaddswl vpaddswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpaddusb vpaddusbb vpaddusbw vpaddusbl vpaddusbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpaddusw vpadduswb vpaddusww vpadduswl vpadduswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpalignr vpalignrb vpalignrw vpalignrl vpalignrq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpand vpandb vpandw vpandl vpandq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpandn vpandnb vpandnw vpandnl vpandnq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpavgb vpavgbb vpavgbw vpavgbl vpavgbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpavgw vpavgwb vpavgww vpavgwl vpavgwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpblendvb vpblendvbb vpblendvbw vpblendvbl vpblendvbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpblendw vpblendwb vpblendww vpblendwl vpblendwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpestri vpcmpestrib vpcmpestriw vpcmpestril vpcmpestriq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpestrm vpcmpestrmb vpcmpestrmw vpcmpestrml vpcmpestrmq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpistri vpcmpistrib vpcmpistriw vpcmpistril vpcmpistriq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpistrm vpcmpistrmb vpcmpistrmw vpcmpistrml vpcmpistrmq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpeqb vpcmpeqbb vpcmpeqbw vpcmpeqbl vpcmpeqbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpeqw vpcmpeqwb vpcmpeqww vpcmpeqwl vpcmpeqwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpeqd vpcmpeqdb vpcmpeqdw vpcmpeqdl vpcmpeqdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpeqq vpcmpeqqb vpcmpeqqw vpcmpeqql vpcmpeqqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpgtb vpcmpgtbb vpcmpgtbw vpcmpgtbl vpcmpgtbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpgtw vpcmpgtwb vpcmpgtww vpcmpgtwl vpcmpgtwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpgtd vpcmpgtdb vpcmpgtdw vpcmpgtdl vpcmpgtdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpcmpgtq vpcmpgtqb vpcmpgtqw vpcmpgtql vpcmpgtqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermilpd vpermilpdb vpermilpdw vpermilpdl vpermilpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermiltd2pd vpermiltd2pdb vpermiltd2pdw vpermiltd2pdl vpermiltd2pdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermilmo2pd vpermilmo2pdb vpermilmo2pdw vpermilmo2pdl vpermilmo2pdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermilmz2pd vpermilmz2pdb vpermilmz2pdw vpermilmz2pdl vpermilmz2pdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermil2pd vpermil2pdb vpermil2pdw vpermil2pdl vpermil2pdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermilps vpermilpsb vpermilpsw vpermilpsl vpermilpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermiltd2ps vpermiltd2psb vpermiltd2psw vpermiltd2psl vpermiltd2psq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermilmo2ps vpermilmo2psb vpermilmo2psw vpermilmo2psl vpermilmo2psq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermilmz2ps vpermilmz2psb vpermilmz2psw vpermilmz2psl vpermilmz2psq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpermil2ps vpermil2psb vpermil2psw vpermil2psl vpermil2psq +syn keyword gasOpcode_SANDYBRIDGE_AVX vperm2f128 vperm2f128b vperm2f128w vperm2f128l vperm2f128q +syn keyword gasOpcode_SANDYBRIDGE_AVX vpextrb vpextrbb vpextrbw vpextrbl vpextrbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpextrw vpextrwb vpextrww vpextrwl vpextrwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpextrd vpextrdb vpextrdw vpextrdl vpextrdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpextrq vpextrqb vpextrqw vpextrql vpextrqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vphaddw vphaddwb vphaddww vphaddwl vphaddwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vphaddd vphadddb vphadddw vphadddl vphadddq +syn keyword gasOpcode_SANDYBRIDGE_AVX vphaddsw vphaddswb vphaddsww vphaddswl vphaddswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vphminposuw vphminposuwb vphminposuww vphminposuwl vphminposuwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vphsubw vphsubwb vphsubww vphsubwl vphsubwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vphsubd vphsubdb vphsubdw vphsubdl vphsubdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vphsubsw vphsubswb vphsubsww vphsubswl vphsubswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpinsrb vpinsrbb vpinsrbw vpinsrbl vpinsrbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpinsrw vpinsrwb vpinsrww vpinsrwl vpinsrwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpinsrd vpinsrdb vpinsrdw vpinsrdl vpinsrdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpinsrq vpinsrqb vpinsrqw vpinsrql vpinsrqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmaddwd vpmaddwdb vpmaddwdw vpmaddwdl vpmaddwdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmaddubsw vpmaddubswb vpmaddubsww vpmaddubswl vpmaddubswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmaxsb vpmaxsbb vpmaxsbw vpmaxsbl vpmaxsbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmaxsw vpmaxswb vpmaxsww vpmaxswl vpmaxswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmaxsd vpmaxsdb vpmaxsdw vpmaxsdl vpmaxsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmaxub vpmaxubb vpmaxubw vpmaxubl vpmaxubq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmaxuw vpmaxuwb vpmaxuww vpmaxuwl vpmaxuwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmaxud vpmaxudb vpmaxudw vpmaxudl vpmaxudq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpminsb vpminsbb vpminsbw vpminsbl vpminsbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpminsw vpminswb vpminsww vpminswl vpminswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpminsd vpminsdb vpminsdw vpminsdl vpminsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpminub vpminubb vpminubw vpminubl vpminubq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpminuw vpminuwb vpminuww vpminuwl vpminuwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpminud vpminudb vpminudw vpminudl vpminudq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovmskb +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovsxbw vpmovsxbwb vpmovsxbww vpmovsxbwl vpmovsxbwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovsxbd vpmovsxbdb vpmovsxbdw vpmovsxbdl vpmovsxbdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovsxbq vpmovsxbqb vpmovsxbqw vpmovsxbql vpmovsxbqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovsxwd vpmovsxwdb vpmovsxwdw vpmovsxwdl vpmovsxwdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovsxwq vpmovsxwqb vpmovsxwqw vpmovsxwql vpmovsxwqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovsxdq vpmovsxdqb vpmovsxdqw vpmovsxdql vpmovsxdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovzxbw vpmovzxbwb vpmovzxbww vpmovzxbwl vpmovzxbwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovzxbd vpmovzxbdb vpmovzxbdw vpmovzxbdl vpmovzxbdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovzxbq vpmovzxbqb vpmovzxbqw vpmovzxbql vpmovzxbqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovzxwd vpmovzxwdb vpmovzxwdw vpmovzxwdl vpmovzxwdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovzxwq vpmovzxwqb vpmovzxwqw vpmovzxwql vpmovzxwqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmovzxdq vpmovzxdqb vpmovzxdqw vpmovzxdql vpmovzxdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmulhuw vpmulhuwb vpmulhuww vpmulhuwl vpmulhuwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmulhrsw vpmulhrswb vpmulhrsww vpmulhrswl vpmulhrswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmulhw vpmulhwb vpmulhww vpmulhwl vpmulhwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmullw vpmullwb vpmullww vpmullwl vpmullwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmulld vpmulldb vpmulldw vpmulldl vpmulldq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmuludq vpmuludqb vpmuludqw vpmuludql vpmuludqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpmuldq vpmuldqb vpmuldqw vpmuldql vpmuldqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpor vporb vporw vporl vporq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsadbw vpsadbwb vpsadbww vpsadbwl vpsadbwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpshufb vpshufbb vpshufbw vpshufbl vpshufbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpshufd vpshufdb vpshufdw vpshufdl vpshufdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpshufhw vpshufhwb vpshufhww vpshufhwl vpshufhwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpshuflw vpshuflwb vpshuflww vpshuflwl vpshuflwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsignb vpsignbb vpsignbw vpsignbl vpsignbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsignw vpsignwb vpsignww vpsignwl vpsignwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsignd vpsigndb vpsigndw vpsigndl vpsigndq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpslldq vpslldqb vpslldqw vpslldql vpslldqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsrldq vpsrldqb vpsrldqw vpsrldql vpsrldqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsllw vpsllwb vpsllww vpsllwl vpsllwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpslld vpslldb vpslldw vpslldl vpslldq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsllq vpsllqb vpsllqw vpsllql vpsllqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsraw vpsrawb vpsraww vpsrawl vpsrawq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsrad vpsradb vpsradw vpsradl vpsradq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsrlw vpsrlwb vpsrlww vpsrlwl vpsrlwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsrld vpsrldb vpsrldw vpsrldl vpsrldq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsrlq vpsrlqb vpsrlqw vpsrlql vpsrlqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vptest vptestb vptestw vptestl vptestq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsubb vpsubbb vpsubbw vpsubbl vpsubbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsubw vpsubwb vpsubww vpsubwl vpsubwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsubd vpsubdb vpsubdw vpsubdl vpsubdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsubq vpsubqb vpsubqw vpsubql vpsubqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsubsb vpsubsbb vpsubsbw vpsubsbl vpsubsbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsubsw vpsubswb vpsubsww vpsubswl vpsubswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsubusb vpsubusbb vpsubusbw vpsubusbl vpsubusbq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpsubusw vpsubuswb vpsubusww vpsubuswl vpsubuswq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpunpckhbw vpunpckhbwb vpunpckhbww vpunpckhbwl vpunpckhbwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpunpckhwd vpunpckhwdb vpunpckhwdw vpunpckhwdl vpunpckhwdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpunpckhdq vpunpckhdqb vpunpckhdqw vpunpckhdql vpunpckhdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpunpckhqdq vpunpckhqdqb vpunpckhqdqw vpunpckhqdql vpunpckhqdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpunpcklbw vpunpcklbwb vpunpcklbww vpunpcklbwl vpunpcklbwq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpunpcklwd vpunpcklwdb vpunpcklwdw vpunpcklwdl vpunpcklwdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpunpckldq vpunpckldqb vpunpckldqw vpunpckldql vpunpckldqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpunpcklqdq vpunpcklqdqb vpunpcklqdqw vpunpcklqdql vpunpcklqdqq +syn keyword gasOpcode_SANDYBRIDGE_AVX vpxor vpxorb vpxorw vpxorl vpxorq +syn keyword gasOpcode_SANDYBRIDGE_AVX vrcpps vrcppsb vrcppsw vrcppsl vrcppsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vrcpss vrcpssb vrcpssw vrcpssl vrcpssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vrsqrtps vrsqrtpsb vrsqrtpsw vrsqrtpsl vrsqrtpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vrsqrtss vrsqrtssb vrsqrtssw vrsqrtssl vrsqrtssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vroundpd vroundpdb vroundpdw vroundpdl vroundpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vroundps vroundpsb vroundpsw vroundpsl vroundpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vroundsd vroundsdb vroundsdw vroundsdl vroundsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vroundss vroundssb vroundssw vroundssl vroundssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vshufpd vshufpdb vshufpdw vshufpdl vshufpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vshufps vshufpsb vshufpsw vshufpsl vshufpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vsqrtpd vsqrtpdb vsqrtpdw vsqrtpdl vsqrtpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vsqrtps vsqrtpsb vsqrtpsw vsqrtpsl vsqrtpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vsqrtsd vsqrtsdb vsqrtsdw vsqrtsdl vsqrtsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vsqrtss vsqrtssb vsqrtssw vsqrtssl vsqrtssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vstmxcsr vstmxcsrb vstmxcsrw vstmxcsrl vstmxcsrq +syn keyword gasOpcode_SANDYBRIDGE_AVX vsubpd vsubpdb vsubpdw vsubpdl vsubpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vsubps vsubpsb vsubpsw vsubpsl vsubpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vsubsd vsubsdb vsubsdw vsubsdl vsubsdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vsubss vsubssb vsubssw vsubssl vsubssq +syn keyword gasOpcode_SANDYBRIDGE_AVX vtestps vtestpsb vtestpsw vtestpsl vtestpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vtestpd vtestpdb vtestpdw vtestpdl vtestpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vucomisd vucomisdb vucomisdw vucomisdl vucomisdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vucomiss vucomissb vucomissw vucomissl vucomissq +syn keyword gasOpcode_SANDYBRIDGE_AVX vunpckhpd vunpckhpdb vunpckhpdw vunpckhpdl vunpckhpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vunpckhps vunpckhpsb vunpckhpsw vunpckhpsl vunpckhpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vunpcklpd vunpcklpdb vunpcklpdw vunpcklpdl vunpcklpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vunpcklps vunpcklpsb vunpcklpsw vunpcklpsl vunpcklpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vxorpd vxorpdb vxorpdw vxorpdl vxorpdq +syn keyword gasOpcode_SANDYBRIDGE_AVX vxorps vxorpsb vxorpsw vxorpsl vxorpsq +syn keyword gasOpcode_SANDYBRIDGE_AVX vzeroall +syn keyword gasOpcode_SANDYBRIDGE_AVX vzeroupper + +"-- Section: AMD Enhanced 3DNow! (Athlon) instructions +syn keyword gasOpcode_PENT_3DNOW pf2iw pf2iwb pf2iww pf2iwl pf2iwq +syn keyword gasOpcode_PENT_3DNOW pfnacc pfnaccb pfnaccw pfnaccl pfnaccq +syn keyword gasOpcode_PENT_3DNOW pfpnacc pfpnaccb pfpnaccw pfpnaccl pfpnaccq +syn keyword gasOpcode_PENT_3DNOW pi2fw pi2fwb pi2fww pi2fwl pi2fwq +syn keyword gasOpcode_PENT_3DNOW pswapd pswapdb pswapdw pswapdl pswapdq + +"-- Section: Penryn New Instructions (SSE4.1) +syn keyword gasOpcode_SSE41 blendpd blendpdb blendpdw blendpdl blendpdq +syn keyword gasOpcode_SSE41 blendps blendpsb blendpsw blendpsl blendpsq +syn keyword gasOpcode_SSE41 blendvpd blendvpdb blendvpdw blendvpdl blendvpdq +syn keyword gasOpcode_SSE41 blendvps blendvpsb blendvpsw blendvpsl blendvpsq +syn keyword gasOpcode_SSE41 dppd dppdb dppdw dppdl dppdq +syn keyword gasOpcode_SSE41 dpps dppsb dppsw dppsl dppsq +syn keyword gasOpcode_X64_SSE41 extractps extractpsb extractpsw extractpsl extractpsq +syn keyword gasOpcode_SSE41 insertps insertpsb insertpsw insertpsl insertpsq +syn keyword gasOpcode_SSE41 movntdqa movntdqab movntdqaw movntdqal movntdqaq +syn keyword gasOpcode_SSE41 mpsadbw mpsadbwb mpsadbww mpsadbwl mpsadbwq +syn keyword gasOpcode_SSE41 packusdw packusdwb packusdww packusdwl packusdwq +syn keyword gasOpcode_SSE41 pblendvb pblendvbb pblendvbw pblendvbl pblendvbq +syn keyword gasOpcode_SSE41 pblendw pblendwb pblendww pblendwl pblendwq +syn keyword gasOpcode_SSE41 pcmpeqq pcmpeqqb pcmpeqqw pcmpeqql pcmpeqqq +syn keyword gasOpcode_X64_SSE41 pextrb pextrbb pextrbw pextrbl pextrbq +syn keyword gasOpcode_SSE41 pextrd pextrdb pextrdw pextrdl pextrdq +syn keyword gasOpcode_X64_SSE41 pextrq pextrqb pextrqw pextrql pextrqq +syn keyword gasOpcode_X64_SSE41 pextrw pextrwb pextrww pextrwl pextrwq +syn keyword gasOpcode_SSE41 phminposuw phminposuwb phminposuww phminposuwl phminposuwq +syn keyword gasOpcode_SSE41 pinsrb pinsrbb pinsrbw pinsrbl pinsrbq +syn keyword gasOpcode_SSE41 pinsrd pinsrdb pinsrdw pinsrdl pinsrdq +syn keyword gasOpcode_X64_SSE41 pinsrq pinsrqb pinsrqw pinsrql pinsrqq +syn keyword gasOpcode_SSE41 pmaxsb pmaxsbb pmaxsbw pmaxsbl pmaxsbq +syn keyword gasOpcode_SSE41 pmaxsd pmaxsdb pmaxsdw pmaxsdl pmaxsdq +syn keyword gasOpcode_SSE41 pmaxud pmaxudb pmaxudw pmaxudl pmaxudq +syn keyword gasOpcode_SSE41 pmaxuw pmaxuwb pmaxuww pmaxuwl pmaxuwq +syn keyword gasOpcode_SSE41 pminsb pminsbb pminsbw pminsbl pminsbq +syn keyword gasOpcode_SSE41 pminsd pminsdb pminsdw pminsdl pminsdq +syn keyword gasOpcode_SSE41 pminud pminudb pminudw pminudl pminudq +syn keyword gasOpcode_SSE41 pminuw pminuwb pminuww pminuwl pminuwq +syn keyword gasOpcode_SSE41 pmovsxbw pmovsxbwb pmovsxbww pmovsxbwl pmovsxbwq +syn keyword gasOpcode_SSE41 pmovsxbd pmovsxbdb pmovsxbdw pmovsxbdl pmovsxbdq +syn keyword gasOpcode_SSE41 pmovsxbq pmovsxbqb pmovsxbqw pmovsxbql pmovsxbqq +syn keyword gasOpcode_SSE41 pmovsxwd pmovsxwdb pmovsxwdw pmovsxwdl pmovsxwdq +syn keyword gasOpcode_SSE41 pmovsxwq pmovsxwqb pmovsxwqw pmovsxwql pmovsxwqq +syn keyword gasOpcode_SSE41 pmovsxdq pmovsxdqb pmovsxdqw pmovsxdql pmovsxdqq +syn keyword gasOpcode_SSE41 pmovzxbw pmovzxbwb pmovzxbww pmovzxbwl pmovzxbwq +syn keyword gasOpcode_SSE41 pmovzxbd pmovzxbdb pmovzxbdw pmovzxbdl pmovzxbdq +syn keyword gasOpcode_SSE41 pmovzxbq pmovzxbqb pmovzxbqw pmovzxbql pmovzxbqq +syn keyword gasOpcode_SSE41 pmovzxwd pmovzxwdb pmovzxwdw pmovzxwdl pmovzxwdq +syn keyword gasOpcode_SSE41 pmovzxwq pmovzxwqb pmovzxwqw pmovzxwql pmovzxwqq +syn keyword gasOpcode_SSE41 pmovzxdq pmovzxdqb pmovzxdqw pmovzxdql pmovzxdqq +syn keyword gasOpcode_SSE41 pmuldq pmuldqb pmuldqw pmuldql pmuldqq +syn keyword gasOpcode_SSE41 pmulld pmulldb pmulldw pmulldl pmulldq +syn keyword gasOpcode_SSE41 ptest ptestb ptestw ptestl ptestq +syn keyword gasOpcode_SSE41 roundpd roundpdb roundpdw roundpdl roundpdq +syn keyword gasOpcode_SSE41 roundps roundpsb roundpsw roundpsl roundpsq +syn keyword gasOpcode_SSE41 roundsd roundsdb roundsdw roundsdl roundsdq +syn keyword gasOpcode_SSE41 roundss roundssb roundssw roundssl roundssq + +"-- Section: AMD SSE4A +syn keyword gasOpcode_AMD_SSE4A extrq +syn keyword gasOpcode_AMD_SSE4A insertq +syn keyword gasOpcode_AMD_SSE4A movntsd movntsdb movntsdw movntsdl movntsdq +syn keyword gasOpcode_AMD_SSE4A movntss movntssb movntssw movntssl movntssq + + +" links +hi def link gasDirectiveX86 gasDirective +hi def link gasRegisterX86 gasRegister +hi def link gasRegisterX86Cr gasRegister +hi def link gasRegisterX86Dr gasRegister +hi def link gasRegisterX86MMX gasRegister + +" link to defaults +hi def link gasDirective Preproc +hi def link gasDirectiveStore Type +hi def link gasDirectiveMacro Macro +hi def link gasRegister Identifier +hi def link gasString String +hi def link gasCharacter Character +hi def link gasBinaryNumber Constant +hi def link gasOctalNumber Constant +hi def link gasHexNumber Constant +hi def link gasDecimalNumber Constant +hi def link gasSymbol Function +hi def link gasSymbolRef Special +hi def link gasSpecial Special +hi def link gasLabel Function +hi def link gasLocalLabel Label +hi def link gasOperator Operator +hi def link gasOpcode Keyword +hi def link gasComment Comment +hi def link gasCommentSingle Comment + +"-- initial mapping => Keyword +func! s:MapOpcode (group, cpu, ext) + let himap = 'Keyword' + + if exists('g:gasDisableOpcodes') + if index(split(g:gasDisableOpcodes), a:cpu) != -1 + let himap = 'Error' + endif + if index(split(g:gasDisableOpcodes), a:ext) != -1 + let himap = 'Error' + endif + endif + + if exists('b:gasDisableOpcodes') + if index(split(b:gasDisableOpcodes), a:cpu) != -1 + let himap = 'Error' + endif + if index(split(b:gasDisableOpcodes), a:ext) != -1 + let himap = 'Error' + endif + endif + + exe 'hi link '.a:group.' '.himap +endf + +call MapOpcode('gasOpcode_186_Base' , '186' , 'base') +call MapOpcode('gasOpcode_286_Base' , '286' , 'base') +call MapOpcode('gasOpcode_3862_Base' , '3862' , 'base') +call MapOpcode('gasOpcode_386_Base' , '386' , 'base') +call MapOpcode('gasOpcode_486_Base' , '486' , 'base') +call MapOpcode('gasOpcode_8086_Base' , '8086' , 'base') +call MapOpcode('gasOpcode_AMD_SSE4A' , 'amd' , 'sse4a') +call MapOpcode('gasOpcode_AMD_SSE5' , 'amd' , 'sse5') +call MapOpcode('gasOpcode_FUTURE_FMA' , 'future' , 'fma') +call MapOpcode('gasOpcode_IA64_Base' , 'ia64' , 'base') +call MapOpcode('gasOpcode_KATMAI_Base' , 'katmai' , 'base') +call MapOpcode('gasOpcode_KATMAI_MMX' , 'katmai' , 'mmx') +call MapOpcode('gasOpcode_KATMAI_MMX2' , 'katmai' , 'mmx2') +call MapOpcode('gasOpcode_KATMAI_SSE' , 'katmai' , 'sse') +call MapOpcode('gasOpcode_NEHALEM_Base' , 'nehalem' , 'base') +call MapOpcode('gasOpcode_P6_Base' , 'p6' , 'base') +call MapOpcode('gasOpcode_P6_SSE' , 'p6' , 'sse') +call MapOpcode('gasOpcode_PENTM_Base' , 'pentium_m' , 'base') +call MapOpcode('gasOpcode_PENT_3DNOW' , 'pentium' , '3dnow') +call MapOpcode('gasOpcode_PENT_Base' , 'pentium' , 'base') +call MapOpcode('gasOpcode_PENT_MMX' , 'pentium' , 'mmx') +call MapOpcode('gasOpcode_PRESCOTT_Base' , 'prescott' , 'base') +call MapOpcode('gasOpcode_PRESCOTT_SSE3' , 'prescott' , 'sse3') +call MapOpcode('gasOpcode_SANDYBRIDGE_AVX', 'sandybridge', 'avx') +call MapOpcode('gasOpcode_X642_Base' , 'x642' , 'base') +call MapOpcode('gasOpcode_X64_Base' , 'x64' , 'base') +call MapOpcode('gasOpcode_X64_MMX' , 'x64' , 'mmx') +call MapOpcode('gasOpcode_X64_SSE' , 'x64' , 'sse') +call MapOpcode('gasOpcode_X64_SSE2' , 'x64' , 'sse2') +call MapOpcode('gasOpcode_X64_SSE41' , 'x64' , 'sse4.1') +call MapOpcode('gasOpcode_X64_SSE42' , 'x64' , 'sse4.2') +call MapOpcode('gasOpcode_X64_VMX' , 'x64' , 'vmx') +call MapOpcode('gasOpcode_X86_64_Base' , 'x64' , 'base') + +" support CPP preprocessor tags +syn case match + +syn include @cPP syntax/c.vim +syn match cPPLineCont "\\$" contained + +syn region cPPPreProc start=/^\s*#\s*\(if\|else\|endif\|define\|include\)/ end=/$/ contains=@cPP,cPPLineCont + + +" finishing touches +let b:current_syntax = "gas" + +syn sync ccomment +syn sync linebreaks=1 + +" vim: ts=8 sw=8 : + ADDED vim/syntax/go.vim Index: vim/syntax/go.vim ================================================================== --- vim/syntax/go.vim +++ vim/syntax/go.vim @@ -0,0 +1,207 @@ +" Copyright 2009 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. +" +" go.vim: Vim syntax file for Go. +" +" Options: +" There are some options for customizing the highlighting; the recommended +" settings are the default values, but you can write: +" let OPTION_NAME = 0 +" in your ~/.vimrc file to disable particular options. You can also write: +" let OPTION_NAME = 1 +" to enable particular options. At present, all options default to on. +" +" - go_highlight_array_whitespace_error +" Highlights white space after "[]". +" - go_highlight_chan_whitespace_error +" Highlights white space around the communications operator that don't follow +" the standard style. +" - go_highlight_extra_types +" Highlights commonly used library types (io.Reader, etc.). +" - go_highlight_space_tab_error +" Highlights instances of tabs following spaces. +" - go_highlight_trailing_whitespace_error +" Highlights trailing white space. + +" Quit when a (custom) syntax file was already loaded +if exists("b:current_syntax") + finish +endif + +if !exists("go_highlight_array_whitespace_error") + let go_highlight_array_whitespace_error = 1 +endif +if !exists("go_highlight_chan_whitespace_error") + let go_highlight_chan_whitespace_error = 1 +endif +if !exists("go_highlight_extra_types") + let go_highlight_extra_types = 1 +endif +if !exists("go_highlight_space_tab_error") + let go_highlight_space_tab_error = 1 +endif +if !exists("go_highlight_trailing_whitespace_error") + let go_highlight_trailing_whitespace_error = 1 +endif + +syn case match + +syn keyword goDirective package import +syn keyword goDeclaration var const type +syn keyword goDeclType struct interface + +hi def link goDirective Statement +hi def link goDeclaration Keyword +hi def link goDeclType Keyword + +" Keywords within functions +syn keyword goStatement defer go goto return break continue fallthrough +syn keyword goConditional if else switch select +syn keyword goLabel case default +syn keyword goRepeat for range + +hi def link goStatement Statement +hi def link goConditional Conditional +hi def link goLabel Label +hi def link goRepeat Repeat + +" Predefined types +syn keyword goType chan map bool string error +syn keyword goSignedInts int int8 int16 int32 int64 rune +syn keyword goUnsignedInts byte uint uint8 uint16 uint32 uint64 uintptr +syn keyword goFloats float32 float64 +syn keyword goComplexes complex64 complex128 + +hi def link goType Type +hi def link goSignedInts Type +hi def link goUnsignedInts Type +hi def link goFloats Type +hi def link goComplexes Type + +" Treat func specially: it's a declaration at the start of a line, but a type +" elsewhere. Order matters here. +syn match goType /\/ +syn match goDeclaration /^func\>/ + +" Predefined functions and values +syn keyword goBuiltins append cap close complex copy delete imag len +syn keyword goBuiltins make new panic print println real recover +syn keyword goConstants iota true false nil + +hi def link goBuiltins Keyword +hi def link goConstants Keyword + +" Comments; their contents +syn keyword goTodo contained TODO FIXME XXX BUG +syn cluster goCommentGroup contains=goTodo +syn region goComment start="/\*" end="\*/" contains=@goCommentGroup,@Spell +syn region goComment start="//" end="$" contains=@goCommentGroup,@Spell + +hi def link goComment Comment +hi def link goTodo Todo + +" Go escapes +syn match goEscapeOctal display contained "\\[0-7]\{3}" +syn match goEscapeC display contained +\\[abfnrtv\\'"]+ +syn match goEscapeX display contained "\\x\x\{2}" +syn match goEscapeU display contained "\\u\x\{4}" +syn match goEscapeBigU display contained "\\U\x\{8}" +syn match goEscapeError display contained +\\[^0-7xuUabfnrtv\\'"]+ + +hi def link goEscapeOctal goSpecialString +hi def link goEscapeC goSpecialString +hi def link goEscapeX goSpecialString +hi def link goEscapeU goSpecialString +hi def link goEscapeBigU goSpecialString +hi def link goSpecialString Special +hi def link goEscapeError Error + +" Strings and their contents +syn cluster goStringGroup contains=goEscapeOctal,goEscapeC,goEscapeX,goEscapeU,goEscapeBigU,goEscapeError +syn region goString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@goStringGroup +syn region goRawString start=+`+ end=+`+ + +hi def link goString String +hi def link goRawString String + +" Characters; their contents +syn cluster goCharacterGroup contains=goEscapeOctal,goEscapeC,goEscapeX,goEscapeU,goEscapeBigU +syn region goCharacter start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@goCharacterGroup + +hi def link goCharacter Character + +" Regions +syn region goBlock start="{" end="}" transparent fold +syn region goParen start='(' end=')' transparent + +" Integers +syn match goDecimalInt "\<\d\+\([Ee]\d\+\)\?\>" +syn match goHexadecimalInt "\<0x\x\+\>" +syn match goOctalInt "\<0\o\+\>" +syn match goOctalError "\<0\o*[89]\d*\>" + +hi def link goDecimalInt Integer +hi def link goHexadecimalInt Integer +hi def link goOctalInt Integer +hi def link Integer Number + +" Floating point +syn match goFloat "\<\d\+\.\d*\([Ee][-+]\d\+\)\?\>" +syn match goFloat "\<\.\d\+\([Ee][-+]\d\+\)\?\>" +syn match goFloat "\<\d\+[Ee][-+]\d\+\>" + +hi def link goFloat Float + +" Imaginary literals +syn match goImaginary "\<\d\+i\>" +syn match goImaginary "\<\d\+\.\d*\([Ee][-+]\d\+\)\?i\>" +syn match goImaginary "\<\.\d\+\([Ee][-+]\d\+\)\?i\>" +syn match goImaginary "\<\d\+[Ee][-+]\d\+i\>" + +hi def link goImaginary Number + +" Spaces after "[]" +if go_highlight_array_whitespace_error != 0 + syn match goSpaceError display "\(\[\]\)\@<=\s\+" +endif + +" Spacing errors around the 'chan' keyword +if go_highlight_chan_whitespace_error != 0 + " receive-only annotation on chan type + syn match goSpaceError display "\(<-\)\@<=\s\+\(chan\>\)\@=" + " send-only annotation on chan type + syn match goSpaceError display "\(\/ + syn match goExtraType /\/ + syn match goExtraType /\/ + syn match goExtraType /\/ +endif + +" Space-tab error +if go_highlight_space_tab_error != 0 + syn match goSpaceError display " \+\t"me=e-1 +endif + +" Trailing white space error +if go_highlight_trailing_whitespace_error != 0 + syn match goSpaceError display excludenl "\s\+$" +endif + +hi def link goExtraType Type +hi def link goSpaceError Error + +" Search backwards for a global declaration to start processing the syntax. +"syn sync match goSync grouphere NONE /^\(const\|var\|type\|func\)\>/ + +" There's a bug in the implementation of grouphere. For now, use the +" following as a more expensive/less precise workaround. +syn sync minlines=500 + +let b:current_syntax = "go" ADDED vim/syntax/godoc.vim Index: vim/syntax/godoc.vim ================================================================== --- vim/syntax/godoc.vim +++ vim/syntax/godoc.vim @@ -0,0 +1,20 @@ +" Copyright 2011 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. + +if exists("b:current_syntax") + finish +endif + +syn case match +syn match godocTitle "^\([A-Z]*\)$" + +command -nargs=+ HiLink hi def link + +HiLink godocTitle Title + +delcommand HiLink + +let b:current_syntax = "godoc" + +" vim:ts=4 sts=2 sw=2: ADDED vim/syntax/mips.vim Index: vim/syntax/mips.vim ================================================================== --- vim/syntax/mips.vim +++ vim/syntax/mips.vim @@ -0,0 +1,254 @@ +" Vim syntax file +" Language: MIPS +" Maintainer: Alex Brick +" Last Change: 2007 Oct 18 + +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +setlocal iskeyword+=- +syntax case match + +syntax match mipsComment /#.*/ +syntax region gasComment start=/\/\*/ end=/\*\// +syntax region gasCommentSingle start=/#/ end=/$/ + +syntax match mipsNumber /\<[-]\?\d\+\>/ " Decimal numbers +syntax match mipsNumber /\<-\?0\(x\|X\)[0-9a-fA-F]\+\>/ " Hex numbers +syntax region mipsString start=/"/ skip=/\\"/ end=/"/ +syntax match mipsLabelColon /:/ contained +syntax match mipsLabel /\w\+:/ contains=mipsLabelColon + +" Registers +syntax match mipsRegister "\$zero" +syntax match mipsRegister "\$v0" +syntax match mipsRegister "\$v1" +syntax match mipsRegister "\$a0" +syntax match mipsRegister "\$a1" +syntax match mipsRegister "\$a2" +syntax match mipsRegister "\$a3" +syntax match mipsRegister "\$t0" +syntax match mipsRegister "\$t1" +syntax match mipsRegister "\$t2" +syntax match mipsRegister "\$t3" +syntax match mipsRegister "\$t4" +syntax match mipsRegister "\$t5" +syntax match mipsRegister "\$t6" +syntax match mipsRegister "\$t7" +syntax match mipsRegister "\$t8" +syntax match mipsRegister "\$t9" +syntax match mipsRegister "\$s0" +syntax match mipsRegister "\$s1" +syntax match mipsRegister "\$s2" +syntax match mipsRegister "\$s3" +syntax match mipsRegister "\$s4" +syntax match mipsRegister "\$s5" +syntax match mipsRegister "\$s6" +syntax match mipsRegister "\$s7" +syntax match mipsRegister "\$k0" +syntax match mipsRegister "\$k1" +syntax match mipsRegister "\$gp" +syntax match mipsRegister "\$sp" +syntax match mipsRegister "\$fp" +syntax match mipsRegister "\$ra" + +let i = 0 +while i < 32 + " This is for the regular registers + execute 'syntax match mipsRegister "\$' . i . '\(\d\+\)\@!"' + " And this is for the FP registers + execute 'syntax match mipsRegister "\$f' . i . '\(\d\+\)\@!"' + let i = i + 1 +endwhile + +" Directives +syntax match mipsDirective "\.2byte" +syntax match mipsDirective "\.4byte" +syntax match mipsDirective "\.8byte" +syntax match mipsDirective "\.aent" +syntax match mipsDirective "\.align" +syntax match mipsDirective "\.aascii" +syntax match mipsDirective "\.asciiz" +syntax match mipsDirective "\.byte" +syntax match mipsDirective "\.comm" +syntax match mipsDirective "\.cpadd" +syntax match mipsDirective "\.cpload" +syntax match mipsDirective "\.cplocal" +syntax match mipsDirective "\.cprestore" +syntax match mipsDirective "\.cpreturn" +syntax match mipsDirective "\.cpsetup" +syntax match mipsDirective "\.data" +syntax match mipsDirective "\.double" +syntax match mipsDirective "\.dword" +syntax match mipsDirective "\.dynsym" +syntax match mipsDirective "\.end" +syntax match mipsDirective "\.endr" +syntax match mipsDirective "\.ent" +syntax match mipsDirective "\.extern" +syntax match mipsDirective "\.file" +syntax match mipsDirective "\.float" +syntax match mipsDirective "\.fmask" +syntax match mipsDirective "\.frame" +syntax match mipsDirective "\.globl" +syntax match mipsDirective "\.gpvalue" +syntax match mipsDirective "\.gpword" +syntax match mipsDirective "\.half" +syntax match mipsDirective "\.kdata" +syntax match mipsDirective "\.ktext" +syntax match mipsDirective "\.lab" +syntax match mipsDirective "\.lcomm" +syntax match mipsDirective "\.loc" +syntax match mipsDirective "\.mask" +syntax match mipsDirective "\.nada" +syntax match mipsDirective "\.nop" +syntax match mipsDirective "\.option" +syntax match mipsDirective "\.origin" +syntax match mipsDirective "\.repeat" +syntax match mipsDirective "\.rdata" +syntax match mipsDirective "\.sdata" +syntax match mipsDirective "\.section" +syntax match mipsDirective "\.set" +syntax match mipsDirective "\.size" +syntax match mipsDirective "\.space" +syntax match mipsDirective "\.struct" +syntax match mipsDirective "\.text" +syntax match mipsDirective "\.type" +syntax match mipsDirective "\.verstamp" +syntax match mipsDirective "\.weakext" +syntax match mipsDirective "\.word" + +" Arithmetic and Logical Instructions +syntax keyword mipsInstruction abs +syntax keyword mipsInstruction add addu addi addiu +syntax keyword mipsInstruction and andi +syntax keyword mipsInstruction clo clz +syntax keyword mipsInstruction div divu +syntax keyword mipsInstruction mult multu mul mulo mulou madd maddu msub msubu +syntax keyword mipsInstruction neg negu +syntax keyword mipsInstruction nor +syntax keyword mipsInstruction not +syntax keyword mipsInstruction or ori +syntax keyword mipsInstruction rem remu +syntax keyword mipsInstruction sll sllv sra srav srl srlv +syntax keyword mipsInstruction rol ror +syntax keyword mipsInstruction sub subu +syntax keyword mipsInstruction xor xori + +" Constant-Manipulating Instructions +syntax keyword mipsInstruction lui li +syntax keyword mipsInstruction slt sltu slti sltiu +syntax keyword mipsInstruction seq +syntax keyword mipsInstruction sge sgeu +syntax keyword mipsInstruction sgt sgtu +syntax keyword mipsInstruction sle sleu +syntax keyword mipsInstruction sne + +" Branch Instructions +syntax keyword mipsInstruction b +syntax keyword mipsInstruction bc1f bc1t +syntax keyword mipsInstruction beq beqz +syntax keyword mipsInstruction bgez bgezal bgtz +syntax keyword mipsInstruction blez bltzal bltz +syntax keyword mipsInstruction bne bnez +syntax keyword mipsInstruction bge bgeu +syntax keyword mipsInstruction bgt bgtu +syntax keyword mipsInstruction ble bleu +syntax keyword mipsInstruction blt bltu + +" Jump Instructions +syntax keyword mipsInstruction j jal jalr jr + +" Trap Instructions +syntax keyword mipsInstruction teq teqi +syntax keyword mipsInstruction tne tnei +syntax keyword mipsInstruction tge tgeu tgei tgeiu +syntax keyword mipsInstruction tlt tltu tlti tltiu + +" Load Instructions +syntax keyword mipsInstruction la +syntax keyword mipsInstruction lb lbu lh lhu +syntax keyword mipsInstruction lw lwc1 lwl lwr +syntax keyword mipsInstruction ld +syntax keyword mipsInstruction ulh ulhu ulw +syntax keyword mipsInstruction ll + +" Store Instructions +syntax keyword mipsInstruction sb sh sw swc1 sdc1 swl swr sd ush usw sc + +" Data Movement Instructions +syntax keyword mipsInstruction move +syntax keyword mipsInstruction mfhi mflo +syntax keyword mipsInstruction mthi mtlo +syntax keyword mipsInstruction mfc0 mfc1 +syntax match mipsInstruction "mfc1\.d" +syntax keyword mipsInstruction mtc0 mtc1 +syntax keyword mipsInstruction movn movz movf movt + +" Floating-Point Instructions +syntax match mipsInstruction "abs\.d" +syntax match mipsInstruction "abs\.s" +syntax match mipsInstruction "add\.d" +syntax match mipsInstruction "add\.s" +syntax match mipsInstruction "ceil\.w\.d" +syntax match mipsInstruction "ceil\.w\.s" +syntax match mipsInstruction "c\.eq\.d" +syntax match mipsInstruction "c\.eq\.s" +syntax match mipsInstruction "c\.le\.d" +syntax match mipsInstruction "c\.le\.s" +syntax match mipsInstruction "c\.lt\.d" +syntax match mipsInstruction "c\.lt\.s" +syntax match mipsInstruction "cvt\.d\.s" +syntax match mipsInstruction "cvt\.d\.w" +syntax match mipsInstruction "cvt\.s\.d" +syntax match mipsInstruction "cvt\.s\.w" +syntax match mipsInstruction "cvt\.w\.d" +syntax match mipsInstruction "cvt\.w\.s" +syntax match mipsInstruction "div\.d" +syntax match mipsInstruction "div\.s" +syntax match mipsInstruction "floor\.w\.d" +syntax match mipsInstruction "floor\.w\.s" +syntax match mipsInstruction "l\.d" +syntax match mipsInstruction "l\.s" +syntax match mipsInstruction "mov\.d" +syntax match mipsInstruction "mov\.s" +syntax match mipsInstruction "movf\.d" +syntax match mipsInstruction "movf\.s" +syntax match mipsInstruction "movt\.d" +syntax match mipsInstruction "movt\.s" +syntax match mipsInstruction "movn\.d" +syntax match mipsInstruction "movn\.s" +syntax match mipsInstruction "movz\.d" +syntax match mipsInstruction "movz\.s" +syntax match mipsInstruction "mul\.d" +syntax match mipsInstruction "mul\.s" +syntax match mipsInstruction "neg\.d" +syntax match mipsInstruction "neg\.s" +syntax match mipsInstruction "round\.w\.d" +syntax match mipsInstruction "round\.w\.s" +syntax match mipsInstruction "sqrt\.d" +syntax match mipsInstruction "sqrt\.s" +syntax match mipsInstruction "s\.d" +syntax match mipsInstruction "s\.s" +syntax match mipsInstruction "sub\.d" +syntax match mipsInstruction "sub\.s" +syntax match mipsInstruction "trunc\.w\.d" +syntax match mipsInstruction "trunc\.w\.s" + +" Exception and Interrupt Instructions +syntax keyword mipsInstruction eret +syntax keyword mipsInstruction syscall +syntax keyword mipsInstruction break +syntax keyword mipsInstruction nop + +hi def link mipsComment Comment +hi def link mipsNumber String +hi def link mipsString String +hi def link mipsLabel Function +hi def link mipsRegister Identifier +hi def link mipsDirective Preproc +hi def link mipsInstruction Statement + +let b:current_syntax = "mips" ADDED vim/syntax/ppc.vim Index: vim/syntax/ppc.vim ================================================================== --- vim/syntax/ppc.vim +++ vim/syntax/ppc.vim @@ -0,0 +1,160 @@ +" Vim syntax file for PPC Assembler +" Language: PPC Assembler +" Version : 0.2 +" Last Change: 2004 May 19 +" added MSSCR0, HID0 and HID1 to keywords +" use \<, \> expression (begining, end of word) to match register +" +" Currently not supported : AltiVec, others: automatically shift left labels +" upon entering ':' +" BUGS: +" registers are highlighted if part of string +" mfspr r3, MSSCR0 /* Errata No. 1: clear bits 18-25 of MSSCR0 */ +" will highlight R0 +" Only tested with vim version 6.0 +" Author: Michael Brandt + + +" Quit if syntax file already loaded and vim > 6.00 +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" Read the C syntax for pre-processor statements +if version < 600 + so :p:h/c.vim +else + runtime! syntax/c.vim + unlet b:current_syntax +endif + +" Case insensitive +syntax case ignore + +" # conflicts with cpp statements and #if 0 highlighting as comment will be +" broken. +" exclude cpp statements from being assembler comments: +" syntax match ppcComment /.+\#.*/ contains=cCppOut +" or only recognize comments which a preceded by at least 1 whitespace: +syntax match ppcComment /\s\+\#.*/ + +syntax match ppcLabel /[A-Z0-9_\-]\+:/ +syntax match ppcRegister /\<%r[0-3]*[0-9]\>/ +" segment register +syntax match ppcRegister /\<%r[0-1]*[0-9]\>/ +" sp is often used as synonym for r1 +syntax keyword ppcRegister sp + +syntax keyword ppcSPR CSRR0 CSRR1 CTR DAC1 DAC2 DBCR0 DBCR1 DBCR2 DBSR DEAR DEC DECAR DVC1 DVC2 ESR EVPR HID0 HID1 IAC1 IAC2 IAC3 IAC4 IVOR0 IVOR1 IVOR2 IVOR3 IVOR4 IVOR5 IVOR6 IVOR7 IVOR8 IVOR9 IVOR10 IVOR11 IVOR12 IVOR13 IVOR14 IVOR15 LR MSSCR0 PID PIR PVR SPRG0 SPRG1 SPRG2 SPRG3 SPRG4 SPRG5 SPRG6 SPRG7 SRR0 SRR1 TBL TBU TCR TSR USPRG0 XER + +" syntax region ppcString start=/"/ skip=/\\"/ end=/"/ +" syntax match ppcNumber /[0-9]\+/ + +" Book E Mnemoics +syntax keyword ppcMnemonic add add\. addc addc\. addco addco\. adde adde\. adde64 adde64o addeo addeo\. addi addic addic\. addis addme addme\. addme64 addme64o addmeo addmeo\. addo addo\. addze addze\. addze64 addze64o addzeo addzeo\. and and\. andc andc\. andi\. andis\. b ba bc bca bcctr bcctre + +syntax keyword ppcMnemonic bcctrel bcctrl bce bcea bcel bcela bcl bcla bclr bclre bclrel bclrl be bea bel bela bl bla cmp cmpi cmpl cmpli cntlzd cntlzw cntlzw\. crand crandc creqv crnand crnor cror crorc crxor dcba dcbae dcbf dcbfe dcbi dcbie dcbst dcbste dcbt dcbte dcbtst dcbtste dcbz dcbze + +syntax keyword ppcMnemonic divd divdo divdu divduo divw divw\. divwo divwo\. divwu divwu\. divwuo divwuo\. eqv eqv\. extsb extsb\. extsh extsh\. extsw fabs fabs\. fadd fadd\. fadds fadds\. fcfid fcmpo fcmpu fctid fctidz fctiw fctiw\. fctiwz fctiwz\. fdiv fdiv\. fdivs fdivs\. fmadd fmadd\. fmadds fmadds\. fmr fmr\. fmsub fmsub\. fmsubs + +syntax keyword ppcMnemonic fmsubs\. fmul fmul\. fmuls fmuls\. fnabs fnabs\. fneg fneg\. fnmadd fnmadd\. fnmadds fnmadds\. fnmsub fnmsub\. fnmsubs fnmsubs\. fres fres\. frsp frsp\. frsqrte frsqrte\. fsel fsel\. fsqrt fsqrt\. fsqrts fsqrts\. fsub fsub\. fsubs fsubs\. icbi icbie icbt icbte isync lbz lbze lbzu lbzue lbzux lbzuxe lbzx lbzxe ldarxe + +syntax keyword ppcMnemonic lde ldue lduxe ldxe lfd lfde lfdu lfdue lfdux lfduxe lfdx lfdxe lfs lfse lfsu lfsue lfsux lfsuxe lfsx lfsxe lha lhae lhau lhaue lhaux lhauxe lhax lhaxe lhbrx lhbrxe lhz lhze lhzu lhzue lhzux lhzuxe lhzx lhzxe lmw lswi lswx lwarx lwarxe lwbrx lwbrxe lwz lwze + +syntax keyword ppcMnemonic lwzu lwzue lwzux lwzuxe lwzx lwzxe mbar mcrf mcrfs mcrxr mcrxr64 mfapidi mfcr mfdcr mffs mffs\. mfmsr mfspr mfsr mftb msync mtcrf mtdcr mtfsb0 mtfsb0\. mtfsb1 mtfsb1\. mtfsf mtfsf\. mtfsfi mtfsfi\. mtmsr mtspr mtsr mtsrin mulhd mulhdu mulhw mulhw\. mulhwu mulhwu\. mulld mulldo mulli mullw mullw\. mullwo mullwo\. nand nand\. neg + +syntax keyword ppcMnemonic neg\. nego nego\. nor nor\. or or\. orc orc\. ori oris rfci rfi rldcl rldcr rldic rldicl rldicr rldimi rlwimi rlwimi\. rlwinm rlwinm\. rlwnm rlwnm\. sc sld slw slw\. srad sradi sraw sraw\. srawi srawi\. srd srw srw\. stb stbe stbue stbu stbux stbuxe stbx stbxe stdcxe\. + +syntax keyword ppcMnemonic stde stdue stduxe stdxe stfd stfde stfdu stfdue stfdux stfduxe stfdx stfdxe stfiwx stfiwxe stfs stfse stfsu stfsue stfsux stfsuxe stfsx stfsxe sth sthbrx sthbrxe sthe sthu sthue sthux sthuxe sthx sthxe stmw stswi stswx stw stwbrx stwbrxe stwcx\. stwcxe\. stwe stwu stwue stwux stwuxe stwx stwxe + +syntax keyword ppcMnemonic subf subf\. subfc subfc\. subfco subfco\. subfe subfe\. subfe64 subfe64o subfeo subfeo\. subfic subfme subfme\. subfme64 subfme64o subfmeo subfmeo\. subfo subfo\. subfze subfze\. subfze64 subfze64o subfzeo subfzeo\. td tdi tlbivax tlbivaxe tlbre tlbsx tlbsxe tlbwe tw twi wrtee wrteei xor xor\. xori xoris + + +"syntax match ppcAsmDirective "\.[a-z][a-z]\+" +syntax keyword ppcAsmDirective .alias .align .ascii .asciz .byte .common .double .empty .file .globl .global .half .ident .local .noalias .nonvolatile .nword .optim .popsection .proc .pushsection .quad .reserve .section .seg .single .size .skip .stabn .stabs .type .uahalf .uaword .version .volatile .weak .word .xword i.xstabs + +"syntax keyword ppcSimplified +syntax keyword ppcSimplified extlwi extlwi\. extrwi extrwi\. inslwi inslwi\. insrwi insrwi\. la mr mtcr nop not rotrwi rotrwi\. slwi sli slwi\. sli\. srwi sri srwi\. sri\. clrrwi clrrwi\. clrlslwi clrlslwi\. + +" Simplified Mnemonics for Subtract Instructions +syntax keyword ppcSimplified subi subis subic subic. +syntax keyword ppcSimplified sub subc + +" Simplified Mnemonics for Word Compare Instructions +syntax keyword ppcSimplified cmpwi cmpw cmplwi cmplw + +" simplified branch mnemonics +syntax keyword ppcSimplified blr bctr blrl bctrl +syntax keyword ppcSimplified bt bta btlr btctr btl btla btlrl btctrl +syntax keyword ppcSimplified bf bfa bflr bfctr bfl bfla bflrl bfctrl +syntax keyword ppcSimplified bdnz bdnza bdnzlr bdnzl bdnzla bdnzlrl +syntax keyword ppcSimplified bdnzt bdnzta bdnztlr bdnztl bdnztla bdnztlrl +syntax keyword ppcSimplified bdnzf bdnzfa bdnzflr bdnzfl bdnzfla bdnzflrl +syntax keyword ppcSimplified bdz bdza bdzlr bdzl bdzla bdzlrl +syntax keyword ppcSimplified bdzt bdzta bdztlr bdztl bdztla bdztlrl +syntax keyword ppcSimplified bdzf bdzfa bdzflr bdzfl bdzfla bdzflrl + +syntax keyword ppcSimplified blt blta bltlr bltctr bltl bltla bltlrl bltctrl +syntax keyword ppcSimplified ble blea blelr blectr blel blela blelrl blectrl +syntax keyword ppcSimplified beq beqa beqlr beqctr beql beqla beqlrl beqctrl +syntax keyword ppcSimplified bge bgea bgelr bgectr bgel bgela bgelrl bgectrl +syntax keyword ppcSimplified bgt bgta bgtlr bgtctr bgtl bgtla bgtlrl bgtctrl +syntax keyword ppcSimplified bnl bnla bnllr bnlctr bnll bnlla bnllrl bnlctrl +syntax keyword ppcSimplified bne bnea bnelr bnectr bnel bnela bnelrl bnectrl +syntax keyword ppcSimplified bng bnga bnglr bngctr bngl bngla bnglrl bngctrl +syntax keyword ppcSimplified bso bsoa bsolr bsoctr bsol bsola bsolrl bsoctrl +syntax keyword ppcSimplified bns bnsa bnslr bnsctr bnsl bnsla bnslrl bnsctrl +syntax keyword ppcSimplified bun buna bunlr bunctr bunl bunla bunlrl bunctrl +syntax keyword ppcSimplified bnu bnua bnulr bnuctr bnul bnula bnulrl bnuctrl + +" simplified mnemonics for traps +syntax keyword ppcSimplified trap twlti twlt twlei twle tweqi tweq twgei twge twgti twgt twnli twnl twnei twne twngi twng twllti twllt twllei twlle twlgei twlge twlgti twlgt twlnli twlnl twlngi twlng + +" simplified mnemonics for SPRs +syntax keyword ppcSimplified mtxer mtlr mtctr mtdsisr mtdar mtdec mtsdr1 mtsrr0 mtsrr1 mtsprg mtear +syntax keyword ppcSimplified mttbl mttbu mtibatu mtibatl mtdbatu mtdbatl +syntax keyword ppcSimplified mfxer mflr mfctr mfdsisr mfdar mfdec mfsdr1 mfsrr0 mfsrr1 mfsprg mfear +syntax keyword ppcSimplified mftb mftbu mfpvr mfibatu mfibatl mfdbatu mfdbatl + +syntax keyword ppcSimplified li lis rotlwi + +" arch specific ? +syntax keyword ppcMnemonic eieio sync + +" optional instructions +syntax keyword ppcMnemonic tlbia tlbie tlbsync + +if !exists("did_ppc_syntax_inits") + let did_ppc_syntax_inits=1 + highlight link ppcComment Comment + highlight link ppcLabel Function + " highlight link ppcString String + " highlight link ppcNumber Number + + highlight link ppcAsmDirective Preproc + + highlight link ppcMnemonic Keyword + + " seems logical to use Preproc, but since in usual PPC assembler many + " simplified mnemonics are used it gets to colorful + " highlight link ppcSimplified Preproc + highlight link ppcSimplified Keyword + highlight link ppcMnemonicSyn Keyword + + highlight link ppcRegister Identifier + highlight link ppcSpr Identifier +endif +let b:current_syntax="ppc" + +" . is normally not part of the iskeyword string. Add it for mnemonics ending +" in ., like "andi." +set iskeyword+=. +" does not belong into syntax file, put it into your filetype plugin +" ~/.vim/ftplugin/ppc.vim +" set ts=8 sw=8 ai smartindent + +" put following line into your .vimrc if PPC assembler instead of GNU asm +" should be choosen for .S or .s files +" let g:asmsyntax = "ppc" ADDED vimrc Index: vimrc ================================================================== --- vimrc +++ vimrc @@ -0,0 +1,28 @@ +source /usr/share/vim/vim73/vimrc_example.vim + +set t_Co=256 +set background=dark +let g:inkpot_black_background=1 +colorscheme inkpot + +set cinoptions=+4,(4,u4,w4 +set colorcolumn=81 +highlight ColorColumn ctermbg=235 +let c_space_errors=1 +set ignorecase +set smartcase +set modeline +set modelines=1000 +set nrformats=hex + +au BufNewFile,BufRead */haiku/* :se ts=4 sw=4 +au BufNewFile,BufRead */LLVM/* :se ts=2 sw=2 et +au BufNewFile,BufRead *.c :se ft=c.doxygen +au BufNewFile,BufRead *.h :se ft=objc.doxygen +au BufNewFile,BufRead *.m :se ft=objc.doxygen +au BufNewFile,BufRead *.v :se ts=4 sw=4 +au BufNewFile,BufRead *.vhd :se ts=4 sw=4 +au BufNewFile,BufRead *.py :se ts=4 sw=4 et +au BufNewFile,BufRead *.cs :se ts=4 sw=4 +au BufNewFile,BufRead *.pas :se ts=2 sw=2 et +au BufNewFile,BufRead *.rb :se ts=2 sw=2 et