2009-08-12 2 views
3

나는 현재 그것이 모든 빈 줄을 제거합니다 있다는 사실을 제외하고 잘 작동PHP_Beautifier의 빈 줄은 어떻게 수정합니까?

-t -l "ArrayNested() IndentStyles(style=bsd) NewLines(before=T_CLASS:function:T_COMMENT,after=T_COMMENT)" 

옵션과 같은 다음 명령을 사용하여 코드를 서식에 대한 PHP_Beautifier을 사용하고 있습니다. 약간의 검색 후 2007 년부터 열려있는 bug으로 게시했습니다.

codebase을 조사했지만이 작업을 수행하는 특정 코드를 찾을 수 없었습니다. 나는 올바른 방향으로 나아갈 수있는 도움에 감사드립니다.

답변

3

저는 PHP_Beautifier의 개발자 인 clbustos입니다. 이것은 가장 많이 요청 된 기능 중 하나이므로 다음 릴리스에서 구현할 것으로 예상됩니다. 파고 싶으면 PHP_Beautifier :: removeWhitespace를 볼 수있는 함수

+0

감사 메모! – Sukumar

+0

혹시 그렇게 할 수 있었습니까? – ternaryOperator

1

소스에서 빈 줄을 유지하면서이 아름답게하는 사람을 필요로합니다.

나는이 스크립트의 마지막 버전을 확인 않았고, 나는 (PHP는 dvpr ...없는) 더러운 해킹을했습니다 : 함수에 파일 beautifier.php에 두 줄을 주석 public function removeWhitespace()

for ($i = count($this->aOut) -1 ; $i >= 0 ; $i--) { // go backwards 
      $cNow = &$this->aOut[$i]; 
      if (strlen(trim($cNow)) == 0) { // only space 
       if (!$this->addedBlankLine || ($cNow!="\r" && $cNow!="\n")) { 
         //array_pop($this->aOut); // delete it! 
         //$pop++;**** 
       } 
      } else { // we find something! 
       $cNow = rtrim($cNow); // rtrim out 
       break; 
      } 
     } 

이 해킹은 모든 빈 줄을 보존하지만 부작용이 있습니다. 대괄호 뒤에 원하지 않는 줄이 표시되고 모든 탭 문자는 바뀌지 않지만 빈 줄이없는 것보다 나을수록 좋습니다 ...

관련 문제