microsoft/edit
요약
Microsoft의 'Edit'는 고전적인 MS-DOS 편집기의 기능을 현대적이고 접근성이 높은 인터페이스로 재해석한 텍스트 편집기입니다. 이 편집기는 터미널 사용에 익숙하지 않은 사용자도 쉽게 사용할 수 있도록 설계되었습니다. 사용자는 WinGet, Homebrew 또는 제공된 설치 스크립트를 통해 최신 버전을 손쉽게 설치할 수 있으며, 개발자들은 Rust와 ICU 라이브러리 환경 변수를 설정하여 커스터마이징된 빌드를 진행할 수 있습니다.
핵심 포인트
- MS-DOS 편집기의 기능을 현대적인 인터페이스로 개선한 접근성 높은 텍스트 에디터입니다.
- WinGet, Homebrew 등 다양한 패키지 관리자를 통해 쉽게 설치 및 배포가 가능합니다.
- 개발자는 Rust와 ICU 라이브러리 환경 변수(예: `EDIT_CFG_ICUUC_SONAME`)를 설정하여 빌드 과정을 세밀하게 제어할 수 있습니다.
- 빌드 과정에서 언어 지원이나 특정 버전의 ICU 심볼을 명시적으로 지정해야 할 필요가 있습니다.
단순한 용도에 대한 간단한 편집기.
이 편집기는 고전적인 MS-DOS 편집기를 기호하지만, VS Code와 유사한 현대적인 인터페이스와 입력 컨트롤을 갖추고 있습니다. 목표는 터미널에 익숙하지 않은 사용자도 쉽게 사용할 수 있는 접근 가능한 편집기를 제공하는 것입니다.
또한 Releases 페이지에서 바이너리를 다운로드할 수 있습니다.
WinGet 를 사용하여 최신 버전을 설치할 수 있습니다:
winget install Microsoft.Edit
분포가 바이너리를 제공하지 않거나, 자체 빌드를 원하면 다음을 설치한 경우 설치 스크립트를 사용할 수 있습니다:
- Rust (via
rustup또는 유사하게) - C 컴파일러 (예:gcc) - ICU (예: libicu78, libicu, icu) - curl/wget 와 tar
다음 명령은 msedit 를 설치합니다.
~/.local/bin
:
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/microsoft/edit/main/assets/install.sh | sh
추가 플래그는 --dev로, 메인 브랜치에서 직접 빌드하고, --system으로 /usr/local/bin에 설치합니다. 예를 들어:
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/microsoft/edit/main/assets/install.sh | sh -s -- --dev --system
Homebrew 를 사용하여 최신 버전을 설치할 수 있습니다:
brew install msedit
-
Rust 설치
-
저장소 복제
-
nightly Rust 사용 중이라면:
cargo build --release --config .cargo/release.toml -
stable Rust 사용 중이라면:
-
이상적으로는 환경 변수를 설정하세요:
RUSTC_BOOTSTRAP=1
그리고 위의 nightly빌드 지침을 사용하세요. 이는 바이너리 크기를 크게 줄이고 성능을 약간 향상시키기 때문에 권장됩니다.
-
아니면, 단순히 실행하세요:
cargo build --release -
이상적으로는 환경 변수를 설정하세요:
빌드를 구성하기 위해 빌드 시간에 다음 환경 변수를 설정할 수 있습니다:
| Environment variable | Description |
|---|---|
EDIT_CFG_ICU* | |
| ICU 라이브러리 이름 (SONAME) 을 아래에서 확인하세요. Linux 패키지 유지 관리자는 이러한 옵션을 검토하고 구성하는 것이 좋습니다. | |
EDIT_CFG_LANGUAGES | |
| 빌드에 포함할 언어의 쉐마를 구분한 목록입니다. i18n/edit.toml 에서 사용할 수 있는 언어를 확인하세요. |
이 프로젝트의 검색 및 치환 기능에 ICU 라이브러리를 선택적으로 의존합니다.
기본적으로, 프로젝트는 다음 라이브러리 이름을 찾습니다:
| Variable | Windows | macOS | Linux / Other |
|---|---|---|---|
EDIT_CFG_ICUUC_SONAME | |||
icuuc.dll | |||
libicucore.dylib | |||
libicuuc.so | |||
EDIT_CFG_ICUI18N_SONAME | |||
icuin.dll | |||
libicucore.dylib | |||
libicui18n.so |
설치가 다른 SONAME 을 사용한다면, 빌드 시간에 다음 환경 변수를 설정하세요:
EDIT_CFG_ICUUC_SONAME
: 예를 들어, libicuuc.so.76
.
EDIT_CFG_ICUI18N_SONAME
: 예를 들어, libicui18n.so.76
.
또한, 이 프로젝트는 ICU 가 _ 접미사를 포함하지 않고 버전 접미사를 포함하지 않는 심볼을 내보낸다고 가정합니다. 예를 들어 u_errorName.
설치가 버전화된 내보출을 사용한다면 다음을 설정하세요:
EDIT_CFG_ICU_CPP_EXPORTS
: true로 설정하면, _u_errorName과 같은 C++ 심볼을 찾습니다. macOS 에서 기본으로 활성화됩니다.EDIT_CFG_ICU_RENAMING_VERSION
: 버전 번호 (예: 76) 로 설정하면, u_errorName_76과 같은 심볼을 찾습니다.
마지막으로 다음 환경 변수를 설정할 수 있습니다:
EDIT_CFG_ICU_RENAMING_AUTO_DETECT
이 값을 true로 설정하면 실행 프로그램은 런타임에 EDIT_CFG_ICU_RENAMING_VERSION 값을 감지하려고 시도합니다. 이 방식은 ICU 에서 공식적으로 지원되지 않으므로 신뢰할 수 있는 것으로 권장하지 않습니다. 다른 옵션이 설정되지 않은 경우 UNIX(맥OS 제외) 에서는 기본값으로 활성화됩니다.
빌드 설정을 테스트하려면 cargo test 를 --ignored 플래그와 함께 실행하세요. 예를 들어:
cargo test -- --ignored
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Trending Rust (weekly)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기