1. 概要 | 8. ヘルプ画面表示キー | |
2. 実行形式 | 9. エラーメッセージ定義 | |
3. キー入力 | 10.コマンドパラメータ形式 | |
4. 操作キーの設定 | 11.コマンド入力 | |
5. カーソル移動操作キー | 12.正規表現 | |
6. 画面表示操作キー | 13.ブロックデータ | |
7. 編集操作キー | 14.実行例 |
【概要】
テキストファイルの編集を行います。テキストファイルの各行(画面表示)は1568バイト以内であるとします。これ以上の長さの行がある場合には編集できません。また、テキストファイルは「コード変換指定」を行わない限りシフトJISコードファイルであるとします。
編集上の注意として、タブと半角スペースは表示位置の相違を除いて違いはないものとします。つまり、タブの表示範囲は半角スペースに変換可能であるとします。
(これは特にソースファイルの編集を目的として作成したことに因ります。)
テキストファイルの行データが73カラム以上となる場合は、1ライン72カラム毎に折り返されて表示されますが、2カラムの表示である漢字コードが72カラム目に来る場合には、このカラムに '-' が表示され、次の行の先頭に当漢字コードが表示されます。
エディタを終了させるには、コマンド入力キー(F1)を押して、'q'(quitの略で、これは個別終了の場合)または'Q'(全体終了の場合)を入力して下さい。ただし、テキストの変更を行った場合、これを元のファイルに書き込んで終了する場合には'wq'を、この変更をキャンセルして終了するには'q!'を入力して下さい。
【パラメータ】
-T tagfile | … | タグファイル(tagfile)よりタグの設定を行います。 この各タグの設定は以下となります。
ただし、同一のタグ名がある場合、後者のものが優先されます。 |
-t tablen | … | 以降、ファイルのタブの長さをtablenにします。 |
-R | … | 以降、ファイルを読み込み専用とします。 |
-r | … | 当ファイルを読み込み専用とします。 |
-code | … | 当ファイルの文字コードの指定で、以下のものを指定します。 -E … EUCコード -J … JISコード -U … Unicode この指定を行った場合、編集上はSJISコードで行われますが、ファイル書き込み時は元の文字コードに変換されます。 |
textfile | … | 編集するテキストファイル名。 これはASCIIコードファイルまたはSJIS(シフトJIS)コードファイルを指定します。 ただし、各テキストファイルは二重に指定することはできません。また、編集するテキストファイルが唯一つの場合を除いて、存在しないファイルを指定することはできません。 EUCコード(UNIXマシンの拡張Unixコード)やUnicode(UTF-8)のテキストファイルを指定することもできますが、この場合には漢字や半角カナは文字化けを起こします。この場合には、コード変換コマンド(chc)により変換することができます。 |
【キー入力】
使用キーボード端末は109であるとします。また、編集での文字コードはシフトJISコードのみに対応しています。
操作キー名称 | 初期設定キー | 機能概要 |
---|---|---|
CSR_UP | ↑ | カーソルを1行上げます。 |
CSR_DOWN | ↓ | カーソルを1行下げます。 |
CSR_RIGHT | → | カーソルを1文字右に移動します。 |
CSR_LEFT | ← | カーソルを1文字左に移動します。 |
CSR_TOP | Home | カーソルをデータ行の先頭に移動します。 |
CSR_BOTOM | End | カーソルをデータ行の最後に移動します |
NEXT_PAGE | Page Up | 次の画面を表示します。 |
PREV_PAGE | Page Down | 前の画面を表示します。 |
CSR_POS | F9 | カーソル位置に対するデータ行のカラム位置を表示します。 |
DISP | F10 | 画面を再表示します。または該当のdifデータを表示します。 |
SCROLL_UP | F11 | 画面をスクロールアップします。 |
SCROLL_DOWN | F12 | 画面をスクロールダウンします |
COMMAND | F1 | コマンド入力にします。(キー変更不可) |
HELP | F2 | ヘルプ画面を表示します。(キー変更不可) |
DO | F3 | コマンドの再実行。 |
FIND_BRA | F4 | 対応する括弧に移動します。 |
FIND_FWD | F5 | 前方に文字列検索を行います。 |
FIND_BAK | F6 | 後方に文字列検索を行います。 |
NEXT_FIND | F7 | 前方に文字列検索を続行します。または次のエラー行/相違行に移動します。 |
PREV_FIND | F8 | 後方に文字列検索を続行します。または前のエラー行/相違行に移動します。 |
INSERT | Insert | 挿入モードの設定 |
REMOVE | Delete | 削除モードにします。 |
FWD_WORD | Ctrl-f | カーソルを次の語に移動します。 |
BAK_WORD | Ctrl-g | カーソルを前の語に移動します。 |
NEW_LINE | Ctrl-n | カーソル行の下に新しい行を追加します。 |
DEL_LINE | Ctrl-d | カーソル行のデータを削除します。 |
DEL_BOTOM | Ctrl-b | カーソル位置から行データの最後までを削除します。 |
BOTOM_ADD | Ctrl-a | カーソル行のデータの最後に追加します。 |
DEL_CHAR | Ctrl-x | カーソル位置の1文字を削除します。 |
DEL_WORD | Ctrl-w | カーソル位置から1語(文字コードが連続しているものは1語とみなします)の終わりまで削除します。 |
COPY | Ctrl-c | REMOVEで選択された領域をコピーします。 |
PASTE | Ctrl-v | COPYやyankコマンド等で保存されたデータを挿入します。 |
RETRIEVE | Ctrl-r | 編集中の行データや直前のコマンド実行を元に戻します。 |
JOIN | Ctrl-o | カーソル位置の行データと次の行データを結合します。 |
SPACE | Ctrl-s | スペースまたは周辺のスペースを可能ならばタブに変更します。 |
ADD_TAG | Ctrl-t | タグ名を追加します。 |
CSR_UP | … | カーソルを1行上げます。画面最上行の場合には、前のデータの表示行数分スクロールダウンします。 |
CSR_DOWN | … | カーソルを1行下げます。画面最下行の場合には、次のデータの表示行数分スクロールアップします。 |
CSR_RIGHT | … | カーソルを右に移動します。 |
CSR_LEFT | … | カーソルを左に移動します。 |
CSR_TOP | … | カーソルをデータの先頭に移動します。 |
CSR_BOTOM | … | カーソルをデータの最後に移動します。 |
FWD_WORD | … | カーソルを次の語に移動します。 「語」とは連続した英数字(半角)、'_'、半角カナまたは全角文字(ただし記号や句読点文字でないもの)のこととします。(補足1) |
BAK_WORD | … | カーソルを前の語に移動します。 |
SCROLL_UP | … | スクロールアップします。 |
SCROLL_DOWN | … | スクロールダウンします。 |
NEXT_PAGE | … | 次の画面を表示します。 |
PREV_PAGE | … | 前の画面を表示します。 |
CSR_POS | … | カーソル位置及びデータ上のバイト位置を表示します。 |
DISP | … | 画面を再表示します。 |
COMMAND | … | コマンド入力を行います。 |
FIND_FWD | … | カーソル位置より前方にパターン検索を行います。この場合、次のプロンプトが表示されます。 Search(>) 検索パターンの入力形式は以下となります。
|
FIND_BAK | … | カーソル位置より後方にパターン検索を行います。この場合、次のプロンプトが表示されます。 Search(<) |
NEXT_FIND | … | 後方へのパターン検索を行います。 |
PREV_FIND | … | 前方へのパターン検索を行います。 |
NEXT_FIND | … | 前方への検索を行います。 ただしエラー情報表示(errコマンド)または差分情報表示(difコマンド)が行われた場合には、次の該当行に移動します。 |
PREV_FIND | … | 後方への検索を行います。 ただしエラー情報表示(errコマンド)または差分情報表示(difコマンド)が行われた場合には、前の該当行に移動します。 |
FIND_BRA | … | カーソル位置の括弧に対応する括弧にカーソル移動します。括弧の対応は以下となります。
例えば、"(a{(b)c)}d)"という文字列がある場合、aの前の括弧'('に対応するものはcの後の括弧')'となります。 |
Insert | … | 一時的挿入モードにします。再度、Insertキーを押すと、継続的挿入モードにします。継続的挿入モードを解除するには、Insertキーを押します。 一時的挿入モードの場合、カーソル移動を行うと上書きモードに戻ります。 挿入モードの場合、コマンド行に下記の反転表示がなされます。
|
REMOVE | … | 上書きモードの時、当キーを押すと削除モードになります。この後、削除したい範囲までカーソル移動を行い、Enterキーを押すと当該範囲が削除されます。 削除後は一時的挿入モードになります。
REMOVEをキャンセルするには再度REMOVEキーを押すか、ESCキーを押して下さい。
削除ではなく、範囲コピーを行う場合にはCOPYを行って下さい。 或いは、選択した文字列の置換を行う場合にはDOを行って下さい。置換文字列の設定はsetコマンドにて行います。ただし、この置換は複数行に渡る文字列に対しては行えません。 REMOVEで削除したもの、または変更したものを元に戻す場合には、RETRIEVEを行って下さい。 |
DO | … | 直前の(正常終了した再実行可能)コマンドを実行します。またはREMOVE時のDO変更を実行します。 |
DEL_CHAR | … | 1文字削除します。 |
DEL_WORD | … | カーソル位置以降の1語を削除します。 |
DEL_BOTOM | … | カーソル位置よりデータの最後まで削除します。 |
DEL_LINE | … | 1データ行数分削除します。 |
NEW_LINE | … | 1行挿入します。 |
JOIN | … | カーソル位置の行データと次の行データを結合します。 |
COPY | … | REMOVE時、選択された範囲データをコピーします。 |
PASTE | … | クリップボードのテキストデータやCOPY、yankコマンド、文字列削除、行データ削除等で保存されたデータを挿入します。 クリップボードデータと内部処理での保存データとの選択では、クリップボードデータが優先されます。ただし、このテキストデータが同一である場合には内部処理での保存データが優先されます。 |
RETRIEVE | … | 編集行を元に戻します。 |
ADD_TAG | … | タグファイルの入力パラメータ(-T tagfile)があり、上書きモードの時、当キーを押すとタグ名選択モードになります。この後、タグ名の最後までカーソル移動を行い、Enterキーを押すと選択文字列がタグ名として登録されます。 ただし、タグ名は64バイト以内(半角では64文字以内)に制限されます。 該当行でタグ名の変更を行う場合には、タグ名の先頭文字列に移動して、再度当キーを押して下さい。 また、タグ名登録をキャンセルするにはESCキーを押して下さい。
追加したタグ名は、プログラム終了時に当タグファイルに追加するかどうか、またはタグファイルを置換(replace)するかどうかを尋ねます。タグファイルを置換した場合、重複したタグデータは削除されます。 ただし、タグファイルを2つ指定した場合には、これら及び追加したタグデータのマージ(merge)のみが行えます。この場合、重複したタグデータは後のものが優先され、以前のものは削除されます。 |
HELP | … | ヘルプ画面を表示します。この画面モードでは以下の表示制御ができます。
|
c言語等のコンパイル・エラーメッセージのフォーマット定義を行います。
これは初期設定ファイルの中の"[ErrorDefinition]"の"FORMAT"項目によって設定します。
この定義における各語の意味は以下となります。
%e | … | エラー種類 |
---|---|---|
%f | … | ファイル名(ディレクトリパスを含まない) |
%l | … | 行番号 |
%c | … | カラム番号 |
%m | … | メッセージ内容 |
区切り文字 | … | エラーメッセージにおける区切り文字。これには[:;(){},]の各文字があります。 |
エラー種類の定義は以下の項目にて設定します。
Warning | … | 警告エラー名の定義 |
---|---|---|
Error | … | エラー名の定義 |
上記の各語によって、エラー情報表示コマンドでは、編集ファイル名と一致するファイル名のエラーメッセージについて以下のようにエラーメッセージを表示します。
-code 文字コード指定 | … | 文字コードの指定は以下となります(補足2)。
| ||||||||||||||||||||||||||||||
line 行番号表現 | … | 行番号の指定方法は以下となります。
| ||||||||||||||||||||||||||||||
lines 行数指定表現 | … | 行数の指定方法は以下となります。
| ||||||||||||||||||||||||||||||
colm カラム位置表現 | … | カラム位置(画面表示)の指定方法は以下となります。
| ||||||||||||||||||||||||||||||
chars 文字数表現 | … | 文字数の指定方法は以下となります。
| ||||||||||||||||||||||||||||||
str 文字列 | … | 文字列の指定は以下の並びとなります。
| ||||||||||||||||||||||||||||||
id 識別文字列 | … | これは英数字の文字列となります。 | ||||||||||||||||||||||||||||||
file ファイル | … | ドライブ(drive)及びディレクトリ(フォルダ)パス(path)を含むファイル(file)の指定は以下となります。
パスには相対指定と絶対指定とがあり、相対指定はカレントディレクトリ(.は省略可)からの指定となり、絶対指定はルートディレクトリ(\)からの指定となります。
例えば、"..\..\main.c"はカレントディレクトリの二つ上位のディレクトリにある main.c というファイルの指定となります。 | ||||||||||||||||||||||||||||||
pat 比較パターン文字列 | … | 文字列比較パターンの記述方法には「通常表現」によるものと正規表現によるものがあります。
|
set env | … | 動作環境設定コマンド この設定envには以下のものがあります。
Aind Bnoind Cpad=c Dreg Enoreg Fdo=/str/ Gupd Htagterm=[c]
Aはオートインデント(改行時に前の行に合わせて開始位置を下げる)の設定をします。
Cはパディング文字を設定します。パディングは、行データの後ろに文字列を追加する場合、この途中を埋めるものです。ただしこれは半角スペースまたはタブコード(デフォルト)のみとなります。
Dは検索時の文字列の指定を正規表現とします。 FのstrはREMOVE時のDOによる置換文字列です。この文字列には選択された文字列となる \% を使用できます。これを無効にするにはその前に\を付けて下さい。
Gは編集中の(読み込み専用)ファイルを書き込み可とします。 なお、上記の初期設定はGを除いて初期設定ファイル(cxed.ini)の中の [Environment] に記述できます。
Hはタグ名の直後の終端文字の設定です。 | |||||||||||||||
open [file] | … | オープンコマンド 編集ファイルまたは指定ファイルfileをこの拡張子に関連付けられているアプリケーションでオープンします。 | |||||||||||||||
n[!] [{-r | -u | -p | -1 | no | [-code] file}] | … | 編集ファイル変更コマンド 現在のファイル編集を終了して、次のテキストファイルを開きます。現在のファイルが編集済みの場合、これを無効にする場合には!を付けて下さい。
cxed 起動時に指定したテキストファイルや後から追加されたテキストファイルはそれぞれ1より順に番号付けられていて、ファイル番号noを指定することで、該当のテキストファイルが開かれます。 新たにテキストファイルを開く場合にはファイル名fileを指定します。ただし数字のみのファイル名は不可で、この場合は'"'で括って下さい。 各オプションの機能は以下となります。
文字コード変換指定を行った場合、編集上はSJISコードで行われますが、ファイル書き込み時は元の文字コードに変換されます。 "n[!]"のみの場合、編集中のファイルが最後のファイルの場合には、最初のファイルに戻ります。 なお、テキストデータは元ファイルとこれに対する変更データから成ることから、元ファイルを削除したりファイル名を変更すると、編集ファイル変更後は、当テキストデータを復元することができません。 | |||||||||||||||
new file | … | 新規作成コマンド 指定されたファイル名で開きます。該当ファイルが既に存在する場合にはエラーとなります。 | |||||||||||||||
l | … | 編集対象ファイル一覧コマンド 編集対象のテキストファイルをファイル番号をつけてリストアップします。 ファイルの編集属性により、ファイル名の前に以下の文字が付加されます。
* … 編集済み # … 変更ファイル(編集中に他で変更されたファイル) ? … 編集不能ファイル この画面モードでは以下の表示制御またはファイル選択ができます。
p … 前の画面を表示します。(Page Downキーも可) q … 当コマンドを終了します。 no … ファイル番号noのファイルの編集を行います。 | |||||||||||||||
[line]r [-code] [lines] file | … | ファイル読み込みコマンド テキストファイルfileより、カーソル行または指定行lineの場所に指定行数lines分の行データを挿入します。行数指定を行わない場合には、fileの全てのデータが挿入されます。 ただし、lineが$の場合には最終行の後に挿入します。また、linesには'.'は使用できません。
-codeは文字コード変換指定で、fileがEUCコードの場合には -E を、それがJISコードの場合には -J を、 それがUnicodeの場合には -U を指定して下さい。 | |||||||||||||||
[lines]w[!] [-code] [file] [lines]w [-code] >> file | … | ファイル書き込みコマンド 編集内容をファイルに書き込みます。 編集内容を編集ファイルではなく他のファイルに書き込む場合には、ファイル名fileを指定して下さい。 このファイルが存在し、上書きする場合には、!を付けて下さい。 上書きではなく最後に追加する場合には、>>を付けます。
行数lines指定を行った場合には、この範囲の行データのみが書き込まれます。 編集ファイル自身への部分的書き込みはエラーとなりますが、これを強制的に行うには!を付けて下さい。この場合、編集内容とファイル内容は異なることに注意して下さい。 ファイルに書き込む際に文字コードの変換を行う場合には、-codeの指定を行って下さい。 これはSJISコードをEUCコード(-E)、JISコード(-J)またはUnicode(-U)に変換して書き込むものです。 もし、編集時の文字コードがSJISコードでない場合には、不正な文字コードに変換されてしまいます。 ただし、起動時のパラメータで当ファイルに文字コードの指定がされている場合には、-codeを指定しなくても、元の文字コードに変換されて書き込まれます。 もし元の文字コードではなくて、SJISコードで書き込むという場合には、-Nを指定して下さい。この指定時には文字コードの変換は行ないません。 | |||||||||||||||
[w]q[!] [-code] | … | 編集終了コマンド 現在のファイルの編集を終了します。 wを付加した場合、編集ファイルの上書きをした後に終了します。編集後、上書きしないで終了するには!を付けて下さい。 ただし、wq!は論理的エラーとなります。 -codeは文字コード変換指定で、これはw付加時に指定することができます。この指定はファイル書き込みコマンドと同じです。 | |||||||||||||||
Q[!] | … | 全編集終了コマンド 全てのファイルの編集を終了します。 !を付けた場合、当該編集ファイルの変更をキャンセルして閉じます。 他に変更ファイルがない場合には終了しますが、変更ファイルがある場合には、そのキャンセルの確認を行います。 | |||||||||||||||
[line]g [colm] /pat/g ba | … | 行移動コマンド [line]g…は該当行の該当カラムにカーソルを移動します。
/pat/gは、タグファイルによって定義されたタグの行に移動します。patはタグファイルのタグ名に対する検索パターン文字列で、当該文字列が存在する場合に該当のタグであると判断します。ただし複数のタグ名と一致する場合、一致率が最大のものが選択されます。
baは、行移動コマンドや文字列のパターン検索で移動したときの前の場所に戻ります。 | |||||||||||||||
=c | … | 行マークコマンド 当カーソル行を文字cでマークします。文字cは a〜z となります。 これを行番号として指定するには、%cとします。 | |||||||||||||||
[chars]x [lines] | … | 文字削除コマンド カーソル位置または指定カラム位置より指定文字数分削除します。linesを指定した場合、前方にこの行数分行います。 | |||||||||||||||
[lines]d | … | 行削除コマンド 指定行数分削除します。 | |||||||||||||||
[colm]i [lines] /str/ | … | 文字列挿入コマンド 該当カラム位置に文字列strを挿入します。linesを指定した場合、前方に行数分行います。 | |||||||||||||||
[lines]y [[>>] no] | … | ヤンク(引き込み)コマンド カーソル行または指定行数lines分を指定バッファ番号no(0〜20)のバッファにヤンクします(引き込みます)。 バッファ番号省略時は、バッファ番号は0となります。 バッファの最後に追加する場合には、>>を付加して下さい。 | |||||||||||||||
[no]p [line[ colm]] | … | ペーストコマンド 指定行lineの後に指定バッファ番号no(1〜20)のバッファデータを挿入します(ただし、lineが$の場合には最終行の後に挿入します)。 line省略時にはカーソル行の場所となります。 バッファデータがREMOVEやxコマンド等の範囲指定によってセーブされたものの場合には、カーソル位置または、該当行(lineパラメータ指定時)のカラム位置colm(省略時は行先頭位置)に挿入します。(そうでない場合、カラム位置指定は無効となります。) | |||||||||||||||
[lines]c [line] | … | コピーコマンド カーソル行または指定行数lines分を指定行lineに挿入します(ただし、lineが$の場合には最終行の後に挿入します)。 line省略時にはカーソル行の後に挿入されます。 | |||||||||||||||
[lines]m line | … | 行データ移動コマンド カーソル行または指定行数lines分を指定行lineに移動します(ただし、lineが$の場合には最終行の後に挿入します)。 lines省略時はカーソル行のみの移動となります。 | |||||||||||||||
[lines]o [line] | … | 行データ上書きコマンド カーソル行または指定行数linesのデータで、カーソル行または指定行lineを置き換えます。 | |||||||||||||||
[colm]I [chars] | … | ブロック挿入コマンド 該当カーソル位置より、指定文字数分ブロック・インサートを行います。挿入するブロックデータはREMOVEなどで保存されたデータとなります。ブロックデータがn行数分ある場合には、前方にn行分挿入されます。 charsを指定した場合には、バッファに設定されたデータの当指定文字数を挿入します。 | |||||||||||||||
[colm]O [chars] | … | ブロック上書きコマンド 該当カーソル位置より、指定文字数分ブロック・オーバーライトを行います。ブロックデータがn行数分ある場合には、後方にn行分上書きされます。 charsを指定した場合には、バッファに設定されたデータの当指定文字数を上書きします。 | |||||||||||||||
[chars]f [lines] /str/ | … | 文字列埋め込みコマンド 指定範囲(chars省略時はカーソル位置の1文字分)の文字列を埋込み文字列strで埋めます。strの文字列長が指定範囲長に満たない場合には、strが循環的に使用されます。 行数指定をした場合には、前方に行数分行います。 | |||||||||||||||
[chars]u /str/ | … | 文字列変更コマンド カーソル位置より指定文字数分の文字列をstrの文字列に変更します。 このstrには以下の特殊文字を使用できます。
これを無効にするにはその前に\を付けて下さい。 | |||||||||||||||
[lines]s /pat1/[pat2/]str/[{n|?}] | … | 検索置換コマンド 指定行数linesのデータに対して、pat1に一致した文字列を文字列strで置き換えます。linesを省略した場合には全ての行が対象となります。 pat2を指定した場合には、pat1に一致した文字列を含む行に対してpat2と一致する文字列をstrで置き換えます。 このstrには以下の特殊文字を使用できます。
上記置換は対象の文字列全てに対して行われますが、選択的置換を行う場合には、置換回数nまたは?を指定して下さい。 置換回数nを指定した場合には該当の各行についてn回まで行います。 ?を指定した場合には個々に置換を行うかどうかを問います。これに対しては以下の文字を返します。
n … 置換しない。 q … 置換を終了する。 | |||||||||||||||
b [{-b | -t | no}] | … | バッファデータ表示コマンド バッファ内容を表示します。バッファ番号no(1〜20)を指定した場合、この番号のバッファ内容を表示します。ただし、バッファ番号0または省略時には共通バッファとなります。
-bを指定した場合はREMOVE等で設定されたブロックデータを表示します。
-tを指定した場合はタグデータを表示します。 この画面モードでは以下の表示制御ができます。
p … バッファ内容の前のページを表示します。(Page Downキーも可) q … 当画面表示を終了します。 | |||||||||||||||
err [-e] [file] | … | エラー情報表示コマンド 編集ファイルに対するエラー情報ファイルfileを開き、個々のエラー行に移動すると共にエラー情報を表示します。 ただし、実行前にファイルが編集されている場合にはエラーとなります。 オプションの-eを指定した場合には、エラー行のみを表示します。 fileを省略した場合には、クリップボードに設定されたエラーメッセージのテキストデータより表示します。なお、クリップボードは共有のものであるため、当コマンドを実行する直前にエラーメッセージを設定するようにして下さい。
エラー情報ファイルにおいてエラー出力行を識別するためには識別文字列line_idを指定します。これを省略した場合には、編集ファイルに関する全行が対象となります。
エラーメッセージが開始される特定の文字列がある場合、この識別文字列message_idを指定します。これを省略した場合、line_id以降の:の次の文字列以降をエラーメッセージとして表示します。(一般にコンパイルエラーメッセージはメッセージ区分毎に:で区切られるため。)
次のエラー行に移動するには NEXT_FIND キーを押して下さい。前のエラー行に移動するには PREV_FIND キーを押して下さい。ただし、最初にPREV_FIND キーを押した場合には、最後のエラー行に移動します。 | |||||||||||||||
dif file | … | 比較情報表示コマンド ファイル比較コマンドの差分情報ファイルfileを読み込み、相違行に移動します。 ただし、実行前にファイルが編集されている場合にはエラーとなります。 次の相違行に移動するには NEXT_FIND キーを押して下さい。前の相違行に移動するには PREV_FIND キーを押して下さい。ただし、最初にPREV_FIND キーを押した場合には、最後の相違行に移動します。 該当の差分データを表示するにはDISPキーを押して下さい。このキーは通常は画面再表示キーですが、difコマンドを実行した場合には当表示キーとなります。
ファイル比較コマンドはUNIXコマンドのdiffや当者作成のtcmpを対象とします。 | |||||||||||||||
L [dir [/pat/]] | … | テキストファイル・リストアップコマンド 指定フォルダdirの、テキストファイルと推定されるファイルをリストアップします。 dir以下を省略した場合には、表示しているテキストファイルのフォルダとなります。
ただし、拡張子によりテキストファイルでないと判断されるファイルは除外されます。例えば、"〜.exe"はテキストファイルでないと判断されるため除外されます。 テキストファイルを選択する場合には、ファイル選択文字列patを指定します。この場合、このパターンと一致する文字列を含むファイル名のものを選択します。 この画面モードでは以下の表示制御またはファイル選択ができます。
p … 前の画面を表示します。(Page Downキーも可) q … 当コマンドを終了します。 [no] … ファイル番号noのファイルの編集を行います。noを省略した場合には、'>'で位置づけられているファイルの編集を行います。 現在選択対象のファイルの場合、それは以下のように表示されます。
次に当コマンド内容を同様に実行する場合には、dir以下を省略できます。 この場合、選択対象ファイルは直前に選択したファイルとなります。 なお、ファイル番号により編集ファイルを選択することによって、初めてそのファイル全体がテキストファイルかつ編集可能であるかがチェックされます。 | |||||||||||||||
M macro[:command] | … | マクロ設定コマンド コマンドマクロを設定します。macroはマクロ名で、先頭文字がアルファベットで、アルファベット、'_'、または数値の2文字以上かつ20文字以下の文字列とします。 commandはこのコマンドとなります。commandには$n(nは1〜9)を含めることができ、これはマクロパラメータとなります。 command省略時は当マクロのコマンドを表示します。 なお、マクロの設定は初期設定ファイル(cxed.ini)の中の [MacroDefinition] に記述できます。この場合には
| |||||||||||||||
macro [param1 [param2]...] | … | マクロ実行コマンド マクロ名macroで定義されたマクロを実行します。マクロにパラメータが指定されている場合、各パラメータはスペースで区切って指定します。 | |||||||||||||||
chc [-code] | … | 文字コード変換コマンド EUCコード、JISコードまたはUnicodeからSJISコードに変換します。ただし、ある行でコード変換に失敗した場合、以降の変換は中止されます。 -Eまたは-U は文字コード指定オプションで、-E はテキストファイルがEUCコードであることを、-E はそれがUnicodeであることを指定します。このオプションを省略した場合には、EUCコードであると看做されます。 |
↓ | |||||||
□ | □ | □ | ■ | ■ | ■ | ● | |
● | ● | ● | ■ | ■ | ■ | ● | ● |
● | ● | ● | ■ | ■ | |||
● | ● | ● | ■ | ■ | ■ | □ | □ |
↑ |
REMOVEでのカーソル移動によって選択された範囲(黒字)で、開始位置(↓)と終了位置(↑)で確定した矩形範囲(■の文字)がブロックデータとなります。(ブロック境界の文字が漢字の場合には当該部分を含みます。)
なお、ブロックデータがブロック長に満たない場合、かつ上書きされるデータ部分がブロック長以上の場合にはブロックデータの残りの分にはスペースが埋められます。上記の例では、3行目のデータが該当することになります。
A xコマンド"3x 3"で切り取られた場合のブロックデータ
↓ | |||||||
□ | □ | □ | ■ | ■ | ■ | □ | |
□ | □ | □ | ■ | ■ | ■ | □ | □ |
□ | □ | □ | ■ | ■ |
文字削除コマンドで削除された文字(■の文字)がブロックデータとなります。'↓'はコマンド実行時のカーソル位置。
ただしこの場合には、ブロックデータに含まれるタブコードは、表示位置によって表示長が異なることになりますが、これに従ってデータの長さが変わることになります。つまり、貼り付けデータが短くなったりします。
また、文字削除コマンドはカラム単位ではなく文字単位の削除のため、削除される文字に漢字を含む場合、当行のブロック長はその数分長くなります。
そこで上記の一般化として、文字削除コマンドのcharsパラメータによって示される文字列データをブロックの各データ行であると規定します。
したがって、その各データ行は必ずしも同じ長さ(ブロック境界に当たる漢字によって長さは少し異なることがありますが)または同じ文字数を持つとは限りません。
cxed a.txt -r b.txt | … | b.txtファイルを参照のみとする。 |
cxed a.txt -R b.txt | … | b.txt及び以降の新規オープンファイルを参照のみとする。 |
funpr -i a.c b.c > ab.tag cxed -T ab.tag a.c b.c | … | c言語ファイル(a.c, b.c)の関数のタグファイル(ab.tag)を作成して編集。 該当の関数には "/関数名[$]/g" で行くことができます。 |
その後、1980年代にMS-DOSが登場し、このOSが普及するようになると、ファイルやディレクトリの区切り文字としてバックスラッシュが用いられるようになると、'¥'は本来の意味とは異なる文字として利用されるようになりました。
さて、日本語の場合、アルファベット以外に半角カナや漢字コードを追加する必要がありますが、文字の多さから必然的に1バイトでは間に合わなくなることから、文字コードの定義には2バイトか3バイトを要することとなります。
また、そのコード定義も0x80未満を利用するか否かで異なります。
日本語のコード定義の原点はJISコードで、これは各文字を7bitで表すもので、必然的に文字コードの切り替えコードが必要となります。それがエスケープシーケンスと呼ばれるものです。
それに対してシフトJISはエスケープシーケンスの挿入の必要がないように、JISの漢字コードの体系を変えたものです。特に、半角カナの場合、これは1バイトで表せるように0xA0から0xD0(全部で64個)を当てはめ、漢字コードの場合、1バイト目を0x80〜0x9F,0xE0〜0xFCを、2バイト目には0x40〜0xFCを用います。したがって、最初のバイトを判断することによって、それがASCIIコードなのか、半角カナなのか、それとも漢字コードなのかが分かることとなり、コード変更の必要がなくなります。ただし、この引き換えにコード化されない漢字が生じることとなります。
一方、日本語UNIXの場合の拡張文字コードとしては、EUC-JPがあります。EUCはExtended Unix Codeの略で、EUC-JPはこの日本語版ということです。これは漢字の場合、0xA0〜0xFFまでを用いて、文字コードの切り替えシーケーンスを不要としたものです。ただし、半角カナや補助漢字の場合にはシングルシフトと呼ばれるコントロールコードを1文字毎に付け加えます。したがって、補助漢字の場合には3バイトを要することになります。