JSL 스크립트의 경로 이름을 반환하는 명령을 원합니다. 예를 들어 "/Users/John_Doe/Documents/JMP/JMP Scripts/myscript.jsl" 스크립트를 실행하고 스크립트 내부에 다음과 같은 명령을 포함하고 싶습니다.
thispath = Get Current Script Path(); <BR />Show(thispath);<BR />
그리고 다음을 반환하고 싶습니다. "/Users/John_Doe/Documents/JMP/JMP Scripts/myscript.jsl"
요청 이유:
많은 스크립트가 "Include"를 사용하여 호출하는 "common functions.jsl" 스크립트가 있습니다. 여기에는 내가 작성하는 각각의 새 스크립트에 복사하고 싶지 않은 자주 사용되는 많은 사용자 기능이 포함되어 있습니다. 또한 "common functions.jsl"과 함께 내 스크립트를 내 그룹의 다른 사람들과 공유하는 것을 좋아합니다. 내 그룹 구성원이 common functions.jsl을 호출하는 JSL과 관련된 동일한 위치(예: 동일한 폴더 또는 상위 폴더)에 배치하도록 요구할 수 있지만 전체 경로 이름을 제어할 수는 없습니다. 호출 스크립트의 경로 이름이 있으면 이를 사용하여 "common function.jsl"이 어디에 있는지 쉽게 파악할 수 있습니다(예: "/Users/John_Doe/Documents/JMP/JMP Scripts/common function.jsl").
Get Default Directory()를 사용할 수 없습니다. 이 명령은 파일 열기 대화 상자를 사용하여 연 가장 최근 파일의 경로만 반환한다는 것을 알았습니다. 이것은 사용자가 스크립트를 열고 즉시 실행하는 경우에 작동합니다. 문제는 사용자가 "myscript.jsl"을 연 후 다른 스크립트를 연 다음 "myscript.jsl"을 실행하려고 하는 경우입니다. 이 경우 Get Default Directory()는 "myscript.jsl"이 아닌 다른 스크립트의 경로를 반환합니다. 또한 Get Default Directory()는 최근 파일 목록에서 스크립트를 열면 업데이트되지 않습니다.
어떤 제안이 있습니까, 아니면 아직 존재하지 않는 것입니까? 당신의 도움을 주셔서 감사합니다.
이 기능을 원합니다. 이것으로 어떤 일이 있었습니까?
나는 붙어있다 :
curdir = Substr(Get Default Directory(), 2, 999);
Convert File Path( "", windows )|| (current window() << get window title) ||".jsl"