テキスト


*char-encoding-list*

Type: Variable
Package: editor
File: encoding.l
文字エンコーディングのリストです。ミニバッファからの入力補完候補のリスト 
や file-name-dialog のエンコーディングのリストとして使われたりするみたい
です。 
文字エンコーディングはクオートしてはいけないみたいですので、定義しなおす
時は注意してください。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

*do-completion

Type: Function
Arguments: *do-completion STRING TYPE &optional WORDP LIST
Package: editor
File: builtin.l
指定した文字列を条件に従い補完します。 

  STRING : 補完したい文字列
  TYPE   : 補完する型
        :symbol-name
        :function-name
        :command-name
        :variable-name
        :non-trivial-symbol-name
        :exist-file-name
        :file-name
        :file-name-list
        :directory-name
        :buffer-name
        :exist-buffer-name
        :list
        :list-ignore-case
  WORD   : nilでなければ単語ごとの補完 
  LIST   : TYPE が :list か :list-ignore-case の場合の補完リスト 

戻り値は以下のとおりです。 

  多値で3つの値が戻ってきますので、multiple-value-bind で受け取るといい
  でしょう。complete.lの中にある do-completion-internal を参考にしてくだ
  さい。以下は場合分けをしています。 

        [1] 補完の候補が存在しない場合     :no-completions と nil
        [2] マッチする候補がなかった場合   :no-match と nil
        [3] 与えられた文字列がすでに候補の
            いずれかと一致していて
            補完する必要がない場合 
            [3.1] 一致した候補が一つだけ   :solo-match と list と prefix
            [3.2] 複数と一致した場合       :not-unique と list と prefix
        [4] 補完した場合                   補完した結果の文字列と list と prefix

  list は、一致した候補のリスト。 
  prefix は、例えばファイル名の補完のときのディレクトリ名とか。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

*quotation-prefix*

Type: Variable
Package: editor
File: region.l
引用を表す接頭子です。具体的には、quote-regionしたときにリージョンの行頭
に挿入する文字列です。 

参考: 
  ;;; 初期値ではこんなものが設定されています。 
  (defvar *quotation-prefix* "| ")

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

auto-fill-mode

Type: Function
Arguments: auto-fill-mode &optional (ARG () SARG)
Package: editor
File: fill.l
自動詰め込みモードの開始と終了をトグルします。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

buffer-fold-width

Type: Function
Arguments: buffer-fold-width &optional BUFFER
Package: editor
File: builtin.l
折り返しの状態を返します。 

  BUFFER : 状態を取得するバッファ

戻り値は以下のとおりです。 

  t    ウィンドウ幅で折り返す
  nil  折り返しをしない 
  数値 その幅で折り返しをします。 

多値で返ってきている t の意味は不明です。 

SeeAlso: set-buffer-fold-width
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

clear-all-text-attributes

Type: Function
Arguments: clear-all-text-attributes
Package: editor
File: builtin.l
set-text-attributeで設定した属性を全部消します 

SeeAlso: delete-text-attributes
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

dabbrev-expand

Type: Function
Arguments: dabbrev-expand &optional ARG
Package: editor
File: dabbrev.l
動的略称展開により候補を順番に表示します。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

delete-backward-char-or-selection

Type: Function
Arguments: delete-backward-char-or-selection &optional (N 1)
Package: editor
File: cmds.l
セレクションがあればセレクション全体を、そうでなければカーソルの後方の
文字を削除します。[C-h]

SeeAlso: delete-char-or-selection
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

delete-char

Type: Function
Arguments: delete-char &optional (N 1)
Package: editor
File: cmds.l
指定文字数分だけ削除します。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

delete-char-or-selection

Type: Function
Arguments: delete-char-or-selection &optional (N 1)
Package: editor
File: cmds.l
セレクションで選択中ならばセレクション全体を、そうでなければカーソルの位 
置の文字を削除します。delete-charとはセレクション時の動作が異なります。 

SeeAlso: delete-char
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

delete-horizontal-spaces

Type: Function
Arguments: delete-horizontal-spaces
Package: editor
File: cmds.l
同一行内のカーソル位置の前後の空白を削除します。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

delete-text-attributes

Type: Function
Arguments: delete-text-attributes TAG &key :test :test-not :key
Package: editor
File: builtin.l
set-text-attributeで指定したタグの属性を消します 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

delete-trailing-spaces

Type: Function
Arguments: delete-trailing-spaces
Package: editor
File: cmds.l
行末のスペースを削除します。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

detect-char-encoding

Type: Function
Arguments: detect-char-encoding STRING-OR-STREAM
Package: editor
File: builtin.l
STRING-OR-STREAM の文字エンコーディングを判定します。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

do-completion

Type: Function
Arguments: do-completion FROM TO TYPE &optional COMPL WORD LAST-CHAR (POPUP-P *POPUP-COMPLETION-LIST-DEFAULT*)
Package: editor
File: complete.l
テキストの補完をします。 
詳細は*do-completionを参照して下さい。 

使用例: 
  ;;; カーソルの直前のパスを補完します。 
  (do-completion (point) 
                 (progn (skip-syntax-spec-backward "^ ") (point))
                 :file-name)

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

expand-abbrev

Type: Function
Arguments: expand-abbrev
Package: editor
File: abbrev.l
カーソル位置で静的略称展開を行います。 
abbrev-mode の時は self-insert-command でも実行されます。 

SeeAlso: abbrev-mode
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

find-text-attribute

Type: Function
Arguments: find-text-attribute TAG &key :start :end :from-end :test :test-not :key
Package: editor
File: builtin.l
set-text-attributeで指定したタグを検索します。 

(progn
  (set-text-attribute 1 6 'my-tag 1)
  (multiple-value-bind (from to tag)
      (find-text-attribute 'my-tag)
    (format t "~d, ~d, ~A" from to tag)))
==> 1, 6, my-tag

| 2. set-text-attribute で、複数範囲に同一 tag を指定した場
|    合、find〜 は一番先頭に近いものしか返さない(ところしか
|    見たことがない)のですが、二番目以降を取得することはで
|    きますでしょうか? 

find-text-attribute TAG :start POS

で、POS に現在位置+1を与えれば次のが返ってくる予定です。 
使ったことないので動くかどうか分かりませんが。 

| 3. find-text-attribute の &key 引数は、何か意味を持ってい 
|    ますでしょうか? 

シーケンスと同様に、:test と :test-not には比較関数を 
与えます。また、:key にはアクセス関数(か?)を与えます。 
たとえば、tag の形式が

  ("foo" bar)

である場合、 

  (find-text-attribute "foo" :test #'equal :key #'car)

とか、 

  (find-text-attribute 'bar :test #'eq :key #cadr)

で検索することができる予定です。使ったことないので動く
かどうか分かりませんが。 

:test-not は、関数が nil を返した場合に真とする以外は :
test と同様です。:test と :test-not は同時に指定するこ
とはできず、省略した場合は :test #'eql が与えられたも
のとします。また :key を省略した場合は :key #'identity 
が与えられたものとします(たぶん)。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

find-text-attribute-point

Type: Function
Arguments: find-text-attribute-point POINT
Package: editor
File: builtin.l
POINT の位置のテキストの属性を多値で返します。 

  FROM          属性を付加された開始位置
  TO            属性を付加された終了位置
  TAG           個々の属性を区別するタグ
  FOREGROUND    文字色
  BACKGROUND    背景色
  BOLD          ボールド 
  UNDERLINE     下線付き
  STRIKE-OUT    取り消し線 
  PREFIX        不明
  EXTEND        不明

使用例: 
  ;;; my-tagというタグ名で領域を緑色に設定 
  (set-text-attribute (point-min) (point-max) 'my-tag :foreground 2)
  => t
  ;;; カーソル位置にタグがあれば赤色かつボールドに変更
  (multiple-value-bind (from to tag foreground background bold underline strike-out prefix extend)
      (find-text-attribute-point 1)
    (when tag
      (modify-text-attributes tag ; foregroundとbold以外はそのまま設定する。 
       :foreground 1              ; 赤色に設定 
       :background background
       :bold t                    ; ボールドに設定 
       :underline underline
       :strike-out strike-out
       :prefix prefix
       :extend extend)))
  => t

SeeAlso: modify-text-attributes
SeeAlso: find-text-attribute
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

following-char

Type: Function
Arguments: following-char
Package: editor
File: builtin.l
カーソルがある位置のキャラクタを返します。 
バッファの末尾にカーソルがある場合には、#\NULを返します。 

使用例: 
  ;;; "長崎市"の'崎'の上にカーソルがある場合 
  (following-char)
  => #\崎 

  ;;; [EOF]にカーソルがある場合 
  (following-char)
  => #\NUL
(following-char)

SeeAlso: preceding-char
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

indent-to

Type: Function
Arguments: indent-to COLUMN
Package: editor
File: builtin.l
指定された桁数までインデントします。現在のカーソル位置が引数より小さけれ
ばスペースを挿入します。そうでなければ何もしません。 

  COLUMN : インデントする桁数を指定します。 

戻り値は以下のとおりです。 

  t   インデントした場合 
  nil 何もしなかった場合 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

insert

Type: Function
Arguments: insert &rest STRING-OR-CHAR
Package: editor
File: builtin.l
文字列をバッファに挿入します。 

  STRING-OR-CHAR : 挿入する文字列を指定します。 
                   &restで受けられているので何個でもOKです。 

履歴: 
  xyzzyのバージョン0.0.0.45.1よりまえのバージョンでは
  Emacsとinsertの仕様が、やや異なっていました。 

  ;;; Emacsの場合 
  (insert "abc" "def" "ghi")
  => "abcdefghi"が挿入される 

  ;;; xyzzyの場合 
  (insert "ab" 4)
  => "abababab"が挿入される 

  xyzzyのバージョン0.0.0.45.1以降、Emacsとのinsert互換性が高まって
  います。 

  (insert "foo")         => foo          ; 今までと同じ
  (insert "foo" 2)       => foofoo       ; 今までと同じ
  (insert "foo" "bar")   => foobar       ; Emacsと同じ
  (insert "foo" "bar" 2) => foobarfoobar
  (insert #\f "o" #\o)   => foo          ; Emacsと同じ
  (insert #\f "o" #\o 2) => foofoo
  (insert 2)             => エラー
  (insert "foo" 2 "bar") => エラー
  (insert 102 111 111)   => エラー       ; Emacsは  => foo

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

map-char-encoding-region

Type: Function
Arguments: map-char-encoding-region P1 P2 &optional ENCODING
Package: editor
File: kanji.l
リージョンの文字列データを文字エンコーディングが ENCODING のデータとして、 
xyzzy内部コードへ変換します。 
ENCODING が指定されない時は自動判定します。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

modify-text-attributes

Type: Function
Arguments: modify-text-attributes TAG &key :foreground :background :bold :underline :strike-out :prefix :extend :start :end :test :test-not :key
Package: editor
File: builtin.l
set-text-attributeで付けた領域の属性を変更します。 
属性は引き継がれません。 
例えば、set-text-attributeでは:underline tとしてから、 
modify-text-attributeで:strike-out tとしても、 
下線と取り消し線の両方が表示される訳ではありません。 

  TAG           set-text-attributeで指定したタグ
  :bold         ボールドで表示するかどうか
  :underline    下線付きで表示するかどうか
  :strike-out   取り消し線を表示するかどうか
  :foreground   文字色を整数で指定 
  :background   背景色を整数で指定 
  :prefix       使い方は不明
  :extend       行末の改行文字以降も変えるかどうか

使用例: 
  ;;; バッファ全体をに下線を付けてから取り消し線にする。 
  (set-text-attribute (point-min) (point-max) 'all :bold t :foreground 1)
  => t
  (modify-text-attributes 'all :strike-out t)
  => t
  (delete-text-attributes 'all)
  => t

SeeAlso: set-text-attribute
SeeAlso: set-text-color
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

newline

Type: Function
Arguments: newline &optional (ARG 1)
Package: editor
File: cmds.l
改行を挿入します。[RET]

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

open-line

Type: Function
Arguments: open-line &optional (ARG 1)
Package: editor
File: cmds.l
カーソル位置を変えないで改行を挿入します。[C-o]

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

overwrite-char

Type: Function
Arguments: overwrite-char C &optional (ARG 1)
Package: editor
File: cmds.l
文字を上書きします。 

使用例: 
  ;;; 半角空白で上書きする。 
  (overwrite-char #\SPC)
  => t

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

preceding-char

Type: Function
Arguments: preceding-char
Package: editor
File: builtin.l
カーソルの前の文字を返します。 
バッファの先頭にカーソルがある場合には、#\NULを返します。 

使用例: 
  ;;; カーソルの直前が#\LFDか?つまりカーソルは行頭にあるか? 
  (char= (preceding-char) #\LFD)
  => t

SeeAlso: following-char
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

self-insert-command

Type: Function
Arguments: self-insert-command &optional (ARG 1)
Package: editor
File: cmds.l
最後に入力されたキー*last-command-char*を挿入モードの如何により
insert/overwrite-charします。 
括弧が入力された時に強調表示がなされるのもこの中での作用です。 

SeeAlso: *auto-fill-hook
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

set-buffer-fold-width

Type: Function
Arguments: set-buffer-fold-width WIDTH &optional BUFFER
Package: editor
File: builtin.l
テキストの折り返し方法を制御します。[ツール]-[ローカル設定]-[表示]の"テ 
キストの折り返し"と同じで、現在のバッファだけに影響します。 

  WIDTH  : 折り返しの方法を指定します。 
        nil     折り返しません。 
        t       ウィンドウの幅で折り返します。 
        数値    折り返し位置を指定します。 
  BUFFER : ローカル設定するバッファを指定します。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

set-tab-columns

Type: Function
Arguments: set-tab-columns COLUMN &optional BUFFER
Package: editor
File: builtin.l
タブ幅を設定します。 

  COLUMN : タブ幅を指定します。1以上32以下の任意の整数です。 
           2のべき乗である必要はありません。 
  BUFFER : タブ幅を変更するバッファを指定します。 
           指定がなければカレントバッファが対象になります。 

SeeAlso: tab-columns
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

set-text-attribute

Type: Function
Arguments: set-text-attribute FROM TO TAG &key :foreground :background :bold :underline :strike-out :prefix :extend
Package: editor
File: builtin.l
リージョンに色などの属性を付けます。 
付けた属性はdelete-text-attributeで消せます。 
一括して消す場合には、clear-all-text-attributesを使用します。 

  FROM          属性を付加する開始位置
  TO            属性を付加する終了位置
  TAG           個々の属性を区別するタグ
  :bold         ボールドで表示するかどうかを 
  :underline    下線付きで表示するかどうかを 
  :strike-out   取り消し線を表示するかどうか
  :foreground   文字色を整数で指定 
  :background   背景色を整数で指定 
  :prefix       使い方は不明
  :extend       行末の改行文字以降も変えるかどうか

色の整数について: 
  [ツール]-[共通設定]-[フォント]のところにある表示色になります。 

  :foreground 0     : 文字色
              1〜15 : 文字1〜文字15
  :background 0     : 背景色
              1〜15 : 背景1〜背景15

  15 より大きい値を指定すると,0〜15 の色が繰り返されます。 

使用例: 
  ;;; バッファ全体を文字1の色にする。 
  (set-text-attribute (point-min) (point-max) 'all :bold t :foreground 1)
  => t
  (delete-text-attributes 'all)
  => t

SeeAlso: modify-text-attributes
SeeAlso: set-text-color
SeeAlso: find-text-attribute
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

set-text-color

Type: Function
Arguments: set-text-color FROM TO &optional FOREGROUND BACKGROUND CHAR EXTEND-P
Package: editor
File: cmds.l
指定された領域を装飾します。 

  FROM       : 開始位置を指定します。 
  TO         : 終了位置を指定します。 
  FOREGROUND : 文字の色を番号で指定します。以下を参照
  BACKGROUND : 文字の色を番号で指定します。以下を参照
  CHAR       : (詳細不明) 
  EXTEND-P   : (詳細不明) 

参考: 
  ;;; 番号と色の対応 
         R   G   B
       ------------
   0     0   0   0
   1   255   0   0
   2     0 255   0
   3   255 255   0
   4     0   0 255
   5   255   0 255
   6     0 255 255
   7   255 255 255
   8     0   0   0
   9   128   0   0
  10     0 128   0
  11   128 128   0
  12     0   0 128
  13   128   0 128
  14     0 128 128
  15   128 128 128

補足:
  この関数は Version 0.0.0.92 にて obsolete となりました。 

SeeAlso: set-text-attribute
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

smart-indentation

Type: Function
Arguments: smart-indentation COLUMN
Package: editor
File: cmds.l
行頭からcolumn文字インデントします。 
*smart-indentation*がtの時は適度にサボったりするみたいです。 

SeeAlso: *smart-indentation*
SeeAlso: indent-to
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

split-line

Type: Function
Arguments: split-line
Package: editor
File: cmds.l
カーソル位置から行末までのテキストを縦に 1 行下げ、2 行に分割します。[ESC C-o]

[ Intro | 目次 | 索引 | 目的別 | テキスト ]

tab-columns

Type: Function
Arguments: tab-columns &optional BUFFER
Package: editor
File: builtin.l
タブ幅を返します。タブ幅はset-tab-columnsで設定できます。 

  BUFFER : タブ幅を返すバッファを指定します。 
           指定がなければカレントバッファが対象となります。 

SeeAlso: set-tab-columns
[ Intro | 目次 | 索引 | 目的別 | テキスト ]

transpose-chars

Type: Function
Arguments: transpose-chars &optional (ARG 1 F)
Package: editor
File: cmds.l
ポイントのひとつ前の文字を、ポイントの位置の文字と交換します。 
ポイント自体はひとつ前に進みます。 

[ Intro | 目次 | 索引 | 目的別 | テキスト ]