nano edit 에디터 설정 윈도우 편집기로 변경 명령
컨텐츠 정보
- 9,421 조회
- 5 댓글
- 0 추천
- 목록
본문
nano edit 에디터 설정 윈도우 편집기로 변경 명령
nano ~/.nanorc
시놀로지 와 coreelec 의 조건입니다
#nano ~/.nanorc #set const # error set tabsize 4 set autoindent set backup #file~ save old file set historylog #set mouse #LANG="ko_KR.UTF-8" #error #LANG="ko_KR.EUC-KR" #error #LANGUAGE="ko_KR:ko:en_GB:en" #error bind ^S writeout main # M-lM- ^`M-l^~M-% bind ^X cut main # M-m^u^|M-lM-$^dM-l^~^pM-kM-%M-4M-jM-8M-0 bind ^V paste main # M-m^u^|M-lM-$^dM-kM-6^yM-l^}M-4M-jM-8M-0 bind ^C copy main # M-m^u^|M-lM-$^dM-kM-3M-5M-l^bM-, bind ^H replace main # M-lM-0M->M-l^u^dM-kM-0^tM-jM->M-8M-jM-8M-0 bind ^Q exit main # M-lM-"^eM-kM-#^l bind ^Z undo main # M-k^p^xM-k^o^lM-kM-&M-,M-jM-8M-0 bind ^F whereis main # M-lM-0M->M-jM-8M-0 #bind F3 searchagain main # M-k^x^pM-lM-0M->M-jM-8M-0 #bind F3 search main # M-k^x^pM-lM-0M->M-jM-8M-0 bind F1 help main bind ^Y redo main bind ^G gotoline main bind ^L curpos main bind ^Space mark main
유닉스 계열 운영 체제의 콘솔(터미널)에서 설정 파일 수정을 위해서 텍스트 파일을 편집할 일이 많다.
SSH를 통해서 접속한 경우에는 윈도우에서 편집한 후 복사 후 붙여넣기 하면 되지만,
가끔씩 콘솔에서 직접 수정해야 할 경우에는 손에 맞는 텍스트 편집기가 없어서 골치를 앓았다.
vi는 커맨드 모드에서 키를 잘못 누르면 대소문자가 바뀌는 문제 때문에 적응이 안 되고,
emacs는 무거운 데다가 단축키가 적응이 안 되고,
micro, mcedit는 X윈도우에서는 잘 되던 Shift 선택키가 콘솔 모드에서는 안 먹히고, (;-_-;)
결국 더 좋은 방안을 찾을 때까지는 nano 에디터의 단축키를 입맛에 맞게 변경해서 쓰기로 했다.
/etc/nanorc 혹은 ~/.nanorc 에 다음 내용을 추가한다.
--- 시작 ---
bind F1 help main
bind ^X cut main
bind ^C copy main
bind ^V paste main
bind ^Z undo main
bind ^Y redo main
bind ^F whereis main
bind F3 findnext main
bind ^H replace main
bind ^G gotoline main
bind ^L curpos main
bind ^S writeout main
bind ^Q exit main
bind ^Space mark main
--- 끝 ---
이렇게 하면 윈도우의 노트패드와 비슷하게 쓸 수 있다.
다만, 텍스트 선택하는 mark함수의 경우,
윈도우에서는 shift키를 누른 상태로 이동키를 누르면 되지만,
유닉스 계열 콘솔에서는 shift키를 적절하게 인식하지 못해서,
윈도우와 같은 동작을 하도록 설정하지 못하고 Ctrl-Space키로 대체했다.
추가>
콘솔에서 shift키로 선택이 안 되는 것은 해결하는 방법을 다룬 문서를 찾았다.
(원래는 이맥스(Emacs) cua모드를 사용할 때 발생하는 문제점을 해결하는 방법을 다룬 문서인데,
기본 원리는 동일하므로 다른 에디터에도 적용가능할 듯 하다.)
https://www.emacswiki.org/emacs/CuaModeTerminalProblems
nanorc 파일에서 지원되는 설정은 다음과 같습니다.
set allow_insecure_backup
파일을 백업 할 때는 특별한 OS 고려 사항으로 인해 권한을 다시 설정할 수없는 경우에도 백업이 성공하도록 허용하십시오. 필요하지 않은 경우이 옵션을 활성화하지 마십시오.
set autoindent
자동 들여 쓰기를 사용하십시오.
set backup
파일을 저장할 때, 파일의 이전 버전을 물결표 (
~
)로 묶은 현재 파일 이름으로 백업하십시오 .set backupdir "directory"
nano
파일 백업이 사용 가능한 경우 고유 백업 파일을 넣을 디렉토리를 설정하십시오 .set backwards
기본적으로 역방향 검색을 수행하십시오.
set boldtext
제목 표시 줄, 상태 표시 줄, 키 콤보 및 선택한 텍스트에 리버스 비디오 대신 굵게 표시하십시오. "titlecolor", "statuscolor"및 "keycolor"옵션을 설정하여 처음 세 개에 대해이를 재정의 할 수 있습니다.
set brackets "string"
단락을 정당화 할 때 닫는 괄호로 취급되는 문자를 설정하십시오. 공백 문자는 포함되지 않을 수 있습니다. 선택적으로 지정된 닫는 대괄호가 오는 닫는 문장 부호 ( "punct"참조) 만 문장을 끝낼 수 있습니다. 기본값은
"" ')>]} "
set casesensitive
기본적으로 대소 문자 구분 검색을 수행하십시오.
set const
상태 표시 줄에 커서 위치를 지속적으로 표시합니다.
set cut
전체 줄을 자르는 대신 기본적으로 줄 끝을 사용하십시오.
set fill number
열 번호 number의 하드 줄 바꿈 . 경우 수가 0 이하이고, 최대 선로 길이 이하의 폭 화면 것이다 숫자 열. 기본값은 -8입니다.
set functioncolor fgcolor,bgcolor
화면 하단의 두 도움말 라인에서 기능 설명에 사용할 색상 조합을 지정하십시오. 자세한 내용
set titlecolor
은 참조하십시오.set historylog
사용 가능 ~ / .nano / search_history 검색 / 대체 문자열을 저장하고 읽는 데 사용됩니다.
set keycolor fgcolor,bgcolor
화면 맨 아래에있는 두 개의 도움말 라인에서 바로 가기 키 콤보에 사용할 색상 조합을 지정하십시오. 자세한 내용
set titlecolor
은 참조하십시오.set locking
파일을 편집 할 때 vim 스타일 잠금 파일을 활성화하십시오.
set matchbrackets "string"
대괄호 검색으로 찾을 수있는 열기 및 닫기 대괄호를 설정하십시오. 공백 문자는 포함되지 않을 수 있습니다. 오프닝 세트는 클로저 세트 앞에 와야하며 두 세트는 동일한 순서로 있어야합니다. 기본값은
"(<[{)>]}"
set morespace
제목 표시 줄 아래의 빈 줄을 추가 편집 공간으로 사용하십시오.
set mouse
마우스 지원을 활성화하여 마우스 클릭을 사용하여 커서를 배치하거나, 마크를 두 번 클릭하거나, 바로 가기를 실행할 수 있습니다.
set multibuffer
파일을 자체 버퍼에 삽입 할 수 있습니다.
set noconvert
DOS / Mac 형식의 파일을 변환하지 마십시오.
set nofollow
파일을 작성할 때 심볼릭 링크를 따르지 마십시오.
set nohelp
화면 하단에 도움말 목록을 표시하지 마십시오.
set nonewlines
파일 끝에 줄 바꿈을 추가하지 마십시오.
set nowrap
텍스트를 전혀 줄 바꿈하지 마십시오.
set operatingdir "directory"
nano
"디렉토리"및 해당 서브 디렉토리 내의 파일 만 읽고 씁니다. 또한 현재 디렉토리가 여기로 변경되어이 디렉토리에서 파일이 삽입됩니다. 기본적으로 운영 디렉토리 기능은 꺼져 있습니다.set poslog
편집 세션 사이에 파일의 커서 위치를 저장하십시오.
set preserve
XON 및 XOFF 키 (^ Q 및 ^ S)를 유지하십시오.
set punct "string"
단락을 정당화 할 때 닫는 문장 부호로 취급되는 문자를 설정하십시오. 공백 문자는 포함되지 않을 수 있습니다. 선택적으로 닫는 대괄호 ( "괄호"참조)와 함께 지정된 닫는 문장 부호 만 문장을 끝낼 수 있습니다. 기본값은 "!.?"입니다.
set quickblank
빠른 상태 표시 줄 비우기를 수행하십시오. 키 대신 25 번이 아닌 상태 표시 줄 메시지가 사라집니다.
set quiet
설정
nano
하면 nanorc 파일에 오류를보고하지 않으며 시작시 Enter 키를 눌러 확인하도록 요청하지 않습니다. 이 옵션을 사용하면 파일 상단에 배치하여 완전히 효과적이어야합니다.set quotestr "string"
이메일 인용 단락을 정당화하는 데 사용되는 이메일 인용 문자열. 시스템에서 지원하는 경우 확장 정규식, 그렇지 않으면 리터럴 문자열입니다. 기본값은
"^ ([\\ t] * [# :> \\ |}]) +"
정규 표현식 지원을 확장 한 경우 ">". '\\ t'는 리터럴 탭 문자를 나타냅니다.
set rebinddelete
백 스페이스와 삭제가 모두 제대로 작동하도록 Delete 키를 다르게 해석하십시오. 백 스페이스가 시스템에서 삭제와 같은 역할을하는 경우에만이 옵션을 사용해야합니다.
set rebindkeypad
숫자 키패드 키가 모두 올바르게 작동하도록 해석하십시오. 이 옵션을 활성화하면 마우스 지원이 제대로 작동하지 않으므로이 옵션을 사용하지 않으면이 옵션 만 사용해야합니다.
set regexp
기본적으로 확장 정규식 검색을 수행하십시오.
set smarthome
Home 키를 더 똑똑하게 만드십시오. 줄에서 공백이 아닌 문자의 시작 부분에서 아무 곳이나 홈을 누르면 커서가 앞 또는 뒤로 시작으로 이동합니다. 커서가 이미 해당 위치에 있으면 줄의 실제 시작 부분으로 이동합니다.
set smooth
기본적으로 부드러운 스크롤을 사용하십시오.
set softwrap
매우 긴 줄을 더 쉽게 볼 수 있도록 부드러운 줄 바꿈을 활성화합니다.
set speller "spellprog"
내장 된 철자 대신 철자 검사기 "spellprog"를 사용하십시오.
set statuscolor fgcolor,bgcolor
상태 표시 줄에 사용할 색상 조합을 지정하십시오. 자세한 내용
set titlecolor
은 참조하십시오.set suspend
nano
일시 중지를 허용 합니다.set tabsize number
숫자 열의 탭 크기를 사용하십시오 . 의 값 수는 기본값은 8 0보다 커야합니다.
set tabstospaces
입력 한 탭을 공백으로 변환하십시오.
set tempfile
종료시 자동 저장, 프롬프트하지 않습니다.
set titlecolor fgcolor,bgcolor
제목 표시 줄에 사용할 색상 조합을 지정하십시오. 전경 및 배경의 유효한 색상 이름은 흰색, 검은 색, 빨간색, 파란색, 녹색, 노란색, 자홍색 및 녹청입니다. 그리고 fgcolor 또는 , bgcolor 가 생략 될 수 있습니다.
set view
파일 수정을 허용하지 않습니다.
set whitespace "string"
탭과 공백이 있음을 나타내는 데 사용되는 두 문자를 설정하십시오. 단일 열 문자 여야합니다. UTF-8 로켈의 기본 쌍은 "»Â"및 다른 로케일 ">"입니다.
set wordbounds
문장 부호 문자를 단어의 일부로 취급하여 단어 경계를보다 정확하게 감지합니다.
■ set mouse
마우스 이동 커셔 위치와 동일하게 이동
마우스 길게 누르면 mark 되고 이동위치까지 블럭 설정 됩니다...ctrl + c 로 카피 합니다 ctrl + v 로 붙이세요
나노 문서편집기 (Nano) http://openwiki.kr/tech/nano
유닉스 계열에서 주로 사용하는 편집기는 vi 편집기이다. 하지만, 리눅스나 유닉스를 처음 접하는 초보자에게는 너무 복잡하다. GNU에서 만든 Nano 라는 편집기는 기능은 적지만 설정 파일의 간단한 편집같은 것은 할 수 있으며, 조작이 쉽다.
자동 들여쓰기 기능
프로그래밍의 코드블럭을 구분하기 위해서 들여쓰기를 많이 한다. 대부분 TAB키등으로 띄우지만, 깊어지면 힘들어진다. 이 들여쓰기를 자동으로 해 주는 기능이 있다. 자동 들여쓰기를 활성화 하기 위해서는 Alt+I를키 누르거나, Alt키가 먹지 않는다면, ESC키를 누르고 I를 누르면 활성화된다.
스마트 Home 키 기능
프로그래밍 하다가 그 줄의 맨 앞으로 갈 때가 있다. 이럴 때 HOME키를 누르게 되며, 이러면 코드블럭을 위해서 띄워놓은 공백로으 갈 때가 있다. 하지만, 스마트 HOME키 기능을 활성화 하면, 공백을 무시한 처음 글짜에 커서가 위치한다. 이 기능 을 활성화 하기 위해서 Alt + H 키를 누른다.
유니코드 지원
다국어 지원을 위해서 유니코드(UTF-8)를 지원한다.
아주 간단한 파일 브라우징 기능 제공
편집할 파일을 읽기 위해서 Ctrl+R 키를 누르고, Ctrl+T 키를 누르면 간한하게 파일리 스트를 볼 수 있고 선택하여 편집할 수 있다.
- 저장 : Ctrl + O
- 종료 : Ctrl + X
- 찾기 : Ctrl + W
- 찾고 바꾸기 : Ctrl + \
- 블럭지정 : Ctrl + ^
- 잘라내기 : Ctrl + K
- 붙여넣기 : Ctrl + U
- 줄바꿈 선택 : ESC → $
설치
우분투에 기본적으로 같이 설치된다.
단축키 변경
단축키를 마음대로 변경 할 수 있다. 노트패드와 비슷하게 바꾸어 보았다. /etc/nanorc 에 추가하면 된다.
sudo nano /etc/nanorc
bind ^S writeout main # 저장 bind ^X cut main # 한줄자르기 bind ^V uncut main # 한줄붙이기 bind ^C copytext main # 한줄복사 bind ^H replace main # 찾아바꾸기 bind ^Q exit main # 종료 bind F10 exit main # 종료 bind ^Z undo main # 되돌리기 bind ^F whereis main # 찾기 bind F3 searchagain main # 또찾기
구문강조
- conf.nanorc
### 편의를 위한 각종 설정파일 강조. syntax "config" "(\.|/|)config$" "(\.|/|)conf$" "(\.|/|)logout$" "(\.|/|)COLORS$" "(\.|/|)colors$" color red "/.*$" "TERM" "\..*$" "=.*$" "\*.*$" color white ":unscaled" "[0-9]" color blue "setenv|export" "\;" color green "#.*$"
- ngnix.nanorc
syntax "Nginx" "nginx.*\.conf$" "\.nginx$" header "^(server|upstream)[a-z ]*\{$" color brightmagenta "\<(events|server|http|location|upstream)[[:space:]]*\{" color cyan "(^|[[:space:]{;])(access_log|add_after_body|add_before_body|add_header|addition_types|aio|alias|allow|ancient_browser|ancient_browser_value|auth_basic|auth_basic_user_file|autoindex|autoindex_exact_size|autoindex_localtime|break|charset|charset_map|charset_types|chunked_transfer_encoding|client_body_buffer_size|client_body_in_file_only|client_body_in_single_buffer|client_body_temp_path|client_body_timeout|client_header_buffer_size|client_header_timeout|client_max_body_size|connection_pool_size|create_full_put_path|daemon|dav_access|dav_methods|default_type|deny|directio|directio_alignment|disable_symlinks|empty_gif|env|error_log|error_page|expires|fastcgi_buffer_size|fastcgi_buffers|fastcgi_busy_buffers_size|fastcgi_cache|fastcgi_cache_bypass|fastcgi_cache_key|fastcgi_cache_lock|fastcgi_cache_lock_timeout|fastcgi_cache_min_uses|fastcgi_cache_path|fastcgi_cache_use_stale|fastcgi_cache_valid|fastcgi_connect_timeout|fastcgi_hide_header|fastcgi_ignore_client_abort|fastcgi_ignore_headers|fastcgi_index|fastcgi_intercept_errors|fastcgi_keep_conn|fastcgi_max_temp_file_size|fastcgi_next_upstream|fastcgi_no_cache|fastcgi_param|fastcgi_pass|fastcgi_pass_header|fastcgi_read_timeout|fastcgi_send_timeout|fastcgi_split_path_info|fastcgi_store|fastcgi_store_access|fastcgi_temp_file_write_size|fastcgi_temp_path|flv|geo|geoip_city|geoip_country|gzip|gzip_buffers|gzip_comp_level|gzip_disable|gzip_http_version|gzip_min_length|gzip_proxied|gzip_static|gzip_types|gzip_vary|if|if_modified_since|ignore_invalid_headers|image_filter|image_filter_buffer|image_filter_jpeg_quality|image_filter_sharpen|image_filter_transparency|include|index|internal|ip_hash|keepalive|keepalive_disable|keepalive_requests|keepalive_timeout|large_client_header_buffers|limit_conn|limit_conn_log_level|limit_conn_zone|limit_except|limit_rate|limit_rate_after|limit_req|limit_req_log_level|limit_req_zone|limit_zone|lingering_close|lingering_time|lingering_timeout|listen|location|log_format|log_not_found|log_subrequest|map|map_hash_bucket_size|map_hash_max_size|master_process|max_ranges|memcached_buffer_size|memcached_connect_timeout|memcached_next_upstream|memcached_pass|memcached_read_timeout|memcached_send_timeout|merge_slashes|min_delete_depth|modern_browser|modern_browser_value|mp4|mp4_buffer_size|mp4_max_buffer_size|msie_padding|msie_refresh|open_file_cache|open_file_cache_errors|open_file_cache_min_uses|open_file_cache_valid|open_log_file_cache|optimize_server_names|override_charset|pcre_jit|perl|perl_modules|perl_require|perl_set|pid|port_in_redirect|postpone_output|proxy_buffer_size|proxy_buffering|proxy_buffers|proxy_busy_buffers_size|proxy_cache|proxy_cache_bypass|proxy_cache_key|proxy_cache_lock|proxy_cache_lock_timeout|proxy_cache_min_uses|proxy_cache_path|proxy_cache_use_stale|proxy_cache_valid|proxy_connect_timeout|proxy_cookie_domain|proxy_cookie_path|proxy_hide_header|proxy_http_version|proxy_ignore_client_abort|proxy_ignore_headers|proxy_intercept_errors|proxy_max_temp_file_size|proxy_next_upstream|proxy_no_cache|proxy_pass|proxy_pass_header|proxy_read_timeout|proxy_redirect|proxy_send_timeout|proxy_set_header|proxy_ssl_session_reuse|proxy_store|proxy_store_access|proxy_temp_file_write_size|proxy_temp_path|random_index|read_ahead|real_ip_header|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver|resolver_timeout|return|rewrite|root|satisfy|satisfy_any|secure_link_secret|send_lowat|send_timeout|sendfile|sendfile_max_chunk|server|server|server_name|server_name_in_redirect|server_names_hash_bucket_size|server_names_hash_max_size|server_tokens|set|set_real_ip_from|source_charset|split_clients|ssi|ssi_silent_errors|ssi_types|ssl|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_client_certificate|ssl_crl|ssl_dhparam|ssl_engine|ssl_prefer_server_ciphers|ssl_protocols|ssl_session_cache|ssl_session_timeout|ssl_verify_client|ssl_verify_depth|sub_filter|sub_filter_once|sub_filter_types|tcp_nodelay|tcp_nopush|timer_resolution|try_files|types|types_hash_bucket_size|types_hash_max_size|underscores_in_headers|uninitialized_variable_warn|upstream|user|userid|userid_domain|userid_expires|userid_name|userid_p3p|userid_path|userid_service|valid_referers|variables_hash_bucket_size|variables_hash_max_size|worker_priority|worker_processes|worker_rlimit_core|worker_rlimit_nofile|working_directory|xml_entities|xslt_stylesheet|xslt_types)([[:space:]]|$)" color brightcyan "\<(on|off)\>" color brightyellow "\$[A-Za-z][A-Za-z0-9_]*" color red "[*]" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color yellow start="'$" end="';$" color green "(^|[[:space:]])#([^{].*)?$" #color ,green "[[:space:]]+$" #color ,red " + +| + +"
저장 위치
/usr/share/nano/conf.nanorc
위와 같이 파일을 만들어 넣으면 된다.
asm.nanorc fortran.nanorc man.nanorc ocaml.nanorc ruby.nanorc awk.nanorc gentoo.nanorc mgp.nanorc patch.nanorc sh.nanorc c.nanorc groff.nanorc mutt.nanorc perl.nanorc tcl.nanorc cmake.nanorc html.nanorc nano-menu.xpm php.nanorc tex.nanorc css.nanorc java.nanorc nanorc.nanorc pov.nanorc xml.nanorc debian.nanorc makefile.nanorc objc.nanorc python.nanorc
기본으로 깔린다.
추가적인 컬러파일은 https://github.com/scopatz/nanorc 참조.
- 출처: 리눅스 포털
연결문서
관련자료
11qkr님의 댓글
11qkr님의 댓글
===========================
#nano ~/.nanorc
#set const # error
set tabsize 4
set autoindent
set backup #file~ save old file
set historylog
#set mouse
#LANG="ko_KR.UTF-8" #error
#LANG="ko_KR.EUC-KR" #error
#LANGUAGE="ko_KR:ko:en_GB:en" #error
bind ^S writeout main # M-lM- ^`M-l^~M-%
bind ^X cut main # M-m^u^|M-lM-$^dM-l^~^pM-kM-%M-4M-jM-8M-0
#bind ^V paste main # M-m^u^|M-lM-$^dM-kM-6^yM-l^}M-4M-jM-8M-0 # synology $
bind ^V uncut main #debian
#bind ^C copy main # M-m^u^|M-lM-$^dM-kM-3M-5M-l^bM-, #synology coreelec
bind ^C copytext main #debian
bind ^H replace main # M-lM-0M->M-l^u^dM-kM-0^tM-jM->M-8M-jM-8M-0
bind ^Q exit main # M-lM-"^eM-kM-#^l
bind ^Z undo main # M-k^p^xM-k^o^lM-kM-&M-,M-jM-8M-0
bind ^F whereis main # M-lM-0M->M-jM-8M-0
bind F3 searchagain main # M-k^x^pM-lM-0M->M-jM-8M-0 # debian
#bind F3 search main # M-k^x^pM-lM-0M->M-jM-8M-0
bind F1 help main
bind ^Y redo main
bind ^G gotoline main
bind ^L curpos main
bind ^Space mark main
11qkr님의 댓글
==============================
#set const # error
set tabsize 4
set autoindent
set backup #file~ save old file
set historylog
#set mouse
#LANG="ko_KR.UTF-8" #error
#LANG="ko_KR.EUC-KR" #error
#LANGUAGE="ko_KR:ko:en_GB:en" #error
bind ^S writeout main # M-lM- ^`M-l^~M-%
bind ^X cut main # M-m^u^|M-lM-$^dM-l^~^pM-kM-%M-4M-jM-8M-0
bind ^V paste main # M-m^u^|M-lM-$^dM-kM-6^yM-l^}M-4M-jM-8M-0
bind ^C copy main # M-m^u^|M-lM-$^dM-kM-3M-5M-l^bM-,
bind ^H replace main # M-lM-0M->M-l^u^dM-kM-0^tM-jM->M-8M-jM-8M-0
bind ^Q exit main # M-lM-"^eM-kM-#^l
bind ^Z undo main # M-k^p^xM-k^o^lM-kM-&M-,M-jM-8M-0
bind ^F whereis main # M-lM-0M->M-jM-8M-0
#bind F3 searchagain main # M-k^x^pM-lM-0M->M-jM-8M-0
#bind F3 search main # M-k^x^pM-lM-0M->M-jM-8M-0
bind F1 help main
bind ^Y redo main
bind ^G gotoline main
bind ^L curpos main
bind ^Space mark main
11qkr님의 댓글
=================================
#export LANG=ko_KR.UTF-8 #error
#set encoding=utf8
#set const # error
set tabsize 4
set autoindent
set backup #file~ save old file
set historylog
#set mouse
#LANG="ko_KR.UTF-8"
#LANG="ko_KR.EUC-KR"
#LANGUAGE="ko_KR:ko:en_GB:en"
bind ^S writeout main # M-lM- ^`M-l^~M-%
bind ^X cut main # M-m^u^|M-lM-$^dM-l^~^pM-kM-%M-4M-jM-8M-0
bind ^V uncut main # M-m^u^|M-lM-$^dM-kM-6^yM-l^}M-4M-jM-8M-0
bind ^C copytext main # M-m^u^|M-lM-$^dM-kM-3M-5M-l^bM-,
bind ^H replace main # M-lM-0M->M-l^u^dM-kM-0^tM-jM->M-8M-jM-8M-0
bind ^Q exit main # M-lM-"^eM-kM-#^l
bind ^Z undo main # M-k^p^xM-k^o^lM-kM-&M-,M-jM-8M-0
bind ^F whereis main # M-lM-0M->M-jM-8M-0
bind F3 searchagain main # M-k^x^pM-lM-0M->M-jM-8M-0
bind F1 help main
bind ^Y redo main
bind ^G gotoline main
bind ^L curpos main
bind ^Space mark main