AppleScript: по ошибке (попробуйте) номер строки
Можно ли получить номер строки, где script вышла ошибка?
Пример:
try
set a to "abc" + "123"
on error line number num
display dialog "Error on line number " & num
end try
Ответы
Ответ 1
Я не думаю, что так выглядят заявления вроде
try
set a to "abc" + "123"
on error errMsg
display dialog "ERROR: " & errMsg
end try
но вы можете посмотреть script отладчик, который покажет вам, в какой строке произошла ваша ошибка на
другой альтернативой является получение textmate, который идет за 52 $, когда он вызывает ошибки, дает вам номер строки и также полезен для написания кода во многих языки
Ответ 2
Satimage Улыбка очень помогает, когда дело доходит до отладки applescript.
И это бесплатно.
Плюс это французский (хе-хе).
Определенно отличный инструмент!
Ответ 3
Фактически синтаксис on error включает также номер ошибки (но не номер строки):
try
set a to "abc" + "123"
on error errorMessage number errorNumber
log ("errorMessage: " & errorMessage & ", errorNumber: " & errorNumber)
end try
Вы можете использовать семафоры, чтобы отметить ваш прогресс:
try
... your code here ...
set lineNumber to "17"
... more code here
set lineNumber to "18"
... more code here
on error errorMessage number errorNumber
log ("(line #" & lineNumber & ") errorMessage: " & errorMessage & ", errorNumber: " & errorNumber)
end try
И я рекомендую 2-й mcgrailm для Script Отладчик!
Ответ 4
Поздно к участнику здесь, но в отношении Script Debugger, вот, возможно, полезный ответ от Марка Алдритта:
Да, включите Break On Exceptions. Это приводит к тому, что отладчик прерывается в точке, где генерируется исключение. Отладчик также отображает состояние всей известной переменной в момент генерирования исключения. Затем вы можете войти в блок "on error".
Приветствия
-Марк
В 2013-01-24, в 8:43, Дэн написал:
Когда Script выдает ошибку в блоке Try, есть ли разумный способ отображения строки, где произошла ошибка?