How do I redirect "help" output to text file within iterative loop?

Hello,
I would like to execute "help fxn_name{jj}" from with a loop and redirect all output to a text file.
Below is an excerpt of my code. fid_in is a report from depfun() that has a list of "m-files". I want to read each member of the list and execute "help" on that function, then write name and the corresponding "help" info to fid_out.
This sets up depfun properly:
[list,builtins,classes,prob_files,~,eval_strings,called_from] = depfun(fun,'-toponly','-print',ofilename);
I use outputs of depfun to perform the following:
for jj=1:numfiles,
tline=fgetl(fid_in) %processing already done to remove unneeded info.
fxn_name{jj}=tline(lastslash+1:end);
fxn_name_path{jj}=which(fxn_name{jj});
fxn_name_index{jj}=num2str(find(ismember(list,fxn_name_path{jj})));
fprintf(fid_out,'%i',str2num(fxn_name_index{jj}));
fprintf(fid_out,' %s',fxn_name{jj});
str=['help ' fxn_name{jj}];
fprintf(fid_out,'%s',eval(str));
end
MATLAB's "help" command is unique and seems to be the source of my problem.
Suggestions?

 채택된 답변

Walter Roberson
Walter Roberson 2014년 2월 21일

1 개 추천

You should be using evalc() rather than eval()

추가 답변 (1개)

Derek
Derek 2014년 2월 21일
편집: Walter Roberson 2014년 2월 21일
You are correct, but can you tell me why I get <strong> and </strong> inserted?
For example, one line of the text file should read:
function [out, hp]=Mlsm_modulator(bitseq,BAUD,os,BW_par,plt)
but it reads:
function [out, hp]=<strong>Mlsm_modulator</strong>(bitseq,BAUD,os,BW_par,plt)
Notice the insertion of <strong> and </strong>>.
Is this a fluke of evalc() or is this a result of my poor implementation of fprintf formatting?
Derek

댓글 수: 2

"help" is putting the strong in there. You can see it when you use "help" at the command line. evalc() is capturing exactly what help() is writing.
Time to break out the regexprep()
It appears that <strong> is obeyed anywhere in console output. I have not tracked to see what else is obeyed.
Now it makes sense. Thank you Walter.

댓글을 달려면 로그인하십시오.

카테고리

제품

태그

질문:

2014년 2월 21일

댓글:

2014년 2월 22일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by