Поиск ранее определенных сообщений в системе Mathematica

Mathematica по умолчанию определяет множество полезных сообщений для оповещения о распространенных ошибках, таких как вызов функций с неверным количеством аргументов или отсутствие файлов. В общем, я предпочитаю использовать существующие, определенные сообщения везде, где это возможно, потому что это упрощает их обработку с помощью таких механизмов, как Check, Quiet и On/Off. Однако все мои попытки определить, какие сообщения определены в данный момент, не увенчались успехом; очевидные подходы, такие как

DownValues[MessageName] 

вообще не работай.

Есть ли трюк, который мне не хватает?

Заранее спасибо.


person Pillsy    schedule 04.11.2009    source источник


Ответы (1)


Это хороший вопрос. В принципе, вы можете отображать любые сообщения, связанные с символом, используя Messages[<symbol>]. Однако, согласно документации, системные сообщения не загружаются до тех пор, пока сообщение не будет фактически использовано. Но $MessageGroups (новое в 7) предоставляет список некоторых доступных сообщений, но не почти всех.

EDIT: После некоторого поиска я нашел файл $InstallationDirectory/SystemFiles/Kernel/TextResources/English/Messages.m, который, по-видимому, содержит все общесистемные сообщения.

person rcollyer    schedule 05.11.2009