% .. % то расширяются, то нет...

Обсуждение программ nnCron и nnCron LITE

% .. % то расширяются, то нет...

Postby ANR Daemon » Sat, 21 Dec 2013, 20:03

Code: Select all
#( CLASSIC-TASK-#-HK_SaveWindow
AsLoggedUser
WatchHotKey: "$S"
0 VALUE HK_hWnd
Action:
  GetForegroundWindow TO HK_hWnd
  S" HK_SaveWindow: hWnd saved as %HK_hWnd%" CRON-LOG
  S" Saved as %HK_hWnd%" 1 TimeMsgBox
  TMSG: "Saved as %HK_hWnd%" 1
)#


В лог пишется HWND.
На экран выводится в первом случае "Saved as %HK_hWnd%", во втором то же, что выводится в лог.
Почему так?
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59


Re: % .. % то расширяются, то нет...

Postby ANR Daemon » Sat, 21 Dec 2013, 22:58

Я читал именно эту статью. Поэтому и спрашиваю.
Внимательнее прочтите мой вопрос, пожалуйста.
Я даже привёл точный код для воспроизведения проблемы.
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59

Re: % .. % то расширяются, то нет...

Postby VoidVolker » Sat, 21 Dec 2013, 23:10

Там же русским языком написано: Обратите внимание, что при использовании %...% внутри постфиксной строки вам придется самостоятельно "разворачивать" содержимое %...% с помощью слова EVAL-SUBST.
Т.е. слово:
Code: Select all
S" текст"

Возвращает просто строку без всяких эскейп-последовательностей и вычисления подстрок.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: % .. % то расширяются, то нет...

Postby ANR Daemon » Sat, 21 Dec 2013, 23:36

Тогда почему
S" ..." CRON-LOG
разворачивает строку?......................
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59

Re: % .. % то расширяются, то нет...

Postby VoidVolker » Sun, 22 Dec 2013, 10:25

Code: Select all
SEE CRON-LOG

4D8498 E80C9FFEFF       CALL    4C23A9  ( EVAL-SUBST )
4D849D E8B9FDFFFF       CALL    4D825B  ( Log2StdOut )
4D84A2 E8EE9DFDFF       CALL    4B2295  ( @ )
4D84A7 83C504           ADD     EBP , # 4
4D84AA 837DFC00         CMP     FC [EBP] , # 0
4D84AE 0F8432000000     JE      4D84E6  ( CRON-LOG+4E  )
4D84B4 E8E7B4FFFF       CALL    4D39A0  ( SAVE-HOLD )
4D84B9 E841A9FEFF       CALL    4C2DFF  ( CRONLOG-TIME-FORMAT )
4D84BE E88C9FFDFF       CALL    4B244F  ( COUNT )
4D84C3 E8E19EFEFF       CALL    4C23A9  ( EVAL-SUBST )
4D84C8 E8C3D5FDFF       CALL    4B5A90  ( TYPE )
4D84CD E8B9D8FDFF       CALL    4B5D8B  ( SPACE )
4D84D2 E85B9BFDFF       CALL    4B2032  ( 2DUP )
4D84D7 E8B4D5FDFF       CALL    4B5A90  ( TYPE )
4D84DC E87ED5FDFF       CALL    4B5A5F  ( CR )
4D84E1 E804B5FFFF       CALL    4D39EA  ( REST-HOLD )
4D84E6 E864A9FEFF       CALL    4C2E4F  ( cron.log )
4D84EB E82FFEFFFF       CALL    4D831F  ( log-name-convert )
4D84F0 E8AAB7FFFF       CALL    4D3C9F  ( LOG )

EVAL-SUBST заметно?
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: % .. % то расширяются, то нет...

Postby ANR Daemon » Sun, 22 Dec 2013, 16:44

Заметно.
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59

Re: % .. % то расширяются, то нет...

Postby VoidVolker » Sun, 22 Dec 2013, 18:23

Ну и отлично ^-^
Кстати, есть плагины, значительно расширяющие возможности работы со строками. Раз и два.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: % .. % то расширяются, то нет...

Postby ANR Daemon » Mon, 23 Dec 2013, 15:22

Позвольте ещё слегка несвязанный вопрос.
Как получить строку даты в формате YYYY-MM-DD ?
пробовал
CUR-TIME DATE>YMD
но как-то без особого успеха.
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59

Re: % .. % то расширяются, то нет...

Postby VoidVolker » Mon, 23 Dec 2013, 16:14

Время и дата - понятия несколько разные.
http://www.nncron.ru/forums/viewtopic.php?p=22019#p22019
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: % .. % то расширяются, то нет...

Postby ANR Daemon » Mon, 23 Dec 2013, 18:10

Возможно, там было CUR-DATE
У меня нет сейчас кода перед глазами.
Вообще, какой результат ожидается после выполнения
CUR-DATE DATE>YMD
?
И как вывести строку из стека на экран в консоли? Я запарился читать документацию по Форту, простейших вещей найти невозможно.
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59

Re: % .. % то расширяются, то нет...

Postby VoidVolker » Mon, 23 Dec 2013, 19:55

Code: Select all
CUR-DATE DATE>YMD . . .

Точка выводит число со стека. TYPE - строку. DUMP - строку в бинарном виде. Рекомендую плагин extwords.spf - там автоматически подключается в вектор OK вывод содержимого стека.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: % .. % то расширяются, то нет...

Postby ANR Daemon » Mon, 23 Dec 2013, 20:07

Забавно, видя в имени коменды YMD, я ожидал таки YMD, а не DMY...
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59

Re: % .. % то расширяются, то нет...

Postby VoidVolker » Mon, 23 Dec 2013, 21:06

Все там правильно, именно YMD:
DATE>YMD ( date -- Y M D )
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: % .. % то расширяются, то нет...

Postby ANR Daemon » Mon, 23 Dec 2013, 21:10

Да, да... На стек кладётся именно в этом порядке... И толку от этого порядка? Достаётся то в обратном порядке. И получается D M Y.
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59

Next

Return to nnCron forum (Russian)

Who is online

Users browsing this forum: Bing [Bot], Exabot [Bot] and 3 guests