ATOM1.24에서 최신 Python 구문 하이라이트 사용

2584 단어 파이썬ATOM

개요



2018년 02월 안정판의 ATOM(1.24)상에서 Python3의 Type hints 기능을 사용하면 하이라이트가 제대로 기능하지 않게 됩니다.

이유는 ATOM(1.24)과 함께 제공되는 language-python(0.45.6)이 Type hints를 고려하지 않기 때문입니다.

지원 상황



최신 language-python (0.49.2)은 Type hints를 지원합니다. (PR : #234)

따라서 다음과 같은 방법으로 해결할 수 있습니다.
* ATOM1.25의 베타 버전 사용 (추기: 2018년 05월 현재 안정판이 존재합니다)
* ATOM1.24에 최신 language-python 넣기

이번에는 후자의 방법으로 대응하기로 했습니다.

buildin-package 업데이트할 수 없는 문제



language-python은 ATOM에 처음부터 동봉된 패키지이지만,
apm으로 업데이트하려고하면 경고가 나옵니다.
% apm install language-python
The language-python package is bundled with Atom and should not be explicitly installed.
You can run `apm uninstall language-python` to uninstall it and then the version bundled
with Atom will be used.
Installing language-python to /Users/user/.atom/packages ✓

다만, 업데이트를 할 수 없는 것만으로, apm의 관리 디렉토리에 인스톨 됩니다.
※ buildin과 최신의 2개가 ATOM에 인스톨 된 상태가 된다.

패키지 이름 쓰는 문제



이대로 이용 개시하려고 하면 0.45.6과 0.49.2가 경합해 움직이지 않기 때문에 낡은 분을 무효화하고 싶습니다만
버전 단위로 비활성화하는 기능이 ATOM에 없기 때문에 잘 작동하지 않았습니다.
buildin의 패키지를 삭제하려고했지만 어디에 있는지 몰랐습니다.

그래서 패키지 이름을 변경하기로 결정했습니다. 다음과 같은 방법으로 변경할 수 있습니다.
% cd ~/.atom/packages
% mv language-python language-python-latest

그런 다음 language-python을 비활성화하고 language-python-latest를 활성화합니다.

1.25용 패키지를 1.24용으로 하는 대응



1.25에서는 언어 이름 관리 방법이 변경되었으므로 다음 파일을 수정합니다.language-python-latest/grammars/tree-sitter-python.cson
id: 'python'
name: 'Python'
type: 'tree-sitter'
parser: 'tree-sitter-python'
legacyScopeName: 'source.python'


id: 'python'
# name: 'Python'
type: 'tree-sitter'
parser: 'tree-sitter-python'
legacyScopeName: 'source.python'
scopeName: 'source.python'

잘 작동했습니다.


제대로 표시되지 않으면 파일을 닫았다가 다시 열면 잘 작동합니다 (이전 언어 파이썬이 선택된 상태입니다).

좋은 웹페이지 즐겨찾기