ほんとのこと知りたいだけなのに。

夏休みはもうおわり。

Emacs Lisp の非ASCII文字関連のオペレータ

バッファをファイルに保存するところで眺めたくなったので一覧にする。

32 Non-ASCII Characters

32.1 Text Representations

Type Statement
Variable enable-multibyte-characters
Function position-bytes position
Function byte-to-position byte-position
Function bufferpos-to-filepos position &optional quality coding-system
Function filepos-to-bufferpos byte &optional quality coding-system
Function multibyte-string-p string
Function string-bytes string
Function unibyte-string &rest bytes

32.2 Disabling Multibyte Characters

なし

32.3 Converting Text Representations

Type Statement
Function string-to-multibyte string
Function string-to-unibyte string
Function byte-to-string byte
Function multibyte-char-to-unibyte char
Function unibyte-char-to-multibyte char

32.4 Selecting a Representation

Type Statement
Function set-buffer-multibyte multibyte
Function string-as-unibyte string
Function string-as-multibyte string

32.5 Character Codes

Type Statement
Function characterp charcode
Function max-char
Function get-byte &optional pos string

32.6 Character Properties

Type Statement
Function get-char-code-property char propname
Function char-code-property-description prop value
Function put-char-code-property char propname value
Variable unicode-category-table
Variable char-script-table
Variable char-width-table
Variable printable-chars

32.7 Character Sets

Type Statement
Function charsetp object
Variable charset-list
Function charset-priority-list &optional highestp
Function set-charset-priority &rest charsets
Function char-charset character &optional restriction
Function charset-plist charset
Function put-charset-property charset propname value
Function get-charset-property charset propname
Command list-charset-chars charset
Function decode-char charset code-point
Function encode-char char charset
Function map-charset-chars function charset &optional arg from-code to-code

32.8 Scanning for Character Sets

Type Statement
Function charset-after &optional pos
Function find-charset-region beg end &optional translation
Function find-charset-string string &optional translation

32.9 Translation of Characters

Type Statement
Function make-translation-table &rest translations
Variable standard-translation-table-for-decode
Variable standard-translation-table-for-encode
Variable translation-table-for-input
Function make-translation-table-from-vector vec
Function make-translation-table-from-alist alist

32.10 Coding Systems

32.10.1 Basic Concepts of Coding Systems

Type Statement
Function coding-system-get coding-system property
Function coding-system-aliases coding-system

32.10.2 Encoding and I/O

Type Statement
Variable buffer-file-coding-system
Variable save-buffer-coding-system
Variable last-coding-system-used
Variable file-name-coding-system

32.10.3 Coding Systems in Lisp

Type Statement
Function coding-system-list &optional base-only
Function coding-system-p object
Function check-coding-system coding-system
Function coding-system-eol-type coding-system
Function coding-system-change-eol-conversion coding-system eol-type
Function coding-system-change-text-conversion eol-coding text-coding
Function find-coding-systems-region from to
Function find-coding-systems-string string
Function find-coding-systems-for-charsets charsets
Function check-coding-systems-region start end coding-system-list
Function detect-coding-region start end &optional highest
Function detect-coding-string string &optional highest
Variable inhibit-null-byte-detection
Variable inhibit-iso-escape-detection
Function coding-system-charset-list coding-system

32.10.4 User-Chosen Coding Systems

Type Statement
Function select-safe-coding-system from to &optional default-coding-system accept-default-p file
Variable select-safe-coding-system-function
Function read-coding-system prompt &optional default
Function read-non-nil-coding-system prompt

32.10.5 Default Coding Systems

Type Statement
User Option auto-coding-regexp-alist
User Option file-coding-system-alist
User Option auto-coding-alist
Variable process-coding-system-alist
Variable network-coding-system-alist
Variable default-process-coding-system
User Option auto-coding-functions
Function find-auto-coding filename size
Function set-auto-coding filename size
Function find-operation-coding-system operation &rest arguments

32.10.6 Specifying a Coding System for One Operation

Type Statement
Variable coding-system-for-read
Variable coding-system-for-write
Variable coding-system-require-warning
User Option inhibit-eol-conversion
Function coding-system-priority-list &optional highestp
Function set-coding-system-priority &rest coding-systems
Macro with-coding-priority coding-systems &rest body...

32.10.7 Explicit Encoding and Decoding

Type Statement
Command encode-coding-region start end coding-system &optional destination
Function encode-coding-string string coding-system &optional nocopy buffer
Command decode-coding-region start end coding-system &optional destination
Function decode-coding-string string coding-system &optional nocopy buffer
Function decode-coding-inserted-region from to filename &optional visit beg end replace

32.10.8 Terminal I/O Encoding

Type Statement
Function keyboard-coding-system &optional terminal
Command set-keyboard-coding-system coding-system &optional terminal
Function terminal-coding-system &optional terminal
Command set-terminal-coding-system coding-system &optional terminal

32.11 Input Methods

Type Statement
Variable current-input-method
User Option default-input-method
Command set-input-method input-method
Function read-input-method-name prompt &optional default inhibit-null
Variable input-method-alist

32.12 Locales

Type Statement
Variable locale-coding-system
Variable system-messages-locale
Variable system-time-locale
Function locale-info item

おわり

しかし要素が多い。
関数以外も入れているからかもだけど。

Emacs Lisp する上で、ここが最後の山のような気がする。

Emacs Lisp のバッファ関連のオペレータ

Emacs Lisp をするのにバッファの壁を越える必要があるので、バッファに関するオペレータを一覧にしてみました。

26 Buffers

26.1 Buffer Basics

type syntax
Function bufferp object

26.2 The Current Buffer

type syntax
Function current-buffer
Function set-buffer buffer-or-name
Special Form save-current-buffer body...
Macro with-current-buffer buffer-or-name body...
Macro with-temp-buffer body...

26.3 Buffer Names

type syntax
Function buffer-name &optional buffer
Command rename-buffer newname &optional unique
Function get-buffer buffer-or-name
Function generate-new-buffer-name starting-name &optional ignore

26.4 Buffer File Name

type syntax
Function buffer-file-name &optional buffer
Variable buffer-file-name
Variable buffer-file-number
Function get-file-buffer filename
Function find-buffer-visiting filename &optional predicate
Command set-visited-file-name filename &optional no-query along-with-file
Variable list-buffers-directory

26.5 Buffer Modification

type syntax
Function buffer-modified-p &optional buffer
Function set-buffer-modified-p flag
Function restore-buffer-modified-p flag
Command not-modified &optional arg
Function buffer-modified-tick &optional buffer
Function buffer-chars-modified-tick &optional buffer

26.6 Buffer Modification Time

type syntax
Function verify-visited-file-modtime &optional buffer
Function clear-visited-file-modtime
Function visited-file-modtime
Function set-visited-file-modtime &optional time
Function ask-user-about-supersession-threat filename

26.7 Read-Only Buffers

type syntax
Variable buffer-read-only
Variable inhibit-read-only
Command read-only-mode &optional arg
Function barf-if-buffer-read-only &optional position

26.8 The Buffer List

type syntax
Function buffer-list &optional frame
Function other-buffer &optional buffer visible-ok frame
Function last-buffer &optional buffer visible-ok frame
Command bury-buffer &optional buffer-or-name
Command unbury-buffer
Variable buffer-list-update-hook

26.9 Creating Buffers

type syntax
Function get-buffer-create buffer-or-name
Function generate-new-buffer name

26.10 Killing Buffers

type syntax
Command kill-buffer &optional buffer-or-name
Variable kill-buffer-query-functions
Variable kill-buffer-hook
User Option buffer-offer-save
Variable buffer-save-without-query
Function buffer-live-p object

26.11 Indirect Buffers

type syntax
Command make-indirect-buffer base-buffer name &optional clone
Command clone-indirect-buffer newname display-flag &optional norecord
Function buffer-base-buffer &optional buffer

26.12 Swapping Text Between Two Buffers

type syntax
Function buffer-swap-text buffer

26.13 The Buffer Gap

type syntax
Function gap-position
Function gap-size

おわり。

バッファを知るにはもう少しっぽいですね。

バッファが何者かを理解するには Buffer-Local Variables も見る必要がありそう。

Emacs Lisp 制御構造のオペレータ一覧

あれ? cond ってあったっけと思い一覧を作成。

9. 制御構造から抜粋。

制御構造のオペレータ一覧

9.1 逐次実行

type contents
Special Form progn forms...
Special Form prog1 form1 forms...
Special Form prog2 form1 form2 forms...

9.2 条件付き実行

type contents
Special Form if condition then-form else-forms...
Macro when condition then-forms...
Macro unless condition forms...
Special Form cond clause...

9.3 条件の組み合わせ

type contents
Function not condition
Special Form and conditions...
Special Form or conditions...

9.4 繰り返し

type contents
Special Form while condition forms...

9.5 非ローカル脱出

type contents
Special Form catch tag body...
Function throw tag value

9.5.3 エラー

9.5.3.1 エラーの通知方法

type contents
Function error format-string &rest args
Function signal error-symbol data

9.5.3.3 エラーハンドラの書き方

type contents
Special Form condition-case var protected-form handlers...
Function error-message-string error-description

9.5.4 非ローカル脱出時の後始末

type contents
Special Form unwind-protect body cleanup-forms...

おわり

cond はありましたね。

制御系は Common Lisp とさほど変わらん感じですね。