├── Commands ├── = after !.tmCommand ├── Create table.tmCommand ├── Enter in Double Comment.tmCommand ├── Enter in Incomplete Variable Assignment.tmCommand ├── Execute in MATLAB.tmCommand ├── Function documentation.tmCommand ├── Introduce variable (throughout).tmCommand ├── Introduce variable.tmCommand ├── Open Function.plist ├── Spawn MATLAB.tmCommand ├── clear.tmCommand ├── enter in brackets or parens.tmCommand ├── enter in string in brackets.tmCommand ├── enter in string.tmCommand ├── num2str.tmCommand ├── save.tmCommand └── subplot.tmCommand ├── DragCommands ├── load mat file.tmDragCommand └── read image.tmDragCommand ├── Macros ├── Execute cell.tmMacro ├── Jump to incomplete assignments.tmMacro ├── Next cell.tmMacro └── Previous cell.tmMacro ├── Preferences ├── Folding - M.tmPreferences ├── Folding - Octave.tmPreferences ├── Indent.tmPreferences ├── Miscellaneous Octave.tmPreferences ├── Symbol List: Cells.tmPreferences ├── Symbol List: Classes.tmPreferences └── Symbols.tmPreferences ├── README.mdown ├── Snippets ├── Octave function.tmSnippet ├── ^.tmSnippet ├── case.tmSnippet ├── disp sprintf.tmSnippet ├── disp.tmSnippet ├── dlmwrite.tmSnippet ├── else.tmSnippet ├── elseif.tmSnippet ├── error.tmSnippet ├── exp.tmSnippet ├── for … end cell strings.tmSnippet ├── for.plist ├── fprintf.tmSnippet ├── function (fun).plist ├── get.tmSnippet ├── griddata.tmSnippet ├── if else.tmSnippet ├── if elseif.tmSnippet ├── if.plist ├── line.tmSnippet ├── nargchk.tmSnippet ├── set.tmSnippet ├── small function.tmSnippet ├── sprintf.tmSnippet ├── switch … case … end.tmSnippet ├── switch … case … otherwise … end.tmSnippet ├── title.tmSnippet ├── try … catch … end.tmSnippet ├── unix.tmSnippet ├── unwind_protect … cleanup … end.tmSnippet ├── warning.tmSnippet ├── while.tmSnippet ├── xlabel.tmSnippet ├── xtick.tmSnippet ├── ylabel.tmSnippet ├── ytick.tmSnippet └── zlabel.tmSnippet ├── Support ├── lib │ └── MATLABUtils.rb └── to_matlab.scpt ├── Syntaxes ├── M.tmLanguage └── Octave.tmLanguage ├── Tests ├── classes.m ├── test_functions.m └── test_indentation.m └── info.plist /Commands/= after !.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | # Replace != with ~= for the novice user 10 | line = ENV['TM_LINE_NUMBER'].to_i 11 | columns = ENV['TM_LINE_INDEX'].to_i-1 12 | textArray = STDIN.readlines 13 | print textArray.last. to_s.sub(/\!/,'~=') 14 | 15 | fallbackInput 16 | line 17 | input 18 | selection 19 | keyEquivalent 20 | = 21 | name 22 | = after ! 23 | output 24 | insertAsSnippet 25 | scope 26 | variable.other.exclamation.matlab 27 | uuid 28 | 563CDF89-C286-4CDB-94AB-30819104470F 29 | 30 | 31 | -------------------------------------------------------------------------------- /Commands/Create table.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | 10 | if ENV.has_key?('TM_SELECTED_TEXT') then 11 | result = ENV['TM_SELECTED_TEXT'].strip 12 | case result 13 | when /'.*'/ 14 | @pad = "' '" 15 | else 16 | @pad = "0" 17 | end 18 | @input_table = result.to_a.collect {|row| row.chomp.split(/\s+|,/)} 19 | rows = @input_table.length 20 | columns = @input_table.inject { |memo, row| memo.length > row.length ? memo : row }.length 21 | else 22 | result=`"$TM_SUPPORT_PATH/bin"/CocoaDialog.app/Contents/MacOS/CocoaDialog standard-inputbox \ 23 | --title 'Matlab Array Creation' \ 24 | --informative-text 'Number of rows and columns:' \ 25 | --text '6 4'`.split 26 | exit if result[0] == "2" || result.length == 1 27 | @input_table = nil 28 | result.collect! { |num| num.to_i} 29 | result[2] = result[1] if result.length == 2 30 | # We'll only create up to two-dimensional arrays 31 | # with up to N elements 32 | N = 200 33 | product = result[1..2].inject(1) {|product, num| product * num } 34 | if product.zero? 35 | # give error message 36 | exit 37 | elsif product > N 38 | open('|"$DIALOG" tooltip', 'w') do |io| 39 | io << "The matrix dimensions are too large.\nThe maximum is set to #{N} elements." 40 | end 41 | exit 42 | else 43 | rows, columns = result[1..2] 44 | end 45 | end 46 | 47 | @pos = 0 48 | def self.insert(row,column) 49 | if @input_table.nil? 50 | @pos += 1 51 | "${#{@pos}:#{@pos}}" 52 | else 53 | ret = @input_table[row][column] 54 | if ret.nil? 55 | @pos += 1 56 | "${#{@pos}:#{@pad}}" 57 | else 58 | ret 59 | end 60 | end 61 | end 62 | 63 | table = "" 64 | table += "[" if rows > 1 65 | rows.times do |m| 66 | table += "[" 67 | columns.times do |n| 68 | table += insert(m,n) 69 | table += (n == columns-1) ? "]" : "\t" 70 | end 71 | table += ";\n" unless (m == rows-1) 72 | end 73 | table += "]" if rows > 1 74 | table += "${#{@pos+1}:;}\n$0" 75 | puts table 76 | 77 | fallbackInput 78 | none 79 | input 80 | selection 81 | keyEquivalent 82 | ^@T 83 | name 84 | Create matrix 85 | output 86 | insertAsSnippet 87 | scope 88 | source.matlab, source.octave 89 | uuid 90 | F23DAE9B-A27A-41D3-B57B-DED30729243C 91 | 92 | 93 | -------------------------------------------------------------------------------- /Commands/Enter in Double Comment.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | thisline = ENV['TM_CURRENT_LINE'] 10 | soft_tabs = ENV['TM_SOFT_TABS'] 11 | tab_size = ENV['TM_TAB_SIZE'].to_i 12 | # thisline = "asdfasd f % asdfasdfadsfasd" 13 | # thisline = "aasdfasd ff % asdfasdfadsfasd" 14 | # thisline = "aasdfasd fff % asdfasdfadsfasd" 15 | spaces = thisline.match(/^(.*?)(%%|%|#)(\s*).*$/) 16 | 17 | leading_spaces = spaces.captures[0].gsub(/[^\t]{4}/,"\t").gsub(/[^\t]{1,3}\t/,"\t") 18 | 19 | if spaces.captures[0] =~ /\S/ 20 | leading_spaces.gsub!(/\t/,"".ljust(tab_size)) if ENV['TM_SOFT_TABS'] == "YES" 21 | else 22 | leading_spaces = "" 23 | end 24 | 25 | print "\n#{leading_spaces}#{spaces.captures[1] + spaces.captures[2]}$1" 26 | 27 | input 28 | none 29 | keyEquivalent 30 |  31 | name 32 | Enter in Comment 33 | output 34 | insertAsSnippet 35 | scope 36 | comment.line.percentage.matlab, comment.double.percentage.matlab, comment.line.percentage.octave, comment.double.percentage.octave, comment.line.pound.octave 37 | uuid 38 | 615CF7DB-FDB1-4013-9725-FDF4BE64E8A4 39 | 40 | 41 | -------------------------------------------------------------------------------- /Commands/Enter in Incomplete Variable Assignment.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | lineindex = ENV['TM_LINE_INDEX'].to_i 10 | thisline = ENV['TM_CURRENT_LINE'] 11 | scopes = ENV['TM_SCOPE'].split 12 | 13 | firsthalf = thisline.slice(0...lineindex) 14 | secondhalf = thisline.slice(lineindex..-1) 15 | 16 | if scopes[0] == "source.matlab" 17 | firsthalf.sub!(/\s*\.*\s*$/," ...") 18 | elsif scopes[0] == "source.octave" 19 | firsthalf.sub!(/\s*(\.*|\\)\s*$/," ...") 20 | end 21 | firsthalf += "\n" 22 | print firsthalf, '$1', secondhalf 23 | 24 | 25 | fallbackInput 26 | line 27 | input 28 | selection 29 | keyEquivalent 30 | 31 | name 32 | Enter in Incomplete Variable Assignment 33 | output 34 | insertAsSnippet 35 | scope 36 | source.matlab invalid.illegal.incomplete-variable-assignment.matlab, source.octave invalid.illegal.incomplete-variable-assignment.matlab 37 | uuid 38 | FD9512A7-561A-4140-A425-567B8D2862EA 39 | 40 | 41 | -------------------------------------------------------------------------------- /Commands/Execute in MATLAB.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | cat | "$TM_BUNDLE_SUPPORT/to_matlab.scpt" 9 | 10 | fallbackInput 11 | line 12 | input 13 | selection 14 | inputFormat 15 | text 16 | keyEquivalent 17 | @r 18 | name 19 | Execute in Matlab 20 | outputCaret 21 | afterOutput 22 | outputFormat 23 | text 24 | outputLocation 25 | toolTip 26 | scope 27 | source.matlab 28 | uuid 29 | 064E306B-FF23-432B-952F-55AC3BEF029E 30 | version 31 | 2 32 | 33 | 34 | -------------------------------------------------------------------------------- /Commands/Function documentation.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env bash 9 | [[ -f "${TM_SUPPORT_PATH}/lib/bash_init.sh" ]] && . "${TM_SUPPORT_PATH}/lib/bash_init.sh" 10 | 11 | if grep <<<${TM_CURRENT_WORD:-!} -Esq '[a-zA-Z0-9_]+' 12 | then exit_show_html "<meta http-equiv='Refresh' content='0;URL=http://www.mathworks.com/access/helpdesk/help/techdoc/ref/${TM_CURRENT_WORD}.html'>" 13 | else echo "Nothing to lookup (hint: place the caret on a function name)" 14 | fi 15 | 16 | fallbackInput 17 | word 18 | input 19 | selection 20 | inputFormat 21 | text 22 | keyEquivalent 23 | ^h 24 | name 25 | Function Documentation 26 | outputCaret 27 | afterOutput 28 | outputFormat 29 | html 30 | outputLocation 31 | newWindow 32 | scope 33 | source.matlab 34 | semanticClass 35 | lookup.define.matlab 36 | uuid 37 | 033730AF-96F5-4F0C-9199-E0683D40A22C 38 | version 39 | 2 40 | 41 | 42 | -------------------------------------------------------------------------------- /Commands/Introduce variable (throughout).tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env python 9 | 10 | import sys,os 11 | sys.path.append(os.environ['TM_SUPPORT_PATH'] + '/lib') 12 | 13 | import dialog 14 | 15 | def first_occurance(arr, str): 16 | """find first_occurance of str in an array of strings""" 17 | line_no = 0 18 | # Find first instance of `sel` 19 | for line in lines: 20 | try: 21 | line.index(sel) 22 | line_no = lines.index(line) 23 | break 24 | except ValueError: 25 | pass 26 | 27 | return line_no 28 | 29 | lines = sys.stdin.readlines() 30 | sel = '' 31 | var = '' 32 | 33 | try: 34 | sel = os.environ['TM_SELECTED_TEXT'] 35 | except KeyError: 36 | pass 37 | else: 38 | line_no = first_occurance(lines, sel)-1 39 | try: 40 | var = dialog.get_string(text='Enter new variable name', 41 | prompt='Variable name:') 42 | except AttributeError: 43 | print '% Please update your support directory' 44 | var = 'var' 45 | 46 | for line in lines[0:line_no]: 47 | print line.replace(sel, var), 48 | 49 | term = os.environ.get('TM_LINE_TERMINATOR') or ';' 50 | print '%s = %s%s\n' % (var, sel, term), 51 | 52 | for line in lines[line_no:]: 53 | print line.replace(sel, var), 54 | 55 | 56 | input 57 | document 58 | keyEquivalent 59 | ^C 60 | name 61 | Introduce variable (throughout) 62 | output 63 | replaceDocument 64 | scope 65 | source.matlab,source.python 66 | uuid 67 | 4B350792-24A2-4083-A8FB-509DF4BD709A 68 | 69 | 70 | -------------------------------------------------------------------------------- /Commands/Introduce variable.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env python 9 | 10 | import sys,os 11 | sys.path.append(os.environ['TM_SUPPORT_PATH'] + '/lib') 12 | 13 | import dialog 14 | 15 | line_no = int(os.environ.get('TM_LINE_NUMBER'))-1 16 | lines = sys.stdin.readlines() 17 | 18 | try: 19 | sel = os.environ['TM_SELECTED_TEXT'] 20 | except KeyError: 21 | pass 22 | else: 23 | try: 24 | var = dialog.get_string(text='Enter new variable name', 25 | prompt='Variable name:') 26 | except AttributeError: 27 | print '% Please update your support directory' 28 | var = 'var' 29 | 30 | term = os.environ.get('TM_LINE_TERMINATOR') or ';' 31 | lines[line_no] = lines[line_no].replace(sel, var) 32 | lines.insert(line_no, '%s = %s%s\n' % (var, sel, term)) 33 | 34 | for line in lines: 35 | print line, 36 | input 37 | document 38 | keyEquivalent 39 | ^C 40 | name 41 | Introduce variable (line) 42 | output 43 | replaceDocument 44 | scope 45 | source.matlab,source.python 46 | uuid 47 | 40B52D65-1B7C-4874-AA30-B4C95089CE55 48 | 49 | 50 | -------------------------------------------------------------------------------- /Commands/Open Function.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | f=`find . "$HOME/matlab" /Applications/MATLAB* -name "${TM_SELECTED_TEXT:-$TM_CURRENT_WORD}.m"|head -1` 9 | 10 | if [[ -e "$f" ]] 11 | then open -a TextMate "$f" 12 | else echo "File could not be found." 13 | fi 14 | 15 | input 16 | none 17 | keyEquivalent 18 | @O 19 | name 20 | Open Function 21 | output 22 | showAsTooltip 23 | scope 24 | source.matlab 25 | uuid 26 | D7A8ED42-49E0-4CF3-A6C8-BE8DAB76267A 27 | 28 | 29 | -------------------------------------------------------------------------------- /Commands/Spawn MATLAB.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env osascript 9 | 10 | tell application "Terminal" 11 | activate 12 | do script "matlab -nosplash -nodesktop" 13 | end tell 14 | 15 | input 16 | none 17 | inputFormat 18 | text 19 | name 20 | Spawn Matlab 21 | outputCaret 22 | afterOutput 23 | outputFormat 24 | text 25 | outputLocation 26 | discard 27 | uuid 28 | 07FBCD52-B897-4931-AE99-86C5B25C2132 29 | version 30 | 2 31 | 32 | 33 | -------------------------------------------------------------------------------- /Commands/clear.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | require ENV["TM_BUNDLE_SUPPORT"] + "/lib/MATLABUtils.rb" 10 | include MATLAB 11 | variables = MATLAB.get_variables 12 | puts "clear('${1:#{variables.join("','")}}'$2);" 13 | 14 | input 15 | document 16 | name 17 | clear 18 | output 19 | insertAsSnippet 20 | scope 21 | source.matlab, source.octave 22 | tabTrigger 23 | clear 24 | uuid 25 | 31D0DE27-0382-4F5F-B005-351F9D9B4589 26 | 27 | 28 | -------------------------------------------------------------------------------- /Commands/enter in brackets or parens.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | 10 | textarray = STDIN.readlines 11 | currentline = ENV['TM_LINE_NUMBER'].to_i 12 | numlines = textarray.size.to_i 13 | lineindex = ENV['TM_LINE_INDEX'].to_i 14 | thisline = ENV['TM_CURRENT_LINE'] 15 | columns = ENV['TM_LINE_INDEX'].to_i 16 | 17 | 18 | if (textarray.size == currentline) && (textarray.last.length == lineindex) 19 | # We're at the very end. 20 | if thisline.slice(0...lineindex).slice(/(\)|\])$/) 21 | # We're outside closed brackets/parens. Just insert an enter 22 | print "\n" 23 | else 24 | print " ...\n" 25 | end 26 | else 27 | # Let's add some dots. If we already have a dot or two, we won't print all three dots 28 | dots = thisline.slice(0...lineindex).slice(/\.+$/).to_s.length 29 | case dots 30 | when 0 31 | print " ..." 32 | when 1 33 | print ".." 34 | when 2 35 | print "." 36 | end 37 | print "\n" 38 | end 39 | 40 | fallbackInput 41 | scope 42 | input 43 | document 44 | keyEquivalent 45 | 46 | name 47 | Enter in Brackets or Parens Scope 48 | output 49 | insertAsSnippet 50 | scope 51 | (meta.brackets.matlab|meta.brackets.octave) - string.quoted.single.matlab,(meta.parens.matlab|meta.parens.octave) - string.quoted.single.matlab,(meta.brackets.curly.matlab|meta.brackets.curly.octave) - string.quoted.single.matlab 52 | uuid 53 | 8A857EDA-B07B-4304-BA10-29C3D22A3B1B 54 | 55 | 56 | -------------------------------------------------------------------------------- /Commands/enter in string in brackets.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | 10 | textarray = STDIN.readlines 11 | currentline = ENV['TM_LINE_NUMBER'].to_i 12 | numlines = textarray.size.to_i 13 | lineindex = ENV['TM_LINE_INDEX'].to_i 14 | thisline = ENV['TM_CURRENT_LINE'] 15 | columns = ENV['TM_LINE_INDEX'].to_i 16 | if columns == 0 && thisline[0] == ?' 17 | print "...\n" 18 | else 19 | if thisline.slice(0...lineindex).slice(/\'+$/).to_s.length.modulo(2) == 0 20 | # We must insert a quote 21 | print "'" 22 | end 23 | if (textarray.size == currentline) && (textarray.last.length == lineindex) 24 | # We're at the very end. If the last character is a quotation mark 25 | # we'll not add a leading quote. 26 | print " ...\n'$1']" 27 | else 28 | print " ...\n'" 29 | end 30 | end 31 | input 32 | document 33 | keyEquivalent 34 | 35 | name 36 | Enter in String in Brackets Scope 37 | output 38 | insertAsSnippet 39 | scope 40 | meta.brackets.matlab string.quoted.single.matlab 41 | uuid 42 | 732F1DA4-166B-44AF-88CD-5A944574D3CC 43 | 44 | 45 | -------------------------------------------------------------------------------- /Commands/enter in string.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | 10 | # Due to many special cases, this is rather ugly. 11 | 12 | # Set up all parameters 13 | debug = false 14 | textarray = STDIN.readlines 15 | linenumber = ENV['TM_LINE_NUMBER'].to_i 16 | numlines = textarray.size 17 | # Adjust for missing empty last line if last character is a newline 18 | numlines += 1 if textarray.last[-1] == 10 19 | lineindex = ENV['TM_LINE_INDEX'].to_i 20 | scopes = ENV['TM_SCOPE'].split 21 | preceding_string = scopes.index("punctuation.definition.string.begin.matlab") 22 | escaped_quote = scopes.index("constant.character.escape.matlab") 23 | if debug 24 | print "preceding_string", "\t\t= ___", preceding_string, "___\n" 25 | print "escaped_quote", "\t\t= ___", escaped_quote, "___\n" 26 | end 27 | 28 | thisline = ENV['TM_CURRENT_LINE'] 29 | firsthalf = thisline.slice(0...lineindex).gsub(/\$/,"\\\$") 30 | secondhalf = thisline.slice(lineindex...thisline.length).gsub(/\$/,"\\\$") 31 | 32 | atEOL = (thisline.length == lineindex) 33 | atEOF = (atEOL && numlines == linenumber) 34 | firstmatch = firsthalf.match(/(')(('{2}|[^'])*)(')?$/) 35 | secondmatch = secondhalf.match(/(')?(('{2}|[^'])*)(')?/) 36 | 37 | if atEOF 38 | if firstmatch.nil? 39 | puts "we have no quotes on this line" if debug 40 | # insert closing quote on preceding line and an enter 41 | elsif firstmatch.captures.last == "'" 42 | puts "we have a closing quote. insert enter" if debug 43 | firsthalf += "\n" 44 | else 45 | puts "we must close the string and insert an enter" if debug 46 | firsthalf += "'\n" 47 | end 48 | else 49 | if preceding_string 50 | puts "we're preceding a string. insert dots and an enter" if debug 51 | # check for =-+/* 52 | firsthalf += " ..." unless firsthalf.match(/[\=\+\-\*\/]\s*$/).nil? 53 | firsthalf += "\n" 54 | elsif atEOL 55 | puts "we're at the end of the line. insert a quote and an enter" if debug 56 | firsthalf += "'" if secondmatch.captures.first.nil? && secondmatch.captures.last.nil? && firstmatch.captures.last.nil? 57 | firsthalf += "\n" 58 | else 59 | # check if firsthalf is a closed string 60 | firsthalf.insert(firstmatch.begin(0),"[") 61 | if firstmatch.captures.last == "'" 62 | puts "first half is a closed string. insert brackets and dots" if debug 63 | else 64 | puts "first half is not closed. insert brackets, closing quote, and dots" if debug 65 | firsthalf += "'" 66 | end 67 | firsthalf += " ...\n" 68 | 69 | if secondmatch.captures.first.nil? 70 | puts "second half has no opening quote. insert leading quote and closing bracket" if debug 71 | secondhalf = "'" + secondhalf 72 | end 73 | if secondmatch.captures.last.nil? 74 | puts "second half has no closing quote. insert ending quote" if debug 75 | secondhalf += "']" 76 | else 77 | puts "second half has no closing bracket. insert ending bracket" if debug 78 | bias = secondmatch.captures.first.nil? ? 1 : 0 # compensate index for added quote 79 | secondhalf.insert(secondmatch.end(0) + bias,"]") 80 | end 81 | end 82 | end 83 | 84 | if debug 85 | print "linenumber", "\t= ___", linenumber, "___\n" 86 | print "numlines", "\t= ___", numlines, "___\n" 87 | print "lineindex", "\t= ___", lineindex, "___\n" 88 | print "firsthalf", "\t= ___", firsthalf, "___\n" 89 | print "secondhalf", "\t= ___", secondhalf, "___\n" 90 | print "scopes", "\t\t= ___", scopes, "___\n" 91 | print "preceding_string", "\t\t= ___", preceding_string, "___\n" 92 | print "escaped_quote", "\t\t= ___", escaped_quote, "___\n" 93 | print "atEOL", "\t\t= ___", atEOL, "___\n" 94 | print "atEOF", "\t\t= ___", atEOF, "___\n" 95 | print "debug", "\t\t= ___", debug, "___\n" 96 | print "firstmatch", "\t= ___", firstmatch, "___\n" 97 | print "firstmatch.begin(0)", "\t= ___", firstmatch.begin(0), "___\n" 98 | print "secondmatch", "\t= ___", secondmatch, "___\n" 99 | print "secondmatch.end(3)", "\t= ___", firstmatch.begin(3), "___\n" 100 | print "firstmatch.captures\t\t", firstmatch.captures.inspect, "\n" 101 | print "secondmatch.captures\t", secondmatch.captures.inspect, "\n" 102 | end 103 | 104 | print firsthalf, '$1', secondhalf 105 | 106 | fallbackInput 107 | line 108 | input 109 | selection 110 | keyEquivalent 111 | 112 | name 113 | Enter in String 114 | output 115 | insertAsSnippet 116 | scope 117 | string.quoted.single.matlab - meta.brackets.matlab, string.quoted.single.matlab - meta.parens.matlab 118 | uuid 119 | 12A5489D-0A50-4420-A53D-FB0C6A2794CD 120 | 121 | 122 | -------------------------------------------------------------------------------- /Commands/num2str.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env bash 9 | 10 | # If this were a snippet instead of a command, the construction 11 | # num2str(${1:${TM_SELECTED_TEXT:$TM_CURRENT_WORD}})$0 12 | # would replace the SELECTED_TEXT, but append new stuff after the CURRENT_WORD 13 | echo -n num2str'(${1:'`cat -`'})$0' 14 | 15 | fallbackInput 16 | word 17 | input 18 | selection 19 | inputFormat 20 | text 21 | keyEquivalent 22 | ^' 23 | name 24 | num2str 25 | outputCaret 26 | afterOutput 27 | outputFormat 28 | snippet 29 | outputLocation 30 | replaceInput 31 | scope 32 | (source.matlab|source.octave) - (string | comment) 33 | uuid 34 | 6F519B71-2D99-455B-9E4A-F614FD9CA253 35 | version 36 | 2 37 | 38 | 39 | -------------------------------------------------------------------------------- /Commands/save.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | require ENV["TM_BUNDLE_SUPPORT"] + "/lib/MATLABUtils.rb" 10 | include MATLAB 11 | variables = MATLAB.get_variables 12 | puts "save(${1:'${2:filename}'},${3:'${4:#{variables.join("','")}}'}$5);" 13 | 14 | input 15 | document 16 | name 17 | save 18 | output 19 | insertAsSnippet 20 | scope 21 | source.matlab, source.octave 22 | tabTrigger 23 | save 24 | uuid 25 | EA2AB0C2-A215-4503-930C-785CDF66F95B 26 | 27 | 28 | -------------------------------------------------------------------------------- /Commands/subplot.tmCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | #!/usr/bin/env ruby18 9 | # 10 | # Looks through code, finds the last subplot function 11 | # and pre-populates the new subplot call with values 12 | # from last function. If the input values are numeric, 13 | # we increment the last argument. 14 | # 15 | linesbefore = ENV['TM_LINE_NUMBER'].to_i-1 16 | columns = ENV['TM_LINE_INDEX'].to_i 17 | textArray = STDIN.readlines 18 | myStr = textArray[0...linesbefore].join 19 | myStr << textArray[linesbefore].to_s.slice(0...columns) 20 | 21 | if myStr =~ /.*(subplot\()(\w+[*]?)(\,)(\w+[*]?)(\,)(\w+[*]?)(\))/m 22 | subrows, subcols, subthis = $2, $4, $6 23 | 24 | # We have a pure number 25 | subthis = subthis.to_i + 1 if subthis =~ /\A\d+\z/ 26 | else 27 | subrows = "rows" 28 | subcols = "cols" 29 | subthis = "current" 30 | end 31 | 32 | print "subplot(${1:", subrows, "}," 33 | print "${2:", subcols, "}," 34 | print "${3:", subthis, "})${4:, }$0" 35 | fallbackInput 36 | document 37 | input 38 | document 39 | name 40 | subplot 41 | output 42 | insertAsSnippet 43 | scope 44 | source.matlab, source.octave 45 | tabTrigger 46 | sub 47 | uuid 48 | F674E1B2-5BA5-4397-9D54-D48623E9F2FD 49 | 50 | 51 | -------------------------------------------------------------------------------- /DragCommands/load mat file.tmDragCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | if [[ -z "$TM_DIRECTORY" ]] 9 | then filename=$TM_DROPPED_FILE 10 | else filename=${TM_DROPPED_FILE#${TM_DIRECTORY}} 11 | fi 12 | echo "\${1:variable} = load('${filename}');" 13 | draggedFileExtensions 14 | 15 | mat 16 | fig 17 | 18 | input 19 | selection 20 | name 21 | Load .mat File 22 | output 23 | insertAsSnippet 24 | scope 25 | source.matlab, source.octave 26 | uuid 27 | 41EA6496-FA26-4F74-90B1-F316A4C451AE 28 | 29 | 30 | -------------------------------------------------------------------------------- /DragCommands/read image.tmDragCommand: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | beforeRunningCommand 6 | nop 7 | command 8 | if [[ -z "$TM_DIRECTORY" ]] 9 | then filename=$TM_DROPPED_FILE 10 | else filename=${TM_DROPPED_FILE#${TM_DIRECTORY}} 11 | fi 12 | echo "\${1:image} = imread('${filename}');" 13 | draggedFileExtensions 14 | 15 | bmp 16 | cur 17 | gif 18 | hdf 19 | ico 20 | jpg 21 | jpeg 22 | pbm 23 | pcx 24 | pgm 25 | png 26 | pnm 27 | ppm 28 | ras 29 | tif 30 | tiff 31 | xwd 32 | 33 | input 34 | selection 35 | name 36 | Read Image 37 | output 38 | insertAsSnippet 39 | scope 40 | source.matlab, source.octave 41 | uuid 42 | 9FF80E01-2981-4D11-8E87-872FCCD0304E 43 | 44 | 45 | -------------------------------------------------------------------------------- /Macros/Execute cell.tmMacro: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | commands 6 | 7 | 8 | argument 9 | 10 | commands 11 | 12 | 13 | command 14 | moveRight: 15 | 16 | 17 | argument 18 | 19 | action 20 | findNext 21 | findInProjectIgnoreCase 22 | 23 | findInProjectRegularExpression 24 | 25 | findString 26 | ^[ \t]*%% 27 | ignoreCase 28 | 29 | regularExpression 30 | 31 | replaceAllScope 32 | document 33 | wrapAround 34 | 35 | 36 | command 37 | findWithOptions: 38 | 39 | 40 | command 41 | moveLeft: 42 | 43 | 44 | 45 | command 46 | playMacroWithOptions: 47 | 48 | 49 | argument 50 | 51 | commands 52 | 53 | 54 | argument 55 | 56 | action 57 | findPrevious 58 | findInProjectIgnoreCase 59 | 60 | findInProjectRegularExpression 61 | 62 | findString 63 | ^[ \t]*%% 64 | ignoreCase 65 | 66 | regularExpression 67 | 68 | replaceAllScope 69 | document 70 | wrapAround 71 | 72 | 73 | command 74 | findWithOptions: 75 | 76 | 77 | command 78 | moveLeft: 79 | 80 | 81 | 82 | command 83 | playMacroWithOptions: 84 | 85 | 86 | argument 87 | 88 | action 89 | findNext 90 | findInProjectIgnoreCase 91 | 92 | findInProjectRegularExpression 93 | 94 | findString 95 | %%(?m:.*?)(?=^[ \t]*%% |\z) 96 | ignoreCase 97 | 98 | regularExpression 99 | 100 | replaceAllScope 101 | document 102 | wrapAround 103 | 104 | 105 | command 106 | findWithOptions: 107 | 108 | 109 | argument 110 | 111 | beforeRunningCommand 112 | nop 113 | command 114 | cat | "$TM_BUNDLE_SUPPORT/to_matlab.scpt" 115 | 116 | fallbackInput 117 | line 118 | input 119 | selection 120 | keyEquivalent 121 | @r 122 | name 123 | Execute in MATLAB 124 | output 125 | showAsTooltip 126 | scope 127 | source.matlab 128 | uuid 129 | 064E306B-FF23-432B-952F-55AC3BEF029E 130 | 131 | command 132 | executeCommandWithOptions: 133 | 134 | 135 | command 136 | moveLeft: 137 | 138 | 139 | keyEquivalent 140 | @R 141 | name 142 | Execute Cell 143 | scope 144 | source.matlab 145 | uuid 146 | E888D2B7-977A-4A68-A966-6BE2762EB9C3 147 | 148 | 149 | -------------------------------------------------------------------------------- /Macros/Jump to incomplete assignments.tmMacro: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | commands 6 | 7 | 8 | command 9 | moveToBeginningOfDocument: 10 | 11 | 12 | argument 13 | 14 | action 15 | findNext 16 | findInProjectIgnoreCase 17 | 18 | findString 19 | ^\s*(([a-zA-Z]\w*\s*=\s*(;|%))|(%\s*[a-zA-Z]\w*\s*=\s*?$)) 20 | ignoreCase 21 | 22 | regularExpression 23 | 24 | replaceAllScope 25 | document 26 | replaceString 27 | mv "bilde.aspx?id=$2" "bilder/$2.jpg" 28 | wrapAround 29 | 30 | 31 | command 32 | findWithOptions: 33 | 34 | 35 | command 36 | moveRight: 37 | 38 | 39 | command 40 | moveLeft: 41 | 42 | 43 | keyEquivalent 44 | ^ 45 | name 46 | Jump to incomplete assignments 47 | scope 48 | source.matlab, source.octave 49 | uuid 50 | 459DF644-53A3-4ADD-8984-D4412CF44279 51 | 52 | 53 | -------------------------------------------------------------------------------- /Macros/Next cell.tmMacro: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | commands 6 | 7 | 8 | command 9 | moveRight: 10 | 11 | 12 | argument 13 | 14 | action 15 | findNext 16 | findInProjectIgnoreCase 17 | 18 | findInProjectRegularExpression 19 | 20 | findString 21 | ^[ \t]*%% 22 | ignoreCase 23 | 24 | regularExpression 25 | 26 | replaceAllScope 27 | document 28 | wrapAround 29 | 30 | 31 | command 32 | findWithOptions: 33 | 34 | 35 | command 36 | moveLeft: 37 | 38 | 39 | keyEquivalent 40 | ~@ 41 | name 42 | Next cell 43 | scope 44 | source.matlab 45 | uuid 46 | AD157889-CCD6-47D3-A5E5-0BD7BC719DD2 47 | 48 | 49 | -------------------------------------------------------------------------------- /Macros/Previous cell.tmMacro: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | commands 6 | 7 | 8 | argument 9 | 10 | action 11 | findPrevious 12 | findInProjectIgnoreCase 13 | 14 | findInProjectRegularExpression 15 | 16 | findString 17 | ^[ \t]*%% 18 | ignoreCase 19 | 20 | regularExpression 21 | 22 | replaceAllScope 23 | document 24 | wrapAround 25 | 26 | 27 | command 28 | findWithOptions: 29 | 30 | 31 | command 32 | moveLeft: 33 | 34 | 35 | keyEquivalent 36 | ~@ 37 | name 38 | Previous cell 39 | scope 40 | source.matlab 41 | uuid 42 | 535265FA-BB76-44F3-9970-374A249147E0 43 | 44 | 45 | -------------------------------------------------------------------------------- /Preferences/Folding - M.tmPreferences: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | name 6 | Folding (M) 7 | scope 8 | source.matlab 9 | settings 10 | 11 | foldingStartMarker 12 | ^\s*(function|if|switch|while|for|parfor|try)\b(?!.*\bend\b).*$ 13 | foldingStopMarker 14 | ^\s*(end|return)\b.*$ 15 | 16 | uuid 17 | 75D71264-922A-440B-A0DC-CC865C2DC1D3 18 | 19 | 20 | -------------------------------------------------------------------------------- /Preferences/Folding - Octave.tmPreferences: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | name 6 | Folding (Octave) 7 | scope 8 | source.octave 9 | settings 10 | 11 | foldingStartMarker 12 | ^\s*(function|if|switch|while|for|parfor|try)\b(?!.*\b(end|endfunction|endif|endswitch|endwhile|endfor|endparfor|endtry)\b).*$ 13 | foldingStopMarker 14 | ^\s*(end|return|endfunction|endif|endswitch|endwhile|endfor|endparfor|endtry)\b.*$ 15 | 16 | uuid 17 | D861F822-4411-4330-8E9E-E9FCCF9C7449 18 | 19 | 20 | -------------------------------------------------------------------------------- /Preferences/Indent.tmPreferences: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | name 6 | Miscellaneous Matlab 7 | scope 8 | source.matlab 9 | settings 10 | 11 | decreaseIndentPattern 12 | ^\s*\b(end\w*|catch|else|elseif|case|otherwise)\b 13 | highlightPairs 14 | 15 | 16 | ( 17 | ) 18 | 19 | 20 | [ 21 | ] 22 | 23 | 24 | { 25 | } 26 | 27 | 28 | " 29 | " 30 | 31 | 32 | increaseIndentPattern 33 | (?x)^\s* 34 | \b( 35 | function 36 | |if|else|elseif 37 | |switch|case|otherwise 38 | |for|parfor|while 39 | |try|catch 40 | |unwind_protect 41 | )\b 42 | shellVariables 43 | 44 | 45 | name 46 | TM_CLOSE_FUNCTIONS 47 | value 48 | 1 49 | 50 | 51 | name 52 | TM_COMMENT_START 53 | value 54 | % 55 | 56 | 57 | name 58 | TM_USE_OCTAVE 59 | value 60 | 0 61 | 62 | 63 | smartTypingPairs 64 | 65 | 66 | ( 67 | ) 68 | 69 | 70 | [ 71 | ] 72 | 73 | 74 | { 75 | } 76 | 77 | 78 | " 79 | " 80 | 81 | 82 | ' 83 | ' 84 | 85 | 86 | 87 | uuid 88 | 2CD1353B-AEC7-4BBF-8061-6038D1E93FA8 89 | 90 | 91 | -------------------------------------------------------------------------------- /Preferences/Miscellaneous Octave.tmPreferences: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | name 6 | Miscellaneous Octave 7 | scope 8 | source.octave 9 | settings 10 | 11 | decreaseIndentPattern 12 | ^\s*(catch|else|elseif|end|endfunction|endif|endswitch|endwhile|endfor|endparfor|endtry)\b 13 | highlightPairs 14 | 15 | 16 | ( 17 | ) 18 | 19 | 20 | [ 21 | ] 22 | 23 | 24 | { 25 | } 26 | 27 | 28 | " 29 | " 30 | 31 | 32 | increaseIndentPattern 33 | ^\s*(catch|else|elseif|for|parfor|function|if|switch|while|try).* 34 | shellVariables 35 | 36 | 37 | name 38 | TM_USE_OCTAVE 39 | value 40 | 1 41 | 42 | 43 | name 44 | TM_CLOSE_FUNCTIONS 45 | value 46 | 1 47 | 48 | 49 | name 50 | TM_COMMENT_START 51 | value 52 | % 53 | 54 | 55 | name 56 | TM_COMMENT_START_2 57 | value 58 | # 59 | 60 | 61 | name 62 | TM_COMMENT_START_3 63 | value 64 | %{ 65 | 66 | 67 | name 68 | TM_COMMENT_END_3 69 | value 70 | %} 71 | 72 | 73 | name 74 | TM_COMMENT_START_4 75 | value 76 | #{ 77 | 78 | 79 | name 80 | TM_COMMENT_END_4 81 | value 82 | #} 83 | 84 | 85 | smartTypingPairs 86 | 87 | 88 | ( 89 | ) 90 | 91 | 92 | [ 93 | ] 94 | 95 | 96 | { 97 | } 98 | 99 | 100 | 101 | uuid 102 | DCAA0C20-AF0B-4E64-A947-43DA07B901A4 103 | 104 | 105 | -------------------------------------------------------------------------------- /Preferences/Symbol List: Cells.tmPreferences: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | name 6 | Symbol List: Cells 7 | scope 8 | meta.cell.matlab 9 | settings 10 | 11 | showInSymbolList 12 | 1 13 | symbolTransformation 14 | s/=+\s*// 15 | 16 | uuid 17 | 219A59CC-83FE-484F-B1C8-2F6357056F2F 18 | 19 | 20 | -------------------------------------------------------------------------------- /Preferences/Symbol List: Classes.tmPreferences: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | name 6 | Symbol List: Classes 7 | scope 8 | meta.class-declaration.matlab 9 | settings 10 | 11 | showInSymbolList 12 | 13 | symbolTransformation 14 | 15 | s/^\s*//; 16 | s/\s*$//; 17 | s/\s+/ /; 18 | 19 | 20 | uuid 21 | E06A8058-9854-4232-B958-F74CD31EA81E 22 | 23 | 24 | -------------------------------------------------------------------------------- /Preferences/Symbols.tmPreferences: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | name 6 | Symbol List: Class Functions 7 | scope 8 | meta.class.matlab entity.name.function.matlab 9 | settings 10 | 11 | showInSymbolList 12 | 13 | symbolTransformation 14 | 15 | s/^/ /; 16 | 17 | 18 | uuid 19 | 5EC2B9C8-1311-4C27-A421-A7982E6418AA 20 | 21 | 22 | -------------------------------------------------------------------------------- /README.mdown: -------------------------------------------------------------------------------- 1 | # Installation 2 | 3 | You can install this bundle in TextMate by opening the preferences and going to the bundles tab. After installation it will be automatically updated for you. 4 | 5 | # General 6 | 7 | * [Bundle Styleguide](http://kb.textmate.org/bundle_styleguide) — _before you make changes_ 8 | * [Commit Styleguide](http://kb.textmate.org/commit_styleguide) — _before you send a pull request_ 9 | * [Writing Bug Reports](http://kb.textmate.org/writing_bug_reports) — _before you report an issue_ 10 | 11 | # License 12 | 13 | If not otherwise specified (see below), files in this repository fall under the following license: 14 | 15 | Permission to copy, use, modify, sell and distribute this 16 | software is granted. This software is provided "as is" without 17 | express or implied warranty, and with no claim as to its 18 | suitability for any purpose. 19 | 20 | An exception is made for files in readable text which contain their own license information, or files where an accompanying file exists (in the same directory) with a “-license” suffix added to the base-name name of the original file, and an extension of txt, html, or similar. For example “tidy” is accompanied by “tidy-license.txt”. -------------------------------------------------------------------------------- /Snippets/Octave function.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | ## Copyright (C) ${TM_YEAR} $TM_FULLNAME 7 | ## 8 | ## This program is free software; you can redistribute it and/or modify 9 | ## it under the terms of the GNU General Public License as published by 10 | ## the Free Software Foundation; either version 2 of the License, or 11 | ## (at your option) any later version. 12 | ## 13 | ## This program is distributed in the hope that it will be useful, 14 | ## but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | ## GNU General Public License for more details. 17 | ## 18 | ## You should have received a copy of the GNU General Public License 19 | ## along with this program; If not, see <http://www.gnu.org/licenses/>. 20 | 21 | ## -*- texinfo -*- 22 | ## @deftypefn {Function File} {${1:Outputs} = } ${2:Function Name} (${3:Input Arguments) 23 | ## ${4:Short Description} 24 | ## 25 | ## ${5:Long Description} 26 | ## 27 | ## @seealso{${6:functions}} 28 | ## @end deftypefn 29 | 30 | ## Author: $TM_FULLNAME 31 | 32 | $0 33 | 34 | endfunction 35 | name 36 | Octave function 37 | scope 38 | source.matlab 39 | tabTrigger 40 | octfun 41 | uuid 42 | 5C7F21FA-156C-4A86-AB20-7F9678010BCA 43 | 44 | 45 | -------------------------------------------------------------------------------- /Snippets/^.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | ^($1) $2 7 | name 8 | ^ 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | ^ 13 | uuid 14 | 6B86576E-F8E3-4E3A-8083-CFE4C0DF9E42 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/case.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | case ${2:'${3:string}'} 7 | $0 8 | name 9 | case 10 | scope 11 | source.matlab, source.octave 12 | tabTrigger 13 | case 14 | uuid 15 | F7A928F5-B70D-4DB0-8DEF-F61928038A6C 16 | 17 | 18 | -------------------------------------------------------------------------------- /Snippets/disp sprintf.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | disp(sprintf('${1:%s}\\n'${1/([^%]|%%)*(%.)?.*/(?2:, :\))/}$2${1/([^%]|%%)*(%.)?.*/(?2:\))/}); 7 | name 8 | disp sprintf 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | dsp 13 | uuid 14 | EC4078AC-7F43-42CA-A83A-E1477558D84E 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/disp.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | disp('${1:Text}'); 7 | name 8 | disp 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | disp 13 | uuid 14 | 975C9569-8B7D-4A60-8ED4-478A724D3A4E 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/dlmwrite.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | dlmwrite('${1:filename}.dat', [${2:variables}], ${3:'${4:delimiter}', '${5:\t}'}); 7 | $0 8 | name 9 | dlmwrite 10 | scope 11 | source.matlab, source.octave 12 | tabTrigger 13 | dlmwrite 14 | uuid 15 | 0FDCE9D1-A757-4793-816D-1364192CE326 16 | 17 | 18 | -------------------------------------------------------------------------------- /Snippets/else.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | else 7 | ${1:body} 8 | name 9 | else 10 | scope 11 | source.matlab, source.octave 12 | tabTrigger 13 | else 14 | uuid 15 | 582075F1-DB3F-4280-9F46-B615F8EF4A86 16 | 17 | 18 | -------------------------------------------------------------------------------- /Snippets/elseif.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | elseif ${1:condition} 7 | $0 8 | name 9 | elseif 10 | scope 11 | source.matlab, source.octave 12 | tabTrigger 13 | elseif 14 | uuid 15 | EA7BD80E-6346-44E9-A909-CE0703CFB390 16 | 17 | 18 | -------------------------------------------------------------------------------- /Snippets/error.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | error('${1:Description}'); 7 | name 8 | error 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | error 13 | uuid 14 | 7135F592-1176-478A-BA31-BD8A7DA56F93 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/exp.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | exp($1) $2 7 | name 8 | exp 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | e 13 | uuid 14 | C00046EC-C7DC-4BC5-81CD-EBCB0F6FE8F7 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/for … end cell strings.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | for ${1:s} = transpose(${2:strings}(:)); $1 = $1{1}; 7 | $0 8 | `if [[ $TM_USE_OCTAVE -ne '0' ]] 9 | then echo "endfor" 10 | else 11 | echo "end" 12 | fi`; clear $1; 13 | name 14 | for … end cell strings 15 | scope 16 | source.matlab, source.octave 17 | tabTrigger 18 | fors 19 | uuid 20 | B8E195CE-1606-4311-900D-4A1E1ACE6F94 21 | 22 | 23 | -------------------------------------------------------------------------------- /Snippets/for.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | for ${1:ii}=${2:1}${3::${4:n}} 7 | $0 8 | `if [[ $TM_USE_OCTAVE -ne '0' ]] 9 | then echo "endfor" 10 | else 11 | echo "end" 12 | fi` 13 | name 14 | for … end 15 | scope 16 | source.matlab, source.octave 17 | tabTrigger 18 | for 19 | uuid 20 | 08CB1F21-B7EB-4AD7-B066-BB365966E390 21 | 22 | 23 | -------------------------------------------------------------------------------- /Snippets/fprintf.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | fprintf(${1:fid}, '${2:%s}\\n'${2/([^%]|%%)*(%.)?.*/(?2:, :\);)/}$3${2/([^%]|%%)*(%.)?.*/(?2:\);)/} 7 | name 8 | fprintf 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | fpr 13 | uuid 14 | 163D3790-C8E8-4888-81D7-50907D825EA0 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/function (fun).plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | function ${1:out} = ${2:${TM_FILENAME:?${TM_FILENAME/\.m//}:f}}(${3:in}) 7 | % ${2/.*/\U$0/} ${4:Description} 8 | % ${1/.*/\U$0/} = ${2/.*/\U$0/}(${6:${3/.*/\U$0/}}) 9 | % 10 | % ${5:Long description} 11 | 12 | $0 13 | 14 | `if [[ $TM_CLOSE_FUNCTIONS -ne '0' ]] 15 | then 16 | if [[ $TM_USE_OCTAVE -ne '0' ]] 17 | then echo "endfunction" 18 | else 19 | echo "end ${TM_COMMENT_START}function" 20 | fi 21 | fi` 22 | 23 | name 24 | function 25 | scope 26 | source.matlab, source.octave 27 | tabTrigger 28 | function 29 | uuid 30 | 0EA9BDAD-6EA3-48C4-ADF5-EA549D84CAF0 31 | 32 | 33 | -------------------------------------------------------------------------------- /Snippets/get.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | get(${1:gca},'${2:PropertyName}'); 7 | name 8 | get 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | get 13 | uuid 14 | 9915BCE4-2499-4E17-9006-7BB08A8539F0 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/griddata.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | griddata(${1:xx}, ${2:yy}, ${3:zz}, ${4:xi}, ${5:yi}); 7 | name 8 | griddata 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | griddata 13 | uuid 14 | 8E4BA761-42BB-4CFC-B117-A547228878B8 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/if else.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | if ${1:condition} 7 | $2 8 | else 9 | $3 10 | `if [[ $TM_USE_OCTAVE -ne '0' ]] 11 | then echo "endif" 12 | else 13 | echo "end" 14 | fi` 15 | name 16 | if … else …end 17 | scope 18 | source.matlab, source.octave 19 | tabTrigger 20 | ife 21 | uuid 22 | 4A86BFC8-5C03-45F8-B7D6-597F476E7C93 23 | 24 | 25 | -------------------------------------------------------------------------------- /Snippets/if elseif.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | if ${1:condition} 7 | ${2:body} 8 | elseif ${3:condition} 9 | ${4:body} 10 | else 11 | ${5:body} 12 | end 13 | 14 | name 15 | if … elseif … end 16 | scope 17 | source.matlab , source.octave 18 | tabTrigger 19 | ifeif 20 | uuid 21 | 93234216-9807-416E-8416-A130A05C2C1F 22 | 23 | 24 | -------------------------------------------------------------------------------- /Snippets/if.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | if ${1:condition} 7 | $0 8 | `if [[ $TM_USE_OCTAVE -ne '0' ]] 9 | then echo "endif" 10 | else 11 | echo "end" 12 | fi` 13 | name 14 | if … end 15 | scope 16 | source.matlab, source.octave 17 | tabTrigger 18 | if 19 | uuid 20 | 876FEC4C-FD21-401A-8947-0B2E232E19CA 21 | 22 | 23 | -------------------------------------------------------------------------------- /Snippets/line.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | line(${1:xvector},${2:yvector}${3:,'Color','${4:b}','LineWidth',${5:1},'LineStyle','${6:-}'}) 7 | 8 | name 9 | line 10 | scope 11 | source.matlab, source.octave 12 | tabTrigger 13 | line 14 | uuid 15 | 3FFA60EB-FA14-47DE-AEF7-5A3E840BE637 16 | 17 | 18 | -------------------------------------------------------------------------------- /Snippets/nargchk.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | error(nargchk(${1:min}, ${2:max}, ${3:nargin}, `if [[ $TM_USE_OCTAVE -eq '0' ]]; then 7 | echo -n "'struct'" 8 | fi` )); 9 | 10 | name 11 | nargchk 12 | scope 13 | source.matlab, source.octave 14 | tabTrigger 15 | nargchk 16 | uuid 17 | 8325A3D7-1025-48C4-810F-CF41E7E71DA2 18 | 19 | 20 | -------------------------------------------------------------------------------- /Snippets/set.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | set(${1:get(${2:gca},'${3:PropertyName}')},'${4:PropertyName}',${5:PropertyValue}); 7 | name 8 | set 9 | scope 10 | source.matlab , source.octave 11 | tabTrigger 12 | set 13 | uuid 14 | 1166137D-A579-484D-BDD7-AC62EFFA3FFA 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/small function.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | function ${1:out} = ${2:f}(${3:in}) 7 | $0 8 | `if [[ $TM_CLOSE_FUNCTIONS -ne '0' ]] 9 | then 10 | if [[ $TM_USE_OCTAVE -ne '0' ]] 11 | then echo "endfunction" 12 | else 13 | echo "end" 14 | fi 15 | fi` 16 | name 17 | small function 18 | scope 19 | source.matlab, source.octave 20 | tabTrigger 21 | f 22 | uuid 23 | 2376F2E2-E240-422F-B6E8-48B6AA20C9EE 24 | 25 | 26 | -------------------------------------------------------------------------------- /Snippets/sprintf.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | sprintf('${1:%s}\\n'${1/([^%]|%%)*(%.)?.*/(?2:, :\);)/}$2${1/([^%]|%%)*(%.)?.*/(?2:\);)/} 7 | name 8 | sprintf 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | spr 13 | uuid 14 | 71CFA3F2-D883-4571-95B9-D98651890156 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/switch … case … end.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | switch ${1:var} 7 | case ${2:'${3:string}'} 8 | $0 9 | `if [[ $TM_USE_OCTAVE -ne '0' ]] 10 | then echo "endswitch" 11 | else 12 | echo "end" 13 | fi` 14 | name 15 | switch … case … end 16 | scope 17 | source.matlab 18 | tabTrigger 19 | switch 20 | uuid 21 | 631FAA9C-ECC2-484A-A29C-3CD66D944693 22 | 23 | 24 | -------------------------------------------------------------------------------- /Snippets/switch … case … otherwise … end.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | switch ${1:var} 7 | case ${2:'${3:string}'} 8 | $4 9 | otherwise 10 | $0 11 | `if [[ $TM_USE_OCTAVE -ne '0' ]] 12 | then echo "endswitch" 13 | else 14 | echo "end" 15 | fi` 16 | name 17 | switch … case … otherwise … end 18 | scope 19 | source.matlab 20 | tabTrigger 21 | switcho 22 | uuid 23 | C600A817-A58A-4884-9BDC-F7CB13407CB6 24 | 25 | 26 | -------------------------------------------------------------------------------- /Snippets/title.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | set(get(gca,'Title'),'String',${1:'${2}'}); 7 | name 8 | title 9 | scope 10 | source.matlab , source.octave 11 | tabTrigger 12 | zla 13 | uuid 14 | 7298E093-E86F-4A60-ACFF-67580F24FD27 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/try … catch … end.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | try 7 | $1 8 | catch 9 | $0 10 | `if [[ $TM_USE_OCTAVE -ne '0' ]] 11 | then echo "end_try_catch" 12 | else 13 | echo "end" 14 | fi` 15 | name 16 | try … catch … end 17 | scope 18 | source.matlab 19 | tabTrigger 20 | try 21 | uuid 22 | B287F24B-9BC5-4EAB-9621-1E73D367AAB7 23 | 24 | 25 | -------------------------------------------------------------------------------- /Snippets/unix.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | [${1:s},${2:w}] = unix('${3:Unix commands}'); 7 | name 8 | unix 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | uni 13 | uuid 14 | F0A7C9BF-8FE2-4452-8EC9-F71881C7831F 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/unwind_protect … cleanup … end.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | unwind_protect 7 | $1 8 | unwnd_protect_cleanup 9 | $0 10 | end_unwind_protect 11 | name 12 | unwind_protect … cleanup … end 13 | scope 14 | source.matlab 15 | tabTrigger 16 | unwind 17 | uuid 18 | 9475371F-F8A7-4C46-BAC9-B42E7E34F2AD 19 | 20 | 21 | -------------------------------------------------------------------------------- /Snippets/warning.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | warning(['${1:Description}']); 7 | name 8 | warning 9 | scope 10 | source.matlab, source.octave 11 | tabTrigger 12 | war 13 | uuid 14 | 6392FF26-D584-435E-8202-9BC99FF26488 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/while.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | while ${1:condition} 7 | ${2:body} 8 | end 9 | 10 | name 11 | while 12 | scope 13 | source.matlab , source.octave 14 | tabTrigger 15 | whi 16 | uuid 17 | ADE63DB1-7F3A-4EAC-A5A4-3A35A28FE8F0 18 | 19 | 20 | -------------------------------------------------------------------------------- /Snippets/xlabel.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | set(get(gca,'XLabel'),'String',${1:'${2}'}); 7 | name 8 | xlabel 9 | scope 10 | source.matlab , source.octave 11 | tabTrigger 12 | xla 13 | uuid 14 | 178F5EE1-2953-4FB2-8623-99A1C7D0772F 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/xtick.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | set(gca,'XTick',${1:[${2}]}); 7 | name 8 | xtick 9 | scope 10 | source.matlab , source.octave 11 | tabTrigger 12 | xti 13 | uuid 14 | A93C4844-87F4-4136-9580-75B697D0CFD7 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/ylabel.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | set(get(gca,'YLabel'),'String',${1:'${2}'}); 7 | name 8 | ylabel 9 | scope 10 | source.matlab , source.octave 11 | tabTrigger 12 | yla 13 | uuid 14 | 1F4C6EA6-370C-45A9-96C5-36E69CC297E3 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/ytick.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | set(gca,'YTick',${1:[${2}]}); 7 | name 8 | ytick 9 | scope 10 | source.matlab , source.octave 11 | tabTrigger 12 | yti 13 | uuid 14 | 2FED97FA-0EB0-45E3-B92F-757903E79684 15 | 16 | 17 | -------------------------------------------------------------------------------- /Snippets/zlabel.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | set(get(gca,'ZLabel'),'String',${1:'${2}'}); 7 | name 8 | zlabel 9 | scope 10 | source.matlab , source.octave 11 | tabTrigger 12 | zla 13 | uuid 14 | 3C12382B-FD63-4DD8-9198-02D25AF755FF 15 | 16 | 17 | -------------------------------------------------------------------------------- /Support/lib/MATLABUtils.rb: -------------------------------------------------------------------------------- 1 | # The MATLAB module contains methods for parsing MATLAB scripts and functions 2 | require ENV["TM_SUPPORT_PATH"] + "/lib/exit_codes.rb" 3 | 4 | module MATLAB 5 | ENV['TM_SCOPE'] =~ /source\.(\w+)/ 6 | OCTAVE = ($1 == 'octave') 7 | 8 | class < 2 | 3 | 4 | 5 | fileTypes 6 | 7 | m 8 | 9 | keyEquivalent 10 | ^~M 11 | name 12 | MATLAB 13 | patterns 14 | 15 | 16 | include 17 | #classdef 18 | 19 | 20 | include 21 | #function 22 | 23 | 24 | include 25 | #blocks 26 | 27 | 28 | include 29 | #constants_override 30 | 31 | 32 | include 33 | #brackets 34 | 35 | 36 | include 37 | #curlybrackets 38 | 39 | 40 | include 41 | #parens 42 | 43 | 44 | include 45 | #string 46 | 47 | 48 | include 49 | #transpose 50 | 51 | 52 | include 53 | #double_quote 54 | 55 | 56 | include 57 | #operators 58 | 59 | 60 | include 61 | #builtin_keywords 62 | 63 | 64 | include 65 | #comments 66 | 67 | 68 | include 69 | #number 70 | 71 | 72 | include 73 | #variable 74 | 75 | 76 | include 77 | #variable_invalid 78 | 79 | 80 | include 81 | #not_equal_invalid 82 | 83 | 84 | include 85 | #variable_assignment 86 | 87 | 88 | repository 89 | 90 | blocks 91 | 92 | patterns 93 | 94 | 95 | begin 96 | (^\s*)(for)\s+ 97 | beginCaptures 98 | 99 | 0 100 | 101 | name 102 | meta.for-quantity.matlab 103 | 104 | 2 105 | 106 | name 107 | keyword.control.for.matlab 108 | 109 | 110 | end 111 | ^\s*(end)\b 112 | endCaptures 113 | 114 | 1 115 | 116 | name 117 | keyword.control.end.for.matlab 118 | 119 | 120 | name 121 | meta.for.matlab 122 | patterns 123 | 124 | 125 | begin 126 | \G(?!$) 127 | end 128 | $\n? 129 | name 130 | meta.for-quantity.matlab 131 | patterns 132 | 133 | 134 | include 135 | $self 136 | 137 | 138 | 139 | 140 | include 141 | $self 142 | 143 | 144 | 145 | 146 | begin 147 | (^\s*)(parfor)\s+ 148 | beginCaptures 149 | 150 | 0 151 | 152 | name 153 | meta.parfor-quantity.matlab 154 | 155 | 2 156 | 157 | name 158 | keyword.control.for.matlab 159 | 160 | 161 | end 162 | ^\s*(end)\b 163 | endCaptures 164 | 165 | 1 166 | 167 | name 168 | keyword.control.end.for.matlab 169 | 170 | 171 | name 172 | meta.parfor.matlab 173 | patterns 174 | 175 | 176 | begin 177 | \G(?!$) 178 | end 179 | $\n? 180 | name 181 | meta.parfor-quantity.matlab 182 | patterns 183 | 184 | 185 | include 186 | $self 187 | 188 | 189 | 190 | 191 | include 192 | $self 193 | 194 | 195 | 196 | 197 | begin 198 | (^\s*)(if)\s+ 199 | beginCaptures 200 | 201 | 0 202 | 203 | name 204 | meta.if-condition.matlab 205 | 206 | 2 207 | 208 | name 209 | keyword.control.if.matlab 210 | 211 | 212 | end 213 | ^\s*(end)\b 214 | endCaptures 215 | 216 | 1 217 | 218 | name 219 | keyword.control.end.if.matlab 220 | 221 | 222 | name 223 | meta.if.matlab 224 | patterns 225 | 226 | 227 | begin 228 | \G(?!$) 229 | end 230 | $\n? 231 | name 232 | meta.if-condition.matlab 233 | patterns 234 | 235 | 236 | include 237 | $self 238 | 239 | 240 | 241 | 242 | beginCaptures 243 | 244 | 0 245 | 246 | name 247 | meta.elseif-condition.matlab 248 | 249 | 2 250 | 251 | name 252 | keyword.control.elseif.matlab 253 | 254 | 3 255 | 256 | patterns 257 | 258 | 259 | include 260 | $self 261 | 262 | 263 | 264 | 265 | end 266 | ^ 267 | match 268 | (^\s*)(elseif)\s+(.*)$\n? 269 | name 270 | meta.elseif.matlab 271 | 272 | 273 | beginCaptures 274 | 275 | 0 276 | 277 | name 278 | meta.else-condition.matlab 279 | 280 | 2 281 | 282 | name 283 | keyword.control.else.matlab 284 | 285 | 286 | end 287 | ^ 288 | match 289 | (^\s*)(else)\s+$\n? 290 | name 291 | meta.else.matlab 292 | 293 | 294 | include 295 | $self 296 | 297 | 298 | 299 | 300 | begin 301 | (^\s*)(while)\s+ 302 | beginCaptures 303 | 304 | 0 305 | 306 | name 307 | meta.while-condition.matlab 308 | 309 | 2 310 | 311 | name 312 | keyword.control.while.matlab 313 | 314 | 315 | end 316 | ^\s*(end)\b 317 | endCaptures 318 | 319 | 1 320 | 321 | name 322 | keyword.control.end.while.matlab 323 | 324 | 325 | name 326 | meta.while.matlab 327 | patterns 328 | 329 | 330 | begin 331 | \G(?!$) 332 | end 333 | $\n? 334 | name 335 | meta.while-condition.matlab 336 | patterns 337 | 338 | 339 | include 340 | $self 341 | 342 | 343 | 344 | 345 | include 346 | $self 347 | 348 | 349 | 350 | 351 | begin 352 | (^\s*)(switch)\s+ 353 | beginCaptures 354 | 355 | 0 356 | 357 | name 358 | meta.switch-expression.matlab 359 | 360 | 2 361 | 362 | name 363 | keyword.control.switch.matlab 364 | 365 | 366 | end 367 | ^\s*(end)\b 368 | endCaptures 369 | 370 | 1 371 | 372 | name 373 | keyword.control.end.switch.matlab 374 | 375 | 376 | name 377 | meta.switch.matlab 378 | patterns 379 | 380 | 381 | begin 382 | \G(?!$) 383 | end 384 | $\n? 385 | name 386 | meta.switch-expression.matlab 387 | patterns 388 | 389 | 390 | include 391 | $self 392 | 393 | 394 | 395 | 396 | beginCaptures 397 | 398 | 0 399 | 400 | name 401 | meta.case-expression.matlab 402 | 403 | 2 404 | 405 | name 406 | keyword.control.case.matlab 407 | 408 | 3 409 | 410 | patterns 411 | 412 | 413 | include 414 | $self 415 | 416 | 417 | 418 | 419 | end 420 | ^ 421 | match 422 | (^\s*)(case)\s+(.*)$\n? 423 | name 424 | meta.case.matlab 425 | 426 | 427 | beginCaptures 428 | 429 | 0 430 | 431 | name 432 | meta.otherwise-expression.matlab 433 | 434 | 2 435 | 436 | name 437 | keyword.control.otherwise.matlab 438 | 439 | 440 | end 441 | ^ 442 | match 443 | (^\s*)(otherwise)\s+$\n? 444 | name 445 | meta.otherwise.matlab 446 | 447 | 448 | include 449 | $self 450 | 451 | 452 | 453 | 454 | begin 455 | (^\s*)(try)\s*($\n?|%) 456 | beginCaptures 457 | 458 | 2 459 | 460 | name 461 | keyword.control.try.matlab 462 | 463 | 464 | end 465 | ^\s*(end)\b 466 | endCaptures 467 | 468 | 1 469 | 470 | name 471 | keyword.control.end.try.matlab 472 | 473 | 474 | name 475 | meta.try.matlab 476 | patterns 477 | 478 | 479 | beginCaptures 480 | 481 | 0 482 | 483 | name 484 | meta.catch-exception.matlab 485 | 486 | 2 487 | 488 | name 489 | keyword.control.catch.matlab 490 | 491 | 3 492 | 493 | patterns 494 | 495 | 496 | include 497 | $self 498 | 499 | 500 | 501 | 502 | end 503 | ^ 504 | match 505 | (^\s*)(catch)(\s+.*)$\n? 506 | name 507 | meta.catch.matlab 508 | 509 | 510 | include 511 | $self 512 | 513 | 514 | 515 | 516 | 517 | brackets 518 | 519 | begin 520 | \[ 521 | beginCaptures 522 | 523 | 0 524 | 525 | name 526 | meta.brackets.matlab 527 | 528 | 529 | contentName 530 | meta.brackets.matlab 531 | end 532 | \] 533 | endCaptures 534 | 535 | 0 536 | 537 | name 538 | meta.brackets.matlab 539 | 540 | 541 | patterns 542 | 543 | 544 | include 545 | $self 546 | 547 | 548 | 549 | builtin_keywords 550 | 551 | patterns 552 | 553 | 554 | include 555 | #keywords 556 | 557 | 558 | include 559 | #storage 560 | 561 | 562 | include 563 | #contants 564 | 565 | 566 | include 567 | #variables 568 | 569 | 570 | include 571 | #support_library 572 | 573 | 574 | repository 575 | 576 | contants 577 | 578 | comment 579 | MATLAB constants 580 | match 581 | (?<!\.)\b(eps|false|Inf|inf|intmax|intmin|namelengthmax|NaN|nan|on|off|realmax|realmin|true)\b 582 | name 583 | constant.language.matlab 584 | 585 | keywords 586 | 587 | patterns 588 | 589 | 590 | comment 591 | Data Analysis 592 | match 593 | (?<!\.)\b(abs|addevent|addsample|addsampletocollection|addts|angle|conv|conv2|convn|corrcoef|cov|cplxpair|ctranspose|cumtrapz|deconv|del2|delevent|delsample|delsamplefromcollection|detrend|diff|fft|fft2|fftn|fftshift|fftw|filter|filter2|getabstime|getdatasamplesize|getinterpmethod|getqualitydesc|getsampleusingtime|gettimeseriesnames|gettsafteratevent|gettsafterevent|gettsatevent|gettsbeforeatevent|gettsbeforeevent|gettsbetweenevents|gradient|idealfilter|ifft|ifft2|ifftn|ifftshift|iqr|max|mean|median|min|mldivide|mode|mrdivide|removets|resample|setabstime|setinterpmethod|settimeseriesnames|std|synchronize|timeseries|trapz|tscollection|tsdata.event|tsprops|tstool|var)\b 594 | name 595 | keyword.other.analysis.matlab 596 | 597 | 598 | comment 599 | Control keywords 600 | match 601 | (?<!\.)\b(break|case|catch|continue|else|elseif|end|for|parfor|if|otherwise|pause|rethrow|return|start|startat|stop|switch|try|wait|while)\b 602 | name 603 | keyword.control.matlab 604 | 605 | 606 | comment 607 | Desktop Tools and Development 608 | match 609 | (?<!\.)\b(addpath|assignin|builddocsearchdb|cd|checkin|checkout|clc|clear|clipboard|cmopts|commandhistory|commandwindow|computer|copyfile|customverctrl|dbclear|dbcont|dbdown|dbquit|dbstack|dbstatus|dbstep|dbstop|dbtype|dbup|debug|demo|diary|dir|doc|docopt|docsearch|dos|echodemo|edit|exit|fileattrib|filebrowser|finish|format|genpath|getenv|grabcode|help|helpbrowser|helpwin|home|hostid|info|keyboard|license|lookfor|ls|matlab|matlabrc|matlabroot|memory|mkdir|mlint|mlintrpt|more|movefile|notebook|openvar|pack|partialpath|path|path2rc|pathdef|pathsep|pathtool|perl|playshow|prefdir|preferences|profile|profsave|publish|pwd|quit|recycle|rehash|restoredefaultpath|rmdir|rmpath|savepath|setenv|startup|support|system|toolboxdir|type|undocheckout|unix|ver|verctrl|verLessThan|version|web|what|whatsnew|which|winqueryreg|workspace)\b 610 | name 611 | keyword.other.desktop.matlab 612 | 613 | 614 | comment 615 | Mathematics 616 | match 617 | (?<!\.)\b(accumarray|acos|acosd|acosh|acot|acotd|acoth|acsc|acscd|acsch|airy|amd|asec|asecd|asech|asin|asind|asinh|atan|atan2|atand|atanh|balance|besselh|besseli|besselj|besselk|bessely|beta|betainc|betaln|bicg|bicgstab|blkdiag|bsxfun|bvp4c|bvpget|bvpinit|bvpset|bvpxtend|cart2pol|cart2sph|cat|cdf2rdf|ceil|cgs|chol|cholinc|cholupdate|circshift|colamd|colperm|compan|complex|cond|condeig|condest|conj|convhull|convhulln|cos|cosd|cosh|cot|cotd|coth|cross|csc|cscd|csch|cumprod|cumsum|dblquad|dde23|ddeget|ddesd|ddeset|decic|det|deval|diag|disp|display|dmperm|dot|eig|eigs|ellipj|ellipke|erf|erfc|erfcinv|erfcx|erfinv|etree|etreeplot|exp|expint|expm|expm1|eye|factor|factorial|find|fix|flipdim|fliplr|flipud|floor|fminbnd|fminsearch|freqspace|full|funm|fzero|gallery|gamma|gammainc|gammaln|gcd|gmres|gplot|griddata|griddata3|griddatan|gsvd|hadamard|hankel|hess|hilb|horzcat|hypot|i|idivide|ilu|imag|ind2sub|Inf|inline|interp1|interp1q|interp2|interp3|interpft|interpn|inv|invhilb|ipermute|j|kron|lcm|ldl|legendre|length|linsolve|linspace|log|log10|log1p|log2|logm|logspace|lscov|lsqnonneg|lsqr|lu|luinc|magic|meshgrid|minres|mkpp|mod|NaN|nchoosek|ndgrid|ndims|nextpow2|nnz|nonzeros|norm|normest|nthroot|null|numel|nzmax|ode113|ode15i|ode15s|ode23|ode23s|ode23t|ode23tb|ode45|odefile|odeget|odeset|odextend|ones|optimget|optimset|ordeig|ordqz|ordschur|orth|pascal|pcg|pchip|pdepe|pdeval|perms|permute|pi|pinv|planerot|pol2cart|poly|polyder|polyeig|polyfit|polyint|polyval|polyvalm|pow2|ppval|primes|prod|psi|qmr|qr|qrdelete|qrinsert|qrupdate|quad|quadl|quadv|qz|rand|randn|randperm|rank|rat|rats|rcond|real|reallog|realpow|realsqrt|rem|repmat|reshape|residue|roots|rosser|rot90|round|rref|rsf2csf|schur|sec|secd|sech|shiftdim|sign|sin|sind|sinh|size|sort|sortrows|spalloc|sparse|spaugment|spconvert|spdiags|speye|spfun|sph2cart|spline|spones|spparms|sprand|sprandn|sprandsym|sprank|spy|sqrt|sqrtm|squeeze|ss2tf|sub2ind|subspace|sum|svd|svds|symamd|symbfact|symmlq|symrcm|tan|tand|tanh|toeplitz|trace|treelayout|treeplot|tril|triplequad|triu|unmkpp|unwrap|vander|vectorize|vertcat|wilkinson|zeros)\b 618 | name 619 | keyword.other.mathematics.matlab 620 | 621 | 622 | comment 623 | Operator keywords 624 | match 625 | (?<!\.)\b(all|and|any|bitand|bitcmp|bitget|bitmax|bitor|bitset|bitshift|bitxor|eq|ge|gt|isa|isappdata|iscell|iscellstr|ischar|iscom|isdir|isempty|isequal|isequalwithequalnans|isevent|isfield|isfinite|isfloat|isglobal|ishandle|ishold|isinf|isinteger|isinterface|isjava|iskeyword|isletter|islogical|ismac|ismember|ismethod|isnan|isnumeric|isobject|ispc|ispref|isprime|isprop|isreal|isscalar|issorted|isspace|issparse|isstrprop|isstruct|isstudent|isunix|isvarname|isvector|le|lt|mislocked|or|ne|not|setxor|union|unique|xor)\b 626 | name 627 | keyword.operator.matlab 628 | 629 | 630 | comment 631 | Other keywords 632 | match 633 | (?<!\.)\b(addOptional|addParamValue|addRequired|addtodate|ans|arrayfun|assert|blanks|builtin|calendar|cell|celldisp|cellfun|cellplot|clock|cputime|createCopy|datatipinfo|date|datenum|datestr|datevec|dbmex|deal|deblank|depdir|depfun|echo|eomday|error|etime|eval|evalc|evalin|exist|feval|fieldnames|findstr|func2str|genvarname|getfield|global|inferiorto|inmem|intersect|intwarning|lasterr|lasterror|lastwarn|loadobj|lower|methods|methodsview|mex|mexext|mfilename|mlock|munlock|nargchk|nargoutchk|now|orderfields|parse|pcode|regexp|regexpi|regexprep|regexptranslate|rmfield|run|saveobj|setdiff|setfield|sprintf|sscanf|strcat|strcmp|strcmpi|strfind|strings|strjust|strmatch|strncmp|strncmpi|strread|strrep|strtok|strtrim|structfun|strvcat|subsasgn|subsindex|subsref|substruct|superiorto|swapbytes|symvar|tic|timer|timerfind|timerfindall|toc|typecast|upper|warning|weekday|who|whos)\b 634 | name 635 | keyword.other.matlab 636 | 637 | 638 | 639 | storage 640 | 641 | patterns 642 | 643 | 644 | comment 645 | File I/O 646 | match 647 | (?<!\.)\b(addframe|ascii|audioplayer|audiorecorder|aufinfo|auread|auwrite|avifile|aviinfo|aviread|beep|binary|cdfepoch|cdfinfo|cdfread|cdfwrite|csvread|csvwrite|daqread|dlmread|dlmwrite|exifread|fclose|feof|ferror|fgetl|fgets|filehandle|filemarker|fileparts|filesep|fitsinfo|fitsread|fopen|fprintf|fread|frewind|fscanf|fseek|ftell|ftp|fullfile|fwrite|gunzip|gzip|hdf|hdf5|hdf5info|hdf5read|hdf5write|hdfinfo|hdfread|hdftool|imfinfo|importdata|imread|imwrite|lin2mu|load|memmapfile|mget|mmfileinfo|movie2avi|mput|mu2lin|multibandread|multibandwrite|open|rename|save|sendmail|sound|soundsc|tar|tempdir|tempname|textread|textscan|todatenum|uiimport|untar|unzip|urlread|urlwrite|wavfinfo|wavplay|wavread|wavrecord|wavwrite|winopen|wk1finfo|wk1read|wk1write|xlsfinfo|xlsread|xlswrite|xmlread|xmlwrite|xslt|zip)\b 648 | name 649 | storage.type.control.matlab 650 | 651 | 652 | comment 653 | Storage modifiers 654 | match 655 | (?<!\.)\b(base2dec|bin2dec|cast|cell2mat|cell2struct|cellstr|char|dec2base|dec2bin|dec2hex|hex2dec|hex2num|int2str|mat2cell|mat2str|num2cell|native2unicode|num2hex|num2str|persistent|str2double|str2func|str2mat|str2num|struct2cell|unicode2native)\b 656 | name 657 | storage.modifier.matlab 658 | 659 | 660 | comment 661 | Storage types 662 | match 663 | (?<!\.)\b(class|double|function|functions|input|inputname|inputParser|int16|int32|int64|int8|logical|single|struct|uint16|uint32|uint64|uint8)\b 664 | name 665 | storage.type.matlab 666 | 667 | 668 | 669 | support_library 670 | 671 | patterns 672 | 673 | 674 | comment 675 | External Interfaces 676 | match 677 | (?<!\.)\b(actxcontrol|actxcontrollist|actxcontrolselect|actxGetRunningServer|actxserver|addproperty|calllib|callSoapService|createClassFromWsdl|createSoapMessage|ddeadv|ddeexec|ddeinit|ddepoke|ddereq|ddeterm|ddeunadv|deleteproperty|enableservice|eventlisteners|events|Execute|GetCharArray|GetFullMatrix|GetVariable|GetWorkspaceData|import|instrcallback|instrfind|instrfindall|interfaces|invoke|javaaddpath|javaArray|javachk|javaclasspath|javaMethod|javaObject|javarmpath|libfunctions|libfunctionsview|libisloaded|libpointer|libstruct|loadlibrary|MaximizeCommandWindow|MinimizeCommandWindow|move|parseSoapResponse|PutCharArray|PutFullMatrix|PutWorkspaceData|readasync|record|registerevent|release|send|serial|serialbreak|stopasync|unloadlibrary|unregisterallevents|unregisterevent|usejava)\b 678 | name 679 | support.function.external.matlab 680 | 681 | 682 | comment 683 | Creating Graphical User Interfaces 684 | match 685 | (?<!\.)\b(addpref|align|dialog|errordlg|export2wsdlg|getappdata|getpixelposition|getpref|ginput|guidata|guide|guihandles|helpdlg|inputdlg|inspect|listdlg|listfonts|menu|movegui|msgbox|openfig|printdlg|printpreview|questdlg|rmappdata|rmpref|selectmoveresize|setappdata|setpixelposition|setpref|textwrap|uibuttongroup|uicontextmenu|uicontrol|uigetdir|uigetfile|uigetpref|uimenu|uiopen|uipanel|uipushtool|uiputfile|uiresume|uisave|uisetcolor|uisetfont|uisetpref|uistack|uitoggletool|uitoolbar|uiwait|waitbar|waitfor|waitforbuttonpress|warndlg)\b 686 | name 687 | support.function.matlab 688 | 689 | 690 | comment 691 | Graphics 692 | match 693 | (?<!\.)\b(alim|allchild|alpha|alphamap|ancestor|annotation|area|axes|axis|bar|bar3|bar3h|barh|box|brighten|camdolly|cameratoolbar|camlight|camlookat|camorbit|campan|campos|camproj|camroll|camtarget|camup|camva|camzoom|caxis|cla|clabel|clf|close|closereq|colorbar|colordef|colormap|colormapeditor|ColorSpec|comet|comet3|compass|coneplot|contour|contour3|contourc|contourf|contourslice|contrast|copyobj|curl|cylinder|daspect|datacursormode|datetick|delaunay|delaunay3|delaunayn|delete|diffuse|divergence|dragrect|drawnow|dsearch|dsearchn|ellipsoid|errorbar|ezcontour|ezcontourf|ezmesh|ezmeshc|ezplot|ezplot3|ezpolar|ezsurf|ezsurfc|feather|figure|figurepalette|fill|fill3|findall|findfigs|findobj|flow|fplot|frame2im|frameedit|gca|gcbf|gcbo|gcf|gco|get|getframe|graymon|grid|gtext|hgexport|hggroup|hgload|hgsave|hgtransform|hidden|hist|histc|hold|hsv2rgb|im2frame|im2java|image|imagesc|imformats|ind2rgb|inpolygon|interpstreamspeed|isocaps|isocolors|isonormals|isosurface|legend|light|lightangle|lighting|line|LineSpec|linkaxes|linkprop|loglog|makehgtform|material|mesh|meshc|meshz|movie|newplot|noanimate|opengl|orient|pan|pareto|patch|pbaspect|pcolor|peaks|pie|pie3|plot|plot3|plotbrowser|plotedit|plotmatrix|plottools|plotyy|polar|polyarea|print|printopt|propedit|propertyeditor|quiver|quiver3|rbbox|rectangle|rectint|reducepatch|reducevolume|refresh|refreshdata|reset|rgb2hsv|rgbplot|ribbon|rose|rotate|rotate3d|saveas|scatter|scatter3|semilogx|semilogy|set|shading|showplottool|shrinkfaces|slice|smooth3|specular|sphere|spinmap|stairs|stem|stem3|stream2|stream3|streamline|streamparticles|streamribbon|streamslice|streamtube|subplot|subvolume|surf|surf2patch|surface|surfc|surfl|surfnorm|tetramesh|texlabel|text|title|trimesh|triplot|trisurf|tsearch|tsearchn|view|viewmtx|volumebounds|voronoi|voronoin|waterfall|whitebg|xlabel|xlim|ylabel|ylim|zlabel|zlim|zoom)\b 694 | name 695 | support.function.graphics.matlab 696 | 697 | 698 | comment 699 | Matlab aerospace toolbox 700 | match 701 | (?<!\.)\b(wrldmagm|updateNodes|updateCamera|updateBodies|update|show|saveas|rrtheta|rrsigma|rrdelta|removeViewpoint|removeNode|removeBody|read|quatrotate|quatnormalize|quatnorm|quatmultiply|quatmod|quatinv|quatdivide|quatconj|quat2dcm|quat2angle|play|nodeInfo|moveBody|move|mjuliandate|machnumber|load|lla2ecef|leapyear|juliandate|initialize|initIfNeeded|hide|gravitywgs84|geoidegm96|geod2geoc|geocradius|geoc2geod|generatePatches|findstartstoptimes|fganimation|ecef2lla|dpressure|delete|decyear|dcmecef2ned|dcmbody2wind|dcm2quat|dcm2latlon|dcm2angle|dcm2alphabeta|datcomimport|createBody|correctairspeed|convvel|convtemp|convpres|convmass|convlength|convforce|convdensity|convangvel|convangacc|convang|convacc|atmospalt|atmosnrlmsise00|atmosnonstd|atmoslapse|atmosisa|atmoscoesa|atmoscira|angle2quat|angle2dcm|alphabeta|airspeed|addViewpoint|addRoute|addNode|addBody|VirtualRealityAnimation|Viewpoint|Node|Geometry|GenerateRunScript|Camera|Body|Animation)\b 702 | name 703 | support.function.toolbox.aerospace.matlab 704 | 705 | 706 | comment 707 | Matlab bioinformatics toolbox 708 | match 709 | (?<!\.)\b(zonebackadj|weights|view|traverse|traceplot|topoorder|swalign|svmtrain|svmsmoset|svmclassify|subtree|sptread|showhmmprof|showalignment|shortestpath|seqwordcount|seqtool|seqshowwords|seqshoworfs|seqreverse|seqrcomplement|seqprofile|seqpdist|seqneighjoin|seqmatch|seqlogo|seqlinkage|seqinsertgaps|seqdotplot|seqdisp|seqconsensus|seqcomplement|seq2regexp|select|scfread|samplealign|rnaplot|rnafold|rnaconvert|rna2dna|rmasummary|rmabackadj|revgeneticcode|restrict|reroot|reorder|redgreencmap|rebasecuts|rankfeatures|randseq|randfeatures|ramachandran|quantilenorm|prune|proteinpropplot|proteinplot|profalign|probesetvalues|probesetplot|probesetlookup|probesetlink|probelibraryinfo|plot|phytreewrite|phytreetool|phytreeread|phytree|pfamhmmread|pdist|pdbwrite|pdbread|pdbdistplot|pam|palindromes|optimalleaforder|oligoprop|nwalign|num2goid|nuc44|ntdensity|nt2int|nt2aa|nmercount|mzxmlread|mzxml2peaks|multialignviewer|multialignread|multialign|msviewer|mssgolay|msresample|msppresample|mspeaks|mspalign|msnorm|mslowess|msheatmap|msdotplot|msbackadj|msalign|molweight|molviewer|minspantree|maxflow|mavolcanoplot|mattest|mapcaplot|manorm|malowess|maloglog|mairplot|mainvarsetnorm|maimage|magetfield|mafdr|maboxplot|knnimpute|knnclassify|joinseq|jcampread|isspantree|isomorphism|isoelectric|isdag|int2nt|int2aa|imageneread|hmmprofstruct|hmmprofmerge|hmmprofgenerate|hmmprofestimate|hmmprofalign|graphtraverse|graphtopoorder|graphshortestpath|graphpred2path|graphminspantree|graphmaxflow|graphisspantree|graphisomorphism|graphisdag|graphconncomp|graphcluster|graphallshortestpaths|gprread|gonnet|goannotread|getrelatives|getpdb|getnodesbyid|getnewickstr|getmatrix|gethmmtree|gethmmprof|gethmmalignment|getgeodata|getgenpept|getgenbank|getembl|getedgesbynodeid|getdescendants|getcanonical|getbyname|getblast|getancestors|get|geosoftread|genpeptread|genevarfilter|geneticcode|generangefilter|geneont|genelowvalfilter|geneentropyfilter|genbankread|gcrmabackadj|gcrma|galread|featuresparse|featuresmap|fastawrite|fastaread|exprprofvar|exprprofrange|evalrasmolscript|emblread|dolayout|dndsml|dnds|dna2rna|dimercount|dayhoff|cytobandread|crossvalind|cpgisland|conncomp|codoncount|codonbias|clustergram|cleave|classperf|chromosomeplot|cghcbs|celintensityread|blosum|blastreadlocal|blastread|blastncbi|blastlocal|blastformat|biograph|baselookup|basecount|atomiccomp|aminolookup|allshortestpaths|agferead|affyread|affyprobeseqread|affyprobeaffinities|affyinvarsetnorm|aacount|aa2nt|aa2int)\b 710 | name 711 | support.function.toolbox.bioinformatics.matlab 712 | 713 | 714 | comment 715 | Matlab communications toolbox 716 | match 717 | (?<!\.)\b(wgn|vitdec|vec2mat|varlms|syndtable|symerr|stdchan|ssbmod|ssbdemod|signlms|shift2mask|seqgen\.pn|seqgen|semianalytic|scatterplot|rsgenpoly|rsencof|rsenc|rsdecof|rsdec|rls|ricianchan|reset|rectpulse|rcosine|rcosiir|rcosflt|rcosfir|rayleighchan|randsrc|randintrlv|randint|randerr|randdeintrlv|quantiz|qfuncinv|qfunc|qammod|qamdemod|pskmod|pskdemod|primpoly|poly2trellis|pmmod|pmdemod|plot|pammod|pamdemod|oqpskmod|oqpskdemod|oct2dec|normlms|noisebw|muxintrlv|muxdeintrlv|mskmod|mskdemod|modnorm|modem\.qammod|modem\.qamdemod|modem\.pskmod|modem\.pskdemod|modem\.pammod|modem\.pamdemod|modem\.oqpskmod|modem\.oqpskdemod|modem\.mskmod|modem\.mskdemod|modem\.genqammod|modem\.genqamdemod|modem\.dpskmod|modem\.dpskdemod|modem|mlseeq|mldivide|minpol|matintrlv|matdeintrlv|mask2shift|marcumq|log|lms|lloyds|lineareq|istrellis|isprimitive|iscatastrophic|intrlv|intdump|ifft|huffmanenco|huffmandict|huffmandeco|hilbiir|helscanintrlv|helscandeintrlv|helintrlv|heldeintrlv|hank2sys|hammgen|gray2bin|gfweight|gftuple|gftrunc|gftable|gfsub|gfroots|gfrepcov|gfrank|gfprimfd|gfprimdf|gfprimck|gfpretty|gfmul|gfminpol|gflineq|gffilter|gfdiv|gfdeconv|gfcosets|gfconv|gfadd|gf|genqammod|genqamdemod|gen2par|fskmod|fskdemod|fmmod|fmdemod|finddelay|filter|fft|fec\.ldpcenc|fec\.ldpcdec|eyediagram|equalize|encode|dvbs2ldpc|dpskmod|dpskdemod|dpcmopt|dpcmenco|dpcmdeco|doppler\.rounded|doppler\.rjakes|doppler\.jakes|doppler\.gaussian|doppler\.flat|doppler\.bigaussian|doppler\.ajakes|doppler|distspec|dftmtx|dfe|deintrlv|decode|de2bi|cyclpoly|cyclgen|cosets|convmtx|convintrlv|convenc|convdeintrlv|compand|commscope\.eyediagram|commscope|cma|bsc|biterr|bin2gray|bi2de|bertool|bersync|berfit|berfading|berconfint|bercoding|berawgn|bchnumerr|bchgenpoly|bchenc|bchdec|awgn|arithenco|arithdeco|ammod|amdemod|alignsignals|algintrlv|algdeintrlv)\b 718 | name 719 | support.function.toolbox.communications.matlab 720 | 721 | 722 | comment 723 | Matlab control systems toolbox 724 | match 725 | (?<!\.)\b(zpkdata|zpk|zgrid|zero|totaldelay|tfdata|tf|stepplot|stepinfo|step|stack|stabsep|ssdata|ssbal|ss2ss|ss|sminreal|size|sisotool|sisoinit|sigmaplot|sigma|sgrid|setoptions|setdelaymodel|set|series|rss|rlocusplot|rlocus|reshape|reg|real|pzplot|pzmap|pole|place|parallel|pade|ord2|obsvf|obsv|nyquistplot|nyquist|norm|nicholsplot|nichols|ngrid|ndims|modsep|modred|minreal|margin|lyapchol|lyap|ltiview|ltiprops|ltimodels|lsimplot|lsiminfo|lsim|lqry|lqrd|lqr|lqgreg|lqg|lft|kalmd|kalman|issiso|isproper|isempty|isdt|isct|iopzplot|iopzmap|inv|interp|initialplot|initial|impulseplot|impulse|imag|hsvplot|hsvd|hasdelay|gram|getoptions|getdelaymodel|get|gensig|gdare|gcare|fselect|freqresp|frdata|frd|fnorm|filt|feedback|fcat|evalfr|estim|esort|dssdata|dss|dsort|drss|dlyapchol|dlyap|dlqr|delayss|delay2z|dcgain|dare|damp|d2d|d2c|ctrlpref|ctrbf|ctrb|covar|connect|conj|chgunits|care|canon|c2d|bodeplot|bodemag|bode|bandwidth|balred|balreal|augstate|append|allmargin|acker|abs)\b 726 | name 727 | support.function.toolbox.control-systems.matlab 728 | 729 | 730 | comment 731 | Matlab curve fitting toolbox 732 | match 733 | (?<!\.)\b(type|smooth|set|probvalues|probnames|predint|plot|numcoeffs|numargs|islinear|integrate|indepnames|get|formula|fittype|fitoptions|fit|feval|excludedata|differentiate|dependnames|datastats|confint|coeffvalues|coeffnames|cftool|cflibhelp|cfit|category|argnames)\b 734 | name 735 | support.function.toolbox.curve-fitting.matlab 736 | 737 | 738 | comment 739 | Matlab data acquisition toolbox 740 | match 741 | (?<!\.)\b(wait|trigger|stop|start|softscope|size|showdaqevents|setverify|set|save|putvalue|putsample|putdata|propinfo|peekdata|obj2mfile|muxchanidx|makenames|load|length|isvalid|issending|isrunning|islogging|isdioline|ischannel|inspect|getvalue|getsample|getdata|get|flushdata|disp|digitalio|delete|dec2binvec|daqreset|daqregister|daqread|daqmem|daqhwinfo|daqhelp|daqfind|daqcallback|clear|binvec2dec|analogoutput|analoginput|addmuxchannel|addline|addchannel)\b 742 | name 743 | support.function.toolbox.data-acquisition.matlab 744 | 745 | 746 | comment 747 | Matlab database toolbox 748 | match 749 | (?<!\.)\b(width|versioncolumns|update|unregister|tables|tableprivileges|supports|sql2native|setdbprefs|set|runstoredprocedure|rsmd|rows|rollback|resultset|register|querytimeout|querybuilder|procedures|procedurecolumns|primarykeys|ping|namecolumn|logintimeout|isurl|isreadonly|isnullcolumn|isjdbc|isdriver|isconnection|insert|indexinfo|importedkeys|getdatasources|get|fetchmulti|fetch|fastinsert|exportedkeys|exec|drivermanager|driver|dmd|database\.fetch|database|cursor\.fetch|crossreference|confds|commit|columns|columnprivileges|columnnames|cols|close|clearwarnings|bestrowid|attr)\b 750 | name 751 | support.function.toolbox.database.matlab 752 | 753 | 754 | comment 755 | Matlab datafeed toolbox 756 | match 757 | (?<!\.)\b(yahoo|tables|stop|stockticker|showtrades|reuters|pricevol|nextinfo|kx|isconnection|insert|info|idc|hyperfeed|havertool|haver|get|fred|fetch|factset|exec|datastream|close|bloomberg)\b 758 | name 759 | support.function.toolbox.datafeed.matlab 760 | 761 | 762 | comment 763 | Matlab design toolbox 764 | match 765 | (?<!\.)\b(zplane|zpkshiftc|zpkshift|zpkrateup|zpklp2xn|zpklp2xc|zpklp2mbc|zpklp2mb|zpklp2lp|zpklp2hp|zpklp2bsc|zpklp2bs|zpklp2bpc|zpklp2bp|zpkftransf|zpkbpc2bpc|zerophase|window|validstructures|tf2cl|tf2ca|stepz|specifyall|sos|setspecs|set2int|scaleopts|scalecheck|scale|reset|reorder|reffilter|realizemdl|qreport|polyphase|phasez|phasedelay|parallel|order|nstates|normalizefreq|normalize|norm|noisepsdopts|noisepsd|multistage|msesim|msepred|mfilt\.linearinterp|mfilt\.iirwdfinterp|mfilt\.iirwdfdecim|mfilt\.iirinterp|mfilt\.iirdecim|mfilt\.holdinterp|mfilt\.firtdecim|mfilt\.firsrc|mfilt\.firinterp|mfilt\.firfracinterp|mfilt\.firfracdecim|mfilt\.firdecim|mfilt\.fftfirinterp|mfilt\.farrowsrc|mfilt\.cicinterp|mfilt\.cicdecim|mfilt\.cascade|mfilt|measure|maxstep|limitcycle|lagrange|kaiserwin|isstable|issos|isreal|isminphase|ismaxphase|islinphase|isfir|isallpass|int|info|impz|iirshiftc|iirshift|iirrateup|iirpowcomp|iirpeak|iirnotch|iirls|iirlpnormc|iirlpnorm|iirlp2xn|iirlp2xc|iirlp2mbc|iirlp2mb|iirlp2lp|iirlp2hp|iirlp2bsc|iirlp2bs|iirlp2bpc|iirlp2bp|iirlinphase|iirgrpdelay|iirftransf|iircomb|iirbpc2bpc|ifir|help|grpdelay|gain|freqz|freqsamp|freqrespopts|freqrespest|firtype|firpr2chfb|firnyquist|firminphase|firls|firlpnorm|firlp2lp|firlp2hp|firhalfband|firgr|fireqint|firceqrip|fircband|filtstates\.cic|filterbuilder|filter|fftcoeffs|fdesign\.rsrc|fdesign\.peak|fdesign\.parameq|fdesign\.octave|fdesign\.nyquist|fdesign\.notch|fdesign\.lowpass|fdesign\.isinclp|fdesign\.interpolator|fdesign\.hilbert|fdesign\.highpass|fdesign\.halfband|fdesign\.fracdelay|fdesign\.differentiator|fdesign\.decimator|fdesign\.ciccomp|fdesign\.bandstop|fdesign\.bandpass|fdesign\.arbmagnphase|fdesign\.arbmag|fdesign|fdatool|fcfwrite|farrow|euclidfactors|equiripple|ellip|double|disp|dfilt\.wdfallpass|dfilt\.scalar|dfilt\.parallel|dfilt\.latticemamin|dfilt\.latticemamax|dfilt\.latticearma|dfilt\.latticear|dfilt\.latticeallpass|dfilt\.dfsymfir|dfilt\.dffirt|dfilt\.dffir|dfilt\.dfasymfir|dfilt\.df2tsos|dfilt\.df2t|dfilt\.df2sos|dfilt\.df2|dfilt\.df1tsos|dfilt\.df1t|dfilt\.df1sos|dfilt\.df1|dfilt\.cascadewdfallpass|dfilt\.cascadeallpass|dfilt\.cascade|dfilt\.calatticepc|dfilt\.calattice|dfilt\.allpass|dfilt|designopts|designmethods|design|denormalize|cumsec|cost|convert|coewrite|coeread|coeffs|cl2tf|cheby2|cheby1|ca2tf|butter|block|autoscale|allpassshiftc|allpassshift|allpassrateup|allpasslp2xn|allpasslp2xc|allpasslp2mbc|allpasslp2mb|allpasslp2lp|allpasslp2hp|allpasslp2bsc|allpasslp2bs|allpasslp2bpc|allpasslp2bp|allpassbpc2bpc|adaptfilt\.ufdaf|adaptfilt\.tdafdft|adaptfilt\.tdafdct|adaptfilt\.swrls|adaptfilt\.swftf|adaptfilt\.ss|adaptfilt\.se|adaptfilt\.sd|adaptfilt\.rls|adaptfilt\.qrdrls|adaptfilt\.qrdlsl|adaptfilt\.pbufdaf|adaptfilt\.pbfdaf|adaptfilt\.nlms|adaptfilt\.lsl|adaptfilt\.lms|adaptfilt\.hswrls|adaptfilt\.hrls|adaptfilt\.gal|adaptfilt\.ftf|adaptfilt\.filtxlms|adaptfilt\.fdaf|adaptfilt\.dlms|adaptfilt\.blmsfft|adaptfilt\.blms|adaptfilt\.bap|adaptfilt\.apru|adaptfilt\.ap|adaptfilt\.adjlms|adaptfilt)\b 766 | name 767 | support.function.toolbox.design.matlab 768 | 769 | 770 | comment 771 | Matlab excel link toolbox 772 | match 773 | (?<!\.)\b(matlabsub|matlabinit|matlabfcn|MLUseFullDesktop|MLUseCellArray|MLStartDir|MLShowMatlabErrors|MLPutVar|MLPutMatrix|MLOpen|MLMissingDataAsNaN|MLGetVar|MLGetMatrix|MLGetFigure|MLEvalString|MLDeleteMatrix|MLClose|MLAutoStart|MLAppendMatrix)\b 774 | name 775 | support.function.toolbox.excel-link.matlab 776 | 777 | 778 | comment 779 | Matlab filder design hdl coder toolbox 780 | match 781 | (?<!\.)\b(generatetbstimulus|generatetb|generatehdl|fdhdltool)\b 782 | name 783 | support.function.toolbox.filder-design-hdl-coder.matlab 784 | 785 | 786 | comment 787 | Matlab financial toolbox 788 | match 789 | (?<!\.)\b(zero2pyld|zero2fwd|zero2disc|zbtyield|zbtprice|yldtbill|yldmat|ylddisc|yearfrac|yeardays|year|xirr|x2mdate|wrkdydif|willpctr|willad|weights2holdings|weekday|wclose|volroc|vertcat|uplus|uminus|uicalendar|ugarchsim|ugarchpred|ugarchllf|ugarch|typprice|tsmovavg|tsmom|tsaccel|tr2bonds|toweekly|totalreturnprice|tosemi|toquoted|toquarterly|tomonthly|todecimal|today|todaily|toannual|times|time2date|tick2ret|thirtytwo2dec|thirdwednesday|tbl2bond|taxedrr|targetreturn|subsref|subsasgn|stochosc|std|spctkd|sortfts|smoothts|size|sharpe|setfield|selectreturn|second|rsindex|rmfield|ret2tick|resamplets|rdivide|pyld2zero|pvvar|pvtrend|pvfix|prtbill|prmat|prdisc|prcroc|prbyzero|power|posvolidx|portvrisk|portstats|portsim|portrand|portopt|portcons|portalpha|portalloc|pointfig|plus|plot|periodicreturns|peravg|pcpval|pcglims|pcgcomp|pcalims|payuni|payper|payodd|payadv|opprofit|onbalvol|nweekdate|now|nomrr|negvolidx|mvnrstd|mvnrobj|mvnrmle|mvnrfish|mtimes|mrdivide|movavg|months|month|mirr|minute|minus|min|merge|medprice|mean|maxdrawdown|max|macd|m2xdate|lweekdate|lpm|log2|log10|log|llow|length|leadts|lbusdate|lagts|issorted|isfield|isequal|iscompatible|isbusday|irr|inforatio|hour|horzcat|holidays|holdings2weights|hist|highlow|hhigh|getnameidx|getfield|geom2arith|fwd2zero|fvvar|fvfix|fvdisc|ftsuniq|ftstool|ftsinfo|ftsgui|ftsbound|fts2mat|fts2ascii|frontier|frontcon|freqstr|freqnum|frac2cur|fpctkd|fints|filter|fillts|fieldnames|fetch|fbusdate|extfield|exp|ewstats|eomday|eomdate|end|emaxdrawdown|elpm|effrr|ecmnstd|ecmnobj|ecmnmle|ecmninit|ecmnhess|ecmnfish|ecmmvnrstd|ecmmvnrobj|ecmmvnrmle|ecmmvnrfish|ecmlsrobj|ecmlsrmle|discrate|disc2zero|diff|depstln|depsoyd|deprdv|depgendb|depfixdb|dec2thirtytwo|daysdif|daysadd|daysact|days365|days360psa|days360isda|days360e|days360|day|datewrkdy|datevec|datestr|datenum|datemnth|datefind|datedisp|dateaxis|date2time|cur2str|cur2frac|cumsum|createholidays|cpnpersz|cpndaysp|cpndaysn|cpndatepq|cpndatep|cpndatenq|cpndaten|cpncount|cov2corr|corr2cov|convertto|convert2sur|chfield|chartfts|chaikvolat|chaikosc|cftimes|cfport|cfdur|cfdates|cfconv|cfamounts|candle|busdays|busdate|boxcox|bollinger|bolling|bndyield|bndspread|bndprice|bnddury|bnddurp|bndconvy|bndconvp|blsvega|blstheta|blsrho|blsprice|blslambda|blsimpv|blsgamma|blsdelta|blkprice|blkimpv|binprice|beytbill|barh|bar3h|bar3|bar|ascii2fts|arith2geom|annuterm|annurate|amortize|adosc|adline|active2abs|acrudisc|acrubond|accrfrac|abs2active)\b 790 | name 791 | support.function.toolbox.financial.matlab 792 | 793 | 794 | comment 795 | Matlab financial derivatives toolbox 796 | match 797 | (?<!\.)\b(trintreeshape|trintreepath|treeviewer|treeshape|treepath|time2date|swaptionbyhw|swaptionbyhjm|swaptionbybk|swaptionbybdt|swapbyzero|swapbyhw|swapbyhjm|swapbybk|swapbybdt|stockspec|stockoptspec|ratetimes|rate2disc|optstockbyitt|optstockbyeqp|optstockbycrr|optbndbyhw|optbndbyhjm|optbndbybk|optbndbybdt|mmktbyhjm|mmktbybdt|mktrintree|mktree|mkbush|lookbackbyitt|lookbackbyeqp|lookbackbycrr|itttree|itttimespec|ittsens|ittprice|isafin|intenvset|intenvsens|intenvprice|intenvget|insttypes|instswaption|instswap|instsetfield|instselect|instoptstock|instoptbnd|instlookback|instlength|instgetcell|instget|instfloor|instfloat|instfixed|instfind|instfields|instdisp|instdelete|instcompound|instcf|instcap|instbond|instbarrier|instasian|instaddfield|instadd|hwvolspec|hwtree|hwtimespec|hwsens|hwprice|hjmvolspec|hjmtree|hjmtimespec|hjmsens|hjmprice|hedgeslf|hedgeopt|floorbyhw|floorbyhjm|floorbybk|floorbybdt|floatbyzero|floatbyhw|floatbyhjm|floatbybk|floatbybdt|fixedbyzero|fixedbyhw|fixedbyhjm|fixedbybk|fixedbybdt|eqptree|eqptimespec|eqpsens|eqpprice|disc2rate|derivset|derivget|datedisp|date2time|cvtree|crrtree|crrtimespec|crrsens|crrprice|compoundbyitt|compoundbyeqp|compoundbycrr|classfin|cfbyzero|cfbyhw|cfbyhjm|cfbybk|cfbybdt|capbyhw|capbyhjm|capbybk|capbybdt|bushshape|bushpath|bondbyzero|bondbyhw|bondbyhjm|bondbybk|bondbybdt|bkvolspec|bktree|bktimespec|bksens|bkprice|bdtvolspec|bdttree|bdttimespec|bdtsens|bdtprice|barrierbyitt|barrierbyeqp|barrierbycrr|asianbyitt|asianbyeqp|asianbycrr)\b 798 | name 799 | support.function.toolbox.financial-derivatives.matlab 800 | 801 | 802 | comment 803 | Matlab fixed income toolbox 804 | match 805 | (?<!\.)\b(zeroyield|zeroprice|tfutyieldbyrepo|tfutpricebyrepo|tfutimprepo|tfutbyyield|tfutbyprice|tbillyield2disc|tbillyield|tbillval01|tbillrepo|tbillprice|tbilldisc2yield|stepcpnyield|stepcpnprice|stepcpncfamounts|psaspeed2rate|psaspeed2default|mbsyield2speed|mbsyield2oas|mbsyield|mbswal|mbsprice2speed|mbsprice2oas|mbsprice|mbspassthrough|mbsoas2yield|mbsoas2price|mbsnoprepay|mbsdury|mbsdurp|mbsconvy|mbsconvp|mbscfamounts|liborprice|liborfloat2fixed|liborduration|convfactor|cfamounts|cdyield|cdprice|cdai|cbprice|bkput|bkfloorlet|bkcaplet|bkcall)\b 806 | name 807 | support.function.toolbox.fixed-income.matlab 808 | 809 | 810 | comment 811 | Matlab fixed-point toolbox 812 | match 813 | (?<!\.)\b(zlim|ylim|xlim|wordlength|waterfall|voronoin|voronoi|vertcat|upperbound|uplus|uminus|uint8|uint32|uint16|triu|trisurf|triplot|trimesh|tril|treeplot|transpose|tostring|toeplitz|times|text|surfnorm|surfl|surfc|surf|sum|subsref|subsasgn|sub|stripscaling|streamtube|streamslice|streamribbon|stem3|stem|stairs|squeeze|sqrt|spy|slice|size|single|sign|shiftdim|set|semilogy|semilogx|sdec|scatter3|scatter|savefipref|round|rose|ribbon|rgbplot|reshape|resetlog|reset|rescale|repmat|realmin|realmax|real|range|randquant|quiver3|quiver|quantizer|quantize|pow2|polar|plus|plotyy|plotmatrix|plot3|plot|permute|pcolor|patch|or|oct|nunderflows|numerictype|numberofelements|num2int|num2hex|num2bin|noverflows|not|noperations|ne|ndims|mtimes|mpy|minus|minlog|min|meshz|meshc|mesh|maxlog|max|lt|lsb|lowerbound|loglog|logical|line|length|le|isvector|issigned|isscalar|isrow|isreal|ispropequal|isobject|isnumerictype|isnumeric|isnan|isinf|isfinite|isfimath|isfi|isequal|isempty|iscolumn|ipermute|intmin|intmax|int8|int32|int16|int|innerprodintbits|imag|horzcat|histc|hist|hex2num|hex|hankel|gt|gplot|getmsb|getlsb|get|ge|fractionlength|fplot|flipud|fliplr|flipdim|fipref|fimath|fi|feather|ezsurfc|ezsurf|ezpolar|ezplot3|ezplot|ezmesh|ezcontourf|ezcontour|exponentmin|exponentmax|exponentlength|exponentbias|etreeplot|errorbar|eq|eps|end|double|divide|disp|diag|denormalmin|denormalmax|dec|ctranspose|copyobj|convergent|contourf|contourc|contour3|contour|conj|coneplot|complex|compass|comet3|comet|clabel|buffer|bitxorreduce|bitxor|bitsrl|bitsra|bitsll|bitsliceget|bitshift|bitset|bitror|bitrol|bitorreduce|bitor|bitget|bitconcat|bitcmp|bitandreduce|bitand|bin2num|bin|barh|bar|area|any|and|all|add|abs)\b 814 | name 815 | support.function.toolbox.fixed-point.matlab 816 | 817 | 818 | comment 819 | Matlab fuzzy logic toolbox 820 | match 821 | (?<!\.)\b(zmf|writefis|trimf|trapmf|surfview|subclust|smf|sigmf|showrule|showfis|sffis|setfis|ruleview|ruleedit|rmvar|rmmf|readfis|psigmf|probor|plotmf|plotfis|pimf|parsrule|newfis|mfedit|mf2mf|mam2sug|getfis|gensurf|genfis3|genfis2|genfis1|gbellmf|gaussmf|gauss2mf|fuzzy|fuzblock|fuzarith|findcluster|fcm|evalmf|evalfis|dsigmf|defuzz|convertfis|anfisedit|anfis|addvar|addrule|addmf)\b 822 | name 823 | support.function.toolbox.fuzzy-logic.matlab 824 | 825 | 826 | comment 827 | Matlab GARCH toolbox 828 | match 829 | (?<!\.)\b(ret2price|price2ret|ppTSTest|ppARTest|ppARDTest|parcorr|lratiotest|lbqtest|lagmatrix|hpfilter|garchsim|garchset|garchpred|garchplot|garchma|garchinfer|garchget|garchfit|garchdisp|garchcount|garchar|dfTSTest|dfARTest|dfARDTest|crosscorr|autocorr|archtest|aicbic)\b 830 | name 831 | support.function.toolbox.garch.matlab 832 | 833 | 834 | comment 835 | Matlab genetic algorithms toolbox 836 | match 837 | (?<!\.)\b(threshacceptbnd|simulannealbnd|saoptimset|saoptimget|psoptimset|psoptimget|psearchtool|patternsearch|gatool|gaoptimset|gaoptimget|gamultiobj|ga)\b 838 | name 839 | support.function.toolbox.genetic-algorithms.matlab 840 | 841 | 842 | comment 843 | Matlab image acquisition toolbox 844 | match 845 | (?<!\.)\b(wait|videoinput|triggerinfo|triggerconfig|trigger|stoppreview|stop|start|set|save|propinfo|preview|peekdata|obj2mfile|load|isvalid|isrunning|islogging|imaqtool|imaqreset|imaqmontage|imaqmem|imaqhwinfo|imaqhelp|imaqfind|getsnapshot|getselectedsource|getdata|get|flushdata|disp|delete|closepreview|clear)\b 846 | name 847 | support.function.toolbox.image-acquisition.matlab 848 | 849 | 850 | comment 851 | Matlab image processing toolbox 852 | match 853 | (?<!\.)\b(zoom|ycbcr2rgb|xyz2uint16|xyz2double|wiener2|whitepoint|watershed|warp|uintlut|uint8|uint16|truesize|translate|tonemap|tforminv|tformfwd|tformarray|subimage|stretchlim|strel|stdfilt|std2|roipoly|roifilt2|roifill|roicolor|rgbplot|rgb2ycbcr|rgb2ntsc|rgb2ind|rgb2hsv|rgb2gray|regionprops|reflect|rangefilt|radon|qtsetblk|qtgetblk|qtdecomp|psf2otf|poly2mask|pixval|phantom|para2fan|padarray|otf2psf|ordfilt2|ntsc2rgb|normxcorr2|nlfilter|nitfread|nitfinfo|montage|medfilt2|mean2|mat2gray|maketform|makeresampler|makelut|makecform|makeConstrainToRectFcn|label2rgb|lab2uint8|lab2uint16|lab2double|isrgb|isnitf|isind|isicc|isgray|isflat|isbw|iradon|iptwindowalign|iptsetpref|iptremovecallback|iptnum2ordinal|ipticondir|iptgetpref|iptgetapi|iptdemos|iptcheckstrs|iptchecknargin|iptcheckmap|iptcheckinput|iptcheckhandle|iptcheckconn|iptaddcallback|iptSetPointerBehavior|iptPointerManager|iptGetPointerBehavior|ippl|intlut|interfileread|interfileinfo|ind2rgb|ind2gray|imwrite|imview|imtransform|imtophat|imtool|imsubtract|imshow|imscrollpanel|imsave|imrotate|imresize|imregionalmin|imregionalmax|imrect|imreconstruct|imread|impyramid|imputfile|improfile|impositionrect|impoly|impoint|implay|impixelregionpanel|impixelregion|impixelinfoval|impixelinfo|impixel|imoverviewpanel|imoverview|imopen|imnoise|immultiply|immovie|immagbox|imline|imlincomb|imimposemin|imhmin|imhmax|imhist|imhandles|imgetfile|imgcf|imgca|imfreehand|imfinfo|imfilter|imfill|imextendedmin|imextendedmax|imerode|imellipse|imdivide|imdistline|imdisplayrange|imdilate|imcrop|imcontrast|imcontour|imcomplement|imclose|imclearborder|imbothat|imattributes|imapprox|imagemodel|imageinfo|imadjust|imadd|imabsdiff|im2uint8|im2uint16|im2single|im2java2d|im2java|im2int16|im2double|im2col|im2bw|ifftn|ifft2|ifanbeam|idct2|iccwrite|iccroot|iccread|iccfind|hsv2rgb|houghpeaks|houghlines|hough|histeq|hdrread|graythresh|grayslice|graycoprops|graycomatrix|gray2ind|getsequence|getrect|getrangefromclass|getpts|getnhood|getneighbors|getline|getimagemodel|getimage|getheight|fwind2|fwind1|ftrans2|fspecial|fsamp2|freqz2|freqspace|fliptform|findbounds|filter2|fftshift|fftn|fft2|fanbeam|fan2para|entropyfilt|entropy|edgetaper|edge|double|dither|dicomwrite|dicomuid|dicomread|dicomlookup|dicominfo|dicomdict|dicomanon|demosaic|decorrstretch|deconvwnr|deconvreg|deconvlucy|deconvblind|dctmtx|dct2|cpstruct2pairs|cpselect|cpcorr|cp2tform|corr2|convn|convmtx2|conv2|conndef|colorbar|colfilt|col2im|cmunique|cmpermute|checkerboard|bwunpack|bwulterode|bwtraceboundary|bwselect|bwperim|bwpack|bwmorph|bwlabeln|bwlabel|bwhitmiss|bweuler|bwdist|bwboundaries|bwareaopen|bwarea|brighten|blkproc|bestblk|axes2pix|applylut|applycform|analyze75read|analyze75info|adapthisteq)\b 854 | name 855 | support.function.toolbox.image-processing.matlab 856 | 857 | 858 | comment 859 | Matlab instrument control toolbox 860 | match 861 | (?<!\.)\b(visa|update|udp|trigger|tmtool|tcpip|stopasync|spoll|size|set|serialbreak|serial|selftest|scanstr|save|resolvehost|remove|record|readasync|query|propinfo|obj2mfile|midtest|midedit|methods|memwrite|memunmap|memread|mempoke|mempeek|memmap|makemid|load|length|iviconfigurationstore|isvalid|invoke|instrreset|instrnotify|instrid|instrhwinfo|instrhelp|instrfindall|instrfind|instrcallback|inspect|icdevice|gpib|geterror|get|fwrite|fscanf|fread|fprintf|fopen|flushoutput|flushinput|fgets|fgetl|fclose|echoudp|echotcpip|disp|disconnect|devicereset|delete|connect|commit|clrdevice|clear|binblockwrite|binblockread|add)\b 862 | name 863 | support.function.toolbox.instrument-control.matlab 864 | 865 | 866 | comment 867 | Matlab mapping toolbox 868 | match 869 | (?<!\.)\b(zerom|zero22pi|zdatam-ui|zdatam|wrapToPi|wrapTo360|wrapTo2Pi|wrapTo180|worldmap|worldfilewrite|worldfileread|westof|vmap0ui|vmap0rhead|vmap0read|vmap0data|vinvtran|viewshed|vfwdtran|vec2mtx|utmzoneui|utmzone|utmgeoid|usgsdems|usgsdem|usgs24kdem|usamap|updategeostruct|unwrapMultipart|unitstr|unitsratio|undotrim|undoclip|uimaptbx|trimdata|trimcart|trackui|trackg|track2|track1|track|toRadians|toDegrees|tissot|timezone|timedim|time2str|tightmap|tigerp|tigermif|tgrline|textm|tbase|tagm-ui|tagm|symbolm|surfm|surflsrm|surflm|surfdist|surfacem|str2angle|stem3m|stdm|stdist|spzerom|spcread|smoothlong|sm2rad|sm2nm|sm2km|sm2deg|sizem|showm-ui|showm|showaxes|shapewrite|shaperead|shapeinfo|shaderel|setpostn|setm|setltln|seedm|sectorg|sec2hr|sec2hms|sec2hm|sdtsinfo|sdtsdemread|scxsc|scirclui|scircleg|scircle2|scircle1|scatterm|scaleruler|satbath|rsphere|roundn|rotatetext|rotatem|rootlayr|rhxrh|restack|resizem|removeExtraNanSeparators|refvec2mat|refmat2vec|reducem|reckon|readmtx|readfk5|readfields|rcurve|rad2sm|rad2nm|rad2km|rad2dms|rad2dm|rad2deg|quiverm|quiver3m|qrydata|putpole|projlist|projinv|projfwd|project|previewmap|polyxpoly|polysplit|polymerge|polyjoin|polycut|polybool|poly2fv|poly2cw|poly2ccw|polcmap|plotm|plot3m|plabel|pixcenters|pix2map|pix2latlon|pcolorm|patchm|patchesm|parallelui|paperscale|panzoom|originui|org2pol|onem|npi2pi|northarrow|nm2sm|nm2rad|nm2km|nm2deg|newpole|neworig|navfix|nanm|nanclip|namem|n2ecc|mobjects|mlayers|mlabelzero22pi|mlabel|minvtran|minaxis|mfwdtran|meshm|meshlsrm|meshgrat|meridianfwd|meridianarc|meanm|mdistort|mat2hms|mat2dms|mapview|maptrims|maptrimp|maptriml|maptrim|maptool|mapshow|maps|mapprofile|mapoutline|maplist|mapbbox|map2pix|makesymbolspec|makerefmat|makemapped|makedbfspec|makeattribspec|majaxis|lv2ecef|ltln2val|los2|linem|linecirc|limitm|lightmui|lightm|legs|lcolorbar|latlon2pix|kmlwrite|km2sm|km2rad|km2nm|km2deg|ispolycw|ismapped|ismap|isShapeMultipart|intrplon|intrplat|interpm|inputm|ind2rgb8|imbedm|hr2sec|hr2hms|hr2hm|hms2sec|hms2mat|hms2hr|hms2hm|histr|hista|hidem-ui|hidem|handlem-ui|handlem|gtopo30s|gtopo30|gtextm|gshhs|grn2eqa|gridm|grid2image|grepfields|gradientm|globedems|globedem|getworldfilename|getseeds|getm|geotiffread|geotiffinfo|geotiff2mstruct|geoshow|geoloc2grid|geodetic2geocentricLat|geodetic2ecef|geocentric2geodeticLat|gcxsc|gcxgc|gcwaypts|gcpmap|gcm|gc2sc|fromRadians|fromDegrees|framem|flatearthpoly|flat2ecc|fipsname|findm|filterm|fillm|fill3m|extractm|extractfield|etopo5|etopo|eqa2grn|epsm|encodem|ellipse1|elevation|egm96geoid|ecef2lv|ecef2geodetic|ecc2n|ecc2flat|eastof|dteds|dted|driftvel|driftcorr|dreckon|dms2rad|dms2mat|dms2dm|dms2degrees|dms2deg|dm2degrees|distortcalc|distdim|distance|dist2str|displaym|departure|demdataui|demcmap|degrees2dms|degrees2dm|deg2sm|deg2rad|deg2nm|deg2km|deg2dms|deg2dm|defaultm|dcwrhead|dcwread|dcwgaz|dcwdata|daspectm|crossfix|convertlat|contourm|contourfm|contourcmap|contour3m|cometm|comet3m|combntns|colorui|colorm|cmapui|clrmenu|closePolygonParts|clmo-ui|clmo|clma|clipdata|clegendm|clabelm|circcirc|changem|cart2grn|camupm|camtargm|camposm|bufferm|azimuth|axesscale|axesmui|axesm|axes2ecc|avhrrlambert|avhrrgoode|areaquad|areamat|areaint|arcgridread|antipode|angledim|angl2str|almanac)\b 870 | name 871 | support.function.toolbox.mapping.matlab 872 | 873 | 874 | comment 875 | Matlab model-based calibration toolbox 876 | match 877 | (?<!\.)\b(modelinput|getAlternativeTypes|getAlternativeNames|YData|XDataNames|XData|Widths|Values|Value|UserVariables|UpdateResponseFeatures|UpdateResponse|Units|Type|TestPlans|TestFilters|SummaryStatisticsForTest|SummaryStatistics|StepwiseStatus|StepwiseSelection|StepwiseRegression|Status|StatisticsDialog|SizeOfParameterSet|SingleVIF|SignalUnits|SignalNames|SetupDialog|SetTermStatus|SaveAs|Save|RollbackEdit|RestoreDataForTest|RestoreData|Responses|ResponseSignalName|Response|RemoveVariable|RemoveTestFilter|RemoveOutliersForTest|RemoveOutliers|RemoveFilter|RemoveData|Remove|RecordsPerTest|Properties|PredictedValueForTest|PredictedValue|PartialVIF|Parameters|ParameterStatistics|PEVForTest|PEV|Owner|OutputData|OutlierIndicesForTest|OutlierIndices|NumberOfTests|NumberOfRecords|NumberOfParameters|NumberOfInputs|New|Names|Name|MultipleVIF|ModifyVariable|ModifyTestFilter|ModifyFilter|Modified|ModelSetup|ModelForTest|Model|MakeHierarchicalResponse|LocalResponses|LoadProject|Load|Levels|Level|Jacobian|IsEditable|IsBeingEdited|IsAlternative|InputsPerLevel|Inputs|InputSignalNames|InputSetupDialog|InputData|ImportFromMBCDataStructure|ImportFromFile|GetTermStatus|GetTermLabel|GetIncludedTerms|GetDesignMatrix|GetAllTerms|FitAlgorithm|Fit|Filters|Filename|ExportToMBCDataStructure|Export|Evaluate|DoubleResponseData|DoubleInputData|DiagnosticStatistics|DetachData|DefineTestGroups|DefineNumberOfRecordsPerTest|DefaultModels|DataFileTypes|Data|CreateTestplan|CreateResponseFeature|CreateResponse|CreateProject|CreateModel|CreateData|CreateAlternativeModels|CreateAlgorithm|Covariance|Correlation|CopyData|CommitEdit|ChooseAsBest|Centers|BoxCoxSSE|BeginEdit|AttachData|Append|AlternativeResponses|AlternativeModelStatistics|AliasMatrix|AddVariable|AddTestFilter|AddFilter)\b 878 | name 879 | support.function.toolbox.model-based-calibration.matlab 880 | 881 | 882 | comment 883 | Matlab model predictive control toolbox 884 | match 885 | (?<!\.)\b(zpk|trim|tf|ss|size|sim|setoutdist|setname|setmpcsignals|setmpcdata|setindist|setestim|set|qpdantz|plot|pack|mpcverbosity|mpcstate|mpcsimopt|mpcprops|mpcmove|mpchelp|mpc|getoutdist|getname|getmpcdata|getindist|getestim|get|d2d|compare|cloffset)\b 886 | name 887 | support.function.toolbox.model-predictive-control.matlab 888 | 889 | 890 | comment 891 | Matlab neural network toolbox 892 | match 893 | (?<!\.)\b(vec2ind|tribas|trainscg|trains|trainrp|trainr|trainoss|trainlm|traingdx|traingdm|traingda|traingd|traincgp|traincgf|traincgb|trainc|trainbr|trainbfgc|trainbfg|trainb|train|tansig|sse|srchhyb|srchgol|srchcha|srchbre|srchbac|sp2narx|softmax|sim|setx|seq2con|scalprod|satlins|satlin|revert|removerows|removeconstantrows|randtop|rands|randnr|randnc|radbas|quant|purelin|processpca|postreg|poslin|pnormc|plotvec|plotv|plotsom|plotpv|plotperf|plotpc|plotes|plotep|plotbr|normr|normprod|normc|nntool|nnt2som|nnt2rb|nnt2p|nnt2lvq|nnt2lin|nnt2hop|nnt2ff|nnt2elm|nnt2c|nftool|newsom|newrbe|newrb|newpnn|newp|newnarxsp|newnarx|newlvq|newlrn|newlind|newlin|newhop|newgrnn|newfftd|newff|newelm|newdtdnn|newcf|newc|network|netsum|netprod|netinv|negdist|mseregec|msereg|mse|minmax|midpoint|maxlinlr|mapstd|mapminmax|mandist|mae|logsig|linkdist|learnwh|learnsom|learnpn|learnp|learnos|learnlv2|learnlv1|learnk|learnis|learnhd|learnh|learngdm|learngd|learncon|initzero|initwb|initnw|initlay|initcon|init|ind2vec|hintonwb|hintonw|hextop|hardlims|hardlim|gridtop|getx|gensim|fixunknowns|errsurf|dotprod|dividerand|divideint|divideind|divideblock|dist|display|disp|convwf|concur|con2seq|compet|combvec|calcperf|calcpd|calcjx|calcjejj|calcgx|boxdist|adapt)\b 894 | name 895 | support.function.toolbox.neural-network.matlab 896 | 897 | 898 | comment 899 | Matlab OPC toolbox 900 | match 901 | (?<!\.)\b(writeasync|write|wait|trend|stop|start|showopcevents|set|serveritems|serveritemprops|save|removepublicgroup|refresh|readasync|read|propinfo|peekdata|openosf|opctool|opcsupport|opcstruct2timeseries|opcstruct2array|opcserverinfo|opcreset|opcregister|opcread|opcqstr|opcqparts|opcqid|opchelp|opcfind|opcda|opccallback|obj2mfile|makepublic|load|isvalid|getnamespace|getdata|get|genslwrite|genslread|flushdata|flatnamespace|disp|disconnect|delete|copyobj|connect|clonegroup|cleareventlog|cancelasync|additem|addgroup)\b 902 | name 903 | support.function.toolbox.opc.matlab 904 | 905 | 906 | comment 907 | Matlab optimization toolbox 908 | match 909 | (?<!\.)\b(quadprog|optimtool|optimset|optimget|lsqnonneg|lsqnonlin|lsqlin|lsqcurvefit|linprog|gangstr|fzmult|fzero|fsolve|fseminf|fminunc|fminsearch|fminimax|fmincon|fminbnd|fgoalattain|color|bintprog)\b 910 | name 911 | support.function.toolbox.optimization.matlab 912 | 913 | 914 | comment 915 | Matlab RF toolbox 916 | match 917 | (?<!\.)\b(writeva|write|timeresp|smith|setop|semilogy|semilogx|rfmodel\.rational|rfdata\.power|rfdata\.noise|rfdata\.nf|rfdata\.network|rfdata\.mixerspur|rfdata\.ip3|rfdata\.data|rfckt\.txline|rfckt\.twowire|rfckt\.shuntrlc|rfckt\.seriesrlc|rfckt\.series|rfckt\.rlcgline|rfckt\.passive|rfckt\.parallelplate|rfckt\.parallel|rfckt\.mixer|rfckt\.microstrip|rfckt\.lclowpasstee|rfckt\.lclowpasspi|rfckt\.lchighpasstee|rfckt\.lchighpasspi|rfckt\.lcbandstoptee|rfckt\.lcbandstoppi|rfckt\.lcbandpasstee|rfckt\.lcbandpasspi|rfckt\.hybridg|rfckt\.hybrid|rfckt\.delay|rfckt\.datafile|rfckt\.cpw|rfckt\.coaxial|rfckt\.cascade|rfckt\.amplifier|restore|read|polar|plotyy|plot|loglog|listparam|listformat|impulse|getz0|getop|freqresp|extract|circle|calculate|analyze)\b 918 | name 919 | support.function.toolbox.rf.matlab 920 | 921 | 922 | comment 923 | Matlab robust control toolbox 924 | match 925 | (?<!\.)\b(wcsens|wcnorm|wcmargin|wcgopt|wcgain|usubs|uss|usimsamp|usiminfo|usimfill|usample|ureal|uplot|umat|ultidyn|ufrd|udyn|ucomplexm|ucomplex|sysic|symdec|stack|stabproj|squeeze|slowfast|skewdec|simplify|showlmi|setmvar|setlmis|sectf|sdlsim|sdhinfsyn|sdhinfnorm|schurmr|robuststab|robustperf|robopt|repmat|reduce|randuss|randumat|randatom|quadstab|quadperf|pvinfo|pvec|psys|psinfo|popov|polydec|pdsimul|pdlstab|normalized2actual|newlmi|ncfsyn|ncfmr|ncfmargin|mussvextract|mussv|msfsyn|modreal|mktito|mkfilter|mixsyn|mincx|matnbr|mat2dec|ltrsyn|ltiarray2uss|loopsyn|loopsens|loopmargin|lmivar|lmiterm|lmireg|lminbr|lmiinfo|lmiedit|lftdata|isuncertain|ispsys|imp2ss|imp2exp|icsignal|iconnect|icomplexify|hinfsyn|hinfgs|hankelsv|hankelmr|h2syn|h2hinfsyn|gridureal|gevp|getlmis|genphase|gapmetric|fitmagfrd|fitfrd|feasp|evallmi|drawmag|dmplot|dksyn|dkitopt|diag|delmvar|dellmi|defcx|decnbr|decinfo|decay|dec2mat|dcgainmr|cpmargin|complexify|cmsclsyn|bstmr|bilin|balancmr|augw|aff2pol|actual2normalized)\b 926 | name 927 | support.function.toolbox.robust-control.matlab 928 | 929 | 930 | comment 931 | Matlab signal processing toolbox 932 | match 933 | (?<!\.)\b(zplane|zp2tf|zp2ss|zp2sos|zerophase|yulewalk|xcov|xcorr2|xcorr|wvtool|wintool|window|vco|upsample|upfirdn|unwrap|uencode|udecode|tukeywin|tripuls|triang|tfestimate|tf2zpk|tf2zp|tf2ss|tf2sos|tf2latc|taylorwin|strips|stmcb|stepz|ss2zp|ss2tf|ss2sos|square|sptool|spectrum\.yulear|spectrum\.welch|spectrum\.periodogram|spectrum\.music|spectrum\.mtm|spectrum\.mcov|spectrum\.eigenvector|spectrum\.cov|spectrum\.burg|spectrum|spectrogram|sosfilt|sos2zp|sos2tf|sos2ss|sos2cell|sinc|sigwin|sgolayfilt|sgolay|seqperiod|schurrc|sawtooth|rootmusic|rooteig|rlevinson|residuez|resample|rectwin|rectpuls|rceps|rc2poly|rc2lar|rc2is|rc2ac|pyulear|pwelch|pulstran|prony|pow2db|polystab|polyscale|poly2rc|poly2lsf|poly2ac|pmusic|pmtm|pmcov|phasez|phasedelay|periodogram|peig|pcov|pburg|parzenwin|nuttallwin|mscohere|modulate|medfilt1|maxflat|lsf2poly|lpc|lp2lp|lp2hp|lp2bs|lp2bp|levinson|latcfilt|latc2tf|lar2rc|kaiserord|kaiser|is2rc|invfreqz|invfreqs|intfilt|interp|impz|impinvar|ifft2|ifft|idct|icceps|hilbert|hann|hamming|grpdelay|goertzel|gmonopuls|gausswin|gaussfir|gauspuls|fvtool|freqz|freqspace|freqs|flattopwin|firrcos|firpmord|firpm|firls|fircls1|fircls|fir2|fir1|findpeaks|filtstates\.dfiir|filtstates|filtic|filtfilt|filternorm|filter2|filter|fftshift|fftfilt|fft2|fft|fdatool|eqtflength|ellipord|ellipap|ellip|dspfwiz|dspdata\.pseudospectrum|dspdata\.psd|dspdata\.msspectrum|dspdata|dpsssave|dpssload|dpssdir|dpssclear|dpss|downsample|diric|digitrevorder|dftmtx|dfilt\.statespace|dfilt\.scalar|dfilt\.parallel|dfilt\.latticemamin|dfilt\.latticemamax|dfilt\.latticearma|dfilt\.latticear|dfilt\.latticeallpass|dfilt\.fftfir|dfilt\.dfsymfir|dfilt\.dffirt|dfilt\.dffir|dfilt\.dfasymfir|dfilt\.df2tsos|dfilt\.df2t|dfilt\.df2sos|dfilt\.df2|dfilt\.df1tsos|dfilt\.df1t|dfilt\.df1sos|dfilt\.df1|dfilt\.delay|dfilt\.cascade|dfilt|demod|deconv|decimate|dct|db2pow|czt|cpsd|cplxpair|cov|corrmtx|corrcoef|convmtx|conv2|conv|chirp|cheby2|cheby1|chebwin|cheb2ord|cheb2ap|cheb1ord|cheb1ap|cfirpm|cell2sos|cconv|cceps|buttord|butter|buttap|buffer|bohmanwin|blackmanharris|blackman|bitrevorder|bilinear|besself|besselap|bartlett|barthannwin|aryule|armcov|arcov|arburg|angle|ac2rc|ac2poly|abs)\b 934 | name 935 | support.function.toolbox.signal-processing.matlab 936 | 937 | 938 | comment 939 | Matlab spline toolbox 940 | match 941 | (?<!\.)\b(tpaps|titanium|subplus|stmak|stcol|spterms|sprpp|spmak|splpp|splinetool|spcrv|spcol|spaps|spapi|spap2|sorted|slvblk|rsmak|rscvn|rpmak|ppmak|optknt|newknt|knt2mlt|knt2brk|getcurve|franke|fnzeros|fnxtr|fnval|fntlr|fnrfn|fnplt|fnmin|fnjmp|fnint|fndir|fnder|fncmb|fnchg|fnbrk|fn2fm|cscvn|csaps|csapi|csape|chbpnt|bspline|bspligui|brk2knt|bkbrk|aveknt|augknt|aptknt)\b 942 | name 943 | support.function.toolbox.spline.matlab 944 | 945 | 946 | comment 947 | Matlab statistics toolbox 948 | match 949 | (?<!\.)\b(ztest|zscore|x2fx|wishrnd|wblstat|wblrnd|wblplot|wblpdf|wbllike|wblinv|wblfit|wblcdf|view|vartestn|vartest2|vartest|var|upperparams|unifstat|unifrnd|unifpdf|unifit|unifinv|unifcdf|unidstat|unidrnd|unidpdf|unidinv|unidcdf|type|ttest2|ttest|tstat|trnd|trimmean|treeval|treetest|treeprune|treefit|treedisp|tpdf|tinv|tiedrank|test|tdfread|tcdf|tblwrite|tblread|tabulate|surfht|summary|stepwisefit|stepwise|std|statset|statget|squareform|sortrows|sort|slicesample|skewness|silhouette|signtest|signrank|setlabels|set|segment|scatterhist|sampsizepwr|runstest|rstool|rsmdemo|rowexch|rotatefactors|robustfit|robustdemo|risk|ridge|replacedata|reorderlevels|regstats|regress|refline|refcurve|rcoplot|raylstat|raylrnd|raylpdf|raylinv|raylfit|raylcdf|ranksum|range|randtool|randsample|random|randg|quantile|qqplot|prune|procrustes|probplot|princomp|prctile|posterior|polyval|polytool|polyfit|polyconf|poisstat|poissrnd|poisspdf|poissinv|poissfit|poisscdf|perms|pearsrnd|pdist|pdf|pcares|pcacov|partialcorr|paretotails|pareto|parent|parallelcoords|ordinal|numnodes|nsegments|normstat|normspec|normrnd|normplot|normpdf|normlike|norminv|normfit|normcdf|nominal|nodesize|nodeprob|nodeerr|nlpredci|nlparci|nlintool|nlinfit|ncx2stat|ncx2rnd|ncx2pdf|ncx2inv|ncx2cdf|nctstat|nctrnd|nctpdf|nctinv|nctcdf|ncfstat|ncfrnd|ncfpdf|ncfinv|ncfcdf|nbinstat|nbinrnd|nbinpdf|nbininv|nbinfit|nbincdf|nanvar|nansum|nanstd|nanmin|nanmedian|nanmean|nanmax|nancov|mvtrnd|mvtpdf|mvtcdf|mvregresslike|mvregress|mvnrnd|mvnpdf|mvncdf|multivarichart|multcompare|moment|mode|mnrval|mnrnd|mnrfit|mnpdf|mlecov|mle|mhsample|mergelevels|median|mean|mdscale|manovacluster|manova1|maineffectsplot|mahal|mad|lsqnonneg|lsline|lscov|lowerparams|lognstat|lognrnd|lognpdf|lognlike|logninv|lognfit|logncdf|linkage|linhyptest|lillietest|lhsnorm|lhsdesign|leverage|levelcounts|kurtosis|kstest2|kstest|ksdensity|kruskalwallis|kmeans|join|johnsrnd|jbtest|jackknife|iwishrnd|isundefined|ismember|islevel|isbranch|iqr|invpred|interactionplot|inconsistent|icdf|hygestat|hygernd|hygepdf|hygeinv|hygecdf|hougen|hmmviterbi|hmmtrain|hmmgenerate|hmmestimate|hmmdecode|histfit|hist3|hist|harmmean|hadamard|gscatter|grpstats|grp2idx|gpstat|gprnd|gppdf|gplotmatrix|gplike|gpinv|gpfit|gpcdf|gname|gmdistribution|glyphplot|glmval|glmfit|gline|gevstat|gevrnd|gevpdf|gevlike|gevinv|gevfit|gevcdf|getlabels|get|geostat|geornd|geopdf|geomean|geoinv|geocdf|gamstat|gamrnd|gampdf|gamlike|gaminv|gamfit|gamcdf|gagerr|fullfact|fsurfht|fstat|frnd|friedman|fracfactgen|fracfact|fpdf|fit|finv|ff2n|fcdf|factoran|expstat|exprnd|exppdf|explike|expinv|expfit|expcdf|evstat|evrnd|evpdf|evlike|evinv|evfit|evcdf|eval|errorbar|ecdfhist|ecdf|dwtest|dummyvar|droplevels|disttool|dfittool|dendrogram|dcovary|daugment|datasetfun|dataset|cutvar|cuttype|cutpoint|cutcategories|crosstab|coxphfit|cov|corrcov|corrcoef|corr|cordexch|copulastat|copularnd|copulapdf|copulaparam|copulafit|copulacdf|cophenet|controlrules|controlchart|combnk|cmdscale|clusterdata|cluster|classregtree|classprob|classify|classcount|cholcov|children|chi2stat|chi2rnd|chi2pdf|chi2inv|chi2gof|chi2cdf|cdfplot|cdf|ccdesign|casewrite|caseread|capaplot|capability|canoncorr|candgen|candexch|boxplot|boundary|bootstrp|bootci|biplot|binostat|binornd|binopdf|binoinv|binofit|binocdf|betastat|betarnd|betapdf|betalike|betainv|betafit|betacdf|bbdesign|barttest|aoctool|ansaribradley|anovan|anova2|anova1|andrewsplot|addlevels|addedvarplot)\b 950 | name 951 | support.function.toolbox.statistics.matlab 952 | 953 | 954 | comment 955 | Matlab symbolic math toolbox 956 | match 957 | (?<!\.)\b(ztrans|zeta|vpa|uint8|uint64|uint32|uint16|triu|tril|taylortool|taylor|symsum|syms|sym2poly|sym|svd|subs|subexpr|sort|solve|size|sinint|single|simplify|simple|rsums|rref|round|real|rank|quorem|procread|pretty|poly2sym|poly|numden|null|mod|mhelp|mfunlist|mfun|mapleinit|maple|log2|log10|limit|latex|laplace|lambertw|jordan|jacobian|iztrans|inv|int8|int64|int32|int16|int|imag|ilaplace|ifourier|hypergeom|horner|heaviside|funtool|frac|fourier|fortran|floor|fix|finverse|findsym|factor|ezsurfc|ezsurf|ezpolar|ezplot3|ezplot|ezmeshc|ezmesh|ezcontourf|ezcontour|expm|expand|eq|eig|dsolve|double|dirac|digits|diff|diag|det|cosint|conj|compose|colspace|collect|coeffs|ceil|ccode)\b 958 | name 959 | support.function.toolbox.symbolic-math.matlab 960 | 961 | 962 | comment 963 | Matlab system identification toolbox 964 | match 965 | (?<!\.)\b(zpkdata|zpk|wavenet|view|unitgain|treepartition|timestamp|tfdata|tf|struc|step|ssdata|ss|spafdr|spa|size|simsd|sim|sigmoidnet|setstruc|setpname|setpar|setinit|set|selstruc|segment|saturation|rplr|rpem|roe|resid|resample|realdata|rbj|rarx|rarmax|pzmap|pwlinear|present|predict|polyreg|polydata|poly1d|plot|pexcit|pem|pe|oe|nyquist|nuderst|noisecnv|nlhw|nlarx|nkshift|neuralnet|n4sid|misdata|midprefs|merge|lintan|linear|linapp|ivx|ivstruc|ivar|iv4|isreal|init|impulse|ifft|idss|idresamp|idproc|idpoly|idnlmodel|idnlhw|idnlgrey|idnlarx|idmodel|idmdlsim|idinput|idgrey|idfrd|idfilt|ident|iddata|idarx|getreg|getpar|getinit|getexp|get|fselect|freqresp|frd|fpe|fft|ffplot|feedback|fcat|evaluate|etfe|diff|detrend|delayest|deadzone|d2c|customreg|customnet|cra|covf|compare|c2d|bode|bj|balred|arxstruc|arxdata|arx|armax|ar|aic|advice|addreg|EstimationInfo)\b 966 | name 967 | support.function.toolbox.system-identification.matlab 968 | 969 | 970 | comment 971 | Matlab virtual reality toolbox 972 | match 973 | (?<!\.)\b(vrworld|vrwhos|vrwho|vrview|vrspacemouse|vrsetpref|vrrotvec2mat|vrrotvec|vrrotmat2vec|vrplay|vrori2dir|vrnode|vrlib|vrjoystick|vrinstall|vrgetpref|vrfigure|vrdrawnow|vrdir2ori|vrclose|vrclear)\b 974 | name 975 | support.function.toolbox.virtual-reality.matlab 976 | 977 | 978 | comment 979 | Matlab wavelet toolbox 980 | match 981 | (?<!\.)\b(wvarchg|wtreemgr|wthrmngr|wthresh|wthcoef2|wthcoef|wtbxmngr|wtbo|wscalogram|write|wrev|wrcoef2|wrcoef|wpviewcf|wptree|wpthcoef|wpsplt|wprec2|wprec|wprcoef|wpjoin|wpfun|wpdencmp|wpdec2|wpdec|wpcutree|wpcoef|wpbmpen|wp2wtree|wnoisest|wnoise|wmulden|wmspca|wmaxlev|wkeep|wfusmat|wfusimg|wfilters|wfbmesti|wfbm|wextend|wentropy|wenergy2|wenergy|wdencmp|wden|wdcenergy|wdcbm2|wdcbm|wcodemat|wbmpen|waverec2|waverec|wavenames|wavemngr|wavemenu|waveinfo|wavefun2|wavefun|wavedemo|wavedec2|wavedec|wave2lp|upwlev2|upwlev|upcoef2|upcoef|treeord|treedpth|tnodes|thselect|symwavf|symaux|swt2|swt|shanwavf|set|scal2frq|readtree|read|rbiowavf|qmf|plot|pat2cwav|orthfilt|ntree|ntnode|noleaves|nodesplt|nodepar|nodejoin|nodedesc|nodeasc|mswthresh|mswden|mswcmptp|mswcmpscr|mswcmp|morlet|meyeraux|meyer|mexihat|mdwtrec|mdwtdec|mdwtcluster|lwtcoef2|lwtcoef|lwt2|lwt|lsinfo|ls2filt|liftwave|liftfilt|leaves|laurpoly|laurmat|iswt2|iswt|istnode|isnode|intwave|ind2depo|ilwt2|ilwt|idwt2|idwt|get|gauswavf|filt2ls|fbspwavf|entrupd|dyadup|dyaddown|dwtmode|dwt2|dwt|dtree|drawtree|displs|disp|detcoef2|detcoef|depo2ind|ddencmp|dbwavf|dbaux|cwt|coifwavf|cmorwavf|chgwdeccfs|cgauwavf|cfs2wpt|centfrq|bswfun|biorwavf|biorfilt|besttree|bestlevt|appcoef2|appcoef|allnodes|addlift)\b 982 | name 983 | support.function.toolbox.wavelet.matlab 984 | 985 | 986 | 987 | variables 988 | 989 | comment 990 | MATLAB variables 991 | match 992 | (?<!\.)\b(nargin|nargout|varargin|varargout)\b 993 | name 994 | variable.other.function.matlab 995 | 996 | 997 | 998 | classdef 999 | 1000 | patterns 1001 | 1002 | 1003 | begin 1004 | (?x) 1005 | (^\s*) # Leading whitespace 1006 | (classdef) 1007 | \s+ 1008 | ( # Optional attributes 1009 | \( [^)]* \) 1010 | \s* 1011 | )? 1012 | ( 1013 | ([a-zA-Z_]\w*) # Class name 1014 | (?: # Optional inheritance 1015 | \s* 1016 | (<) 1017 | \s* 1018 | ([^%]*) 1019 | )? 1020 | ) 1021 | \s*($|(?=%)) 1022 | 1023 | beginCaptures 1024 | 1025 | 2 1026 | 1027 | name 1028 | storage.type.function.matlab 1029 | 1030 | 3 1031 | 1032 | patterns 1033 | 1034 | 1035 | match 1036 | [a-zA-Z_]\w* 1037 | name 1038 | variable.parameter.class.matlab 1039 | 1040 | 1041 | begin 1042 | =\s* 1043 | end 1044 | ,|(?=\)) 1045 | patterns 1046 | 1047 | 1048 | match 1049 | true|false 1050 | name 1051 | constant.language.boolean.matlab 1052 | 1053 | 1054 | include 1055 | #string 1056 | 1057 | 1058 | 1059 | 1060 | 1061 | 4 1062 | 1063 | name 1064 | meta.class-declaration.matlab 1065 | 1066 | 5 1067 | 1068 | name 1069 | entity.name.section.class.matlab 1070 | 1071 | 6 1072 | 1073 | name 1074 | keyword.operator.other.matlab 1075 | 1076 | 7 1077 | 1078 | patterns 1079 | 1080 | 1081 | match 1082 | [a-zA-Z_]\w*(\.[a-zA-Z_]\w*)? 1083 | name 1084 | entity.other.inherited-class.matlab 1085 | 1086 | 1087 | match 1088 | & 1089 | name 1090 | keyword.operator.other.matlab 1091 | 1092 | 1093 | 1094 | 1095 | end 1096 | ^\s*(end)\b 1097 | endCaptures 1098 | 1099 | 1 1100 | 1101 | name 1102 | keyword.control.end.class.matlab 1103 | 1104 | 1105 | name 1106 | meta.class.matlab 1107 | patterns 1108 | 1109 | 1110 | begin 1111 | (?x) 1112 | (^\s*) # Leading whitespace 1113 | (properties) 1114 | \s+ 1115 | ( # Optional attributes 1116 | \( [^)]* \) 1117 | )? 1118 | \s*($|(?=%)) 1119 | 1120 | beginCaptures 1121 | 1122 | 2 1123 | 1124 | name 1125 | keyword.control.properties.matlab 1126 | 1127 | 3 1128 | 1129 | patterns 1130 | 1131 | 1132 | match 1133 | [a-zA-Z_]\w* 1134 | name 1135 | variable.parameter.properties.matlab 1136 | 1137 | 1138 | begin 1139 | =\s* 1140 | end 1141 | ,|(?=\)) 1142 | patterns 1143 | 1144 | 1145 | match 1146 | true|false 1147 | name 1148 | constant.language.boolean.matlab 1149 | 1150 | 1151 | match 1152 | public|protected|private 1153 | name 1154 | constant.language.access.matlab 1155 | 1156 | 1157 | 1158 | 1159 | 1160 | 1161 | end 1162 | ^\s*(end)\b 1163 | endCaptures 1164 | 1165 | 1 1166 | 1167 | name 1168 | keyword.control.end.properties.matlab 1169 | 1170 | 1171 | name 1172 | meta.properties.matlab 1173 | patterns 1174 | 1175 | 1176 | include 1177 | $self 1178 | 1179 | 1180 | 1181 | 1182 | begin 1183 | (?x) 1184 | (^\s*) # Leading whitespace 1185 | (methods) 1186 | \s+ 1187 | ( # Optional attributes 1188 | \( [^)]* \) 1189 | )? 1190 | \s*($|(?=%)) 1191 | 1192 | beginCaptures 1193 | 1194 | 2 1195 | 1196 | name 1197 | keyword.control.methods.matlab 1198 | 1199 | 3 1200 | 1201 | patterns 1202 | 1203 | 1204 | match 1205 | [a-zA-Z_]\w* 1206 | name 1207 | variable.parameter.methods.matlab 1208 | 1209 | 1210 | begin 1211 | =\s* 1212 | end 1213 | ,|(?=\)) 1214 | patterns 1215 | 1216 | 1217 | match 1218 | true|false 1219 | name 1220 | constant.language.boolean.matlab 1221 | 1222 | 1223 | match 1224 | public|protected|private 1225 | name 1226 | constant.language.access.matlab 1227 | 1228 | 1229 | 1230 | 1231 | 1232 | 1233 | end 1234 | ^\s*(end)\b 1235 | endCaptures 1236 | 1237 | 1 1238 | 1239 | name 1240 | keyword.control.end.methods.matlab 1241 | 1242 | 1243 | name 1244 | meta.methods.matlab 1245 | patterns 1246 | 1247 | 1248 | include 1249 | $self 1250 | 1251 | 1252 | 1253 | 1254 | begin 1255 | (?x) 1256 | (^\s*) # Leading whitespace 1257 | (events) 1258 | \s+ 1259 | ( # Optional attributes 1260 | \( [^)]* \) 1261 | )? 1262 | \s*($|(?=%)) 1263 | 1264 | beginCaptures 1265 | 1266 | 2 1267 | 1268 | name 1269 | keyword.control.events.matlab 1270 | 1271 | 3 1272 | 1273 | patterns 1274 | 1275 | 1276 | match 1277 | [a-zA-Z_]\w* 1278 | name 1279 | variable.parameter.events.matlab 1280 | 1281 | 1282 | begin 1283 | =\s* 1284 | end 1285 | ,|(?=\)) 1286 | patterns 1287 | 1288 | 1289 | match 1290 | true|false 1291 | name 1292 | constant.language.boolean.matlab 1293 | 1294 | 1295 | match 1296 | public|protected|private 1297 | name 1298 | constant.language.access.matlab 1299 | 1300 | 1301 | 1302 | 1303 | 1304 | 1305 | end 1306 | ^\s*(end)\b 1307 | endCaptures 1308 | 1309 | 1 1310 | 1311 | name 1312 | keyword.control.end.events.matlab 1313 | 1314 | 1315 | name 1316 | meta.events.matlab 1317 | 1318 | 1319 | begin 1320 | (?x) 1321 | (^\s*) # Leading whitespace 1322 | (enumeration) 1323 | \s*($|(?=%)) 1324 | 1325 | beginCaptures 1326 | 1327 | 2 1328 | 1329 | name 1330 | keyword.control.enumeration.matlab 1331 | 1332 | 1333 | end 1334 | ^\s*(end)\b 1335 | endCaptures 1336 | 1337 | 1 1338 | 1339 | name 1340 | keyword.control.end.enumeration.matlab 1341 | 1342 | 1343 | name 1344 | meta.enumeration.matlab 1345 | 1346 | 1347 | include 1348 | $self 1349 | 1350 | 1351 | 1352 | 1353 | 1354 | comments 1355 | 1356 | patterns 1357 | 1358 | 1359 | begin 1360 | (^[ \t]+)?(?=%%) 1361 | beginCaptures 1362 | 1363 | 1 1364 | 1365 | name 1366 | punctuation.whitespace.comment.leading.matlab 1367 | 1368 | 1369 | end 1370 | (?!\G) 1371 | patterns 1372 | 1373 | 1374 | begin 1375 | %% 1376 | beginCaptures 1377 | 1378 | 0 1379 | 1380 | name 1381 | punctuation.definition.comment.matlab 1382 | 1383 | 1384 | end 1385 | \n 1386 | name 1387 | comment.line.double-percentage.matlab 1388 | patterns 1389 | 1390 | 1391 | begin 1392 | \G\s*(?![\n\s]) 1393 | contentName 1394 | meta.cell.matlab 1395 | end 1396 | (?=\n) 1397 | 1398 | 1399 | 1400 | 1401 | 1402 | 1403 | begin 1404 | %\{ 1405 | captures 1406 | 1407 | 1 1408 | 1409 | name 1410 | punctuation.definition.comment.matlab 1411 | 1412 | 1413 | end 1414 | %\}\s*\n 1415 | name 1416 | comment.block.percentage.matlab 1417 | 1418 | 1419 | begin 1420 | (^[ \t]+)?(?=%) 1421 | beginCaptures 1422 | 1423 | 1 1424 | 1425 | name 1426 | punctuation.whitespace.comment.leading.matlab 1427 | 1428 | 1429 | end 1430 | (?!\G) 1431 | patterns 1432 | 1433 | 1434 | begin 1435 | % 1436 | beginCaptures 1437 | 1438 | 0 1439 | 1440 | name 1441 | punctuation.definition.comment.matlab 1442 | 1443 | 1444 | end 1445 | \n 1446 | name 1447 | comment.line.percentage.matlab 1448 | 1449 | 1450 | 1451 | 1452 | 1453 | constants_override 1454 | 1455 | comment 1456 | The user is trying to override MATLAB constants and functions. 1457 | match 1458 | (^|\;)\s*(i|j|inf|Inf|nan|NaN|eps|end)\s*=[^=] 1459 | name 1460 | meta.inappropriate.matlab 1461 | 1462 | curlybrackets 1463 | 1464 | begin 1465 | \{ 1466 | beginCaptures 1467 | 1468 | 0 1469 | 1470 | name 1471 | meta.brackets.curly.matlab 1472 | 1473 | 1474 | contentName 1475 | meta.brackets.curly.matlab 1476 | end 1477 | \} 1478 | endCaptures 1479 | 1480 | 0 1481 | 1482 | name 1483 | meta.brackets.curly.matlab 1484 | 1485 | 1486 | patterns 1487 | 1488 | 1489 | include 1490 | #end_in_parens 1491 | 1492 | 1493 | include 1494 | $self 1495 | 1496 | 1497 | 1498 | double_quote 1499 | 1500 | patterns 1501 | 1502 | 1503 | match 1504 | " 1505 | name 1506 | invalid.illegal.invalid-quote.matlab 1507 | 1508 | 1509 | 1510 | end_in_parens 1511 | 1512 | comment 1513 | end as operator symbol 1514 | match 1515 | \bend\b 1516 | name 1517 | keyword.operator.symbols.matlab 1518 | 1519 | function 1520 | 1521 | patterns 1522 | 1523 | 1524 | begin 1525 | (?x) 1526 | (^\s*) # Leading whitespace 1527 | (function) 1528 | \s+ 1529 | (?: # Optional 1530 | (?: 1531 | (\[) ([^\]]*) (\]) 1532 | | ([a-zA-Z_]\w*) 1533 | ) 1534 | \s* = \s* 1535 | )? 1536 | ([a-zA-Z_]\w*) # Function name 1537 | \s* # Trailing space 1538 | 1539 | beginCaptures 1540 | 1541 | 2 1542 | 1543 | name 1544 | storage.type.function.matlab 1545 | 1546 | 3 1547 | 1548 | name 1549 | punctuation.definition.arguments.begin.matlab 1550 | 1551 | 4 1552 | 1553 | patterns 1554 | 1555 | 1556 | match 1557 | \w+ 1558 | name 1559 | variable.parameter.output.matlab 1560 | 1561 | 1562 | 1563 | 5 1564 | 1565 | name 1566 | punctuation.definition.arguments.end.matlab 1567 | 1568 | 6 1569 | 1570 | name 1571 | variable.parameter.output.function.matlab 1572 | 1573 | 7 1574 | 1575 | name 1576 | entity.name.function.matlab 1577 | 1578 | 1579 | end 1580 | ^\s*(end)\b(\s*\n)? 1581 | endCaptures 1582 | 1583 | 1 1584 | 1585 | name 1586 | keyword.control.end.function.matlab 1587 | 1588 | 1589 | name 1590 | meta.function.matlab 1591 | patterns 1592 | 1593 | 1594 | begin 1595 | \G\( 1596 | end 1597 | \) 1598 | name 1599 | meta.arguments.function.matlab 1600 | patterns 1601 | 1602 | 1603 | match 1604 | \w+ 1605 | name 1606 | variable.parameter.input.matlab 1607 | 1608 | 1609 | 1610 | 1611 | include 1612 | $self 1613 | 1614 | 1615 | 1616 | 1617 | 1618 | not_equal_invalid 1619 | 1620 | comment 1621 | Not equal is written ~= not !=. 1622 | match 1623 | \s*!=\s* 1624 | name 1625 | invalid.illegal.invalid-inequality.matlab 1626 | 1627 | number 1628 | 1629 | comment 1630 | Valid numbers: 1, .1, 1.1, .1e1, 1.1e1, 1e1, 1i, 1j, 1e2j 1631 | match 1632 | (?<=[\s\-\+\*\/\\=:\[\(\{,]|^)\d*\.?\d+([eE][+-]?\d)?([0-9&&[^\.]])*(i|j)?\b 1633 | name 1634 | constant.numeric.matlab 1635 | 1636 | operators 1637 | 1638 | comment 1639 | Operator symbols 1640 | match 1641 | (?<=\s)(==|~=|>|>=|<|<=|&|&&|:|\||\|\||\+|-|\*|\.\*|/|\./|\\|\.\\|\^|\.\^)(?=\s) 1642 | name 1643 | keyword.operator.symbols.matlab 1644 | 1645 | parens 1646 | 1647 | begin 1648 | \( 1649 | beginCaptures 1650 | 1651 | 0 1652 | 1653 | name 1654 | meta.parens.matlab 1655 | 1656 | 1657 | contentName 1658 | meta.parens.matlab 1659 | end 1660 | \) 1661 | endCaptures 1662 | 1663 | 0 1664 | 1665 | name 1666 | meta.parens.matlab 1667 | 1668 | 1669 | patterns 1670 | 1671 | 1672 | include 1673 | #end_in_parens 1674 | 1675 | 1676 | include 1677 | $self 1678 | 1679 | 1680 | 1681 | string 1682 | 1683 | patterns 1684 | 1685 | 1686 | captures 1687 | 1688 | 1 1689 | 1690 | name 1691 | string.interpolated.matlab 1692 | 1693 | 2 1694 | 1695 | name 1696 | punctuation.definition.string.begin.matlab 1697 | 1698 | 1699 | comment 1700 | Shell command 1701 | match 1702 | ^\s*((!).*$\n?) 1703 | 1704 | 1705 | begin 1706 | ((?<=(\[|\(|\{|=|\s|;|:|,))|^)' 1707 | beginCaptures 1708 | 1709 | 0 1710 | 1711 | name 1712 | punctuation.definition.string.begin.matlab 1713 | 1714 | 1715 | end 1716 | '(?=(\]|\)|\}|=|~|<|>|&|\||-|\+|\*|\.|\^|\||\s|;|:|,)) 1717 | endCaptures 1718 | 1719 | 0 1720 | 1721 | name 1722 | punctuation.definition.string.end.matlab 1723 | 1724 | 1725 | name 1726 | string.quoted.single.matlab 1727 | patterns 1728 | 1729 | 1730 | match 1731 | '' 1732 | name 1733 | constant.character.escape.matlab 1734 | 1735 | 1736 | match 1737 | '(?=.) 1738 | name 1739 | invalid.illegal.unescaped-quote.matlab 1740 | 1741 | 1742 | comment 1743 | Operator symbols 1744 | match 1745 | ((\%([\+\-0]?\d{0,3}(\.\d{1,3})?)(c|d|e|E|f|g|G|s|((b|t)?(o|u|x|X))))|\%\%|\\(b|f|n|r|t|\\)) 1746 | name 1747 | constant.character.escape.matlab 1748 | 1749 | 1750 | 1751 | 1752 | 1753 | transpose 1754 | 1755 | match 1756 | ((\w+)|(?<=\])|(?<=\)))\.?' 1757 | name 1758 | keyword.operator.transpose.matlab 1759 | 1760 | variable 1761 | 1762 | comment 1763 | Valid variable. Added meta to disable hilightinh 1764 | match 1765 | \b[a-zA-Z]\w*\b 1766 | name 1767 | meta.variable.other.valid.matlab 1768 | 1769 | variable_assignment 1770 | 1771 | comment 1772 | Incomplete variable assignment. 1773 | match 1774 | =\s*\.{0,2}\s*;?\s*$\n? 1775 | name 1776 | invalid.illegal.incomplete-variable-assignment.matlab 1777 | 1778 | variable_invalid 1779 | 1780 | comment 1781 | No variables or function names can start with a number or an underscore. 1782 | match 1783 | \b(_\w|\d+[_a-df-zA-DF-Z])\w*\b 1784 | name 1785 | invalid.illegal.invalid-variable-name.matlab 1786 | 1787 | 1788 | scopeName 1789 | source.matlab 1790 | uuid 1791 | 48F8858B-72FF-11D9-BFEE-000D93589AF6 1792 | 1793 | 1794 | -------------------------------------------------------------------------------- /Syntaxes/Octave.tmLanguage: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | fileTypes 6 | 7 | m 8 | 9 | keyEquivalent 10 | ^~O 11 | name 12 | Octave 13 | patterns 14 | 15 | 16 | begin 17 | (?x) 18 | (?=function\b) # borrowed from ruby bundle 19 | (?<=^|\s)(function)\s+ # the function keyword 20 | (?>\[(.*)\])?\t# match various different combination of output arguments 21 | ((?>[a-zA-Z_]\w*))? 22 | (?>\s*=\s*)? 23 | ((?>[a-zA-Z_]\w*(?>[?!]|=(?!>))? )) # the function name 24 | (?=[ \t]*[^\s%|#]) # make sure arguments and not a comment follow 25 | \s*(\() # the opening parenthesis for arguments 26 | beginCaptures 27 | 28 | 1 29 | 30 | name 31 | storage.type.octave 32 | 33 | 2 34 | 35 | name 36 | variable.parameter.output.function.octave 37 | 38 | 3 39 | 40 | name 41 | variable.parameter.output.function.octave 42 | 43 | 4 44 | 45 | name 46 | entity.name.function.octave 47 | 48 | 49 | contentName 50 | variable.parameter.input.function.octave 51 | end 52 | \) 53 | endCaptures 54 | 55 | 0 56 | 57 | name 58 | punctuation.definition.parameters.octave 59 | 60 | 61 | name 62 | meta.function.with-arguments.octave 63 | 64 | 65 | captures 66 | 67 | 1 68 | 69 | name 70 | storage.type.octave 71 | 72 | 2 73 | 74 | name 75 | variable.parameter.output.function.octave 76 | 77 | 3 78 | 79 | name 80 | variable.parameter.output.function.octave 81 | 82 | 4 83 | 84 | name 85 | entity.name.function.octave 86 | 87 | 88 | match 89 | (?x) 90 | (?=function\b) # borrowed from ruby bundle 91 | (?<=^|\s)(function)\s+ # the function keyword 92 | (?>\[(.*)\])? # match various different combination of output arguments 93 | ((?>[a-zA-Z_]\w*))? 94 | (?>\s*=\s*)? 95 | ((?>[a-zA-Z_]\w*(?>[?!]|=(?!>))? )) # the function name 96 | name 97 | meta.function.without-arguments.octave 98 | 99 | 100 | include 101 | #constants_override 102 | 103 | 104 | include 105 | #brackets 106 | 107 | 108 | include 109 | #curlybrackets 110 | 111 | 112 | include 113 | #parens 114 | 115 | 116 | include 117 | #string 118 | 119 | 120 | include 121 | #string_double 122 | 123 | 124 | include 125 | #transpose 126 | 127 | 128 | include 129 | #double_quote 130 | 131 | 132 | include 133 | #operators 134 | 135 | 136 | include 137 | #all_octave_keywords 138 | 139 | 140 | include 141 | #all_octave_comments 142 | 143 | 144 | include 145 | #number 146 | 147 | 148 | include 149 | #variable 150 | 151 | 152 | include 153 | #variable_invalid 154 | 155 | 156 | include 157 | #not_equal_invalid 158 | 159 | 160 | include 161 | #variable_assignment 162 | 163 | 164 | repository 165 | 166 | all_octave_comments 167 | 168 | patterns 169 | 170 | 171 | begin 172 | (^[ \t]+)?(?=%%) 173 | beginCaptures 174 | 175 | 1 176 | 177 | name 178 | punctuation.whitespace.comment.leading.octave 179 | 180 | 181 | end 182 | (?!\G) 183 | patterns 184 | 185 | 186 | begin 187 | %% 188 | beginCaptures 189 | 190 | 0 191 | 192 | name 193 | punctuation.definition.comment.octave 194 | 195 | 196 | end 197 | \n 198 | name 199 | comment.line.double-percentage.octave 200 | 201 | 202 | 203 | 204 | begin 205 | %\{ 206 | captures 207 | 208 | 1 209 | 210 | name 211 | punctuation.definition.comment.octave 212 | 213 | 214 | end 215 | %\} 216 | name 217 | comment.block.percentage.octave 218 | 219 | 220 | begin 221 | (^[ \t]+)?(?=%) 222 | beginCaptures 223 | 224 | 1 225 | 226 | name 227 | punctuation.whitespace.comment.leading.octave 228 | 229 | 230 | end 231 | (?!\G) 232 | patterns 233 | 234 | 235 | begin 236 | % 237 | beginCaptures 238 | 239 | 0 240 | 241 | name 242 | punctuation.definition.comment.octave 243 | 244 | 245 | end 246 | \n 247 | name 248 | comment.line.percentage.octave 249 | 250 | 251 | 252 | 253 | begin 254 | (^[ \t]+)?(?=#) 255 | beginCaptures 256 | 257 | 1 258 | 259 | name 260 | punctuation.whitespace.comment.leading.octave 261 | 262 | 263 | end 264 | (?!\G) 265 | patterns 266 | 267 | 268 | begin 269 | # 270 | beginCaptures 271 | 272 | 0 273 | 274 | name 275 | punctuation.definition.comment.octave 276 | 277 | 278 | end 279 | \n 280 | name 281 | comment.line.number-sign.octave 282 | 283 | 284 | 285 | 286 | 287 | all_octave_keywords 288 | 289 | patterns 290 | 291 | 292 | include 293 | #octave_keyword_control 294 | 295 | 296 | include 297 | #octave_constant_language 298 | 299 | 300 | include 301 | #octave_storage_control 302 | 303 | 304 | include 305 | #octave_support_function 306 | 307 | 308 | include 309 | #octave_support_external 310 | 311 | 312 | 313 | allofem 314 | 315 | patterns 316 | 317 | 318 | include 319 | #parens 320 | 321 | 322 | include 323 | #curlybrackets 324 | 325 | 326 | include 327 | #end_in_parens 328 | 329 | 330 | include 331 | #brackets 332 | 333 | 334 | include 335 | #string 336 | 337 | 338 | include 339 | #string_double 340 | 341 | 342 | include 343 | #transpose 344 | 345 | 346 | include 347 | #all_octave_keywords 348 | 349 | 350 | include 351 | #all_octave_comments 352 | 353 | 354 | include 355 | #variable 356 | 357 | 358 | include 359 | #variable_invalid 360 | 361 | 362 | include 363 | #number 364 | 365 | 366 | include 367 | #operators 368 | 369 | 370 | 371 | brackets 372 | 373 | begin 374 | \[ 375 | beginCaptures 376 | 377 | 0 378 | 379 | name 380 | meta.brackets.octave 381 | 382 | 383 | contentName 384 | meta.brackets.octave 385 | end 386 | \] 387 | endCaptures 388 | 389 | 0 390 | 391 | name 392 | meta.brackets.octave 393 | 394 | 395 | patterns 396 | 397 | 398 | include 399 | #allofem 400 | 401 | 402 | 403 | constants_override 404 | 405 | comment 406 | The user is trying to override MATLAB constants and functions. 407 | match 408 | (^|\;)\s*(i|j|inf|Inf|nan|NaN|eps|end)\s*=[^=] 409 | name 410 | meta.inappropriate.octave 411 | 412 | curlybrackets 413 | 414 | begin 415 | \{ 416 | beginCaptures 417 | 418 | 0 419 | 420 | name 421 | meta.brackets.curly.octave 422 | 423 | 424 | contentName 425 | meta.brackets.curly.octave 426 | end 427 | \} 428 | endCaptures 429 | 430 | 0 431 | 432 | name 433 | meta.brackets.curly.octave 434 | 435 | 436 | patterns 437 | 438 | 439 | include 440 | #allofem 441 | 442 | 443 | include 444 | #end_in_parens 445 | 446 | 447 | 448 | end_in_parens 449 | 450 | comment 451 | end as operator symbol 452 | match 453 | \bend\b 454 | name 455 | keyword.operator.symbols.octave 456 | 457 | escaped_quote 458 | 459 | patterns 460 | 461 | 462 | match 463 | '' 464 | name 465 | constant.character.escape.octave 466 | 467 | 468 | 469 | not_equal_invalid 470 | 471 | comment 472 | Not equal is written ~= not !=. 473 | match 474 | \s*!=\s* 475 | name 476 | invalid.illegal.invalid-inequality.octave 477 | 478 | number 479 | 480 | comment 481 | Valid numbers: 1, .1, 1.1, .1e1, 1.1e1, 1e1, 1i, 1j, 1e2j 482 | match 483 | (?<=[\s\-\+\*\/\\=:\[\(\{,]|^)\d*\.?\d+([eE][+-]?\d)?([0-9&&[^\.]])*(i|j)?\b 484 | name 485 | constant.numeric.octave 486 | 487 | octave_constant_language 488 | 489 | comment 490 | MATLAB constants 491 | match 492 | \b(argv|e|eps|false|F_DUPFD|F_GETFD|F_GETFL|filesep|F_SETFD|F_SETFL|i|I|inf|Inf|j|J|NA|nan|NaN|O_APPEND|O_ASYNC|O_CREAT|OCTAVE_HOME|OCTAVE_VERSION|O_EXCL|O_NONBLOCK|O_RDONLY|O_RDWR|O_SYNC|O_TRUNC|O_WRONLY|pi|program_invocation_name|program_name|P_tmpdir|realmax|realmin|SEEK_CUR|SEEK_END|SEEK_SET|SIG|stderr|stdin|stdout|true|ans|automatic_replot|beep_on_error|completion_append_char|crash_dumps_octave_core|current_script_file_name|debug_on_error|debug_on_interrupt|debug_on_warning|debug_symtab_lookups|DEFAULT_EXEC_PATH|DEFAULT_LOADPATH|default_save_format|echo_executing_commands|EDITOR|EXEC_PATH|FFTW_WISDOM_PROGRAM|fixed_point_format|gnuplot_binary|gnuplot_command_axes|gnuplot_command_end|gnuplot_command_plot|gnuplot_command_replot|gnuplot_command_splot|gnuplot_command_title|gnuplot_command_using|gnuplot_command_with|gnuplot_has_frames|history_file|history_size|ignore_function_time_stamp|IMAGEPATH|INFO_FILE|INFO_PROGRAM|__kluge_procbuf_delay__|LOADPATH|MAKEINFO_PROGRAM|max_recursion_depth|octave_core_file_format|octave_core_file_limit|octave_core_file_name|output_max_field_width|output_precision|page_output_immediately|PAGER|page_screen_output|print_answer_id_name|print_empty_dimensions|print_rhs_assign_val|PS1|PS2|PS4|save_header_format_string|save_precision|saving_history|sighup_dumps_octave_core|sigterm_dumps_octave_core|silent_functions|split_long_rows|string_fill_char|struct_levels_to_print|suppress_verbose_help_message|variables_can_hide_functions|warn_assign_as_truth_value|warn_divide_by_zero|warn_empty_list_elements|warn_fortran_indexing|warn_function_name_clash|warn_future_time_stamp|warn_imag_to_real|warn_matlab_incompatible|warn_missing_semicolon|warn_neg_dim_as_zero|warn_num_to_str|warn_precedence_change|warn_reload_forces_clear|warn_resize_on_range_error|warn_separator_insert|warn_single_quote_string|warn_str_to_num|warn_undefined_return_values|warn_variable_switch_label|whos_line_format)\b 493 | name 494 | constant.language.octave 495 | 496 | octave_keyword_control 497 | 498 | comment 499 | Control keywords 500 | match 501 | (?<!\.)\b(all_va_args|break|case|catch|continue|else|end|for|parfor|elseif|end_try_catch|end_unwind_protect|endfor|endparfor|endfunction|endif|endwhile|global|gplot|gsplot|if|otherwise|persistent|replot|return|static|start|startat|stop|switch|try|until|unwind_protect|unwind_protect_cleanup|varargin|varargout|wait|while)\b 502 | name 503 | keyword.control.octave 504 | 505 | octave_storage_control 506 | 507 | comment 508 | File I/O 509 | match 510 | \b(casesen|cd|chdir|clear|dbclear|dbstatus|dbstop|dbtype|dbwhere|diary|echo|edit_history|__end__|format|gset|gshow|help|history|hold|iskeyword|isvarname|load|ls|mark_as_command|mislocked|mlock|more|munlock|run_history|save|set|show|type|unmark_command|which|who|whos)\b 511 | name 512 | storage.control.octave 513 | 514 | octave_support_external 515 | 516 | comment 517 | External Interfaces 518 | match 519 | \b(airy_Ai|airy_Ai_deriv|airy_Ai_deriv_scaled|airy_Ai_scaled|airy_Bi|airy_Bi_deriv|airy_Bi_deriv_scaled|airy_Bi_scaled|airy_zero_Ai|airy_zero_Ai_deriv|airy_zero_Bi|airy_zero_Bi_deriv|atanint|bchdeco|bchenco|bessel_il_scaled|bessel_In|bessel_In_scaled|bessel_Inu|bessel_Inu_scaled|bessel_jl|bessel_Jn|bessel_Jnu|bessel_kl_scaled|bessel_Kn|bessel_Kn_scaled|bessel_Knu|bessel_Knu_scaled|bessel_lnKnu|bessel_yl|bessel_Yn|bessel_Ynu|bessel_zero_J0|bessel_zero_J1|beta_gsl|bfgsmin|bisectionstep|builtin|bwfill|bwlabel|cell2csv|celleval|Chi|chol|Ci|clausen|conicalP_0|conicalP_1|conicalP_half|conicalP_mhalf|conv2|cordflt2|coupling_3j|coupling_6j|coupling_9j|csv2cell|csvconcat|csvexplode|cyclgen|cyclpoly|dawson|debye_1|debye_2|debye_3|debye_4|deref|dispatch|dispatch_help|display_fixed_operations|dlmread|ellint_Ecomp|ellint_Kcomp|ellipj|erfc_gsl|erf_gsl|erf_Q|erf_Z|_errcore|eta|eta_int|expint_3|expint_E1|expint_E2|expint_Ei|expm1|exp_mult|exprel|exprel_2|exprel_n|fabs|fangle|farg|fatan2|fceil|fconj|fcos|fcosh|fcumprod|fcumsum|fdiag|fermi_dirac_3half|fermi_dirac_half|fermi_dirac_inc_0|fermi_dirac_int|fermi_dirac_mhalf|fexp|ffloor|fimag|finitedifference|fixed|flog|flog10|fprod|freal|freshape|fround|fsin|fsinh|fsqrt|fsum|fsumsq|ftan|ftanh|full|gamma_gsl|gamma_inc|gamma_inc_P|gamma_inc_Q|gammainv_gsl|gammastar|gdet|gdiag|gexp|gf|gfilter|_gfweight|ginv|ginverse|glog|glu|gpick|gprod|grab|grank|graycomatrix|__grcla__|__grclf__|__grcmd__|greshape|__grexit__|__grfigure__|__grgetstat__|__grhold__|__grinit__|__grishold__|__grnewset__|__grsetgraph__|gsl_sf|gsqrt|gsum|gsumsq|gtext|gzoom|hazard|houghtf|hyperg_0F1|hzeta|is_complex_sparse|isfixed|isgalois|isprimitive|is_real_sparse|is_sparse|jpgread|jpgwrite|lambert_W0|lambert_Wm1|legendre_Pl|legendre_Plm|legendre_Ql|legendre_sphPlm|legendre_sphPlm_array|leval|listen|lnbeta|lncosh|lngamma_gsl|lnpoch|lnsinh|log_1plusx|log_1plusx_mx|log_erfc|lp|make_sparse|mark_for_deletion|medfilt1|newtonstep|nnz|numgradient|numhessian|pchip_deriv|pngread|pngwrite|poch|pochrel|pretty|primpoly|psi|psi_1_int|psi_1piy|psi_n|rand|rande|randn|randp|regexp|remez|reset_fixed_operations|rotate_scale|rsdec|rsenc|samin|SBBacksub|SBEig|SBFactor|SBProd|SBSolve|Shi|Si|sinc_gsl|spabs|sparse|spfind|spimag|spinv|splu|spreal|SymBand|synchrotron_1|synchrotron_2|syndtable|taylorcoeff|transport_2|transport_3|transport_4|transport_5|trisolve|waitbar|xmlread|zeta|zeta_int|aar|aarmam|ac2poly|ac2rc|acorf|acovf|addpath|ademodce|adim|adsmax|amodce|anderson_darling_cdf|anderson_darling_test|anovan|apkconst|append_save|applylut|ar2poly|ar2rc|arburg|arcext|arfit2|ar_spa|aryule|assert|au|aucapture|auload|auplot|aurecord|ausave|autumn|average_moments|awgn|azimuth|BandToFull|BandToSparse|base64encode|battery|bchpoly|bestblk|best_dir|best_dir_cov|betaln|bfgs|bfgsmin_example|bi2de|biacovf|bilinear|bisdemo|bispec|biterr|blkdiag|blkproc|bmpwrite|bone|bound_convex|boxcar|boxplot|brighten|bs_gradient|butter|buttord|bwborder|bweuler|bwlabel|bwmorph|bwselect|calendar|cceps|cdiff|cellstr|char|cheb|cheb1ord|cheb2ord|chebwin|cheby1|cheby2|chirp|clf|clip|cmpermute|cmunique|cohere|col2im|colfilt|colorgradient|comms|compand|complex|concat|conndef|content|contents|Contents|contourf|convhull|convmtx|cool|copper|corr2|cosets|count|covm|cplxpair|cquadnd|create_lookup_table|crule|crule2d|crule2dgen|csape|csapi|csd|csvread|csvwrite|ctranspose|cumtrapz|czt|d2_min|datenum|datestr|datevec|dct|dct2|dctmtx|de2bi|deal|decimate|decode|deg2rad|del2|delaunay|delaunay3|delta_method|demo|demodmap|deriv|detrend|dfdp|dftmtx|dhbar|dilate|dispatch|distance|dlmread|dlmwrite|dos|double|drawnow|durlev|dxfwrite|edge|edit|ellip|ellipdemo|ellipj|ellipke|ellipord|__ellip_ws|__ellip_ws_min|encode|eomday|erode|example|ExampleEigenValues|ExampleGenEigenValues|expdemo|expfit|eyediagram|factor|factorial|fail|fcnchk|feedback|fem_test|ff2n|fftconv2|fieldnames|fill|fill3|filter2|filtfilt|filtic|findsym|fir1|fir2|fixedpoint|flag|flag_implicit_samplerate|flattopwin|flix|float|fmin|fminbnd|fmins|fminunc|fnder|fnplt|fnval|fplot|freqs|freqs_plot|fsort|fullfact|FullToBand|funm|fzero|gammaln|gapTest|gaussian|gausswin|gconv|gconvmtx|gdeconv|gdftmtx|gen2par|geomean|getfield|getfields|gfft|gftable|gfweight|gget|gifft|ginput|gmm_estimate|gmm_example|gmm_obj|gmm_results|gmm_variance|gmm_variance_inefficient|gquad|gquad2d|gquad2d6|gquad2dgen|gquad6|gquadnd|grace_octave_path|gradient|grayslice|grep|grid|griddata|groots|grpdelay|grule|grule2d|grule2dgen|hadamard|hammgen|hankel|hann|harmmean|hilbert|histeq|histfit|histo|histo2|histo3|histo4|hot|hsv|hup|idct|idct2|idplot|idsim|ifftshift|im2bw|im2col|imadjust|imginfo|imhist|imnoise|impad|impz|imread|imrotate|imshear|imtranslate|imwrite|innerfun|inputname|interp|interp1|interp2|interpft|intersect|invest0|invest1|invfdemo|invfreq|invfreqs|invfreqz|inz|irsa_act|irsa_actcore|irsa_check|irsa_dft|irsa_dftfp|irsa_genreal|irsa_idft|irsa_isregular|irsa_jitsp|irsa_mdsp|irsa_normalize|irsa_plotdft|irsa_resample|irsa_rgenreal|isa|isbw|isdir|isequal|isfield|isgray|isind|ismember|isprime|isrgb|issparse|isunix|jet|kaiser|kaiserord|lambertw|lattice|lauchli|leasqr|leasqrdemo|legend|legendre|levinson|lin2mu|line_min|lloyds|lookup|lookup_table|lpc|lp_test|mad|magic|makelut|MakeShears|map|mat2gray|mat2str|mdsmax|mean2|medfilt2|meshc|minimize|minpol|mkpp|mktheta|mle_estimate|mle_example|mle_obj|mle_results|mle_variance|modmap|mu2lin|mvaar|mvar|mvfilter|mvfreqz|myfeval|nanmax|nanmean|nanmedian|nanmin|nanstd|nansum|ncauer|nchoosek|ncrule|ndims|nelder_mead_min|newmark|nlfilter|nlnewmark|__nlnewmark_fcn__|nmsmax|nonzeros|normplot|now|nrm|nthroot|nze|OCTAVE_FORGE_VERSION|ode23|ode45|ode78|optimset|ordfilt2|orient|pacf|padarray|parameterize|parcor|pareto|pascal|patch|pburg|pcg|pchip|pcolor|pcr|peaks|penddot|pendulum|perms|pie|pink|plot3|__plt3__|poly2ac|poly2ar|poly_2_ex|poly2mask|poly2rc|poly2sym|poly2th|polyarea|polyconf|polyder|polyderiv|polygcd|polystab|__power|ppval|prctile|prettyprint|prettyprint_c|primes|princomp|print|prism|proplan|pulstran|pwelch|pyulear|qaskdeco|qaskenco|qtdecomp|qtgetblk|qtsetblk|quad2dc|quad2dcgen|quad2dg|quad2dggen|quadc|quadg|quadl|quadndg|quantiz|quiver|rad2deg|rainbow|randerr|randint|randsrc|rat|rats|rc2ac|rc2ar|rc2poly|rceps|read_options|read_pdb|rectpuls|resample|rgb2gray|rk2fixed|rk4fixed|rk8fixed|rmfield|rmle|rmpath|roicolor|rosser|rotparams|rotv|rref|rsdecof|rsencof|rsgenpoly|samin_example|save_vrml|sbispec|scale_data|scatter|scatterplot|select_3D_points|selmo|setdiff|setfield|setfields|setxor|sftrans|sgolay|sgolayfilt|sinvest1|slurp_file|sortrows|sound|soundsc|spdiags|specgram|speed|speye|spfun|sphcat|spline|splot|spones|sprand|sprandn|spring|spstats|spsum|sp_test|sptest|spvcat|spy|std2|stem|str2double|strcmpi|stretchlim|strfind|strmatch|strncmp|strncmpi|strsort|strtok|strtoz|struct|strvcat|summer|sumskipnan|surf|surfc|sym2poly|symerr|symfsolve|tabulate|tar|temp_name|test|test_d2_min_1|test_d2_min_2|test_d2_min_3|test_ellipj|test_fminunc_1|testimio|test_inline_1|test_min_1|test_min_2|test_min_3|test_min_4|test_minimize_1|test_nelder_mead_min_1|test_nelder_mead_min_2|test_sncndn|test_struct|test_vmesh|test_vrml_faces|test_wpolyfit|text|textread|tf2zp|tfe|thfm|tics|toeplitz|toggle_grace_use|transpose|trapz|triang|tril|trimmean|tripuls|trisolve|triu|tsademo|tsearchdemo|ucp|uintlut|unique|unix|unmkpp|unscale_parameters|vec2mat|view|vmesh|voronoi|voronoin|vrml_arrow|vrml_Background|vrml_browse|vrml_cyl|vrml_demo_tutorial_1|vrml_demo_tutorial_2|vrml_demo_tutorial_3|vrml_demo_tutorial_4|vrml_ellipsoid|vrml_faces|vrml_flatten|vrml_frame|vrml_group|vrml_kill|vrml_lines|vrml_material|vrml_parallelogram|vrml_PointLight|vrml_points|vrml_select_points|vrml_surf|vrml_text|vrml_thick_surf|vrml_transfo|wavread|wavwrite|weekday|wgn|white|wilkinson|winter|wpolyfit|wpolyfitdemo|write_pdb|wsolve|xcorr|xcorr2|xcov|xlsread|xmlwrite|y2res|zero_count|zoom|zp2tf|zplane|zscore)\b 520 | name 521 | support.external.octave 522 | 523 | octave_support_function 524 | 525 | comment 526 | Creating Graphical User Interfaces 527 | match 528 | \b(abs|acos|acosh|all|angle|any|append|arg|argnames|asin|asinh|assignin|atan|atan2|atanh|atexit|bitand|bitmax|bitor|bitshift|bitxor|casesen|cat|cd|ceil|cell|cell2struct|cellstr|char|chdir|class|clc|clear|clearplot|clg|closeplot|completion_matches|conj|conv|convmtx|cos|cosh|cumprod|cumsum|dbclear|dbstatus|dbstop|dbtype|dbwhere|deconv|det|dftmtx|diag|diary|disp|document|do_string_escapes|double|dup2|echo|edit_history|__end__|erf|erfc|ERRNO|error|__error_text__|error_text|eval|evalin|exec|exist|exit|exp|eye|fclose|fcntl|fdisp|feof|ferror|feval|fflush|fft|fgetl|fgets|fieldnames|file_in_loadpath|file_in_path|filter|find|find_first_of_in_loadpath|finite|fix|floor|fmod|fnmatch|fopen|fork|format|formula|fprintf|fputs|fread|freport|frewind|fscanf|fseek|ftell|func2str|functions|fwrite|gamma|gammaln|getegid|getenv|geteuid|getgid|getpgrp|getpid|getppid|getuid|glob|graw|gset|gshow|help|history|hold|home|horzcat|ifft|imag|inline|input|input_event_hook|int16|int32|int64|int8|intmax|intmin|inv|inverse|ipermute|isalnum|isalpha|isascii|isbool|iscell|iscellstr|ischar|iscntrl|iscomplex|isdigit|isempty|isfield|isfinite|isglobal|isgraph|ishold|isieee|isinf|iskeyword|islist|islogical|islower|ismatrix|isna|isnan|is_nan_or_na|isnumeric|isprint|ispunct|isreal|isspace|isstream|isstreamoff|isstruct|isupper|isvarname|isxdigit|kbhit|keyboard|kill|lasterr|lastwarn|length|lgamma|link|linspace|list|load|log|log10|ls|lstat|lu|mark_as_command|mislocked|mkdir|mkfifo|mkstemp|mlock|more|munlock|nargin|nargout|native_float_format|ndims|nth|numel|octave_config_info|octave_tmp_file_name|ones|pause|pclose|permute|pipe|popen|printf|__print_symbol_info__|__print_symtab_info__|prod|purge_tmp_files|putenv|puts|pwd|quit|rank|readdir|readlink|read_readline_init_file|real|rehash|rename|reshape|reverse|rmdir|rmfield|roots|round|run_history|save|scanf|set|shell_cmd|show|sign|sin|sinh|size|sizeof|sleep|sort|source|splice|sprintf|sqrt|squeeze|sscanf|stat|str2func|streamoff|struct|struct2cell|sum|sumsq|symlink|system|tan|tanh|tilde_expand|tmpfile|tmpnam|toascii|__token_count__|tolower|toupper|type|typeinfo|uint16|uint32|uint64|uint8|umask|undo_string_escapes|unlink|unmark_command|usage|usleep|va_arg|va_start|vectorize|vertcat|vr_val|waitpid|warning|warranty|which|who|whos|zeros|airy|balance|besselh|besseli|besselj|besselk|bessely|betainc|chol|colloc|daspk|daspk_options|dasrt|dasrt_options|dassl|dassl_options|det|eig|endgrent|endpwent|expm|fft|fft2|fftn|fftw_wisdom|filter|find|fsolve|fsolve_options|gammainc|gcd|getgrent|getgrgid|getgrnam|getpwent|getpwnam|getpwuid|getrusage|givens|gmtime|hess|ifft|ifft2|ifftn|inv|inverse|kron|localtime|lpsolve|lpsolve_options|lsode|lsode_options|lu|max|min|minmax|mktime|odessa|odessa_options|pinv|qr|quad|quad_options|qz|rand|randn|schur|setgrent|setpwent|sort|sqrtm|strftime|strptime|svd|syl|time|abcddim|__abcddims__|acot|acoth|acsc|acsch|analdemo|anova|arch_fit|arch_rnd|arch_test|are|arma_rnd|asctime|asec|asech|autocor|autocov|autoreg_matrix|axis|axis2dlim|__axis_label__|bar|bartlett|bartlett_test|base2dec|bddemo|beep|bessel|beta|beta_cdf|betai|beta_inv|beta_pdf|beta_rnd|bin2dec|bincoeff|binomial_cdf|binomial_inv|binomial_pdf|binomial_rnd|bitcmp|bitget|bitset|blackman|blanks|bode|bode_bounds|__bodquist__|bottom_title|bug_report|buildssic|c2d|cart2pol|cart2sph|cauchy_cdf|cauchy_inv|cauchy_pdf|cauchy_rnd|cellidx|center|chisquare_cdf|chisquare_inv|chisquare_pdf|chisquare_rnd|chisquare_test_homogeneity|chisquare_test_independence|circshift|clock|cloglog|close|colormap|columns|com2str|comma|common_size|commutation_matrix|compan|complement|computer|cond|contour|controldemo|conv|cor|corrcoef|cor_test|cot|coth|cov|cputime|create_set|cross|csc|csch|ctime|ctrb|cut|d2c|damp|dare|date|dcgain|deal|deblank|dec2base|dec2bin|dec2hex|deconv|delete|DEMOcontrol|demoquat|detrend|dezero|dgkfdemo|dgram|dhinfdemo|diff|diffpara|dir|discrete_cdf|discrete_inv|discrete_pdf|discrete_rnd|dkalman|dlqe|dlqg|dlqr|dlyap|dmr2d|dmult|dot|dre|dump_prefs|duplication_matrix|durbinlevinson|empirical_cdf|empirical_inv|empirical_pdf|empirical_rnd|erfinv|__errcomm__|errorbar|__errplot__|etime|exponential_cdf|exponential_inv|exponential_pdf|exponential_rnd|f_cdf|fftconv|fftfilt|fftshift|figure|fileparts|findstr|f_inv|fir2sys|flipdim|fliplr|flipud|flops|f_pdf|fractdiff|frdemo|freqchkw|__freqresp__|freqz|freqz_plot|f_rnd|f_test_regression|fullfile|fv|fvl|gamma_cdf|gammai|gamma_inv|gamma_pdf|gamma_rnd|geometric_cdf|geometric_inv|geometric_pdf|geometric_rnd|gls|gram|gray|gray2ind|grid|h2norm|h2syn|hamming|hankel|hanning|hex2dec|hilb|hinf_ctr|hinfdemo|hinfnorm|hinfsyn|hinfsyn_chk|hinfsyn_ric|hist|hotelling_test|hotelling_test_2|housh|hsv2rgb|hurst|hypergeometric_cdf|hypergeometric_inv|hypergeometric_pdf|hypergeometric_rnd|image|imagesc|impulse|imshow|ind2gray|ind2rgb|ind2sub|index|int2str|intersection|invhilb|iqr|irr|isa|is_abcd|is_bool|is_complex|is_controllable|isdefinite|is_detectable|is_dgkf|is_digital|is_duplicate_entry|is_global|is_leap_year|isletter|is_list|is_matrix|is_observable|ispc|is_sample|is_scalar|isscalar|is_signal_list|is_siso|is_square|issquare|is_stabilizable|is_stable|isstr|is_stream|is_struct|is_symmetric|issymmetric|isunix|is_vector|isvector|jet707|kendall|kolmogorov_smirnov_cdf|kolmogorov_smirnov_test|kolmogorov_smirnov_test_2|kruskal_wallis_test|krylov|krylovb|kurtosis|laplace_cdf|laplace_inv|laplace_pdf|laplace_rnd|lcm|lin2mu|listidx|list_primes|loadaudio|loadimage|log2|logical|logistic_cdf|logistic_inv|logistic_pdf|logistic_regression|logistic_regression_derivatives|logistic_regression_likelihood|logistic_rnd|logit|loglog|loglogerr|logm|lognormal_cdf|lognormal_inv|lognormal_pdf|lognormal_rnd|logspace|lower|lqe|lqg|lqr|lsim|ltifr|lyap|mahalanobis|manova|mcnemar_test|mean|meansq|median|menu|mesh|meshdom|meshgrid|minfo|mod|moddemo|moment|mplot|mu2lin|multiplot|nargchk|nextpow2|nichols|norm|normal_cdf|normal_inv|normal_pdf|normal_rnd|not|nper|npv|ntsc2rgb|null|num2str|nyquist|obsv|ocean|ols|oneplot|ord2|orth|__outlist__|pack|packedform|packsys|parallel|paren|pascal_cdf|pascal_inv|pascal_pdf|pascal_rnd|path|periodogram|perror|place|playaudio|plot|plot_border|__plr__|__plr1__|__plr2__|__plt__|__plt1__|__plt2__|__plt2mm__|__plt2mv__|__plt2ss__|__plt2vm__|__plt2vv__|__pltopt__|__pltopt1__|pmt|poisson_cdf|poisson_inv|poisson_pdf|poisson_rnd|pol2cart|polar|poly|polyder|polyderiv|polyfit|polyinteg|polyout|polyreduce|polyval|polyvalm|popen2|postpad|pow2|ppplot|prepad|probit|prompt|prop_test_2|pv|pvl|pzmap|qconj|qcoordinate_plot|qderiv|qderivmat|qinv|qmult|qqplot|qtrans|qtransv|qtransvmat|quaternion|qzhess|qzval|randperm|range|rank|ranks|rate|record|rectangle_lw|rectangle_sw|rem|repmat|residue|rgb2hsv|rgb2ind|rgb2ntsc|rindex|rldemo|rlocus|roots|rot90|rotdim|rotg|rows|run_cmd|run_count|run_test|saveaudio|saveimage|sec|sech|semicolon|semilogx|semilogxerr|semilogy|semilogyerr|series|setaudio|setstr|shg|shift|shiftdim|sign_test|sinc|sinetone|sinewave|skewness|sombrero|sortcom|spearman|spectral_adf|spectral_xdf|spencer|sph2cart|split|ss|ss2sys|ss2tf|ss2zp|stairs|starp|statistics|std|stdnormal_cdf|stdnormal_inv|stdnormal_pdf|stdnormal_rnd|step|__stepimp__|stft|str2mat|str2num|strappend|strcat|strcmp|strerror|strjust|strrep|struct_contains|struct_elements|studentize|sub2ind|subplot|substr|subwindow|swap|swapcols|swaprows|sylvester_matrix|synthesis|sys2fir|sys2ss|sys2tf|sys2zp|sysadd|sysappend|syschnames|__syschnamesl__|syschtsam|__sysconcat__|sysconnect|syscont|__syscont_disc__|__sysdefioname__|__sysdefstname__|sysdimensions|sysdisc|sysdup|sysgetsignals|sysgettsam|sysgettype|sysgroup|__sysgroupn__|sysidx|sysmin|sysmult|sysout|sysprune|sysreorder|sysrepdemo|sysscale|syssetsignals|syssub|sysupdate|table|t_cdf|tempdir|tempname|texas_lotto|tf|tf2ss|tf2sys|__tf2sysl__|tf2zp|__tfl__|tfout|tic|t_inv|title|toc|toeplitz|top_title|t_pdf|trace|triangle_lw|triangle_sw|tril|triu|t_rnd|t_test|t_test_2|t_test_regression|tzero|tzero2|ugain|uniform_cdf|uniform_inv|uniform_pdf|uniform_rnd|union|unix|unpacksys|unwrap|upper|u_test|values|vander|var|var_test|vec|vech|version|vol|weibull_cdf|weibull_inv|weibull_pdf|weibull_rnd|welch_test|wgt1o|wiener_rnd|wilcoxon_test|xlabel|xor|ylabel|yulewalker|zgfmul|zgfslv|zginit|__zgpbal__|zgreduce|zgrownorm|zgscal|zgsgiv|zgshsr|zlabel|zp|zp2ss|__zp2ssg2__|zp2sys|zp2tf|zpout|z_test|z_test_2)\b 529 | name 530 | support.function.octave 531 | 532 | operators 533 | 534 | comment 535 | Operator symbols 536 | match 537 | \s*(\+\+|--|\+=|-=|\*=|\/=|\^=|\.\*=|\.\/=|\.\^=|==|~=|>|>=|<|<=|&|&&|:|\||\|\||\+|-|\*|\.\*|/|\./|\\|\.\\|\^|\.\^|!)\s* 538 | name 539 | keyword.operator.symbols.octave 540 | 541 | parens 542 | 543 | begin 544 | \( 545 | beginCaptures 546 | 547 | 0 548 | 549 | name 550 | meta.parens.octave 551 | 552 | 553 | contentName 554 | meta.parens.octave 555 | end 556 | \) 557 | endCaptures 558 | 559 | 0 560 | 561 | name 562 | meta.parens.octave 563 | 564 | 565 | patterns 566 | 567 | 568 | include 569 | #allofem 570 | 571 | 572 | include 573 | #end_in_parens 574 | 575 | 576 | 577 | special_characters 578 | 579 | comment 580 | Operator symbols 581 | match 582 | ((\%([\+\-0]?\d{0,3}(\.\d{1,3})?)(c|d|e|E|f|g|G|s|((b|t)?(o|u|x|X))))|\%\%|\\(b|f|n|r|t|\\)) 583 | name 584 | constant.character.escape.octave 585 | 586 | string 587 | 588 | begin 589 | ((?<=(\[|\(|\{|=|\s|,|;))|^)' 590 | beginCaptures 591 | 592 | 0 593 | 594 | name 595 | punctuation.definition.string.begin.octave 596 | 597 | 598 | end 599 | '(?=(\]|\)|\}|=|~|<|>|&|\||-|\+|\*|\.|\^|\||\s|;|,)) 600 | endCaptures 601 | 602 | 0 603 | 604 | name 605 | punctuation.definition.string.end.octave 606 | 607 | 608 | name 609 | string.quoted.single.octave 610 | patterns 611 | 612 | 613 | include 614 | #escaped_quote 615 | 616 | 617 | include 618 | #unescaped_quote 619 | 620 | 621 | include 622 | #special_characters 623 | 624 | 625 | 626 | string_double 627 | 628 | begin 629 | ((?<=(\[|\(|\{|=|\s|;|:|,))|^)" 630 | beginCaptures 631 | 632 | 0 633 | 634 | name 635 | punctuation.definition.string.begin.octave 636 | 637 | 638 | end 639 | "(?=(\]|\)|\}|=|~|<|>|&|\||-|\+|\*|\.|\^|\||\s|;|:|,)) 640 | endCaptures 641 | 642 | 0 643 | 644 | name 645 | punctuation.definition.string.end.octave 646 | 647 | 648 | name 649 | string.quoted.double.octave 650 | patterns 651 | 652 | 653 | include 654 | #escaped_quote 655 | 656 | 657 | include 658 | #unescaped_quote 659 | 660 | 661 | include 662 | #special_characters 663 | 664 | 665 | 666 | transpose 667 | 668 | match 669 | ((\w+)|(?<=\])|(?<=\)))\.?' 670 | name 671 | keyword.operator.transpose.octave 672 | 673 | unescaped_quote 674 | 675 | patterns 676 | 677 | 678 | match 679 | '(?=.) 680 | name 681 | invalid.illegal.unescaped-quote.octave 682 | 683 | 684 | 685 | variable 686 | 687 | comment 688 | Valid variable. 689 | match 690 | \b[a-zA-Z]\w*\b 691 | name 692 | variable.other.valid.octave 693 | 694 | variable_assignment 695 | 696 | comment 697 | Incomplete variable assignment. 698 | match 699 | =\s*\.{0,2}\s*;?\s*$\n? 700 | name 701 | invalid.illegal.incomplete-variable-assignment.octave 702 | 703 | variable_invalid 704 | 705 | comment 706 | No variables or function names can start with a number or an underscore. 707 | match 708 | \b(_\w|\d+[_a-df-zA-DF-Z])\w*\b 709 | name 710 | invalid.illegal.invalid-variable-name.octave 711 | 712 | 713 | scopeName 714 | source.octave 715 | uuid 716 | 236A240E-F4DA-45BA-905C-4046055E6247 717 | 718 | 719 | -------------------------------------------------------------------------------- /Tests/classes.m: -------------------------------------------------------------------------------- 1 | % Class and various components 2 | classdef className 3 | properties (Access = private) 4 | evidence = []; 5 | MaxVol = 40; 6 | isTrue = false; 7 | guess; % comment 8 | end 9 | methods 10 | function obj = matlab_class(r,g,b) 11 | obj.R = r; 12 | obj.G = g; 13 | obj.B = b; 14 | end 15 | end 16 | methods (Static) 17 | function handleEvnt(src,~) 18 | if src.State 19 | disp('ToggledState is true') 20 | else 21 | disp('ToggledState is false') 22 | end 23 | end 24 | end 25 | events (GetAccess = protected, Hidden = false) 26 | Update 27 | end 28 | enumeration 29 | Monday, Tuesday, Wednesday, Thursday, Friday 30 | end 31 | end 32 | 33 | % Class with inheritance 34 | classdef className < inherited.asset 35 | 36 | end 37 | 38 | % Class with complex inheritance 39 | classdef className < inherited.asset & trust.member 40 | 41 | end 42 | 43 | % Class with attributes 44 | classdef (CaseInsensitiveProperties, TruncatedProperties, ConstructOnLoad) className < inherited 45 | 46 | end 47 | 48 | % Class with complex attributes 49 | classdef (CaseInsensitiveProperties='true', TruncatedProperties=true) LinkAxes < handle 50 | 51 | end 52 | 53 | % Class with description, undocumented feature 54 | classdef (Description='A type of story.') MyFairyTaleClass 55 | 56 | end 57 | 58 | -------------------------------------------------------------------------------- /Tests/test_functions.m: -------------------------------------------------------------------------------- 1 | function [a, b, c] = test_both(a, b, c) % Both input and output arguments 2 | function a = test_both(a, b, c) 3 | function test_input(a, b, c) 4 | function test_neither 5 | function aa = test 6 | 7 | % TODO: Highly crazy, and yet valid syntax. 8 | % at least it's detected as a function! 9 | function bb = test3 ... 10 | (a, b, c) 11 | 12 | % Octave style testing: 13 | function test_neither_hash # comment 14 | function [a, b, c] = test_both_hash(a, b, c) # Both input and output arguments 15 | -------------------------------------------------------------------------------- /Tests/test_indentation.m: -------------------------------------------------------------------------------- 1 | function [a,b,c] = test_indentation(c, d, e) 2 | % TEST_INDENTATION A function to test the Matlab bundle for TextMate 3 | % [[A,B,C]] = TEST_INDENTATION(C, D, E) 4 | % 5 | % Doesn't really do anything... This is more to test indentation etc. 6 | % 7 | % Created by Matt Foster on 2008-05-08. 8 | 9 | % First, a quick if statement: 10 | if rem(n,2) ~= 0 11 | M = odd_magic(n) 12 | elseif rem(n,4) ~= 0 % Ideally, this will still be indented. 13 | M = single_even_magic(n) 14 | else 15 | M = double_even_magic(n) 16 | end 17 | 18 | %{ 19 | Here's a block comment. 20 | %} 21 | 22 | % Now, a switch 23 | switch var 24 | case a % when a 25 | something 26 | case b 27 | something 28 | otherwise 29 | soomething 30 | end 31 | 32 | % And a try -- catch 33 | try 34 | 100 ./ 0 35 | catch 36 | error('Caught problem') 37 | end 38 | 39 | % Finally, some while loops. 40 | while a < 100 41 | a = a + 1; 42 | end 43 | 44 | while a < 100 45 | a = a + 1; 46 | if mod(a, 2) == 2 47 | disp('a is even'); 48 | end 49 | if a > 100 50 | break; 51 | end 52 | endwhile % Octave style 53 | -------------------------------------------------------------------------------- /info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | contactEmailRot13 6 | zngg.c.sbfgre@tznvy.pbz 7 | contactName 8 | Matt Foster 9 | description 10 | Support for <a href="http://www.mathworks.com/products/matlab/">MATLAB</a>, and <a href="http://octave.org">Octave</a>, two largely compatible high-level languages that enables you to perform computationally intensive tasks faster than with traditional programming languages. 11 | mainMenu 12 | 13 | excludedItems 14 | 15 | 563CDF89-C286-4CDB-94AB-30819104470F 16 | 17 | items 18 | 19 | 07FBCD52-B897-4931-AE99-86C5B25C2132 20 | 064E306B-FF23-432B-952F-55AC3BEF029E 21 | E888D2B7-977A-4A68-A966-6BE2762EB9C3 22 | ------------------------------------ 23 | D7A8ED42-49E0-4CF3-A6C8-BE8DAB76267A 24 | 033730AF-96F5-4F0C-9199-E0683D40A22C 25 | ------------------------------------ 26 | 8EDB89D6-79E4-4A26-8E14-ED60254782FB 27 | B5959BD1-48FB-495C-A3C3-AE04B05774C7 28 | C5A70337-F3D2-4841-8A74-1B2CA2296B14 29 | 66C5D9C0-88EE-4235-8A85-68383ABAE231 30 | 8550747A-AD69-421F-A229-CD3DC71E2CE8 31 | B085318C-1A86-4667-8E7E-1594A290BAAA 32 | ------------------------------------ 33 | 535265FA-BB76-44F3-9970-374A249147E0 34 | AD157889-CCD6-47D3-A5E5-0BD7BC719DD2 35 | 459DF644-53A3-4ADD-8984-D4412CF44279 36 | 37 | submenus 38 | 39 | 66C5D9C0-88EE-4235-8A85-68383ABAE231 40 | 41 | items 42 | 43 | 6B86576E-F8E3-4E3A-8083-CFE4C0DF9E42 44 | 31D0DE27-0382-4F5F-B005-351F9D9B4589 45 | 0FDCE9D1-A757-4793-816D-1364192CE326 46 | C00046EC-C7DC-4BC5-81CD-EBCB0F6FE8F7 47 | 8E4BA761-42BB-4CFC-B117-A547228878B8 48 | F0A7C9BF-8FE2-4452-8EC9-F71881C7831F 49 | EA2AB0C2-A215-4503-930C-785CDF66F95B 50 | 51 | name 52 | Functions 53 | 54 | 8550747A-AD69-421F-A229-CD3DC71E2CE8 55 | 56 | items 57 | 58 | 975C9569-8B7D-4A60-8ED4-478A724D3A4E 59 | EC4078AC-7F43-42CA-A83A-E1477558D84E 60 | ------------------------------------ 61 | 163D3790-C8E8-4888-81D7-50907D825EA0 62 | 71CFA3F2-D883-4571-95B9-D98651890156 63 | 6F519B71-2D99-455B-9E4A-F614FD9CA253 64 | ------------------------------------ 65 | 7135F592-1176-478A-BA31-BD8A7DA56F93 66 | 6392FF26-D584-435E-8202-9BC99FF26488 67 | ------------------------------------ 68 | 8325A3D7-1025-48C4-810F-CF41E7E71DA2 69 | 70 | name 71 | Text and Messages 72 | 73 | 8EDB89D6-79E4-4A26-8E14-ED60254782FB 74 | 75 | items 76 | 77 | F23DAE9B-A27A-41D3-B57B-DED30729243C 78 | ------------------------------------ 79 | 0EA9BDAD-6EA3-48C4-ADF5-EA549D84CAF0 80 | 2376F2E2-E240-422F-B6E8-48B6AA20C9EE 81 | 5C7F21FA-156C-4A86-AB20-7F9678010BCA 82 | ------------------------------------ 83 | 876FEC4C-FD21-401A-8947-0B2E232E19CA 84 | 4A86BFC8-5C03-45F8-B7D6-597F476E7C93 85 | 93234216-9807-416E-8416-A130A05C2C1F 86 | 582075F1-DB3F-4280-9F46-B615F8EF4A86 87 | EA7BD80E-6346-44E9-A909-CE0703CFB390 88 | ------------------------------------ 89 | B287F24B-9BC5-4EAB-9621-1E73D367AAB7 90 | 631FAA9C-ECC2-484A-A29C-3CD66D944693 91 | C600A817-A58A-4884-9BDC-F7CB13407CB6 92 | F7A928F5-B70D-4DB0-8DEF-F61928038A6C 93 | 9475371F-F8A7-4C46-BAC9-B42E7E34F2AD 94 | ------------------------------------ 95 | 08CB1F21-B7EB-4AD7-B066-BB365966E390 96 | B8E195CE-1606-4311-900D-4A1E1ACE6F94 97 | ADE63DB1-7F3A-4EAC-A5A4-3A35A28FE8F0 98 | 99 | name 100 | Declarations 101 | 102 | B085318C-1A86-4667-8E7E-1594A290BAAA 103 | 104 | items 105 | 106 | FD9512A7-561A-4140-A425-567B8D2862EA 107 | 615CF7DB-FDB1-4013-9725-FDF4BE64E8A4 108 | 732F1DA4-166B-44AF-88CD-5A944574D3CC 109 | 8A857EDA-B07B-4304-BA10-29C3D22A3B1B 110 | 12A5489D-0A50-4420-A53D-FB0C6A2794CD 111 | 112 | name 113 | ↩ and ⌅ Commands 114 | 115 | B5959BD1-48FB-495C-A3C3-AE04B05774C7 116 | 117 | items 118 | 119 | F674E1B2-5BA5-4397-9D54-D48623E9F2FD 120 | ------------------------------------ 121 | 3FFA60EB-FA14-47DE-AEF7-5A3E840BE637 122 | 7298E093-E86F-4A60-ACFF-67580F24FD27 123 | ------------------------------------ 124 | 9915BCE4-2499-4E17-9006-7BB08A8539F0 125 | 1166137D-A579-484D-BDD7-AC62EFFA3FFA 126 | ------------------------------------ 127 | 178F5EE1-2953-4FB2-8623-99A1C7D0772F 128 | 1F4C6EA6-370C-45A9-96C5-36E69CC297E3 129 | 3C12382B-FD63-4DD8-9198-02D25AF755FF 130 | ------------------------------------ 131 | A93C4844-87F4-4136-9580-75B697D0CFD7 132 | 2FED97FA-0EB0-45E3-B92F-757903E79684 133 | 134 | name 135 | Figures 136 | 137 | C5A70337-F3D2-4841-8A74-1B2CA2296B14 138 | 139 | items 140 | 141 | 40B52D65-1B7C-4874-AA30-B4C95089CE55 142 | 4B350792-24A2-4083-A8FB-509DF4BD709A 143 | 144 | name 145 | Refactoring 146 | 147 | 148 | 149 | name 150 | Matlab 151 | uuid 152 | AF26E7BD-72FF-11D9-B408-000D93589AF6 153 | 154 | 155 | --------------------------------------------------------------------------------