숭고한 텍스트 2 줄 끝을 수정?


177

Settings - User구성 은 다음과 같습니다 .

{
    "auto_indent": true,
    "color_scheme": "Packages/Color Scheme - Default/Twilight.tmTheme",
    "default_line_ending": "LF",
    "detect_indentation": true,
    "font_size": 10.0,
    "ignored_packages":
    [
        "Vintage"
    ],
    "indent_to_bracket": false,
    "smart_indent": true,
    "tab_size": 4,
    "translate_tabs_to_spaces": true,
    "trim_automatic_white_space": true,
    "use_tab_stops": true
}

default_line_ending옵션에 대한 의견 : default_line_ending 옵션에 대한 주석

새 파일을 만들 때 여기에서 끝나는 줄을 확인합니다.

줄 끝 점검

보시다시피 여전히 Windows입니다 ... 어떤 아이디어?


"유닉스"를 클릭하고 닫았다가 다시 열어 보셨습니까?
Preet Kukreti

@PreetKukreti 예. 다시 열면 "Windows"입니다. 새 파일이 아닌 현재 파일에서만 작동합니다.
mintobit

1
@ an1zhegorodov 전에 파일을 저장하셨습니까? 그것은 나를 위해 일한 ...
charlysisto

1
네. 파일을 저장 한 후에도 효과가있었습니다.
Pierre Guilbert

답변:


199

코멘트 상태

// Determines what character(s) are used to terminate each line in new files.
// Valid values are 'system' (whatever the OS uses), 'windows' (CRLF) and
// 'unix' (LF only).

설정 중

"default_line_ending": "LF",

당신은 설정해야

"default_line_ending": "unix",


1
나는 같은 문제가 있지만 올바르게 설정 "default_line_ending": "unix"하고 있는데 왜 작동하지 않는지 모르겠다! 그것은 나를 미치게한다! 나는 조금 연구했으며 분명히 유용한 해결책이 없습니다.
acrespo

@acrespo 다른 환경 설정 파일로 대체되지 않습니까? 숭고한는 :) 그 중 많이있다 - 당신이 당신의 구문 특정 환경 설정이 끝나는 라인의 종류를 지정한 경우는, 사용자의 환경 설정을 오버라이드 (override) 할 차례 오버라이드 세계의 환경 설정에서
레이

10
"default_line_ending"설정 : "unix", 새 파일에서는 제대로 작동하지만 기존 (이전) 파일에서는 제대로 작동하지 않습니다. 누구든지 그 행동을 바꾸는 방법을 알고 있습니까?
soothsayer

11
이 작업은 수동으로 만 수행 할 수 있으며 자동화 된 경우 실제로 유용합니다. 위의 이미지에서 볼 수 있듯이 이것을 변경할 수 있습니다. View-> Line Endings-> Unix @soothsayer
A Star

5
@soothsayer, 기존 파일의 경우 모든 텍스트를 선택한 다음 view-> line endings-> 를 선택하십시오 unix. 그런 다음 문서를 저장하십시오.
AGS

9

EditorConfig 프로젝트 ( Github의 링크는 ) 다른 매우 실용적인 솔루션입니다. sftp-config.json 및 .sublime-project / workspace 일종의 파일과 유사하게, 프로젝트 폴더 또는 상위 폴더에 .editorconfig 파일을 설정하면 해당 디렉토리 구조 내에 파일을 저장할 때마다 플러그인이 도트 파일의 설정을 자동으로 적용하고 몇 가지 다른 것들을 자동화합니다. 그중 일부는 유닉스 스타일의 줄 끝을 저장하고, 파일 끝 줄 바꿈을 추가하고, 공백을 제거하고 들여 쓰기 탭 / 공간 설정을 조정합니다.


빠른 예

패키지 제어를 사용하여 Sublime에 EditorConfig 플러그인을 설치하십시오. 그런 .editorconfig다음 다음 내용과 함께 상위 디렉토리 (집이나 원하는 경우 루트)에 이름이 지정된 파일을 배치  하십시오.

[*]
end_of_line = lf

그게 다야. 이 설정은 해당 디렉토리 구조 내에 파일을 저장할 때마다 Unix 스타일 줄 끝을 자동으로 적용합니다. 더 멋진 일을 할 수 있습니다 (예 : 원하지 않는 후행 공백을 자르거나 각 파일 끝에 후행 줄 바꿈을 추가하십시오. 자세한 내용은 https://github.com/sindresorhus/editorconfig-sublime 의 예제 파일을 참조하십시오 .

# editorconfig.org
root = true

[*]
indent_style = tab
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false

root = true줄은 EditorConfig가 .editorconfig디렉토리 구조의 상위 레벨에서 다른 파일을 찾지 않음을 의미합니다 .


불충분하게 공격적입니다. crlf가있는 파일로 이끄는 사람들의 체인을 식별하고 얼굴에 각각 펀치하는 플러그인이 필요합니다. 그런 다음 lf로 저장하십시오.
ArtOfWarfare 2016 년

고마워, 이것은 내 문제 였고, 나는이 플러그인을 설치했고 .config 파일에서 잘못된 구성을 취하고있었습니다
Luke Robertson

1

LF에서 CRLF로 줄 끝을 chnage :

Sublime을 열고 다음 단계를 수행하십시오.

1 Ctrl + shift + p를 누른 다음 패키지 이름 줄 통합 엔딩 설치

그런 다음 다시 Ctrl + shift + p를 누릅니다.

빈 입력란에 'Line unify ending'

3 두 번 입력

숭고한 경우 때때로 멈출 수 있으며 결과적으로 줄 끝이 LF에서 CRLF로 변경됩니다.


1

프로젝트의 모든 파일을 한 번 에 수정 하는 가장 간단한 방법 (일괄 처리)은 Line Endings Unify 패키지를 사용하는 것입니다.

  1. Ctrl+ Shift+ P유형 이달 +는 선택 패키지를 설치합니다 .
  2. line end +를 입력 하고 Line Endings Unify를 선택합니다 .
  3. 설치가 끝나면 Ctrl+ Shift+ P+ type end + Line Endings Unify를 선택하십시오 .
  4. 또는 (3 대신) 사본 :

    {
     "keys": ["ctrl+alt+l"],
     "command": "line_endings_unify"
    },
    

    받는 사용자 (개통 후 오른쪽 창 배열 [에서) 환경 설정 -> 키 바인딩 +를 눌러 Ctrl+ Alt+ L.

다른 답변 에서 언급했듯이 :

  • 캐리지 리턴 ( CR ) 문자 ( 0x0D, \r) [...] 초기 Macintosh 운영 체제 (OS-9 이하).

  • 줄 바꿈 ( LF ) 문자 ( 0x0A, \n) [...] UNIX 기반 시스템 (Linux, Mac OSX)

  • EOL (End of Line ) 시퀀스 ( 0x0D 0x0A, \r\n) [...] (비 유닉스 : Windows, Symbian OS).

node_modules , build 또는 기타 자동 생성 된 폴더 가 있으면 패키지 를 실행하기 전에 삭제 하십시오.

패키지를 실행할 때 :

  1. 하단에 쉼표로 구분 된 목록을 통해 검색 할 파일 확장자 를 선택하라는 메시지가 표시됩니다 (예 :) js,jsx.
  2. 그런 다음 어떤 입력 라인을 사용 할지 묻는 메시지가 표시됩니다 (예 : LF 유형 이 필요한 경우) \n.
  3. 를 누르고 LineEndingsUnify CompleteENTER표시된 경고 창이 나타날 때까지 기다립니다 .
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.