Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

When we are in console mode or working with a notebook we can get brief help about a function just by shift-entering

?function

I would like to have a list like the following

{Map, Function, List, Transpose, Outer, Sequence, Apply, Tuples, \
Distribute, Thread, Equal, Fold, Slot, Reverse, Plus, Times, Total, \
MapThread, Inner, ReplaceAll, Rule, Composition, Through, Nest, \
ToExpression, ToString, Row, Part, Range, ComposeList, Compose, \
SlotSequence, Flatten, FoldList, NestList, Hold, Release}

and get a list of strings containing the corresponding help(s).

? cannot be mapped to a list of course so i am trying to find another way.

? works with Wildcards like ?*Plot* so i suppose it accepts some kind of pattern matching.

Any ideas ?

share|improve this question
1  
Information[#] & /@ {Map, Function} isn't quite what you're looking for... –  cormullion Dec 10 '13 at 12:09
    
@cormullion this is nice but firstly Information corresponds to ?? and not ? and secondly (and more important to me) in the notebook I work, I cannot convert the cells to a more usable form so to gather them as a list. I viewed the notebook with a text editor and I find it very difficult efficiently extracting the useful information. –  tchronis Dec 10 '13 at 12:15
2  
strongly related Dynamic usage message –  Kuba Dec 10 '13 at 13:50
add comment

2 Answers 2

up vote 4 down vote accepted

Is this what you are after?

#::usage & /@ {Map, Scan}
{Map[f,expr] or f/@expr applies f to each element on the first level in expr. 
Map[f,expr,levelspec] applies f to parts of expr specified by levelspec.,
Scan[f,expr] evaluates f applied to each element of expr in turn. 
Scan[f,expr,levelspec] applies f to parts of expr specified by levelspec. }
share|improve this answer
    
yes thank you very much! –  tchronis Dec 10 '13 at 13:24
add comment

You can map ?. Just turn off its LongForm form -- like this:

Information[#, LongForm -> False] & /@ {Map, Function}

info.png

Update

The OP has asked why

cl::usage = "blabla"; cl := {1, 2, 3}^2;
Information[#, LongForm -> False]& /@ {cl}

Information::ssym: {1,4,9} is not a symbol or a valid string pattern. >>

produces the error message shown. The message is pretty clear. Information has attribute HoldAll and wants a symbol or a string as its argument. But the message shows cl got evaluated before Information saw it. Here are two ways to avoid this problem.

Information[#, LongForm -> False]& /@ {Unevaluated @ cl};
Information[cl, LongForm -> False]

both of which produce

blabla.png

as does

?cl

which is equivalent to Information[cl, LongForm -> False].

share|improve this answer
    
Well spotted! Not mentioned in "Details and Options", but tucked away in "Options" anyway; it's always worth double-checking... :) –  cormullion Dec 10 '13 at 14:37
    
Thanks @m_goldberg . –  tchronis Jan 6 at 17:12
    
One quick question: When the function is defined with no arguments (like cl::usage="blabla";cl:={1,2,3}^2) then I get an error. Do you know a way to overcome this? –  tchronis Jan 6 at 17:23
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.