
간단히 말해서, 나는 나의 일상의 일을 위해 EMAC를 릴레이하고 있으므로, 나는 내 필요에 맞는 빠르고 안정적인 구성이 필요했습니다. Minemacs는 지속적으로 변화하고 있습니다. 자세한 내용은 변경 로그를 참조하십시오. Minemacs의 모듈 및 패키지 목록도 참조하십시오.
메모
Doom EMAC 또는 Spacemacs에 대한 대안을 만들려는 의도 나 가용성이 없습니다. EMACS와 함께 기쁨 (다른 모든 Emacser와 마찬가지로)을 찾는 동안 Minemacs는 일상 업무에서 사용하는 도구 일뿐 아니라 다른 Emacsers와 공유하고 싶습니다.
Minemacs에는 배터리가 포함되어 있습니다. 다음은 고유 한 기능입니다.
사용자가 필요할 때까지 로딩 패키지를 지연시킵니다. 또는로드 해야하는 패키지의 경우 EMAC를 시작한 후이를 수행하십시오.
패키지는 모듈로 그룹화되어 있으며 약간의 접착제가 함께 작동하도록합니다.
Minemacs에는 프로그래밍 언어로 작업 할 수있는 많은 주요 모드 및 패키지가 포함되어 있습니다. 그러나 이러한 패키지의 대부분은 시작시로드되지 않습니다. Minemacs는 주문형 시스템을 사용하여 사용자가 지원되는 파일을 열거나 주문형 모듈 중 하나에서 확장 할 수있는 모드가있는 버퍼를 엽니다면 패키지를로드합니다. 이 기능의 동작은 minemacs-on-demand-enable-auto-mode , minemacs-on-demand-enable-magic-mode , minemacs-on-demand-enable-interpreter-mode 및 minemacs-on-demand-enable-companion-packages 통해 맞춤화됩니다.
쉘을 열고 달리기 :
git clone --recursive https://github.com/abougouffa/minemacs.git ~ /.emacs.d && emacs 이 명령을 실행하면 저장소가 복제되고 EMAC가 시작됩니다. 초기 실행 중에 EMACS는 필요한 패키지를 자동으로 설치합니다. EMACS가 추가 물건을 설치하기 위해로드 할 때 Mx minemacs-run-build-functions 실행해야 할 수도 있습니다 (일부 라이브러리 구축, 괴상한 글꼴 설치 등).
중요한
EMACS emacs-30 30 지점에서 구축 된 신선한 EMACS 30.0.92 (권장 버전) 를 사용하고 있습니다. 그러나 Ubuntu Linux 및 MacOS 및 Wind 이러한 조치는이 시스템에서 미네마가 "실행 가능"하도록 보장합니다. 모든 모듈이 활성화되어 있습니다. 그러나 Linux 이외의 시스템에서 구성을 전체적으로 올바르게 검증하기 위해 추가 테스트를 수행해야합니다.
Minemacs를 개인화하려면 기본적으로 기본적으로 ~/.minemacs.d/ 또는 .emacs.d/user-config/ (가장 먼저 찾을 수 있음)에 특정 파일 세트를 추가 할 수 있습니다. 그러나 다른 디렉토리를 사용하는 경우 MINEMACSDIR 환경 변수를 설정하여 유연성이 있습니다.
~/.minemacs.d 디렉토리에 추가 할 수있는 두 가지 주요 파일이 있습니다.
~/.minemacs.d/modules.el 파일에는 활성화 된 모듈 목록 및/또는 비활성화 된 패키지 목록이 포함되어 있습니다 (이 파일에서 minemacs-modules 및 minemacs-disabled-packages 설정할 수 있음). 따라서 모듈 ( 예 : me-prog )을 활성화하려는 경우 특정 패키지 ( 예 : ts-movement )를 제외 해야하는 경우 후자를 minemacs-disabled-packages 에 추가 할 수 있습니다.~/.minemacs.d/config.el 파일에는 사용자 구성 및 사용자 정의가 포함되어 있으므로 Minemacs ' init.el 의 끝에서로드되는 init.el 로 생각할 수 있습니다! 이 저장소에는 modules.el 및 config.el ( skel/ ) 용 골격 파일이 포함되어 있습니다. Skeleton 파일과 동일한 구조, 특히 with-eval-after-load 및 use-package 사용을 직접 사용하는 대신 사용하는 require 좋습니다 (즉시 패키지를로드 require EMAC의 시작 시간이 증가합니다).
워크 플로에서는 주로 모든 기계에서 동일한 구성 파일을 사용합니다 (전통에 따라 Dotfiles 저장소에서 공유됩니다). 그러나 개인 및 기계 별 구성을 포함하는 기계 별 (로컬) 구성이 있습니다. 예를 들어, 워크 스테이션에서 이메일 주소를 덮어 쓰고, 이메일 계정을 설정하고, 내 워크 스테이션에서 Forge 및 Jira 통합 등을 설치하는 데 사용합니다.
이를 위해 Minemacs는 ~/.minemacs.d/local/{early-config,init-tweaks,modules,config}.el 및로드, ~/.minemacs.d/{early-config,init-tweaks,modules,config}.el 에서 파일을 확인합니다.
Minemacs는 일부 고급 사용자 정의 파일을 제공합니다. 이러한 파일은 Minemacs의 동작을 조정하고, 초기 초기화 코드를 추가하고, 이전 EMACS 버전에서 Minemacs를 실행할 수있게하는 데 사용될 수 있습니다.
~/.minemacs.d/early-config.el 파일은 Minemacs의 early-init.el 의 끝에로드됩니다. UI를 조정하는 것과 같은 초기 물건을 설정하고 ~/.emacs.d/early-init.el 의 minemacs가 설정 한 변수를 덮어 쓸 수 있습니다.~/.minemacs.d/init-tweaks.el 파일은 init.el 파일의 초기 단계에서로드됩니다. Minemacs가 패키지와로드 모듈을 사용자 정의하기 전에 유용한 작업을 수행하는 데 사용할 수 있습니다. 자세한 내용은 init.el 의 의견을 참조하십시오.일부 환경 변수를 통해 Minemacs의 동작을 사용자 정의 할 수 있습니다.
MINEMACS_DIR 또는 MINEMACSDIR : minemacs의 경로 사용자 구성 디렉토리, 설정하지 않으면 ~/.minemacs.d/ 사용됩니다.MINEMACS_MSG_LEVEL : 메시지 로그 레벨을 1 (오류)에서 4 (모든 메시지)로 변경합니다.MINEMACS_VERBOSE : 더 많은 장황 (디버깅에 유용).MINEMACS_DEBUG : 스타트 업에서 디버깅을 활성화하십시오 (그리고 장황함).MINEMACS_ALPHA : 프레임 background-alpha 백분율로 설정하십시오 (0에서 100까지의 값).MINEMACS_NOT_LAZY : EMAC를로드 직후 게으른 패키지를로드하십시오.MINEMACS_ALWAYS_DEMAND : 모든 패키지를 즉시로드합니다 (이것은 use-package-always-demand t 로 설정하고 use-package-always-defer nil 로 설정하여 작동합니다 (기본적으로 Minemacs는 use-package :demand 합니다).MINEMACS_IGNORE_USER_CONFIG : 공간 분리 된 값,로드 ~/.minemacs.d/<file>.el 사용자 구성 파일. <file> 에 대한 허용 값은 early-config , init-tweaks , modules , config , local/early-config , local/init-tweaks , local/modules 및 local/config 입니다. 모든 사용자 구성 파일을 비활성화하려면 all 사용하십시오.MINEMACS_LOAD_ALL_MODULES : 모든 모듈을로드합니다 ( ~/.minemacs.d/modules.el 고려하지 않고).MINEMACS_BENCHMARK : EMACS 초기화시 벤치 마크를 실행하고 ( benchmark-init.el 사용) 시작 후 결과를 표시합니다 (게으른 패키지 포함).MINEMACS_NO_PROXIES : early-config.el 에 minemacs-proxies 설정이있는 경우 설정하지만 이러한 프록시를 통과하지 않고 EMACS를 시작하려는 경우 (직장에 프록시를 사용하는 경우 유용하지만 패키지를 다운로드 할 수 없도록 EMAC가 통과하지 않으려면 유용합니다). Minemacs에서 정의한 사용자 정의 변수, 기능 및 명령에 대한 자세한 내용은 소스 코드에서 생성 된 문서를 참조 할 수 있습니다.
Minemacs와 관련된 문제를 경험 한 경우 FAQ를 살펴보고 토론을 참조하거나 열린 문제를 확인하거나 새로운 문제를 열 수 있습니다.