GNUEmacsManual:29

From 흡혈양파의 번역工房
Jump to: navigation, search
메일 전송하기(Sending Mail)

메일 전송하기(Sending Mail)

Emacs 로부터 이메일 메시지를 전송하려면 C-x m 을 입력한다. 이는 메시지의 텍스트와 헤더를 편집할 수 있는
*unsent mail*
이란 버퍼로 전환한다. 여기까지 완료되면 C-c C-s 또는 C-c C-c 를 입력하여 전송한다.


C-x m
메일 작성을 시작한다(
compose-mail
).


C-x 4 m
다른 창에서 메일 작성을 시작한다(
compose-mail-other-window
).


C-x 5 m
새로운 프레임에서 메일 작성을 시작한다(
compose-mail-other-frame
).


C-c C-s
메일 버퍼에서 메시지를 전송한다(
message-send
).


C-c C-c
메일 버퍼에서 메시지를 전송하고 버퍼를 bury 한다(
message-send-and-exit
).


메일 버퍼는 일반 Emacs 버퍼이므로 사용자는 메일을 작성하는 동안 다른 버퍼로 전환할 수 있다. 현재 메일을 완료하기 전에 다른 메일을 전송하고 싶다면 C-x m 을 다시 입력하여 다른 수치적 접미사를 이름에 포함한 새로운 메일 버퍼를 연다(149 페이지의 16.3절 [다양한 버퍼(Misc Buffer)] 참고). 접두 인자를 이용해 C-u C-x m 명령어를 호출할 경우 Emacs는 마지막 메일 버퍼로 되돌아가 해당 버퍼 내 메시지를 삭제하기를 원하는지 질문하고, 사용자가 no 라고 답할 경우 남겨둔 메시지를 다시 편집하도록 해준다.


C-x 4 m (
compose-mail-other-window
) 명령어는 다른 창에 메일 버퍼를 표시한다는 점을 제외하면 C-x m 과 동일한 일을 수행한다. C-x 5 m (
compose-mail-other-frame
) 명령어는 이를 새로운 프레임에서 실행한다.


C-c C-c 또는 C-c C-s 를 입력하여 메일을 전송하면 Emacs는 메일을 SMTP를 통해 직접 전송할 것인지 아니면 다른 방법을 이용해 전송할 것인지 질문한다. 상세한 내용은 353 페이지의 29.4.1절 [메일 전송하기(Mail Sending)]를 참고한다.


메일 버퍼의 포맷

메일 버퍼의 내용에 관한 예를 하나 들겠다:

To: subotai@example.org
CC: mongol.soldier@example.net, rms@gnu.org 
Subject: Re: What is best in life? 
From: conan@example.org 
--text follows this line--
To crush your enemies, see them driven before you, and to 
hear the lamentation of their women.


메일 버퍼의 상단에는 헤더 필드 집합이 위치하는데, 이는 이메일의 수신자(들), 제목 등에 관한 정보를 명시하는 데에 사용된다. 위의 버퍼는 '
To
', '
Cc
', '
Subject
', '
From
' 에 대한 헤더 필드를 포함한다. 일부 헤더 필드는 적절할 때에 메일 버퍼에서 자동으로 미리 초기화(pre-initialized)된다.


'
--text follows this line--
' 이라는 라인은 메시지의 본문(또는 텍스트)으로부터 헤더 필드를 구분한다. 그러한 라인 위에 위치한 모든 것은 헤더의 일부로 취급되며, 그 아래는 모두 본문으로 취급된다. 구분하는 라인 자체는 전송된 메시지에 나타나지 않는다.


일반 편집 명령어를 이용해 헤더 필드를 삽입하고 편집할 수도 있다. 헤더 필드를 편집하는 데에 특정적인 명령어에 관해서는 354 페이지의 29.4.2절의 [헤더 편집]을 참고한다. '
Date
' 와 '
Message-Id
' 와 같은 특정 헤더는 메일 버퍼에서 누락되어 메시지가 전송될 때 자동으로 생성되는 것이 보통이다.


메일 헤더 필드(Mail Header Fields)

메일 버퍼 내 헤더 필드는 행의 시작에서 필드명으로 시작되어 콜론으로 완료된다. 필드명에서 대문자와 소문자는 동일하다. 콜론과 선택적 공백 뒤에는 필드의 내용이 따라온다.


사용자는 헤더 필드에 대해 원하는 이름은 무엇이든 사용할 수 있지만 보통 사람들은 의미가 허용되는 표준 필드명만 사용한다.


'
From
' 헤더 필드는 이메일을 전송하는 사람을 식별한다(예: you). 유효한 메일링 주소여야만 답장을 전송 받을 수 있다. 헤더 필드의 기본 내용은
user-full-name
(사용자의 풀 네임을 명시),
user-mail-address
(사용자의 이메일 주소) 변수를 이용해 계산된다. 일부 운영체제에서는 Emacs가 환경 변수를 이용해 이 두 변수를 초기화한다(483 페이지의 C.4.1절 [일반 변수(General Variables)] 참고). 이 정보를 이용할 수 없거나 잘못된 경우 사용자는 변수를 알아서 맞춤화해야 한다(412 페이지의 33.1절 [쉬운 맞춤화(Easy Customization)] 참고).


mail-from-style
변수의 값은 '
From
' 필드의 내용을 어떻게 포맷팅하는지 명시한다:


nil
'
king@grassland.com
' 에서와 같이 주소만 사용한다.


parens
'
king@grassland.com (Elvis Parsley)
' 에서와 같이 주소와 풀 네임을 모두 사용한다.


angles
'
Elvis Parsley <king@grassland.com>
' 에서와 같이 주소와 풀 네임을 모두 사용한다.


any other value 보통
angles
를 사용한다. 하지만
angles
포맷에서 구문적으로 유효하게 남되
parens
포맷에서는 유효하지 않도록 주소를 "quoted(인용부호로 나타내야)"해야 하는 경우
parens
를 대신 사용한다. 이것이 기본값이다.


'
From
' 외에 흔히 사용되는 필드의 테이블은 다음과 같다:


'
To
' 메시지를 보내는 메일링 주소(들). 하나 이상의 주소를 열거하려면 콤마를 이용해 구분한다.


'
Subject
' 메시지의 제목.


'
CC
' 메시지를 전송할 추가 메일링 주소(들). '
To
' 와 같으나 이 메일을 읽는 사람들은 메시지가 자신에게 전송된 메일이라고 간주해선 안 된다는 점이 다르다.


'
BCC
' 메시지를 전송할 추가 메일링 주소(들)로, 실제로 전송된 메시지의 헤더에는 표시되지 않아야 한다. "BCC"는 blind carbon copies를 의미한다.


'
FCC
' 전송된 메시지의 사본을 첨부해야 하는 파일명. 파일이 Babyl 포맷(Emacs 23 이전에 Rmail이 사용하던 포맷)으로 되어 있어 Emacs가 Babyl 포맷으로 작성해야 하는 경우를 제외하고는 mbox 포맷으로 메시지를 작성한다. Rmail 버퍼가 파일을 방문 중이라면 Emacs 는 그에 따라 파일을 업데이트해야 한다. 하나 이상의 파일을 명시하기 위해서는 각 필드에 하나의 파일명만 두고 여러 개의 '
FCC
' 필드를 사용한다.


'
Reply-to
' '
From
' 대신 답장을 전송해야 하는 주소. 어떠한 이유로 인해 사용자의 '
From
' 주소가 답장을 수신할 수 없을 경우에 사용된다.


'
Mail-reply-to
' 해당 필드는 '
Reply-to
' 보다 우선시된다. 일부 메일링 목록이 자체 용도로 '
Reply-to
' 필드를 설정하기 때문에 이것이 사용된다(다소 논쟁의 여지가 있는 사용법이다.).


'
Mail-followup-to
' 이후 (follow-up) 메시지에 대한 기본 수신자로 사용할 여러 주소 중 하나. 일반적으로 사용자가 동의한 메일링 목록으로부터 받은 메시지에 답장을 하거나 추가 사본을 사용자에게 전송할 필요 없이 답장을 목록으로 보내고자 할 때 사용된다.


'
In-reply-to
' 사용자가 답장을 하고 있는 메시지에 대한 식별자. 메일을 읽는 대부분의 사람들은 관련된 메시지를 그룹화하기 위해 이 정보를 사용한다. 보통 이 헤더는 사용자가 Emacs 에 빌드된 메일 프로그램 어디서든 메시지를 응답할 때 자동으로 채워진다.


'
References
' 이전 관련 메시지에 대한 식별자. '
In-reply-to
' 와 같이 이것은 주로 사용자를 대신하여 자동으로 채워진다.


'
To
', '
CC
', '
BCC
' 필드는 표시되는 횟수가 제한되어 있지 않으며, 그러한 헤더 필드는 각각 콤마로 구분된 여러 개의 주소를 포함한다. 이렇게 사용자는 메시지를 전송할 장소를 원하는 만큼 명시할 수 있다. 이러한 필드들은 연속 행을 가질 수도 있으며, 공백으로 시작하여 뒤에 필드의 시작 라인이 따라오는 하나 이상의 라인은 필드의 일부로 간주된다. 아래는 연속 행과 '
To
' 필드에 대한 예이다:
To: foo@example.net, this@example.net, 
  bob@example.com


mail-default-headers
변수를 문자열로 설정하여 Emacs에게 특정 기본 헤더를 메일 버퍼로 삽입하도록 지시할 수 있다. 이후 C-x m 을 사용하면 이 문자열을 메시지 헤더로 삽입한다. 예를 들어 각 메시지에 '
Reply-to
' 와 '
FCC
' 헤더를 추가하는 방법은 다음과 같다:
(setq mail-default-headers
      "Reply-to: foo@example.com\nFCC: ~/Mail/sent")


기본 헤더 필드가 특정 메시지에 적절하지 않으면 메시지를 전송하기 전에 필요에 따라 편집하라.


메일 별칭(Mail Aliases)

하나 또는 이상의 메일링 주소를 의미하는 축약 약호 이름인 메일 별칭(mail aliases)을 정의할 수도 있다. 기본적으로 메일 별칭은
~/.mailrc
라는 파일에 정의된다.
mail-personal-aliase-file
변수를 설정하여 다른 파일명을 명시해도 좋다.


.mailrc
에 별칭을 정의하려면 아래와 같이 행을 작성한다:
alias nick fulladdresses


이는 nickfulladdresses 로 확장되어야 함을 의미하는데, 여기서
fulladdresses
는 하나의 주소도 가능하고 공백으로 구분된 여러 개의 주소가 될 수도 있다. 가령
maingnu
gnu@gnu.org
와 사용자만의 로컬 주소를 의미하도록 만들기 위해서는 아래의 행을 추가한다:
alias maingnu gnu@gnu.org local-gnu


주소가 공백을 포함한다면 아래와 같이 쌍따옴표로 전체 주소를 인용한다:

alias Jsmith "John Q. Smith <none@example.com>"


주소의 부분마다 사람의 풀 네임과 같이 쌍따옴표를 포함시킬 필요는 없음을 주목한다. 필요 시 Emacs가 알아서 넣을 것이다. 가령 Emacs는 위의 주소를 '
"John Q. Smith" <none@example.com>
'로서 삽입할 것이다.


Emacs 는 또한
.mailrc
에서 "include" 명령어를 인식한다. 이는 다음과 같은 모습을 한다:
source filename


.mailrc
파일은 Emacs 에 유일하지 않으며, 메일을 읽는 다른 많은 프로그램이 메일 별칭에 그것을 사용하며 그 파일은 다른 다양한 명령어를 포함할 수 있다. 하지만 Emacs 는 별칭 정의와 include 명령어를 제외한 모든 것을 무시한다.


메일 별칭은 약어(abbrevs)로서 확장되는데, 즉 사용자가 별칭 다음에 단어를 구분하는 문자를 입력하자마자 확장된다는 말이다(309 페이지의 26장 [약어(Abbrevs)] 참고). 이러한 확장은 '
To
', '
From
', '
CC
', '
BCC
', '
Reply-to
' 헤더 필드(그리고 그들의 '
Resent-
' variants 에서) 내에서만 발생하고, '
Subject
' 와 같은 다른 헤더 필드에서는 발생하지 않는다.


별칭 주소를 직접 삽입하는 경우도 있는데, 그때는 M-x mail-abbrev-insert-aliase 를 사용한다. 이는 완성을 이용해 별칭명을 읽어 그 정의를 포인트에 삽입한다.


메일 명령어(Mail Commands)

*mail*
버퍼에 대한 기본 주 모드는 Message 모드라고 부른다. 이 모드는 많은 면에서 Text 모드처럼 행동하지만 C-c 접두어에 대해 몇 가지 추가 명령어를 제공하여 메시지 편집을 훨씬 편리하게 만든다.


이번 절에서는 Message 모드에서 가장 자주 사용되는 명령어 중 일부를 설명할 것이다.


메일 전송하기(Mail Sending)

C-c C-c
메시지를 전송하고 메일 버퍼를 bury 한다 (
message-send-and-exit
).


C-c C-s
메시지를 전송하고 선택된 메일 버퍼를 벗어난다(leave) (
message-send
).


일반적으로 메시지를 전송하는 명령어는 C-c C-c (
mail-send-and-exit
)다. 이는 메시지를 전송하고 메일 버퍼를 "묻어서(bury)" 재선택의 최하위 우선순위에 위치시킨다. 메일 버퍼를 대신 오려두길(kill) 원한다면
message-kill-buffer-on-exit
변수를
t
로 설정하라.


C-c C-s (
message-send
) 명령어는 메시지를 전송하고 선택된 버퍼를 벗어난다. 이 명령어는 메시지를 (새로운 수신자로) 수정하여 다시 전송하고자 할 때 사용하라.


메시지를 전송하면
message-send-hook
훅이 실행된다. 또한 메일 버퍼를 수정되지 않은 것(unmodified)으로 마크하는데, 다만 메일 버퍼 역시 파일을 방문하는(file-visiting) 버퍼인 경우는 제외된다(이런 경우 파일을 저장해야만 마크가 되고, 동일한 메시지를 두 번 전송하여도 경고를 받지 않는다.)


send-mail-function
변수는 메시지가 어떻게 전송되는지를 제어한다. 해당 변수에 가능한 값은 다음과 같다:


sendmail-query-once
전달 방법(이 목록에서 다른 엔트리들 중 하나)을 질문(query)하고, 이 메시지에 대해 그 방법을 사용한 후
send-mail-function
으로 방법을 저장하여 향후 전달에 사용할 수 있도록 한다.
smtpmail-send-it
(아래 참고)을 통해 메일을 전송하는 변수를 이미 설정하지 않은 이상 이것이 기본값이다.


smtpmail-send-it
인터넷 서비스 제공자의 발신 SMTP 메일 서버와 같은 외부 메일 호스트를 통해 메일을 전송한다. SMTP 서버로 접근하는 방법을 Emacs 에게 알려주지 않은 경우 그러한 정보를 요청할 것이며, 그 내용은
smtpmail-smtp-server
변수와
~/.authinfo
파일에 저장된다. Sending mail via SMTP 의 "Emacs SMTP Library"절을 참고한다.


sendmail-send-it
시스템 기본
sendmail
프로그램 또는 그와 동등한 프로그램을 이용해 메일을 전송한다. 시스템은 SMTP 를 통해 직접 메일을 전송하도록 설정되어야 한다.


mailclient-send-it
메일 버퍼를 시스템 지정 메일 클라이언트로 전달한다. 상세한 내용은
mailclient.el
에 포함된 관련 절을 참고한다.


feedmail-send-it
sendmail-send-it
과 비슷하지만 향후 메시지 전송을 위해 메시지의 대기(queue)를 허용한다. 상세한 내용은
feedmail.el
파일에 포함된 관련 절을 참고한다.


Non-ASCII 문자를 포함한 메시지를 전송할 때는 부호화 체계를 이용해 부호화되어야 한다(183 페이지의 19.5절 [부호화 체계(Coding Systems)] 참고). 보통 부호화 체계는 사용자가 선택한 언어 환경에서 자동으로 명시한다(179 페이지의 19.2절 [언어 환경(Language Environments)] 참고).
sendmail-coding-system
변수를 설정하는 발신 메일에 사용할 부호화 체계를 직접 명시할 수 있다(185 페이지의 19.6절 [코딩 인식하기(Recognize Coding)] 참고). 따라서 결정된 부호화 체계가 특정 메시지에 포함된 문자를 처리할 수 없을 경우 Emacs는 이용 가능한 부호화 체계 목록을 표시하면서 사용할 부호화 체계를 선택하도록 요청한다.


메일 헤더 편집(Mail Header Editing)

Message 모드는 특정 헤더 필드로 이동하여 헤더에서 주소를 완성하는 특수 명령어를 몇 가지 제공한다.


C-c C-f C-t
'
To
' 헤더로 이동한다(
message-goto-to
).


C-c C-f C-s
'
Subject
' 헤더로 이동한다(
message-goto-subject
).


C-c C-f C-c
'
CC
' 헤더로 이동한다(
message-goto-cc
).


C-c C-f C-b
'
BCC
' 헤더로 이동한다(
message-goto-bcc
).


C-c C-f C-r
'
Reply-To
' 헤더로 이동한다(
message-goto-reply-to
).


C-c C-f C-f
'
Mail-Followup-To
' 헤더 필드로 이동한다(
message-goto-followup-to
).


C-c C-f C-w
파일명 완성을 이용해 새로운 '
FCC
' 헤더 필드를 추가한다(
message-goto-fcc
).


C-c C-b
메시지 본문의 시작으로 이동한다(
message-goto-body
).


TAB
메일링 주소를 완성한다(
message-tab
).


포인트를 특정 헤더 필드로 이동하는 명령어들은 모두 접두어 C-c C-f ('C-f'는 "필드"를 의미)를 기반으로 한다. 대상 필드가 존재하지 않을 경우 명령어는 필드를 하나 생성한다(단, 매번 새로운 필드를 생성하는
mail-fcc
는 예외다).


C-c C-b (
message-goto-body
) 명령어는 헤더 구분 라인의 바로 다음, 즉 본문의 시작으로 포인트를 이동한다.


'
To:
', '
CC:
', '
BCC:
' 와 같이 주소를 포함하는 헤더 필드를 편집하는 동안에 TAB (
message-tab
)를 입력하면 주소를 완성할 수 있다. 이는 수많은 디렉터리 서버 프로토콜을 인식하는 라이브러리 EUDC 를 포함해 몇 가지 방법을 기반으로 하여 주소에 상응하는 풀 네임을 삽입하려 할 것이다(The Emacs Unified Directory Client 의 "EUDC" 절 참고). 삽입이 실패하면 메일 별칭으로서 주소를 확장하려 할 것이다(352 페이지의 29.3절 [메일 별칭(Mail Aliases)] 참고). 포인트가 주소를 취하지 않은 헤더 필드에 있거나 메시지 본문에 있다면 단순히 TAB 을 사용하여 탭 문자를 삽입하라.


메일 인용하기(Citing Mail)

C-c C-y
메일 리더(mail reader)에서 선택한 메시지를 인용으로 붙여넣는다(
message-yank-original
).


C-c C-q
다른 메시지에서 인용한 각 문단을 채운다(
message-fill-yanked-message
).


C-c C-y (
message-yank-original
) 명령어를 이용하면 답장을 작성 중인 메시지를 인용(cite)할 수 있다. 이는 해당 메시지의 텍스트를 메일 버퍼로 삽입할 것이다. 이 명령어는 Rmail 과 같이 Emacs 에서 실행 중인 메일 리더에서 메일 버퍼를 호출하였을 때에만 작동한다.


기본적으로 Emacs 는 인용된 텍스트의 각 라인 앞에 '
>
' 문자열을 삽입하는데, 이러한 접두어 문자열은
message-yank-prefix
변수에 의해 명시된다. 접두 인자를 이용해
message-yank-original
을 호출하면 인용 접두어가 삽입되지 않는다.


C-c C-y 를 이용하고 나면 C-c C-q (
message-fill-yanked-message
) 를 입력하여 인용된 메시지의 문단을 채울 수 있다. C-c C-q 를 한 번만 사용하여도 모든 문단을 개별적으로 채울 수 있다. 인용된 메시지의 한 문단만 채우려면 M-q 를 사용한다. 채우기를 이용했을 때 당신이 사용한 유형의 인용 접두어를 자동으로 처리하지 못하는 경우 채우기(fill) 접두어를 명시적으로 설정하라. 관련 내용은 212 페이지의 22.5절 [채우기(Filling)]를 참고한다.


메일 인용은
mail-citation-hook
훅을 통해 맞춤화가 가능하다. 예를 들어, Supercite 패키지를 사용하면 좀 더 많은 인용을 제공 받을 수 있다(Supercite의 "Introduction" 절 참고).


다양한 메일(Mail Miscellany)

메일 버퍼에서 C-c C-a (
mml-attach-file
)를 입력하면 발신 메시지에 파일을 첨부(attach)할 수 있다. 파일 첨부는 다목적 인터넷 메일 확장(MIME) 표준을 이용해 이루어진다.


mml-attach-file
명령어를 이용하면 파일명, 첨부 파일의 내용 유형(content type), 설명(description), 배치(disposition)를 입력하도록 요한다. 내용 유형은 보통 자동으로 인식되며, 기본값을 허용하려면 RET 를 입력한다. 설명은 수신자가 첨부파일 옆에 확인하게 될 텍스트로 된 하나의 라인으로, 그냥 비워둘 수도 있다. 배치는 수신자가 메시지 본문 안에서 첨부파일의 링크를 확인할 수 있는 '
inline
' (기본값)이거나, 본문과 구분되어 링크가 표시되는 '
attachment
' 가 가능하다.


mml-attach-file
명령어는 Message 모드에 특정적이므로, Mail 모드에서는 대신
mail-add-attachment
를 사용하라. 이는 파일명의 입력만 요하고, 내용 유형과 배치는 자동으로 결정할 것이다. 첨부 파일의 설명을 별도로 포함하고 싶다면 메시지 본문에 입력하라.


첨부 파일의 실제 내용은 메일 버퍼로 삽입되지 않는다. 대신 아래와 같이 메일 버퍼로 몇 개의 플레이스홀더 텍스트가 삽입된다:

<#part type="text/plain" filename="~/foo.txt" disposition=inline> <#/part>


메시지를 전송하기 위해 C-c C-c 또는 C-c C-s 를 입력하면 메시지와 함께 첨부 파일이 전달될 것이다.


메시지를 작성하는 도중에 M-x ispell-message 를 입력하면 메시지 텍스트에서 맞춤법 수정을 실행할 수 있다. 수신 메시지를 발신 드래프트(draft)로 붙여넣었다면 이 명령어는 붙여넣은 내용은 건너뛰지만 당신이 직접 삽입한 텍스트는 검사할 것이다(입력값과 인용 라인을 구별하기 위해
mail-yank-prefix
또는 들여쓰기를 검색한다). 111 페이지의 13.4절 [맞춤법(Spelling)]을 참고한다.


Message 모드를 켜면 (C-x m 을 입력하면 자동으로 켜진다) 정상 훅(normal hook)
text-mode-hook
message-mode-hook
을 실행한다. 새 발신 메시지를 초기화하면 정상 훅
message-setup-hook
을 실행하는데, 이것은 메일 버퍼의 모습을 변경하고 싶을 때 사용할 수 있다. 422 페이지의 33.2.2절 [훅(Hooks)] 참고).


이러한 훅들의 주요 차이점은 언제 그것이 호출되는지에 있다. 사용자가 C-x m 을 입력할 때마다 메일 버퍼가 생성되는 즉시
message-mode-hook
이 실행된다. 그리고
message-setup
함수는 버퍼의 기본 내용을 삽입한다. 기본 내용이 삽입되고 나면
message-setup-hook
이 실행된다.


기존 작성을 계속하기 위해 C-x m 을 사용하면 메일 버퍼로 전환하는 즉시
message-mode-hook
이 실행된다. 버퍼가 수정되지 않았거나, 버퍼를 삭제하고 다시 시작하기로 결정한 경우 기본 내용을 삽입하고 나면
message-setup-hook
이 실행된다.


메일 서명(Mail Signature)

모든 메시지의 끝에는 표준 텍스트 조각(piece), 즉 사용자의 메일 서명(mail signature)을 추가할 수 있다. 이러한 서명에는 전화번호나 거주 주소와 같은 정보가 포함될 수 있다.
message-signature
변수는 Emacs가 메일 서명을 어떻게 처리하는지를 결정한다.


message-signature
의 기본값은
t
로,
~/.signature
파일에서 메일 서명을 검색함을 의미한다. 파일이 존재한다면 내용이 자동으로 메일 버퍼의 끝에 추가된다. 서명 파일은
message-signature-file
변수를 통해 변경 가능하다.


message-signature
를 문자열로 변경하면 서명의 텍스트를 직접 명시하게 된다.


message-signature
nil
로 변경하면 Emacs는 자동으로 메일 서명을 삽입하기 않을 것이다. 따라서 메일 버퍼에서 C-c C-w (
message-insert-signature
)를 입력하여 메일 서명을 삽입해야 한다. Emacs는 서명 파일에서 사용자의 서명을 검색할 것이다.


메일 작성에 Message 모드가 아니라 Mail 모드를 사용할 경우, 서명을 전송하는 방법을 결정하는 변수는
mail-signature
mail-signature-file
이 된다.


메일 서명은 내용에 '
--
'가 포함된 라인을 이용해 마크되어야 하는 것이 규칙이다. 서명에 이러한 접두어가 누락되어 있다면 자동으로 추가될 것이다. 서명의 나머지 부분은 4개 라인을 초과해선 안 된다.


다양한 메일 기능(Mail Amusements)

M-x spook 은 무작위로 선정된 키워드 라인을 발신 메일 메시지에 추가한다. 키워드는 사용자가 전복적(subversive)인 내용을 논한다고 의심할만한 단어 목록에서 선택된다.


이 기능은 본래 NSA[1] 를 포함해 여러 정보국들이 흥미롭다고 생각하는 키워드가 포함된 전자 메일 메시지를 모두 염탐하는 것이 아니냐는 의심에서 비롯되었다. (정보국에서는 그런 적이 없다고 하지만 설사 사실이라 하더라도 아니라하지 않겠는가.) 따라서 많은 사람들이 메시지에 의심이 가는 단어를 추가한다면 정보국에서는 거짓된 입력값을 확인하느라 바빠질테고 결국은 전부 읽지 못하고 포기할 것이란 생각으로 만들어진 기능이다. 사실이든 아니든 어떤 사람들은 흥미롭게 생각한다.


발신 메일에 "포춘 쿠키(fortune cookie)" 메시지를 넣는
fortune
프로그램을 사용할 수도 있다. 이를 사용하려면 아래와 같이
fortune-to-signature
mail-setup-hook
에 추가한다.
(add-hook 'mail-setup-hook 'fortune-to-signature)


단, 이를 사용하기 전에
fortune-file
변수가 설정되어 있어야 한다.


메일작성 방법(Mail-Composition Methods)

이번 장에서는 Emacs 가 일반적으로 메일을 편집하고 전송하는 Message 모드에 대해 설명하였다. Message 모드는 여러 이용 가능한 모드 중에서 하나에 불과할 뿐이다. Emacs 23.2 버전 이전에는 Message 모드와 많은 면에서 비슷한 Mail 모드를 기본 모드로 하였지만 MIME 지원과 같은 기능들이 빠져 있다. 또 다른 이용 가능한 모드로 MH-E 가 있다(The Emacs Interface to MH 의 "MH-E" 절을 참고).


이러한 메일 사용자 에이전트(mail user agents) 중 원하는 것을 메일의 편집 및 전송에 선호하는 방법으로 선택할 수 있다. C-x m, C-x 4 m, C-x 5 m 명령어들은 사용자가 명시한 에이전트를 사용하는데, 버그 리포터(bug reporter)와 같이 메일을 전송하는 Emacs의 다양한 부분들도 마찬가지다(448 페이지의 34.3절 [버그(Bugs)] 참고). 메일 사용자 에이전트를 명시하려면
mail-user-agent
변수를 맞춤화한다. 현재 유효한 값으로는
message-user-agent
(Message 모드)
sendmail-user-agent
(Mail 모드),
gnus-user-agent
,
mh-e-user-agent
가 있다.


위에 열거한 방법 이외의 메일 작성 방법을 선택할 경우 메일 버퍼와 Message 모드와 관련해 이번 장에 실린 내용은 적용되지 않는다. 아마도 다른 버퍼에서 다른 포맷의 텍스트를 사용할 것이며 그 명령어 역시 다를 것이다.


마찬가지로 메일을 읽는 데에 선호하는 방법을 명시하려면
read-mail-command
변수를 맞춤화한다. 기본값은 rmail 이다(359 페이지의 30장 [Rmail] 참고).


Notes

  1. The US National Security Agency.