2017-01-17 1 views
0

My IDE에서 TextMate 대신 사용할 수있는 대안을 찾고 있습니다. 나는 다른 IDE를 다양하게 시도해 왔으며 Atom을 좋아하게되었지만, 여전히이 특별한 문제를 겪고있다.Atom/vi - 공백 처리 불완전

프로젝트를 프로덕션 서버로 보내고 서버에서 vi를 통해 편집해야하는 경우 공백은 그래픽 IDE보다 vi에서 더 심각합니다.

그런 다음 VI에서이처럼
function foo(){ 
    var bar; 
    if($this) 
     ... 
    else 
     ... 
} 

: 같은 TextMate를 예를 들어 그것은 본다

function foo(){ 
       var bar; 
       if($this) 
         ... 
       else 
         ... 
} 

TextMate에이 VI가보다 더 중요한 것으로 인식하고 다른 인코딩에 공백 문자를 인코딩 보인다 사실입니다. 그래픽 IDE에서 공백이 무엇이든 vi가 거의 두 배가됩니다. 이것이 다른 IDE를 검색하는 전체 이유입니다.

Atom은 이것에 대해별로 나쁘지는 않지만 비슷한 문제를 나타냅니다. Atom에서 TextMate로 편집 한 파일을 열면 공백도 완전히 엉망이됩니다. 우리는 2 칸 들여 쓰기와는 대조적으로 사내 코딩 규칙으로 탭 들여 쓰기를 사용합니다. 새로운 IDE를 사용하면 더 이상 그런 문제가되지 않지만 궁금한 점은 다음과 같습니다.

공백이 같은 방식으로 처리되도록 조정해야하는 플러그인이 있습니까? 및 그래픽 IDEs? Atom에서 특히

상자에서 호환되며 유사한 기능을 TextMate 또는 Atom과 공유하는 IDE에 대한 다른 제안이 있습니다. 우리는 대괄호, SublimeText 및 다른 소수를 시도했습니다.

+2

"공백이 망가졌습니다"라는 말은 12 가지 이상의 것을 의미 할 수 있습니다 ... 누군가가 특정 조언을 제공하기를 원한다면 실제로보고있는 것에 대해 좀 더 구체적으로 설명해야합니다. –

+0

edited question 예제와 자세한 내용을 포함합니다. – TomJ

+2

그래서 실제로 그 파일에 어떤 문자가 있습니까? 두 개의 탭 문자가있는 것처럼 보입니다. 그리고 TextMate와 vi를 구성하여 탭을 2와 8 열로 각각 표시합니다. 어떤 경우에는 들여 쓰기에 공백을 사용하거나 모든 편집기에서 동일한 탭 너비 구성을 사용하는 것이 수정되었습니다. – melpomene

답변

0

왼쪽 여백 들여 쓰기 너비가 편집자간에 또는 팀 구성원 (또는 둘 다)간에 일관성이 없다고 불평하는 것처럼 보입니다.

이 문제에 대한 마법의 해결책은 없습니다. 당신이 시도 할 수있는 몇 가지가 있습니다.

  1. 들여 쓰기를 수행하는 방법에 대해 귀하의 팀에서 의견을 수렴하십시오.

    일관성을 원한다면 누구나 참여하여 그 의미에 동의해야합니다.

  2. 탭 대신 들여 쓰기를위한 공간을 표준화하십시오.

    탭 문자는 각 개인이 표시 방법을 선택할 수 있기 때문에 가변 폭입니다. 이런 이유로, 당신은 그들을 추방 할 수 있고 대신에 들여 쓰기를 사용할 수 있습니다. 코드는 항상 같은 방식으로 표시됩니다.

    어떤 사람들은 항상 스페이스 바를 치는 것을 원하지 않는다고이 아이디어에 대해 불평합니다. 그러나 현대의 텍스트 편집기가 이것을 처리합니다. 여전히 탭 키를 사용할 수 있으며 정상적으로 작동합니다.

    많은 현대 편집자에서이를 "소프트 탭"이라고합니다. 빔에서

    , 당신은 (

    :set tabstop=4 shiftwidth=4 softtabsstop=4 expandtab 
    

    같은 것을 사용하여이 효과를 얻을 자신의 번호로 대체 할 수 ...2, 8, 팀이 동의 한 모든 것)

  3. 시도해 볼 수 있습니다 EditorConfig.

    EditorConfig에서는 편집자가 들여 쓰기를 포함하여 다양한 것을 구성하는 데 사용할 설정 파일을 만들 수 있습니다.

    많은 편집자를위한 플러그인이있어서 편리합니다. 그러나, 모든 사람들은 여전히 ​​합의를 요구하는 플러그인을 사용해야하며, 모든 사람들은 동일한 구성 파일 (다시, 합의)을 사용해야합니다.

    일부 팀은 쉽게 공유 할 수 있도록 EditorConfig 파일을 코드 저장소에 저장합니다.

어떤 편집기/IDE를 사용 하느냐에 따라이 질문과 직각을 이룹니다. 두 명 이상의 텍스트 편집자 또는 팀 구성원이 참여할 때마다이 문제가 발생합니다.

+0

@melpomene, 편집 해 주셔서 감사합니다. 내 마음이 미끄러졌습니다. –

+0

이것은 내가 찾고있는 것입니다. 자신과 선임 개발자를 생각하면 성장하는 팀을 위해 컨벤션을 수립하고 있습니다. Atom의 기본값이 동일한 문제를 제시하지 않았으므로 TextMate가 문제의 원인입니다. 이것이 미래의 팀원들이이 문제를 악화시키지 않을 것임을 보장하기 때문에 이것을 대답으로 표시하십시오. 훌륭한 솔루션과 답변. 고맙습니다! – TomJ