직접 써본적은 없지만, Mac에는 find 기능이 대단하다고 합니다. 거기다가 프로그램/문서 이름 집어넣으면 실시간 검색으로 아래 결과가 나오죠.
구글데스크탑에도 그런 기능이 있습니다. 종종 쓰고 있습니다만, 아직 손에 익숙하질 않네요.
mIRC에서 이런 비슷한 기능을 구현할 수 있을 법도 해서 한번 만들어봤습니다. 속도 때문에 Recent에서만 검색해 실행하지만, 익숙해지면 유용할 듯 하네요.
;mIRC Script
;call from recent documents ver 0.1
;최근문서에서 불러다가 실행하기 ver 0.1
;By Ra!
;----------------------------------
alias -l cr.echo {
echo -a $chr(91) $+ Cr $+ $chr(93) $1-
}
alias -l cr.fn {
return $remove($nopath($1-),.lnk)
}
alias cr.help {
cr.echo -------------------------------------
cr.echo 최근문서에서 불러다가 실행하기 도움말
cr.echo -------------------------------------
cr.echo 사용방법
cr.echo /cr [검색어]
cr.echo 검색 결과가 2개 이상이라면,
cr.echo 검색 결과물 목록이 번호로 표시됨.
cr.echo /cr [검색 결과에 해당하는 숫자]
cr.echo 의 입력으로 결과 중 한개를 선택
cr.echo -------------------------------------
cr.echo 사용 예
cr.echo /cr hlp
cr.echo /cr 1
cr.echo -------------------------------------
}
alias cr.setdir {
cr.echo -----------------------------------
cr.echo 최근문서에서 불러다가 실행하기 설정
cr.echo -----------------------------------
cr.echo 사용할 경로를 선택하세요.
var %cr.dir = $sdir(C:\)
cr.echo 새로 사용될 경로는,
cr.echo %cr.dir 로 설정되었습니다.
set %cr.directory %cr.dir
}
alias cr {
if (%cr.directory != $null) {
if ($1 == $null) {
cr.echo -----------------------------------
cr.echo 최근문서에서 불러다가 실행하기 오류
cr.echo -----------------------------------
cr.echo 사용 방법에 문제가 있습니다.
cr.help
}
else {
if ($timer(cr).type == online) {
if ($1 isnum ) {
cr.return $1
}
else {
cr.search $1-
}
}
else {
cr.search $1-
}
}
}
else {
cr.echo -----------------------------------
cr.echo 최근문서에서 불러다가 실행하기 오류
cr.echo -----------------------------------
cr.echo 지정된 경로가 없습니다.
cr.echo 경로 지정을 재설정합니다.
cr.setdir
cr.echo -----------------------------------
cr.echo 설정되었으니, 다시 실행해주세요.
cr.echo -----------------------------------
}
}
alias cr.return {
var %cr.file = [ %cr.result [ $+ [ $1 ] ] ]
cr.run %cr.file
}
alias cr.search {
var %cr.match = $chr(42) $+ $1- $+ $chr(42)
var %cr.count = $findfile(%cr.directory,%cr.match,0,1)
if (%cr.count == 0) {
cr.echo 검색 결과가 없습니다.
}
else {
if (%cr.count > 1) {
cr.echo 검색 결과 $+ %cr.count $+ 개
cr.echo ----------------------------
if (%cr.count > 9) {
cr.echo 검색 결과가 너무 많습니다. 상위 9개만 출력합니다.
var %cr.count = 9
}
var %i = 1
while (%i <= %cr.count) {
set [ %cr.result $+ [ %i ] ] $findfile(%cr.directory,%cr.match,%i,1,cr.echo %i : $cr.fn($1-))
inc %i
}
cr.echo ----------------------------
.timercr 1 10 cr.timecancle
}
else {
cr.run $findfile(%cr.directory,%cr.match,1,1)
}
}
}
alias cr.run {
cr.echo [실행] $cr.fn($1-)
run $1-
.timercr off
unset %cr.result*
}
alias cr.timecancle {
cr.echo 시간이 초과되어 검색 결과를 무시합니다.
unset %cr.result*
}
ON *:LOAD:{
cr.echo -------------------------------------
cr.echo 최근문서에서 불러다가 실행하기 설치
cr.help
if (%cr.directory == $null) {
cr.echo 처음 사용하실 때는 recent의 위치를 설정해야합니다.
if ($os isin 9598NTME) {
var %cr.dir = C:\Windows\Recent\
cr.echo Windows $os 이므로, 경로는 자동으로
}
else {
var %cr.dir = C:\Documnets and Settings\ $+ $input(사용자 로그온 이름 입력,eo) $+ \Recent\
cr.echo Windows $os 이므로, 경로는
}
cr.echo %cr.dir 로 설정되었습니다.
}
set %cr.directory %cr.dir
}
입력 방법은 콘솔형입니다. 위 그림은 doc라는 파일명(혹은 확장자)으로 검색한 결과입니다(/cr doc). 8개가 보이네요. 이 결과 중 세번째 것을 실행하려면 /cr 3 이라고 입력하면 실행됩니다. 이때, 10초가 지나면 실행되지 않고 다시 검색을 시작하게 됩니다.