※ 이 문서는 뭐 그냥 하면 되지. ()에서 인쇄하였으며,
저작권은 해당 블로그 운영자에게 있습니다.

Scite에서 User CallTips 목록 만들기

/Autoit/SciTE :: 2009. 1. 3. 13:07

Scite에서 User CallTips 목록 만들기

일단, User CallTip에 관한 설명은 SciTE4AutoIT3 속 유틸리티를 참고해주세요.

이번 글은 이 기능에 사용할 목록을 만드는 함수입니다.

원래 전에 사용하던 게 있었는데, FileReadLine과 FileWrite 함수를 이용해서 한 줄씩 읽고 비교해서 쓰는 거라서 시간이 오래 걸려서요.

이번에 시간을 줄이려고 다시 만들었습니다.

소스 제일 위쪽의 $Directory 부분만 본인에 맞게 수정해서 사용하고, SciTE를 재실행하면 User CallTip를 사용할 수 있습니다.

목록이 제대로 추가되었는지 확인하려면, 도구 - User CallTip Entry를 선택하면 됩니다.

#include <File.au3>
 
$sDirectory = @ProgramFilesDir & "\AutoIt3\Include\Download"
$aAu3 = _FileListToArray($sDirectory, '*.au3', 1)
If @error = 1 Then
    MsgBox(0, "", "No Files\Folders Found.")
    Exit
EndIf
 
Global $sDescription = '', $sList = '', $sFuncList = ''
 
If IsArray($aAu3) Then
    For $i = 1 To $aAu3[0]
        $sList &= @CRLF & '#; -- ' & $aAu3[$i] & ' --' & @CRLF
        $aArray = StringSplit(FileRead($sDirectory & '\' & $aAu3[$i], FileGetSize($sDirectory & '\' & $aAu3[$i])), @LF)
        For $x = 1 To UBound($aArray) - 1
            If StringInStr(StringLeft($aArray[$x], 20), 'Description') Then _
                    $sDescription = StringStripWS(StringTrimLeft($aArray[$x], StringInStr($aArray[$x], ':')), 7)
            If StringLeft($aArray[$x], 5) = "Func " Then
                If StringInStr($aArray[$x], ')') = 0 Then
                    $a = 1
                    While 1
                        $aArray[$x] &= $aArray[$x + $a]
                        If StringInStr($aArray[$x], ')') Then
                            $aArray[$x] = StringRegExpReplace($aArray[$x], "\s?_\s?(\n|\r)", "")
                            ExitLoop
                        Else
                        EndIf
                        $a += 1
                    WEnd
                Else
                EndIf
                $sFunc = StringStripWS(StringTrimLeft($aArray[$x], 5), 7)
                $sList &= $sFunc & ' ' & $sDescription & ' (required: #include <' & $aAu3[$i] & '>).' & @CRLF
                $sDescription = ''
            EndIf
        Next
    Next
 
    $tmpUserCalltip = FileOpen(RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt", "InstallDir") & "\SciTE\api\au3.user.calltips.api", 2)
    FileWrite($tmpUserCalltip, $sList)
    FileClose($tmpUserCalltip)
Else
EndIf
 
Exit
관련글

[Autoit] - SciTe4AutoIt3 속 유틸리티2 - User Calltip Entries
SciTE4AutoIt3 도움말 우리말 번역본 - SciTE4AutoIt3 User CallTips
[Autoit] - 일반 사용자 정의 함수(User UDFs) 구문강조하기

블로그의 글과 그림, 첨부파일의 복제, 재배포를 금지합니다. =>  자세히 보기
티스토리 초대장 필요하신 분은 댓글남겨주세요.
give start - 굿네이버스 - 사랑의 열매 - 아름다운재단 - 어린이재단 - 유니세프
굿네이버스 배너
사랑의 열매 배너
아름다운 재단 배너 어린이 재단 배너 유니세프 한국위원회 - 배너