파일 핸들러 사용법 http://nscc4.tistory.com/4


핸들러는 기본적으로 2개의 파일로 구성됩니다.


위의 그림처럼 Main.psc 파일과 FileHandler.psl 두개의 파일이 존재합니다.
자세한 관리에 대해서는 아래에서 다루도록 하겠습니다.


1. cc4 설치 폴더->Handler->FileHandler.psl을 열어서 아래 빨간 부분을 추가해줍니다.



2. 추가해주고 나면 아래처럼 핸들러 항목에 추가됩니다.



3. 이제 cc4 설치 폴더->Handler->Main.psc 파일을 열어 코드를 넣어주시면 됩니다.

http://nscc4.tistory.com/59 (  를 일괄적으로 넣어 줄 수 있는 매크로를 한번 핸들러에 넣어 봤습니다.)





Posted by 투명인간취급
,

핸들러 기능 참고 http://nscc4.tistory.com/4, http://nscc4.tistory.com/50



1. 핸들러에 저장시 <br>태그 넣기와 2. Sync 태그를 대문자로 바꾸기는 기능을 매크로에서 써보겠습니다.


매크로에서 사용가능한 명령어 http://nscc4.tistory.com/19





1. 저장시 <br> 넣기 매크로로 쓰기

http://nscc4.tistory.com/50 이 코드에서 var부터 복사해서 매크로에 넣어 쓰시면 됩니다.


var
  ClearTagFlag: Boolean;
  CommentTagFlag: Boolean; //주석 태그 체크
  StartTagFlag: Boolean;
  LoopVar: Integer;//줄번호
  CurrentLine: WideString; //현재 줄
  NextLine: WideString; //다음 줄

  AddBRCount: Integer; //<br> 추가 개수
begin

  ClearTagFlag := False;
  StartTagFlag := False;
  For LoopVar := 0 To CC_CURRENTLINECOUNT-2 Do
  Begin

     CurrentLine := TrimW(CC_GETLINETEXT(LoopVar));
     NextLine := TrimW(CC_GETLINETEXT(LoopVar+1));
// 싱크 중간 긴 주석문에 <br> 안 들어가게 하는 체크문
     If (CommentTagFlag) and (Pos('-->', CurrentLine) > 0) or (CommentTagFlag) and (Pos('-->', NextLine) > 0) Then CommentTagFlag := False;

     If CC_ISSYNCLINE(LoopVar) Then
     Begin
        If Not StartTagFlag Then StartTagFlag := True;
        Continue;
     End;
    
     If Not StartTagFlag Then Continue;

     If CC_ISSYNCLINE(LoopVar+1) Then
        Continue;

// 대사, &nbsp; 아래 줄에 공백일 때 <br> 안 들어가게 하는 if문
     If (CurrentLine = '') or (CurrentLine = '&nbsp;') or (NextLine = '') or (NextLine = '&nbsp;') Then
     Begin
        ClearTagFlag := True;
        Continue;
     End;

// 싱크 중간 긴 주석문에 <br> 안 들어가게 하는 체크문
     If (Pos('<!--', CurrentLine) > 0) or (Pos('<!--', NextLine) > 0) Then CommentTagFlag := True;
     If (CommentTagFlag) and (Pos('-->', CurrentLine) > 0) or (CommentTagFlag) and (Pos('-->', NextLine) > 0) Then CommentTagFlag := False;

     If (Pos('-->', CurrentLine) > 0) and (Pos('-->', CurrentLine) > Length(CurrentLine)-3) or (Pos('-->', NextLine) > 0) and (Pos('-->', NextLine) > Length(NextLine)-3) Then Continue;
     If (CurrentLine <> '') or (CurrentLine <> '&nbsp;') or (NextLine <> '') or (NextLine <> '&nbsp;') Then ClearTagFlag := False;

     If ClearTagFlag or CommentTagFlag Then Continue;

     If (Pos('</BODY', UpperCase(CurrentLine)) <> 0) or (Pos('</BODY', UpperCase(NextLine)) <> 0) Then Break;

     If UpperCase( Copy(CurrentLine, Length(CurrentLine)-3, 4) ) <> '<BR>' Then
     Begin
        CC_MODIFYLINE(LoopVar, CurrentLine+'<BR>');
        AddBRCount := AddBRCount + 1;
     End;

  End;

//핸들러로 <br> 추가 개수가 1개 이상이면 메시지박스 출력,
//<br> 1개라도 추가한 게 없으면 메세지박스 안 뜨게 했습니다.
if AddBRCount > 0 then ShowMessage('총 '+IntToStr(AddBRCount) + ' 개의 <BR> 태그가 추가되었습니다.');

end; 


2. Sync태그 대문자로 바꾸기 매크로로 쓰기

http://nscc4.tistory.com/50 이 코드에서 이 코드에서 var부터 복사해서 매크로에 넣어 쓰시면 됩니다.


var
  LoopVar: Integer;
  CurrentLine: WideString;   
begin
  For LoopVar := 0 To CC_CURRENTLINECOUNT-1 Do
  Begin
     CurrentLine := TrimW(CC_GETLINETEXT(LoopVar));

     If Pos('<SYNC', UpperCase(CurrentLine)) > 0 Then
     Begin       
        CurrentLine := CC_STRINGREPLACE(CurrentLine, '<SYNC', '<SYNC');
        CC_MODIFYLINE(LoopVar, CurrentLine);
     End;
  End;
end;


Posted by 투명인간취급
,

관리자입니다. ^_^

이번에도 저번과 유사하게 현재 위치에서 한글자를 지우고 싶으신 것이 맞나요?
보통 이런 기능이 필요한 경우가 거의 없기 때문에 요번엔 조금 복잡해 보이실 수도 있을것 같은데요
일단 매크로는 아래와 같습니다. 기본 매크로 자체는 간단한 편이지요


Delete(CCP_CURRENTLINE, CCP_CARETX, 1);
CCP_CARETX := CCP_CARETX - 1;


첫번째 줄에서 커서의 위치에 있는 1개의 문자를 지운뒤
두번째 줄에서 커서를 앞으로 한줄 당기는 기능을 수행하는 것이 기본 동작입니다.

이 매크로의 경우 실제 백스페이스와 약간 차이가 있는데,

커서가 제일 앞에 있을 경우 아무런 작동을 하지 않는다는 점입니다.

때문에 그 기능까지 필요로 한다면 경우에 따라서 현재의 줄과 바로 위의 줄을 합쳐주는 기능을 넣어야겠지요.
제법 복잡해지지만 전체 매크로가 아래와 같습니다.


if (CCP_CARETX <= 0) Then
Begin
If (CCP_CARETY <= 0) Then Exit;
CCP_CARETY := CCP_CARETY - 1;
CCP_CARETX := Length(CCP_CURRENTLINE);
CCP_CURRENTLINE := CCP_CURRENTLINE + CC_GETLINETEXT(CCP_CARETY+1);
CC_DELETELINE(CCP_CARETY+1)
End
Else
Begin
Delete(CCP_CURRENTLINE, CCP_CARETX, 1);
CCP_CARETX := CCP_CARETX - 1;
End;


조건문이 쓰이게 되는데요,

커서의 위치가 제일 앞일때에는 (CCP_CARETX <= 0) 아래에서 설명할 별도의 다른 동작을 수행하는 것입니다.

먼저 줄이 제일 처음 줄이면 아무것도 하지 않습니다. 매크로를 EXIT 하는거죠
If (CCP_CARETY <= 0) Then Exit;

다음으로 Y 좌표인 줄을 한줄 위로 이동한 다음에
CCP_CARETY := CCP_CARETY - 1;

커서의 위치를 줄의 가장 끝으로 이동합니다.
CCP_CARETX := Length(CCP_CURRENTLINE);

다음으로 해당 줄에 아랫줄의 내용을 끌어다가 붙입니다.
CCP_CURRENTLINE := CCP_CURRENTLINE + CC_GETLINETEXT(CCP_CARETY+1);

아래줄의 내용은 현재줄에 추가되었으므로 중복되는 아랫줄을 지웁니다.
CC_DELETELINE(CCP_CARETY+1)

설명은 달았지만 제법 어려우실지도 모르겠습니다 ^_^;;
추가적으로 문의사항이 있으시면 얼마든지 문의해주시면 답해드리도록 하겠습니다.

그럼 멋진 매크로 만드세요~

Posted by 투명인간취급
,

패치 방법 :  cc4설치 폴더->Functions->Colorpickup.cs2 파일을 교체 해주시면 됩니다.


ColorPickup.cs2


색상 뽑기 기능 개선판 입니다 ^_^;; 다음버전에서 적용하겠지만 필요하신분들은 사용하시기 바랍니다.

 

기능개선이라지만 다른건 없고;; ESC 키로 종료가 가능하고 메뉴상에 안내가 추가되었습니다.

Posted by 투명인간취급
,


WebRun.cfs


 맞춤법 검사

 Speller.cs2


다음으로 단축키를 이용해서 사이트에 접속할 방법은 사용자 정의 명령으로 만드는 방법만이 존재합니다
첨부된 cfs 파일을 CC4를 설치시에 함께 제공되는

사용자 정의 명령 생성기(cc4설치폴더->functions -> CFSWizard.exe)로 열어 주시면 다음과 같이 되어 있답니다.


ScriptName=인터넷 실행

unit InternetRun;

function ShellExecute(hWnd: integer; Operation, FileName,
  Parameters, Directory: PChar; ShowCmd: Integer): integer;
  external 'shell32.dll' name 'ShellExecuteA';                              
  
procedure Main;
begin
  ShellExecute(0, 'open', 'iexplore.exe', 'http://stylens.com', ' ', 1);
end;

end.


한눈에 들어오시지요? ^^;
http://stylens.com 부분을 원하시는 주소로 바꾸시면 됩니다.

바꾸신 뒤에 빌드 -> CS2 파일 생성을 해주시면
webrun.cs2 파일이 생성되며 이 파일을 functions 폴더 안에 넣어주시면 기능이 추가됩니다.





2015/04/16 맞춤법 검사 사이트 이동 파일 업로드


cc4설치폴더->functions 폴더 안에 [Speller.cs2] 파일 넣으시면 됩니다.



Posted by 투명인간취급
,

sup 내장자막이 있으면 그냥 팟플레이어로 보시면 됩니다.


팟플 다운로드

http://web-tv.kakao.com/guide/potplayer


근데 꼭 kmp로 보시려는 분은 아래 이미지 설명을 참고해주세요.


1. 네이버 자료실등에서 통합코덱을 설치합니다.

뭐, lav필터나, ffdshow subtitles 필터를 따로 깔아도 되지만...

귀찮기 때문에... 전 K-Lite Code(Full 이나 Mega 추천) 이라는 통합코덱을 깔았습니다.


K-Lite Codec Pack 다운로드
http://codecguide.com/download_kl.htm

k-Lite 코덱 설치 중 주의 사항 아래 툴바 설치 항목이 나올 때
No thanks. I don't want to install these free offers. 선택해야 지저분한 툴바 설치를 피할 수 있습니다.





kmp 전체 환경 초기화 후 설정법을 작성했습니다.

kmp 전체 환경 초기화 후 설정해주세요.

2. kmp에서 F2키 누르고 아래 빨간 표시를 참고해서 맞춰주세요.




3. 필터 우선순위 변경으로 가서->등록된 필터 추가 클릭-> ffdshow subtitles filter 선택해서 추가 강제 사용 체크

lav splitter 도 선택 추가해서 강제 사용 체크

빨간 표시를 참고해서 맞춰주세요.




4. 여기까지 설정하셨다면 [닫기(C)] 하고 kmp를 한번 종료했다 다시 시작해주세요. 그럼 아래처럼 나옵니다.



 


5. 대신 위에처럼 필터 설정하고 나면 다중자막이나 다중음성선택을 기존 kmp 메뉴에서 바꿀 수는 없고...







6. 재생 정보/필터 설정에서 lav splitter 항목에서 골라 주셔야 합니다.




Posted by 투명인간취급
,

싱크를 아래처럼 찍었다고 했을 때

--------------------------------------------------------------------

<BODY>


<SYNC Start=200><P Class=KRCC>
12345
<SYNC Start=300><P Class=KRCC>&nbsp;
<SYNC Start=400><P Class=KRCC>&nbsp;
<SYNC Start=450><P Class=KRCC>&nbsp;

<SYNC Start=500><P Class=KRCC>
12345
<SYNC Start=600><P Class=KRCC>&nbsp;
<SYNC Start=700><P Class=KRCC>&nbsp;
<SYNC Start=750><P Class=KRCC>&nbsp;
<SYNC Start=800><P Class=KRCC>
12345
<SYNC Start=900><P Class=KRCC>&nbsp;
<SYNC Start=1000><P Class=KRCC>&nbsp;
<SYNC Start=1400><P Class=KRCC>&nbsp;

<SYNC Start=1700><P Class=KRCC>
12345
<SYNC Start=1800><P Class=KRCC>&nbsp;
<SYNC Start=1900><P Class=KRCC>&nbsp;
<SYNC Start=1950><P Class=KRCC>&nbsp;

</BODY>
</SAMI>

--------------------------------------------------------------------

종료 싱크 부분을 매크로로 돌려서 지워주는 게...


원하는 결과

--------------------------------------------------------------------

<BODY>

<SYNC Start=200><P Class=KRCC>
12345
<SYNC Start=300><P Class=KRCC>&nbsp;


<SYNC Start=500><P Class=KRCC>

12345
<SYNC Start=600><P Class=KRCC>&nbsp;

<SYNC Start=800><P Class=KRCC>
12345
<SYNC Start=900><P Class=KRCC>&nbsp;


<SYNC Start=1700><P Class=KRCC>
12345
<SYNC Start=1800><P Class=KRCC>&nbsp;


</BODY>
</SAMI>

--------------------------------------------------------------------



물론 가능합니다. 아래와 같이 작성해서 사용하시면 됩니다.


var
  LineSumCount, DelLoop, LoopVar, ReadPos: Integer;
  LineStr, CurrentSyncStr, PrevSyncStr: String;

  BodyStart: Boolean;
  iLoop: Integer;
  EndLine: Integer;
AddnbspCount: integer;

begin

//CCP_SCRIPT := CC_STRINGREPLACE(CCP_SCRIPT, '<P Class=KRCC>'+CRLF+'&nbsp;', '<P Class=KRCC>&nbsp;');

  PrevSyncStr := '';
  CurrentSyncStr := '';
  LineSumCount := 0;
  BodyStart := False;

  EndLine := CC_CURRENTLINECOUNT-1;
  For LoopVar := CC_CURRENTLINECOUNT-1 downto 0 do
  Begin
    If Pos('</body>', LowerCase(CC_GETLINETEXT(LoopVar))) > 0 Then
    Begin
       EndLine := LoopVar-1;
       Break;
    End;
  End;
   For LoopVar := EndLine downto 0 do


  Begin
     LineStr := CC_GETLINETEXT(LoopVar);

     ReadPos := 0;
     For iLoop :=  Length(LineStr) downTo 1 do
     Begin
        If Copy(LineStr, iLoop, 1) = '>' Then
        Begin
           ReadPos := iLoop;
           Break;
        End;
     End;

     CurrentSyncStr := CurrentSyncStr + Trim(Copy(LineStr, ReadPos+1, Length(LineStr)-ReadPos));
     LineSumCount := LineSumCount + 1;

     If CC_ISSYNCLINE(LoopVar) Then
     Begin
        // 마지막으로 이전 출력값이랑 현재 출력값이 둘다 &nbsp 면 이전 싱크를 다 지웁니다.      
        If (PrevSyncStr = '&nbsp;') and (CurrentSyncStr = '&nbsp;') Then
       Begin
           For DelLoop := 1 to LineSumCount do

              CC_DELETELINE(LoopVar+1);

AddnbspCount := AddnbspCount+1;

        End;

        PrevSyncStr := CurrentSyncStr;
        CurrentSyncStr := '';
        LineSumCount := 0;

     End;

  End;

//CCP_SCRIPT := CC_STRINGREPLACE(CCP_SCRIPT, '<P Class=KRCC>&nbsp;', '<P Class=KRCC>'+CRLF+'&nbsp;');

if AddnbspCount > 0 then ShowMessage('총 '+IntToStr(AddnbspCount) + ' 개의 &nbsp; 싱크 줄을 삭제했습니다.');
CCP_CaretX := 0;
//CP_TopLine := CP_TopLine + 1;
//CP_TopLine := CP_TopLine - 1;
End;



<SYNC Start=300><P Class=KRCC>&nbsp;// 이 값이 남길 바랬는데...
<SYNC Start=400><P Class=KRCC>&nbsp;
<SYNC Start=450><P Class=KRCC>&nbsp;// 매크로를 돌리면 이 값이 남네요...


CC_DELETELINE(LoopVar);이 값을


CC_DELETELINE(LoopVar+1); 이렇게 주니 해결됐네요^^


Posted by 투명인간취급
,
<SYNC Start=200><P Class=KRCC>
대사1
<SYNC Start=300><P Class=KRCC>


<SYNC Start=500><P Class=KRCC>
대사2
<SYNC Start=600><P Class=KRCC>


<SYNC Start=800><P Class=KRCC>
대사3
<SYNC Start=900><P Class=KRCC>


<SYNC Start=1700><P Class=KRCC>
대사4
<SYNC Start=1800><P Class=KRCC>


<SYNC Start=200><P Class=KRCC>
대사1
<SYNC Start=300><P Class=KRCC>
<SYNC Start=500><P Class=KRCC>
대사2
<SYNC Start=600><P Class=KRCC>
<SYNC Start=800><P Class=KRCC>
대사3
<SYNC Start=900><P Class=KRCC>
<SYNC Start=1700><P Class=KRCC>
대사4
<SYNC Start=1800><P Class=KRCC>


========================================================================================================

위에 같은 자막에 &nbsp; 를 일괄적으로 넣어 줄 수 있는 매크로입니다.

이런건 조금 난감한 편인데요

 

어쨌거나 매크로로 안되는건 없으니깐..

아래와 같이 매크로를 만들어주면 됩니다. 주석이나 이런건 지원 안되구요 ^_^;;

 

이 매크로 만들면서 느낀건데 태그 지우는 매크로 명령이 있어야되겠네요.. -_-a; 전에 만들었던거 같은데..

 

var

  LoopVar: Integer;
  LineAddBuf: String;

AddnbspCount: integer;

  lChar: String;
  lLoop: Integer;
  lRLine: String;
  lRStr: String;
  EndLine: Integer;
begin

  EndLine := CC_CURRENTLINECOUNT-1;
  For LoopVar := CC_CURRENTLINECOUNT-1 downto 0 do
  Begin
    If Pos('</body>', LowerCase(CC_GETLINETEXT(LoopVar))) > 0 Then
    Begin
       EndLine := LoopVar-1;
       Break;
    End;
  End;
 
  For LoopVar := EndLine downto 0 do
  Begin

     If CC_ISSYNCLINE(LoopVar) Then
     Begin
        lRLine := Trim(CC_GETLINETEXT(LoopVar));
    lRStr := '';

    For lLoop := Length(lRLine) downto 1 do
    Begin

       lChar := Copy(lRLine, lLoop, 1);
           If lChar = '>' Then Break;
       lRStr := lRStr + lChar;
    End;


     If (Trim(lRStr) = '') and (Trim(LineAddBuf) = '') Then
     begin

           CC_INSERTLINE(LoopVar+1, '&nbsp;');

           AddnbspCount := AddnbspCount+1;
     End;   
        LineAddBuf := '';
        continue;

 End;   
     LineAddBuf := LineAddBuf + TrimW(CC_GETLINETEXT(LoopVar));
  End;
if AddnbspCount > 0 then ShowMessage('총 '+IntToStr(AddnbspCount) + ' 개의 &nbsp; 를 추가했습니다.');
CCP_CaretX := 0;
end;


========================================================================================================

실행 후 결과


<SYNC Start=200><P Class=KRCC>
대사1
<SYNC Start=300><P Class=KRCC>
&nbsp;


<SYNC Start=500><P Class=KRCC>
대사2
<SYNC Start=600><P Class=KRCC>
&nbsp;


<SYNC Start=800><P Class=KRCC>
대사3
<SYNC Start=900><P Class=KRCC>
&nbsp;


<SYNC Start=1700><P Class=KRCC>
대사4
<SYNC Start=1800><P Class=KRCC>
&nbsp;

<SYNC Start=200><P Class=KRCC>
대사1
<SYNC Start=300><P Class=KRCC>
&nbsp;
<SYNC Start=500><P Class=KRCC>
대사2
<SYNC Start=600><P Class=KRCC>
&nbsp;
<SYNC Start=800><P Class=KRCC>
대사3
<SYNC Start=900><P Class=KRCC>
&nbsp;
<SYNC Start=1700><P Class=KRCC>
대사4
<SYNC Start=1800><P Class=KRCC>
&nbsp;


Posted by 투명인간취급
,

문의도 있고 잘 안쓰는 CC_RUNLOWCOMMAND 매크로도 소개할겸사겸사 글을 적어봅니다.

그럼 매크로 나갑니다.

If CC_ISSYNCLINE(CCP_CARETY) Then
Begin
CC_RUNLOWCOMMAND('Menu_DeleteCurrentTime');
CCP_CURRENTLINE := CC_STRINGREPLACE(CCP_CURRENTLINE, '<Sync Start=0><P Class=KRCC>', '');
End;


위와 같습니다.

방식은 이렇습니다.

현재 커서가 있는 줄이 싱크태그가 있는 라인인지 확인 한 뒤, 싱크 태그가 있는 줄이라면

메뉴의 시간 삭제를 실행한 뒤

<sync start 로 시작하는 문자열을 지우는겁니다. (시간 삭제를 하면 Sync Start=0 이 되니까요

만일 직접 태그를 수정하셔서 Sync Start 로 시작하는 구문이 다르다면 볼드 처리된 부분만 고치시면 됩니다.

덤+

CC_RUNLOWCOMMAND 에서 호출가능한 내부 기능들은

키 프리셋 파일인 c4k 파일을 열어보면 그 이름들을 알아낼 수 있습니다.


==============================================================================================================

1. 바로 삭제가 가능하게 할수는 있습니다만.. 여러모로 좋을것 같지는 않습니다;;

아래와 같이 매크로를 작성하시면 됩니다.

(10줄 이상 위로 추적해서 삭제하진 않습니다. 그 이상을 원하시면 -10 을 더 키우시면 됩니다)


var
  LineCheck, MaxLine: Integer;
begin
  MaxLine := CCP_CaretY - 10;
  If MaxLine < 0 Then MaxLine := 0;

  for LineCheck := CCP_CaretY downto MaxLine do
  begin
    If CC_ISSYNCLINE(LineCheck) Then
    Begin
  CCP_CaretY := LineCheck;
  CC_RUNLOWCOMMAND('Menu_DeleteCurrentTime');
  CCP_CURRENTLINE := CC_STRINGREPLACE(CCP_CURRENTLINE, '<Sync Start=0><P Class=KRCC>', '');
    End;
  end;
end;


2. 공백이 안남게 하시려면 요렇게 한줄을 추가해주시면 됩니다.


If CC_ISSYNCLINE(CCP_CARETY) Then
Begin
CC_RUNLOWCOMMAND('Menu_DeleteCurrentTime');
CCP_CURRENTLINE := CC_STRINGREPLACE(CCP_CURRENTLINE, '<Sync Start=0><P Class=KRCC>', '');

If CCP_CURRENTLINE = '' Then CC_DeleteLine(CCP_CARETY); //추가
End;


Posted by 투명인간취급
,

예 요번에는 싱크가 있는 줄만 지우는 매크로입니다.

최대한 간단하게 만든거라서 좀 부족하긴 합니다만.. 대부분의 자막에서는 잘 동작할것 같습니다.


핵심은 CC_IsSyncLine(줄번호) 함수를 써서 해당 줄에 싱크 태그가 있는지 확인하고 있으면

CC_DeleteLine(줄번호) 함수로 해당 줄을 걍 지우는 겁니다.


그럼 바로 매크로 코드 나갑니다.


var
  LineObj: TStringList;
  LineLoop: Integer;
  DelSyncCount: integer;
begin
//가로로 이어 쓰인 싱크에 대사까지 삭제되는 거 방지를 위한 변환 작업
{
CCP_SCRIPT := CC_STRINGREPLACE(CCP_SCRIPT, CC_PTAG+CRLF, CC_PTAG);
CCP_SCRIPT := CC_STRINGREPLACE(CCP_SCRIPT, CC_PTAG, CC_PTAG+CRLF);
}


  LineObj := TStringList.Create;
  Try
    LineObj.Text := CCP_SCRIPT;
    For LineLoop := LineObj.Count -1 downto 0 do
    Begin
       If CC_ISSYNCLINE(LineLoop) Then
       Begin

          CC_DeleteLine(LineLoop);

          DelSyncCount := DelSyncCount+1;
{
end
else
begin
          CC_INSERTLINE(LineLoop, CRLF);
}
       End;
{
       If Trim(LineObj[LineLoop]) = '&nbsp;' Then
       Begin
          CC_DELETELINE(LineLoop);
          CC_INSERTLINE(LineLoop, CRLF);
       end;
}
   

End;

  Finally
    LineObj.Free;
  End;

if DelSyncCount > 0 then ShowMessage('총 '+IntToStr(DelSyncCount) + ' 개의 싱크를 제거했습니다.');
CCP_CaretX := 0;

end;


Posted by 투명인간취급
,