mle은 C로 작성된 작고 유연한 터미널 기반 텍스트 편집기입니다.
Linux, Windows(Cygwin 또는 WSL), FreeBSD, macOS 등에서 실행됩니다.
$ sudo apt install git build-essential # install git, make, gcc, libc-dev
$
$ git clone --recursive https://github.com/adsr/mle.git
$ cd mle
$ make mle_vendor=1
완전히 정적인 바이너리를 빌드하려면 make mle_vendor=1 mle_static=1
보세요.
vendor/
대신 일반 make
실행하여 시스템 라이브러리에 연결할 수도 있습니다. 이를 위해서는 다음 패키지를 설치해야 합니다.
uthash-dev
liblua5.4-dev
libpcre2-dev
/usr/local/bin
에 설치하려면:
$ make install
사용자 정의 디렉토리에 설치하려면 prefix
제공하십시오. 예:
$ make install prefix=/usr # /usr/bin/mle
mle은 시스템의 패키지 관리자를 통해 설치할 수 있습니다.
# apt install mle # Ubuntu and Debian-based distros
# dnf install mle # CentOS, RHEL, Fedora-based distros
# pkg install mle # FreeBSD
# yay -S mle # Arch (via AUR)
# snap install mle # all major Linux distros
# nix-env -i mle # NixOS (via nixpkgs)
# apk add mle # Alpine
# xbps-install mle # Void
# brew install mle # macOS (Homebrew)
# port install mle # macOS (MacPorts)
# setup-x86.exe -q -P mle # Cygwin
$ mle # Open blank buffer
$ mle one.c # Edit one.c
$ mle one.c:100 # Edit one.c at line 100
$ mle one.c two.c # Edit one.c and two.c
$ mle -h # Show command line help
기본 키 바인딩은 직관적입니다. 정상적으로 텍스트를 입력하고, 이동하려면 방향 키를 사용하고, 저장하려면 Ctrl-S
사용하고, 열려면 Ctrl-O
, 종료하려면 Ctrl-X
사용하세요.
전체 도움말을 보려면 F2
누르세요.
mle은 명령줄 옵션을 통해 사용자 정의됩니다. 모든 cli 옵션을 보려면 mle -h
실행하십시오.
기본 옵션을 설정하려면 ~/.mlerc
(또는 /etc/mlerc
)라는 rc 파일을 만드세요. rc 파일의 내용은 줄 바꿈으로 구분된 임의 개수의 cli 옵션입니다. 세미콜론으로 시작하는 줄은 주석으로 해석됩니다.
~/.mlerc
가 실행 가능하면 mle은 이를 실행하고 위에서 설명한 대로 결과 stdout을 해석합니다. 예를 들어, 실행 가능한 ~/.mlerc
bash(1) 스크립트의 다음 코드 조각을 고려해 보세요.
# Define 'test' kmap
echo '-Ktest,,1'
# M-q: replace grep with git grep if `.git` exists
if [ -d ".git" ]; then
echo '-kcmd_grep,M-q,git grep --color=never -P -i -I -n %s 2>/dev/null'
fi
# Set default kmap
echo '-n test'
.git
현재 작업 디렉토리에 존재하는 경우 내장 grep 명령을 git grep
으로 대체합니다.
다음 프로그램은 mle의 특정 기능이 PATH
에 있는 경우 이를 활성화하거나 향상시킵니다.
cmd_shell
(기본적으로 Me
)을 통해 임의의 쉘 명령을 실행할 수도 있습니다. 텍스트를 선택하면 명령의 stdin으로 전송됩니다. 결과 stdout은 텍스트 버퍼에 삽입됩니다.
mle은 편집기를 일반 명령줄 도구로 사용하는 데 유용할 수 있는 비대화형 편집을 지원합니다. 헤드리스 모드에서 mle은 stdin을 버퍼로 읽고 지정된 경우 시작 매크로를 적용한 다음 버퍼 내용을 stdout에 씁니다. 예를 들어:
$ echo -n hello | mle -M 'test C-e space w o r l d enter' -p test
hello world
stdin이 파이프인 경우 mle은 자동으로 헤드리스 모드로 전환됩니다. -H
옵션을 사용하여 헤드리스 모드를 명시적으로 활성화하거나 비활성화할 수 있습니다.
stdin이 파이프이고 헤드리스 모드가 -H0
통해 비활성화된 경우 mle은 stdin을 새 버퍼로 읽은 다음 대화형 모드에서 정상적으로 실행됩니다.
mle은 Lua 프로그래밍 언어를 통해 확장 가능합니다. 스크립트는 -x
cli 옵션을 통해 로드됩니다. 스크립트에 의해 등록된 명령은 -k
통해 정상적으로 키에 매핑될 수 있습니다. 간단한 예는 uscript.lua
참조하세요.
Wren 스크립팅을 지원하는 wren
브랜치도 있습니다. 해당 작업은 일시 중지되었습니다.
mle은 다음 라이브러리를 광범위하게 사용합니다.