dp.sh.Brushes.Php = function()
{
	var funcs	=	'all any exist is logical mislocked abs acos acosh acot acoth acsc acsch airy angle ans area '+
	                'asec asech asin asinh atan atan2 atanh auread autumn auwrite axes axis balance bar bar3 bar3h '+
	                'barh besselh besseli besselj besselk Bessely beta betainc betaln bicg bicgstab bin2dec bitand bitcmp '+
	                'bitget bitmax bitor bitset bitshift bitxor blkdiag bone box brighten builtin bwcontr calendar camdolly '+
	                'camlight camlookat camorbit campan campos camproj camroll camtarget camup camva camzoom capture cart2pol '+
	                'cart2sph cat caxis cdf2rdf ceil cell cell2struct celldisp cellfun cellplot cellstr cgs char chol cholinc '+
	                'cholupdate cla clabel class clc clf clg clock close colmmd colorbar colorcube colordef colormap colperm comet '+
	                'comet3 compan compass complex computer cond condeig condest coneplot conj contour contourc contourf '+
	                'contourslice contrast conv conv2 convhull cool copper copyobj corrcoef cos cosh cot coth cov cplxpair '+
	                'cputime cross csc csch cumprod cumsum cumtrapz cylinder daspect date datenum datestr datetick datevec '+
	                'dbclear dbcont dbdown dblquad dbmex dbquit dbstack dbstatus dbstep dbstop dbtype dbup deblank dec2bin '+
	                'dec2hex deconv del2 delaunay det diag dialog diff diffuse dlmread dlmwrite dmperm double dragrect drawnow '+
	                'dsearch eig eigs ellipj ellipke eomday eps erf erfc erfcx erfiny error errorbar errordlg etime eval evalc '+
	                'evalin exp expint expm eye ezcontour ezcontourf ezmesh ezmeshc ezplot ezplot3 ezpolar ezsurf ezsurfc factor '+
	                'factorial fclose feather feof ferror feval fft fft2 fftshift fgetl fgets fieldnames figure fill fill3 filter '+
	                'filter2 find findfigs findobj findstr fix flag flipdim fliplr flipud floor flops fmin fmins fopen fplot '+
	                'fprintf fread frewind fscanf fseek ftell full funm fwrite fzero gallery gamma gammainc gammaln gca gcbo gcd '+
	                'gcf gco get getfield ginput gmres gradient gray graymon grid griddata gsvd gtext hadamard hankel hdf helpdlg '+
	                'hess hex2dec hex2num hidden hilb hist hold hot hsv hsv2rgb i ifft ifft2 ifftn ifftshift imag image imfinfo '+
	                'imread imwrite ind2sub Inf inferiorto inline inpolygon input inputdlg inputname int16 int2str int32 int8 '+
	                'interp1 interp2 interp3 interpft interpn intersect inv invhilb ipermute isa ishandle ismember isocaps '+
	                'isonormals isosurface j jet keyboard lcm legend legendre light lighting lightingangle lin2mu line lines '+
	                'linspace listdlg loadobj log log10 log2 loglog logm logspace lower lscov lu luinc magic mat2str material max '+
	                'mean median menu menuedit mesh meshc meshgrid min mod msgbox mu2lin NaN nargchk nargin nargout nchoosek '+
	                'ndgrid ndims newplot nextpow2 nnls nnz nonzeros norm normest now null num2cell num2str nzmax ode113, ode15s, '+
	                'ode23s, ode23t, ode23tb ode45, odefile odeget odeset ones orient orth pagedlg pareto pascal patch pause '+
	                'pbaspect pcg pcolor peaks perms permute pi pie pie3 pinv plot plot3 plotmatrix plotyy pol2cart polar poly '+
	                'polyarea polyder polyeig polyfit polyval polyvalm pow2 primes print printdlg printopt prism prod propedit '+
	                'qmr qr qrdelete qrinsert qrupdate quad questdlg quiver quiver3 qz rand randn randperm rank rat rats rbbox '+
	                'rcond real realmax realmin rectangle reducepatch reducevolume refresh rem repmat reset reshape residue '+
	                'rgb2hsv rgbplot ribbon rmfield roots rose rot90 rotate rotate3d round rref rrefmovie rsf2csf saveobj scatter '+
	                'scatter3 schur script sec sech selectmoveresize semilogx semilogy set setdiff setfield setxor shading shg '+
	                'shiftdim shrinkfaces sign sin single sinh slice smooth3 sort sortrows sound soundsc spalloc sparse spconvert '+
	                'spdiags specular speye spfun sph2cart sphere spinmap spline spones spparms sprand sprandn sprandsym spring '+
	                'sprintf sqrt sqrtm squeeze sscanf stairs std stem stem3 str2double str2num strcat strcmp strcmpi stream2 '+
	                'stream3 streamline strings strjust strmatch strncmp strrep strtok struct struct2cell strvcat sub2ind subplot '+
	                'subspace subvolume sum summer superiorto surf surf2patch surface surfc surfl surfnorm svd svds symmmd symrcm '+
	                'symvar tan tanh texlabel textCreate textread textwrap tic title toc toeplitz trace trapz tril trimesh trisurf '+
	                'triu tsearch uicontextCreate uicontextmenu uicontrol uigetfile uimenu uint32 uint8 uiputfile uiresume '+
	                'uisetcolor uisetfont uiwaitUsed union unique unwrap upper var varargin varargout vectorize view viewmtx '+
	                'voronoi waitbar waitforbuttonpress warndlg warning waterfall wavread wavwrite weekday whitebg wilkinson '+
	                'winter wk1read wk1write xlabel xlim ylabel ylim zeros zlabel zlim zoom addpath cd clear copyfile delete '+
	                'diary dir disp doc docopt echo edit fileparts format fullfile help helpdesk helpwin home inmem lasterr '+
	                'lastwarn length load lookfor ls matlabrc matlabroot mkdir mlock more munlock open openvar pack partialpath '+
	                'path pathtool profile profreport pwd quit rmpath save saveas size tempdir tempname type ver version web what '+
	                'whatsnew which who whos workspace';

	var keywords =	'if elseif else endif ' +
					'switch case otherwise endswitch ' +
					'do until ' +
					'while endwhile ' +
					'for endfor ' +
					'break continue end ' +
					'function endfunction';

	this.regexList = [
		{ regex: dp.sh.RegexLib.SingleLineCComments,				css: 'comment' },			// one line comments
		{ regex: dp.sh.RegexLib.MultiLineCComments,					css: 'comment' },			// multiline comments
		{ regex: dp.sh.RegexLib.DoubleQuotedString,					css: 'string' },			// double quoted strings
		{ regex: dp.sh.RegexLib.SingleQuotedString,					css: 'string' },			// single quoted strings
		{ regex: new RegExp(this.GetKeywords(funcs), 'gmi'),		css: 'func' },				// functions
		{ regex: new RegExp(this.GetKeywords(keywords), 'gm'),		css: 'keyword' }			// keyword
		];

	this.CssClass = 'dp-c';
}

dp.sh.Brushes.Php.prototype	= new dp.sh.Highlighter();
dp.sh.Brushes.Php.Aliases	= ['octave'];

