문제

가끔씩 나는 긴 쌍의 if-then-else 진술을 편집하고 있습니다 (또는 더 나쁘게 중첩 if-then-else 진술), 예를 들어 :

  if A < B then 
  begin
    DoSomething; 
    DoSomethingElse;
    {...and more statements going on and on and on...}
    FinallyWrapUpThisBit;
  end 
  else 
  begin
    DoThis;
    DoThat;
    {...and more statements going on and on and on...}
    FinallyWrapUpThisBit;
  end;

... 그리고 나는 첫 번째 시작 쌍을 "붕괴"하고 싶어서 더 낮은 "else"부분을 가져 오기 위해 (보통 if-when then squallennent 위에있는 것을 언급하기 때문에. "시작 ..."그리고 왼쪽에 [+} 표시가 다시 확장되어 다시 확장하십시오.

IDE에서 "폴드"기능을 탐색했지만 명령 중 어느 것도 이것을하지 않는 것 같습니다. 그것은 나의 오래된 d6에 대한 나의 coderush처럼 보이지만, 나는 일을 상상할 수 있습니다. (매우 적극적인 상상력이 있습니다 ...).

Castalia (또는 다른 것)와 같은 IDE 플러그인이 이것을합니까?

도움이 되었습니까?

해결책

Plain Delphi가 상자에서 꺼내면 시작을 둘러싸고 있습니다 ... 끝을 끝내야합니다.

  {$region 'begin...end'}
  .... 
  {$endregion}

코드 템플릿을 통해 수행 할 수 있습니다 ...

코드 블록의 멋진 시각화 (시작 .. 엔드)에 대한 Castalia를 기억하지만 접을 수 있는지 기억이 나지 않습니다.

다른 팁

리팩토링 도구를 사용하여 조건부 지점의 코드를 별도의 기능으로 이동하십시오. 그런 다음 아무것도 접을 필요가 없습니다. 또한 해당 호출과 같은 두 가지에 공통적 인 코드를 병합 할 수 있습니다. FinallyWrapUpThisBit.

여기에 또 다른 큰 도우미가 될 것입니다 CNPACK. 델파이에 설치하고 시작/끝 쌍을 채색하여 코드를 따라가는 마법사입니다. 코드 폴딩을 정확히 수행하지 않으므로 {$ grea} {$ endregion} 태그를 사용해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top