From: Leo A. <dn...@gm...> - 2010-03-09 17:22:35
|
Eric, good catch on comint-prompt-read-only! It was indeed non-nil (thanks to some code in EmacsWiki related to ESS). That took care of the tab problem (and also fixed a problem when interacting with R buffers through ESS). However, my errors still don't turn into links -- even running with emacs -q -- and the behavior where the last actual hyperlink (e.g. from running help) is assumed to be the last error (when doing M-g n) still persists. Any ideas?. --Leo On Tue, Mar 9, 2010 at 11:01 AM, Eric Ludlam <Eri...@ma...> wrote: > Do you perhaps have the variable `comint-prompt-read-only' set to some non-nil value? > > Older Emacs versions used to have this be non-nil, but I was pretty sure I had fixed matlab.el for this, but things may have regressed while I was using newer versions of Emacs. > > If this is not the case, you can try starting Emacs with "-q", to not load your init file, and then hand-load in matlab.el, and try your test case. If that works, then there is some configuration issue in your .emacs file. > > Eric > > -----Original Message----- > From: leo...@gm... [mailto:leo...@gm...] On Behalf Of Leo Alekseyev > Sent: Monday, March 08, 2010 7:17 PM > To: Eric Ludlam > Cc: mat...@li... > Subject: Re: [Matlab-emacs-discuss] Debugging, tab completion in matlab-shell? > > Eric, > Thanks for your response. > > Regarding matlab-shell-collect-command-output -- it prints the > following to the messages buffer: save-excursion: Text is read-only. > So it looks like for some reason it fails to delete the output and > bails. > > I have no idea what's going on with errors not being converted to > links -- but perhaps something similar is preventing the code from > modifying the buffer?.. > > But the matlab shell buffer itself is not read-only (buffer-read-only > is nil; using (barf-if-buffer-read-only) has no effect...) > > Any ideas on what might be happening? > > --Leo > > On Mon, Mar 8, 2010 at 8:43 AM, Eric Ludlam <Eri...@ma...> wrote: >> Hi, >> >> I gave this a quick run and found that it was working as I expected still, and I have the CVS version of matlab.el, with no pending changes. >> >> When "tab" is pressed, it should split the window, and display the completions in a separate buffer, independent of the matlab-shell buffer. It will also do the completion if there is only one option. The misc text you quoted below is what matlab-shell does under-the-covers to get the completion list. >> >> It works internally by flipping into a "capture some text" mode, then back out again when the capture is done, or when another prompt ">>" is shown again. K prompts "K>>" and student prompts "EDU>>" should also work. >> >> It will also key off of carriage returns, and a few other things to try and distinguish between text to be captured, text to turn into links, and regular text. >> >> I'll take a guess that some bit of text has put it into a bad state. Here are some possibilities: >> >> If you have some non-standard prompt, see line 4392 where comint-prompt-regexp is set. There are a few other hard-coded prompts around too. >> >> If the error text is somehow "new", or contains bad text, look at matlab-shell-render-errors-as-anchor, or matlab-shell-render-html-as-anchor, and the regular expressions that go into those. >> >> Lastly, there is matlab-shell-collect-command-output, which captures output, which sends a command, then spins waiting for a prompt to come up. This is exiting early w/ your tab completion. Perhaps there is an issue with carriage returns? >> >> Good Luck >> Eric >> >> -----Original Message----- >> From: Leo Alekseyev [mailto:dn...@gm...] >> Sent: Friday, March 05, 2010 11:22 PM >> To: mat...@li... >> Subject: [Matlab-emacs-discuss] Debugging, tab completion in matlab-shell? >> >> Hi all, >> I recently started using matlab-emacs (with matlab-shell) on a more >> regular basis, and I am reasonably happy with the workflow -- but I am >> also seeing some anomalies, in particular with debugging and >> tab-completion. >> >> First, if I encounter an error during execution, the offending file >> name does not turn into a link (like it does using Matlab GUI), which >> I believe should also be happening here. This also appears to break >> the "go to last error" functionality: if there are links anywhere else >> in the command window (e.g. as a result of "help" command) the "go to >> last error" will follow the link e.g. to the documentation page, >> ignoring the error. (If there aren't links, then it will jump to the >> error line in the offending file, but if I've run "help" on any >> command, the go-to-last-error is now broken for this session). I >> would really appreciate pointers on how I might troubleshoot this -- >> the behavior is clearly broken. >> >> Second (minor) issue is that tab completion (e.g. typing test<tab>) >> dumps the following to the buffer: >>>> matlabMCRprocess = com.mathworks.jmi.MatlabMCR >> matlabMCRprocess = >> com.mathworks.jmi.MatlabMCR@7deb41d6 >> >> matlabMCRprocess.mtFindAllTabCompletions('test'), clear('matlabMCRprocess'); >> ans = >> java.lang.String[]: >> 'test' >> 'test_step_by_step' >> 'test_trainlm_gradient' >> 'testm' >> 'testobjectiveinfo' >> 'testscript >> >> It this the intended behavior?.. Would it be possible to just display >> stuff after java.lang.String[]?.. >> >> Relevant versions: GNU Emacs 23.1.50.1 (x86_64-pc-linux-gnu), Matlab >> 7.8.0.347 (R2009a) 64-bit (glnxa64), latest version of matlab-emacs >> from CVS. >> I'd appreciate any pointers regarding the above! >> Thanks, >> --Leo >> >> ------------------------------------------------------------------------------ >> Download Intel® Parallel Studio Eval >> Try the new software tools for yourself. Speed compiling, find bugs >> proactively, and fine-tune applications for parallel performance. >> See why Intel Parallel Studio got high marks during beta. >> http://p.sf.net/sfu/intel-sw-dev >> _______________________________________________ >> Matlab-emacs-discuss mailing list >> Mat...@li... >> https://lists.sourceforge.net/lists/listinfo/matlab-emacs-discuss >> > |