ファイル名:matlab.el.A.Z

;;; -*- mode: lisp-interaction; syntax: elisp -*-         ;Lisp Interactionモードで立ち上がる
;***********************************************************************************************
;;; perl-mode を参考にしようとしたがあまりに難解であきらめた。一応 matlab.bak がそれ。
;;; auto-indentやTabをSpaceに変換する機能等は要らないので、すべて削除した。
;;;                  .emacs に入れておく物
;;;           (autoload 'matlab-mode "matlab-mode")
;;; (setq auto-mode-alist (append (list (cons "\\.m$" 'matlab-mode)) auto-mode-alist))
;-----------------------------------------------------------------------------------------------
;;; 文字に色を付ける。色指定に使われるキーワードは、hilit19.el に書かれているので参照すると良い
(if window-system (hilit-set-mode-patterns 'matlab-mode   ;matlab-modeの色設定
;;;下記設定だと[%]以降に[']が奇数個あるとコメントしません。その時は[%]を行頭に置くと良い。
 '(("^\%.*$" nil comment)                                 ;先頭から[%]なのはcomment
   ("\%[^\'\n]*$" nil comment)                            ;[%]以降に[']がなければcomment
   ("\%[^\'\n]*\'[^\'\n]*\'[^\'\n]*$" nil comment)        ;[%]以降に[']が2個あるとcomment
   ("\%[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*$" nil comment)
   ("\%[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*$" nil comment)
   ("\%[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*\'[^\'\n]*$" nil comment)
                                                          ;[%]以降に[']が4,6,8個あるとcommet
   ("\\.\\.\\. " nil defun)                               ;[...]はdefun(太い青色)
;;;下記の引用符用の2行は['']がある様なコメント文の領域を2つに分けてそれぞれ担当している   
;;;この表記だと['']という空コメント以降の表示がおかしくなる。よって、空コメントを使いたい時は
;;; setstr([]); とすると良い。                            ;↓1は \\(\\) を指す
   ("[^a-zA-Z0-9\)\\.]\\(\'[^\'\n] \'\\)" 1 tomato3)      ;転置でない[']マークから['']まで
   ("\'\'[^\'\n]*\'" nil tomato3)                         ;['']マークから[']までを担当
;;; Perl Mode の hilit 定義
;   ("\\s #.*$" nil comment)
;   ("^#.*$" nil comment)
;   ("\"[^\\\"]*\\(\\\\\\(.\\|\n\\)[^\\\"]*\\)*\"" nil string)
;   ("^\\(__....?__\\|\\s *\\sw :\\)" nil label)
;   ("^require.*$" nil include)
;   ("^package.*$" nil decl)
;   ("^\\s *sub\\s  \\(\\w\\|[_']\\) " nil defun)
;   ("\\b\\(do\\|if\\|unless\\|while\\|until\\|else\\|elsif\\|for\\|foreach\\|continue\\|next\\|redo\\|last\\|goto\\|return\\|die\\|exit\\)\\b" nil keyword)))
   ("\\b\\(break\\|continue\\|die\\|do\\|else\\|elseif\\|end\\|for\\|foreach\\|function\\|global\\|goto\\|if\\|label\\|last\\|next\\|redo\\|unless\\|until\\|while\\)\\b" nil keyword))))
;Contents\\|cat\\|cell\\|cell2struct\\|celldisp\\|cellplot\\|class\\|deal\\|double\\|fieldnames\\|getfield\\|inferiorto\\|ipermute\\|isa\\|iscell\\|isfield\\|isobject\\|isstruct\\|methods\\|ndgrid\\|num2cell\\|permute\\|rmfield\\|setfield\\|shiftdim\\|squeeze\\|struct\\|struct2cell\\|substruct\\|superiorto\\|uint8\\|auread\\|auwrite\\|chirp\\|atconv\\|conv2\\|convn\\|corrcoef\\|cov\\|cumprod\\|cumsum\\|cumtrapz\\|deconv\\|del2\\|diff\\|fft\\|fft2\\|fftn\\|fftshift\\|filter\\|filter2\\|gong\\|atgradient\\|hist\\|ifft\\|ifft2\\|ifftn\\|ifftshift\\|lin2mu\\|max\\|mean\\|median\\|min\\|mu2lin\\|playsnd\\|prod\\|saxis\\|sort\\|sortrows\\|sound\\|soundsc\\|std\\|subspace\\|sum\\|trapz\\|wavread\\|wavwrite\\|a2ode\\|a3ode\\|airfoil\\|ardemo\\|b5ode\\|ballode\\|bblwrap\\|bench\\|besslode\\|brussode\\|bucky\\|buckydem\\|buiode\\|buttonv\\|ccodegen\\|census\\|censusex\\|ceval\\|chm6ode\\|chm7ode\\|chm9ode\\|choices\\|choicex\\|cmdlnbgn\\|cmdlnend\\|cmdlnwin\\|codec\\|colormenu\\|count.datcplxdemo\\|cplxgrid\\|cplxmap\\|cplxroot\\|cruller\\|crulspin\\|d1ode\\|delsq\\|delsqdemo\\|demo\\|e2pi\\|earthmap\\|eigmovie\\|eigshow\\|evalmcw\\|expo\\|fem1ode\\|fem2ode\\|fftdemo\\|fifteen\\|finddemo\\|fitdemo\\|fitfun\\|flameode\\|flow\\|fplotdemo\\|funfuns\\|gallinit\\|gearode\\|gpf\\|graf2d\\|graf2d2\\|graf3d\\|grafcplx\\|hb1ode\\|hb2ode\\|hb3ode\\|helpfun\\|highlight\\|hndlaxis\\|hndlgraf\\|humps\\|imagedemo\\|imageext\\|imtext\\|inside\\|intro\\|inverter\\|klein1\\|knot\\|labelacc\\|life\\|logo\\|logo\\|atlogospin\\|lorenz\\|lotka\\|lotkademo\\|makeshow\\|makevase\\|matdems\\|matinfo\\|matmanip\\|membrane\\|modes\\|mvframe\\|mvinit\\|mvstore\\|nddemo\\|nestdiss\\|nested\\|numdems\\|numgrid\\|odedemo\\|orbitode\\|orbt2ode\\|peaks\\|penny\\|playshow\\|pltmat\\|popupcb\\|quaddemo\\|quake\\|quake\\|atquatdemo\\|quivdemo\\|rigidode\\|rrefmovie\\|sepdemo\\|sepplot\\|showwind\\|soma\\|somasols\\|sparsity\\|spharm2\\|spinner\\|spiral\\|spline2d\\|spypart\\|ssdisp\\|sshow\\|ssinit\\|sspause\\|sticode\\|strucdem\\|sunspots\\|superquad\\|sysiddm\\|tbwarn\\|tffunc\\|tori4\\|travel\\|truss\\|tube\\|uitext\\|vdpode\\|vibes\\|visdems\\|watchoff\\|watchon\\|wrldtrv\\|xfourier\\|xpaccel\\|xpbanplt\\|xpbombs\\|xpgallry\\|xphide\\|xpklein\\|xplang\\|xpmovie\\|xppage\\|xpquad\\|xpr\\|xpsound\\|xpsubplt\\|xptext\\|xpz\\|xycrull\\|xyklein\\|xylink1a\\|xylink1b\\|xylink1c\\|xylink1d\\|zerodemo\\|balance\\|cdf2rdf\\|chol\\|cholupdate\\|cond\\|condeig\\|condest\\|det\\|eig\\|expm\\|expm1\\|expm2\\|expm3\\|funm\\|gsvd\\|hess\\|inv\\|logm\\|lscov\\|lu\\|nnls\\|norm\\|normest\\|null\\|orth\\|pinv\\|planerot\\|polyeig\\|qr\\|qrdelete\\|qrinsert\\|qrupdate\\|qz\\|rank\\|rcond\\|rref\\|rsf2csf\\|schur\\|sqrtm\\|svd\\|trace\\|bartlett\\|besselap\\|besself\\|bilinear\\|blackman\\|boxcar\\|bscost\\|buttap\\|butter\\|buttord\\|cceps\\|cheb1ap\\|cheb1ord\\|cheb2ap\\|cheb2ord\\|chebwin\\|cheby1\\|cheby2\\|chirp\\|cohere\\|convmtx\\|cremez\\|csd\\|czt\\|cztdemo\\|dct\\|dctold\\|decimate\\|demod\\|demos\\|detrend\\|dftmtx\\|diric\\|dpss\\|dpssclear\\|dpssdir\\|dpssload\\|dpsssave\\|ellip\\|ellipap\\|ellipord\\|fdbutter\\|fdcheby1\\|fdcheby2\\|fdellip\\|fdfirls\\|fdkaiser\\|fdremez\\|fdutil\\|fftfilt\\|filtdem\\|filtdem2\\|filtdemo\\|filtdes\\|filtfilt\\|filtic\\|filtview\\|fir1\\|fir2\\|fircls\\|fircls1\\|firls\\|firrcos\\|freqs\\|freqz\\|gauspuls\\|getsigpref\\|grpdelay\\|hamming\\|hanning\\|hilbert\\|icceps\\|idct\\|idctold\\|impinvar\\|impz\\|interp\\|intfilt\\|invfreqs\\|invfreqz\\|kaiser\\|kaiserord\\|kratio\\|latc2tf\\|latcfilt\\|levinson\\|lp2bp\\|lp2bs\\|lp2hp\\|lp2lp\\|lpc\\|maxflat\\|medfilt1\\|moddemo\\|modulate\\|panfcn\\|pburg\\|phone\\|pmem\\|pmtm\\|pmusic\\|poly2rc\\|polystab\\|prony\\|psd\\|pulstran\\|pyulear\\|rc2poly\\|rceps\\|rectpuls\\|remez\\|remezord\\|resample\\|residuez\\|sawtooth\\|sbswitch\\|setsigpref\\|sigbrowse\\|sigdemo1\\|sigdemo2\\|sinc\\|sos2ss\\|sos2tf\\|sos2zp\\|sosdemo\\|specgram\\|specplot\\|spectrum\\|spectview\\|sptool\\|square\\|ss2sos\\|stmcb\\|strips\\|tf2latc\\|tfe\\|triang\\|tripuls\\|upfirdn\\|vco\\|vratio\\|xcorr\\|xcorr2\\|xcov\\|yulewalk\\|zp2sos\\|zplane\\|applylut\\|bestblk\\|blkproc\\|bmpread\\|bmpwrite\\|bwarea\\|bweuler\\|bwfill\\|bwlabel\\|bwmorph\\|bwperim\\|bwselect\\|cmgamdef\\|cmgamma\\|cmpermute\\|cmunique\\|col2im\\|colfilt\\|convmtx2\\|corr2\\|dct2\\|dctmtx\\|dctmtx2\\|dilate\\|dither\\|edge\\|erode\\|freqz2\\|fsamp2\\|fspecial\\|ftrans2\\|fwind1\\|fwind2\\|getimage\\|getline\\|getpts\\|getrect\\|gifread\\|gifwrite\\|gray2ind\\|grayslice\\|hdfpeek\\|hdfread\\|hdfwrite\\|histeq\\|idct2\\|im2bw\\|im2col\\|im2double\\|im2uint8\\|imadjust\\|imapprox\\|imcontour\\|imcrop\\|imfeature\\|imhist\\|immovie\\|imnoise\\|impixel\\|improfile\\|imresize\\|imrotate\\|imshow\\|imslice\\|imzoom\\|ind2gray\\|ind2rgb\\|iptgetpref\\|iptsetpref\\|iradon\\|isbw\\|isgray\\|isind\\|isrgb\\|makelut\\|mat2gray\\|mean2\\|medfilt2\\|mfilter2\\|montage\\|nlfilter\\|ntsc2rgb\\|ordfilt2\\|pcxread\\|pcxwrite\\|phantom\\|pixval\\|qtdecomp\\|qtgetblk\\|qtsetblk\\|radon\\|rgb2gray\\|rgb2ind\\|rgb2ntsc\\|rgb2ycbcr\\|roicolor\\|roifill\\|roifilt2\\|roipoly\\|std2\\|subimage\\|tiffread\\|tiffwrite\\|truesize\\|warp\\|wiener2\\|xwdread\\|xwdwrite\\|ycbcr2rgb\\|clc\\|csvread\\|csvwrite\\|dlmread\\|dlmwrite\\|fclose\\|feof\\|ferror\\|fgetl\\|fgets\\|fileparts\\|filesep\\|fopen\\|fprintf\\|fread\\|frewind\\|fscanf\\|fseek\\|ftell\\|fullfile\\|fwrite\\|hdf\\|hdfan\\|hdfdf24\\|hdfdfr8\\|hdfh\\|hdfhd\\|hdfhe\\|hdfml\\|hdfsd\\|hdfv\\|hdfvf\\|hdfvh\\|hdfvs\\|hgload\\|hgsave\\|home\\|imfinfo\\|imread\\|imwrite\\|matlabroot\\|mexext\\|partialpath\\|pathsep\\|print\\|str2rng\\|tempdir\\|tempname\\|wk1const\\|wk1read\\|wk1wrec\\|wk1write\\|buildopt\\|cedit\\|colordef\\|docopt\\|graymon\\|hostid\\|license\\|matlabrc\\|pathdef\\|pathdeforig\\|printopt\\|terminal\\|userpath\\|version\\|whitebg\\|base2dec\\|bin2dec\\|blanks\\|cellstr\\|char\\|deblank\\|dec2base\\|dec2bin\\|dec2hex\\|findstr\\|hex2dec\\|hex2num\\|int2str\\|iscellstr\\|ischar\\|isletter\\|isspace\\|isstr\\|lower\\|mat2str\\|num2str\\|setstr\\|sprintf\\|sscanf\\|str2mat\\|str2num\\|strcat\\|strcmp\\|strcmpi\\|strings\\|strjust\\|strmatch\\|strncmp\\|strncmpi\\|strrep\\|strtok\\|strvcat\\|upper\\|calendar\\|clock\\|cputime\\|date\\|datenum\\|datestr\\|datetick\\|datevec\\|dvcore\\|eomday\\|etime\\|now\\|pause\\|tic\\|toc\\|weekday\\|area\\|bar\\|bar3\\|bar3h\\|barh\\|capture\\|clabel\\|colstyle\\|comet\\|comet3\\|compass\\|contour\\|contour3\\|contourc\\|contourf\\|contours\\|contrast\\|cylinder\\|errorbar\\|ezplot\\|feather\\|fill\\|fplot\\|frame2im\\|getframe\\|im2frame\\|image\\|imagesc\\|makebars\\|meshc\\|meshz\\|movie\\|moviein\\|pareto\\|patch\\|pcolor\\|pie\\|pie3\\|plotmatrix\\|quiver\\|quiver3\\|rgbplot\\|ribbon\\|rose\\|rotate\\|scatter\\|scatter3\\|slice\\|sphere\\|spinmap\\|stairs\\|stem\\|stem3\\|surfc\\|trimesh\\|trisurf\\|voronoi\\|waterfall\\|airy\\|besschk\\|bessel\\|bessela\\|besselh\\|besseli\\|besselj\\|besselk\\|bessely\\|beta\\|betacore\\|betainc\\|betaln\\|cart2pol\\|cart2sph\\|cross\\|dot\\|ellipj\\|ellipke\\|erf\\|erfc\\|erfcore\\|erfcx\\|erfinv\\|expint\\|factor\\|gamma\\|gammainc\\|gammaln\\|gcd\\|hsv2rgb\\|isprime\\|lcm\\|legendre\\|nchoosek\\|perms\\|pol2cart\\|primes\\|rat\\|rats\\|rgb2hsv\\|sph2cart\\|addpath\\|binpatch\\|cd\\|clear\\|computer\\|copyfile\\|dbclear\\|dbcont\\|dbdown\\|dbmex\\|dbquit\\|dbstack\\|dbstatus\\|dbstep\\|dbstop\\|dbtype\\|dbup\\|debug\\|diary\\|dir\\|doc\\|docroot\\|dos\\|echo\\|edit\\|editpath\\|exit\\|format\\|genpath\\|getenv\\|help\\|helpdesk\\|helpinfo\\|helpwin\\|info\\|inmem\\|isieee\\|isppc\\|isstudent\\|isunix\\|isvms\\|load\\|lookfor\\|ls\\|maedispsubarray\\|maeresize\\|maesize\\|matlabpath\\|mauifindexe\\|mauifunc\\|mdbstatus\\|memory\\|mex\\|mexdebug\\|miedit\\|miolereg\\|miport\\|mkdir\\|more\\|nnload\\|notebook\\|openvar\\|pack\\|path\\|path2rc\\|pathtool\\|pcode\\|prepender\\|profile\\|profsumm\\|pwd\\|quit\\|regedit\\|rmpath\\|save\\|subscribe\\|type\\|unix\\|ver\\|vms\\|web\\|what\\|whatsnew\\|which\\|who\\|whos\\|workspace\\|colgroup\\|dblquad\\|fcnchk\\|fmin\\|fmins\\|foptions\\|fzero\\|innerlp\\|ntrp113\\|ntrp15s\\|ntrp23\\|ntrp23s\\|ntrp23t\\|ntrp23tb\\|ntrp45\\|numjac\\|ode113\\|ode15s\\|ode23\\|ode23s\\|ode23t\\|ode23tb\\|ode45\\|odefile\\|odeget\\|odephas2\\|odephas3\\|odeplot\\|odeprint\\|odeset\\|odezero\\|quad\\|quad8\\|vectorize\\|axis\\|box\\|doclick\\|dokeypress\\|domymenu\\|doresize\\|enddrag\\|getobj\\|grid\\|gtext\\|legend\\|loglog\\|lscan\\|makedraggable\\|middrag\\|moveaxis\\|plot\\|plotedit\\|plotyy\\|polar\\|prepdrag\\|putdowntext\\|scribeaxesdlg\\|scribetoolbar\\|semilogx\\|semilogy\\|subplot\\|text\\|title\\|xlabel\\|ylabel\\|zoom\\|autumn\\|bone\\|brighten\\|camdolly\\|camlight\\|camlookat\\|camorbit\\|campan\\|campos\\|camproj\\|camroll\\|camrotate\\|camtarget\\|camup\\|camva\\|camzoom\\|caxis\\|colorbar\\|colorcube\\|colormap\\|cool\\|copper\\|daspect\\|diffuse\\|fill3\\|flag\\|gray\\|hidden\\|hot\\|hsv\\|jet\\|lightangle\\|lighting\\|lines\\|material\\|mesh\\|objbounds\\|pbaspect\\|pink\\|plot3\\|prism\\|rotate3d\\|shading\\|specular\\|spring\\|summer\\|surf\\|surfl\\|surfnorm\\|view\\|viewmtx\\|vrml\\|white\\|winter\\|xlim\\|ylim\\|zlabel\\|zlim\\|axes\\|bwcontr\\|cla\\|clf\\|clg\\|close\\|closereq\\|copyobj\\|delete\\|drawnow\\|figure\\|findobj\\|gca\\|gcbf\\|gcbo\\|gcf\\|gco\\|get\\|handle2struct\\|hardcopy\\|hold\\|ishandle\\|ishold\\|light\\|line\\|newplot\\|noanimate\\|nodither\\|orient\\|refresh\\|reset\\|savtoner\\|set\\|shg\\|struct2handle\\|surface\\|uicontextmenu\\|uicontrol\\|uimenu\\|ans\\|compan\\|diag\\|eps\\|eye\\|find\\|flipdim\\|fliplr\\|flipud\\|flops\\|freqspace\\|gallery\\|hadamard\\|hankel\\|hilb\\|i\\|ind2sub\\|inf\\|invhilb\\|isempty\\|isequal\\|isfinite\\|isinf\\|islogical\\|isnan\\|isnumeric\\|j\\|length\\|linspace\\|logical\\|logspace\\|magic\\|meshdom\\|meshgrid\\|nan\\|ndims\\|ones\\|pascal\\|pi\\|rand\\|randn\\|realmax\\|realmin\\|repmat\\|reshape\\|rosser\\|rot90\\|size\\|sub2ind\\|toeplitz\\|tril\\|triu\\|vander\\|why\\|wilkinson\\|zeros\\|assignin\\|builtin\\|case\\|catch\\|disp\\|error\\|errortrap\\|eval\\|evalin\\|exist\\|feval\\|input\\|inputname\\|isglobal\\|keyboard\\|lasterr\\|lastwarn\\|lists\\|mfilename\\|mislocked\\|mlock\\|munlock\\|nargchk\\|nargin\\|nargout\\|otherwise\\|persistent\\|return\\|run\\|script\\|switch\\|try\\|varargin\\|varargout\\|warning\\|align\\|allchild\\|axlimdlg\\|btndown\\|btngroup\\|btnicon\\|btnpress\\|btnstate\\|btnup\\|cbedit\\|clruprop\\|ctlpanel\\|dialog\\|dragrect\\|edtext\\|errordlg\\|extent\\|figflag\\|fignamer\\|findall\\|fwhich\\|getptr\\|getstatus\\|getuprop\\|ginput\\|guide\\|helpdlg\\|hidegui\\|hthelp\\|htpp\\|icondisp\\|inputdlg\\|isdir\\|layout\\|listdlg\\|loadhtml\\|makemenu\\|matq2ws\\|matqdlg\\|matqparse\\|matqueue\\|menu\\|menubar\\|menuedit\\|menulabel\\|msgbox\\|overobj\\|pagedlg\\|popupstr\\|printdlg\\|printmenu\\|propedit\\|questdlg\\|rbbox\\|remapfig\\|selectmoveresize\\|setptr\\|setstatus\\|setuprop\\|tabdlg\\|textwrap\\|uigetfile\\|uiputfile\\|uirestore\\|uiresume\\|uisetcolor\\|uisetfont\\|uisuspend\\|uiwait\\|umtoggle\\|waitbar\\|waitfor\\|waitforbuttonpress\\|warndlg\\|winmenu\\|ws2matq\\|abs\\|acos\\|acosh\\|acot\\|acoth\\|acsc\\|acsch\\|angle\\|asec\\|asech\\|asin\\|asinh\\|atan\\|atan2\\|atanh\\|ceil\\|conj\\|cos\\|cosh\\|cot\\|coth\\|cplxpair\\|csc\\|csch\\|exp\\|fix\\|floor\\|imag\\|isreal\\|log\\|log10\\|log2\\|mod\\|nextpow2\\|pow2\\|real\\|rem\\|round\\|sec\\|sech\\|sign\\|sin\\|sinh\\|sqrt\\|tan\\|tanh\\|unwrap\\|angl2str\\|angledim\\|antipode\\|areaint\\|areamat\\|areaquad\\|aut2geod\\|axes2ecc\\|azimuth\\|cen2geod\\|changem\\|circcirc\\|cnf2geod\\|combntns\\|crossfix\\|deg2dm\\|deg2dms\\|deg2km\\|deg2nm\\|deg2rad\\|deg2sm\\|demos\\|departure\\|dist2str\\|distance\\|distdim\\|dms2deg\\|dms2dm\\|dms2mat\\|dms2rad\\|dreckon\\|ecc2flat\\|ecc2n\\|ellipse1\\|elpcalc\\|encodem\\|epsm\\|eqa2grn\\|eqacalc\\|filterm\\|findm\\|flat2ecc\\|gc2sc\\|gcwaypts\\|gcxgc\\|gcxsc\\|geod2aut\\|geod2cen\\|geod2cnf\\|geod2iso\\|geod2par\\|geod2rec\\|geoidtst\\|grn2eqa\\|hista\\|histr\\|hms2hm\\|hms2hr\\|hms2mat\\|hms2sec\\|hr2hm\\|hr2hms\\|hr2sec\\|imbedm\\|interpm\\|intrplat\\|intrplon\\|iso2geod\\|km2deg\\|km2nm\\|km2rad\\|km2sm\\|legs\\|limitm\\|linecirc\\|ltln2val\\|majaxis\\|maptriml\\|maptrimp\\|maptrims\\|maskm\\|mat2dms\\|mat2hms\\|meanm\\|merccalc\\|meshgrat\\|mfwdtran\\|minaxis\\|minvtran\\|n2ecc\\|nanclip\\|nanm\\|navfix\\|neworig\\|newpole\\|nm2deg\\|nm2km\\|nm2rad\\|nm2sm\\|npi2pi\\|onem\\|org2pol\\|par2geod\\|putpole\\|rad2deg\\|rad2dm\\|rad2dms\\|rad2km\\|rad2nm\\|rad2sm\\|rcurve\\|rec2geod\\|reckon\\|reducem\\|resizem\\|rhxrh\\|roundn\\|rsphere\\|scircle1\\|scircle2\\|scxsc\\|sec2hm\\|sec2hms\\|sec2hr\\|setltln\\|setpostn\\|sizem\\|sm2deg\\|sm2km\\|sm2nm\\|sm2rad\\|spcread\\|sphcalc\\|spzerom\\|stdist\\|stdm\\|time2str\\|timedim\\|timezone\\|track\\|track1\\|track2\\|unitstr\\|vfwdtran\\|vinvtran\\|zero22pi\\|zerom\\|aids\\|almanac\\|axesm\\|axesmui\\|camposm\\|camtargm\\|camupm\\|cart2grn\\|clabelm\\|clegendm\\|clipdata\\|clma\\|clmo\\|clrmenu\\|clrpopup\\|colorm\\|comet3m\\|cometm\\|contor3m\\|contorm\\|daspectm\\|dcwdata\\|dcwdo\\|dcwgaz\\|dcwphead\\|dcwrdx\\|dcwread\\|dcwrhead\\|defaultm\\|degchar\\|demcmap\\|displaym\\|etopo5\\|extractm\\|fill3m\\|fillm\\|fipsname\\|framem\\|gcm\\|gcpmap\\|getm\\|getseeds\\|gridm\\|gtextm\\|gtopo30\\|guifactm\\|handlem\\|hidem\\|imagem\\|inputm\\|ismap\\|ismapped\\|leadblnk\\|lightm\\|linem\\|loadcape\\|maphlp1\\|maphlp2\\|maphlp3\\|maphlp4\\|maplist\\|maps\\|maptool\\|maptrim\\|meshlsrm\\|meshm\\|mlabel\\|mlayers\\|mobjects\\|namem\\|nextmap\\|orbits\\|originui\\|panzoom\\|paperscale\\|patchesm\\|patchm\\|pcolorm\\|plabel\\|plot3m\\|plotm\\|project\\|qrydata\\|qrydemo\\|quiver3m\\|quiverm\\|readFK5\\|rootlayr\\|rotatem\\|scatterm\\|scircleg\\|scirclui\\|seedm\\|setfaces\\|setm\\|shaderel\\|shiftspc\\|shiftwin\\|showaxes\\|showm\\|stem3m\\|surfacem\\|surfdist\\|surflm\\|surflsrm\\|surfm\\|symbolm\\|tagm\\|tbase\\|textm\\|tgrline\\|tigermif\\|tigerp\\|tissot\\|trackg\\|trackui\\|trimdata\\|uimaptbx\\|undoclip\\|undotrim\\|usgsdem\\|usgsdems\\|varpick\\|viewmaps\\|vote92\\|vote96\\|wrlddemo\\|zdatam\\|apianus\\|balthsrt\\|behrmann\\|bonne\\|braun\\|breusing\\|bsam\\|cassini\\|ccylin\\|collig\\|craster\\|eckert1\\|eckert2\\|eckert3\\|eckert4\\|eckert5\\|eckert6\\|eqaazim\\|eqaconic\\|eqacylin\\|eqdazim\\|eqdconic\\|eqdcylin\\|flatplrp\\|flatplrq\\|flatplrs\\|fournier\\|giso\\|globe\\|gnomonic\\|goode\\|gortho\\|gstereo\\|hatano\\|kavrsky5\\|kavrsky6\\|lambcyln\\|lambert\\|loximuth\\|mercator\\|miller\\|modsine\\|mollweid\\|murdoch1\\|murdoch3\\|ortho\\|pcarree\\|polycon\\|putnins5\\|quartic\\|robinson\\|sinusoid\\|stereo\\|trystan\\|vgrint1\\|wagner4\\|werner\\|wetch\\|wiechel\\|winkel\\|abcdchk\\|automesh\\|convhull\\|delaunay\\|dsearch\\|griddata\\|icubic\\|inpolygon\\|interp1\\|interp1q\\|interp2\\|interp3\\|interp4\\|interp5\\|interp6\\|interpft\\|interpn\\|mkpp\\|mpoles\\|poly\\|polyarea\\|polyder\\|polyfit\\|polyval\\|polyvalm\\|ppval\\|rectint\\|resi2\\|residue\\|roots\\|spline\\|splncore\\|ss2tf\\|ss2zp\\|table1\\|table2\\|tf2ss\\|tf2zp\\|tfchk\\|tsearch\\|tzero\\|unmkpp\\|xychk\\|xyzchk\\|xyzvchk\\|zp2ss\\|zp2tf\\|all\\|and\\|any\\|arith\\|bitand\\|bitcmp\\|bitget\\|bitmax\\|bitor\\|bitset\\|bitshift\\|bitxor\\|colon\\|ctranspose\\|eq\\|ge\\|gt\\|horzcat\\|intersect\\|ismember\\|kron\\|ldivide\\|le\\|lt\\|minus\\|mldivide\\|mpower\\|mrdivide\\|mtimes\\|ne\\|not\\|or\\|paren\\|plus\\|power\\|punct\\|rdivide\\|relop\\|setdiff\\|setxor\\|slash\\|subsasgn\\|subsindex\\|subsref\\|times\\|transpose\\|uminus\\|union\\|unique\\|uplus\\|vertcat\\|xor\\|bicg\\|bicgstab\\|cgs\\|cholinc\\|colmmd\\|colperm\\|dmperm\\|eigs\\|etree\\|etreeplot\\|full\\|gmres\\|gplot\\|issparse\\|luinc\\|nnz\\|nonzeros\\|nzmax\\|pcg\\|qmr\\|randperm\\|rjr\\|spalloc\\|sparse\\|sparsfun\\|spaugment\\|spconvert\\|spdiags\\|speye\\|spfun\\|spones\\|spparms\\|sprand\\|sprandn\\|sprandsym\\|sprank\\|spy\\|svds\\|symbfact\\|symmmd\\|symrcm\\|treelayout\\|treeplot\\|unmesh\\|actxcontrol\\|actxserver\\|ddeadv\\|ddeexec\\|ddeinit\\|ddepoke\\|ddereq\\|ddeterm\\|ddeunadv\\|mwsamp\\|sampev\\|
;-----------------------------------------------------------------------------------------------
;;; Abbrev Tableの設定
(defvar matlab-mode-abbrev-table nil
  "Abbrev table in use in matlab-mode buffers.")
(define-abbrev-table 'matlab-mode-abbrev-table ())
;-----------------------------------------------------------------------------------------------
;;; Keymap の設定
(defvar matlab-mode-map () "Keymap used in Matlab mode.")
(if matlab-mode-map     ()
  (setq matlab-mode-map (make-sparse-keymap))
;electric-perl-terminatorはコマンドを打った後に}を打つと自動的にインデントする機能(要らない)
;  (define-key matlab-mode-map "\177" 'delete-backward-char)
;  (define-key matlab-mode-map "\t" 'tab-to-tab-stop)
  )
;-----------------------------------------------------------------------------------------------
;;; Syntax Table の設定
(defvar matlab-mode-syntax-table nil "Syntax table in use in matlab-mode buffers.")
(if matlab-mode-syntax-table ()
  (setq matlab-mode-syntax-table (make-syntax-table (standard-syntax-table)))
  (modify-syntax-entry ?\n ">" matlab-mode-syntax-table)
  (modify-syntax-entry ?# "<" matlab-mode-syntax-table)
  (modify-syntax-entry ?$ "/" matlab-mode-syntax-table)
  (modify-syntax-entry ?% "." matlab-mode-syntax-table)
  (modify-syntax-entry ?& "." matlab-mode-syntax-table)
  (modify-syntax-entry ?\' "\"" matlab-mode-syntax-table)
  (modify-syntax-entry ?* "." matlab-mode-syntax-table)
  (modify-syntax-entry ?  "." matlab-mode-syntax-table)
  (modify-syntax-entry ?- "." matlab-mode-syntax-table)
  (modify-syntax-entry ?/ "." matlab-mode-syntax-table)
  (modify-syntax-entry ?< "." matlab-mode-syntax-table)
  (modify-syntax-entry ?= "." matlab-mode-syntax-table)
  (modify-syntax-entry ?> "." matlab-mode-syntax-table)
  (modify-syntax-entry ?\\ "\\" matlab-mode-syntax-table)
  (modify-syntax-entry ?` "\"" matlab-mode-syntax-table)
  (modify-syntax-entry ?| "." matlab-mode-syntax-table)
  )
;-----------------------------------------------------------------------------------------------
;;; Matlab Mode の定義
;-----------------------------------------------------------------------------------------------
(defun matlab-mode ()
  "Major mode for editing Matlab code.
matlab-modeにすると、matlab-mode-hookが実行されます
特別なコマンド:
\\{matlab-mode-map}
Turning on Matlab mode runs the normal hook `matlab-mode-hook'."
  (interactive)
  (kill-all-local-variables)
  (use-local-map matlab-mode-map)
  (setq major-mode 'matlab-mode)
  (setq mode-name "Matlab")
  (setq local-abbrev-table matlab-mode-abbrev-table)
  (set-syntax-table matlab-mode-syntax-table)

  (make-local-variable 'require-final-newline) ;セーブする時に最終行が改行されているか (9.215)
  (setq require-final-newline 1)               ;t だと自動的に改行してくれる。1 だと聞いてくる
  (make-local-variable 'next-line-add-newlines)
  (setq next-line-add-newlines nil)       ;C-nや↓キーでNew Lineを作れないようにする(q.33)
  (make-local-variable 'tab-width)
  (setq tab-width 3)                      ;タブの文字数の指定(Def. 8文字、q.105)
  (make-local-variable 'indent-tabs-mode)
  (setq indent-tabs-mode t)               ;TabをSpaceで置換させない
  (make-local-variable 'require-final-newline)
  (setq fill-column 93)
; (auto-fill-mode nil)                    ;全角文字は自動的に改行

  (make-local-variable 'comment-start)
  (setq comment-start "% ")
  (make-local-variable 'comment-end)
  (setq comment-end "")
  (make-local-variable 'comment-column)
  (setq comment-column 93)
  (make-local-variable 'comment-start-skip)
; (setq comment-start-skip "\\(^\\|\\s-\\);?#  *")
  (setq comment-start-skip "\\(^\\|\\s-\\);?%  *")
  (run-hooks 'matlab-mode-hook)
  )
;-----------------------------------------------------------------------------------------------