-
Notifications
You must be signed in to change notification settings - Fork 0
/
ari.doc
1024 lines (802 loc) · 53.8 KB
/
ari.doc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
**** 「あり?(Japanese fat ae with mock SKK)」の説明 ****
ari version 1.00, Copyright (C) 1991 Yuji Nimura
「あり?」 1.00 版 Apr. 12 1992
著作者 二村 祐地
JUNET: nimura@isl.melco.co.jp
Yuji.Nimura@ecs.isl.melco.co.jp
本ドキュメントは日本語入力機能付きエディタ「あり?」についての詳細な解説です。
【使用許諾の範囲】
本プログラムは、Public Domain Softwareである「AE」をベースとしてい
ますが、変更部分および機能追加部分は二村祐地が著作権を有しております。
本プログラムは free softwareです。あなたは、Free Software Foundation
が公表した GNU General Public License(一般公有使用許諾) version 1 あるいは
それ以降の各バージョンの中からいずれかを選択し、そのバージョンが定める条項に
従って本プログラムを再頒布または変更することができます。
本プログラムは有用とは思いますが、頒布にあたっては、市場性及び特定目
的適合性についての暗黙の保証を含めて、いかなる保証も行ないません。詳細につい
ては GNU一般公有使用許諾書をお読みください。
あなたは、本プログラムと一緒に GNU 一般公有使用許諾の写しを受け取って
いるはずです。そうでない場合は、Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA へ手紙を書いてください。
本プログラムのBBS等ネットワークコミュニティへの転載も、GNU 一般公
有使用許諾に従って、自由に行うことができます。ただし本プログラムのバージョン
アップについてフォローに努めてください。
なお、付録のae_spoiler.cは AE SPOILER版オリジナルソースであり Public
Domain Softwareです。よってae_spoiler.cのみを扱う場合は GNU 一般公有使用許諾
に従う必要はありません。ただし本プログラムの頒布の際には本プログラムとともに
写しを渡してください。
【AE・SKKの著作者の表示】
☆AE (Anthony's Editor あるいは Ant's Editor)について
「あり?」がベースとしているAE (Anthony's Editor あるいは Ant's Editor)は、
1991年のIOCCC(International Obfuscated C Code Cntest)における BEST UTILITYの
優勝作品で、その著者はAnthony Howe氏です。
AEは、(cursesライブラリを使ってはいるものの)正式版はたった28行、 SPOILER版
ですら 360行の大きさしかない『Simple Text Editor』です(そしてもちろんスクリ
ーンエディタです)。「あり?」はその SPOILER版ソースをベースとし、エディタと
しての機能追加の他、cursesライブラリに代わる画面制御機能と日本語入力機能を付
加しています。
以下、USENETのNewsgroups: comp.editorsに投稿された、AEについての2つの記事の
headerを記載しておきます。1つ目がAEの解説と正式版のソースを含み、2つ目が
SPOILER版のソースを含む記事です。
-------------------- 1st article --------------------
Newsgroups: comp.editors
Subject: Simple Text Editor - AE source
Message-ID: <1991Sep19.131435.22434@mks.com>
Date: 19 Sep 91 13:14:35 GMT
Sender: ant@mks.com (Anthony Howe)
Organization: Mortice Kern Systems, Waterloo, Ontario, CANADA
-------------------- 2nd article --------------------
Newsgroups: comp.editors
Subject: Simple Text Editor - SPOILER
Message-ID: <1991Sep19.131627.22522@mks.com>
Date: 19 Sep 91 13:16:27 GMT
Sender: ant@mks.com (Anthony Howe)
Organization: Mortice Kern Systems, Waterloo, Ontario, CANADA
-----------------------------------------------------
☆SKKについて
「あり?」では、日本語入力インタフェースを SKK風にしているほか、仮名漢字変換
の要となる変換辞書はSKKの一部として配布されている辞書ファイルを使用するなど、
SKKの影響を受けています。
SKKは、佐藤 雅彦 氏(東北大学電気通信研究所)らが開発した『 Nemacs のために
高速で効率的な日本語入力環境を提供するシステムで、Gnu General Public License
に従ったfree softwareとして配布』(skk4.30/ReadMeより)されているもので、JUNET
の Newsgroups:fj.sourcesに投稿されたキットなどから入手が可能です。
「あり?」の利用にあたっては、最低限 SKKに含まれる辞書ファイル(あるいは同じ
フォーマットで作られたファイル)を入手する必要があります。また日本語入力操作
は SKKに含まれる SKK.tutを読まれたうえで行われることを推奨します。
【謝辞とお詫び】
素晴らしいsimpleなエディタを公表された Anthony Howe 氏に感謝いたします。氏の
AEがなければ「あり?」は存在しませんでした。また氏には、氏の素晴らしくsimple
で美しいエディタAEを fatなものへと変えてしまったことについて、お詫びします。
佐藤 雅彦 氏をはじめとする SKKの開発にたずさわった多くの皆様に感謝いたします。
SKKの辞書ファイルと skkservの検索アルゴリズムによって「あり?」は日本語入力
が可能になりました。
AEの存在を教えてくれた飯塚 剛 氏、また、SKK の使い方を教えてくれ「あり?」の
日本語入力操作を評価してくれた黒田 清隆 氏に感謝いたします。
「あり?」のαテストに参加してくださった日経MIX MINIX 会議の下記の方々に感謝
いたします。(敬称略、順不同)
k.h@MIX、nemossan@MIX、kazushi@MIX、kneo@MIX、takamiti@MIX、
voit@MIX、jonney@MIX、utah.tsk@MIX、tshibata@MIX
*** 目次 ***
1. 概要
1.1 起動方法
1.2 環境変数
1.3 知られている不都合な点、Known bug
2. 編集機能
2.1 カーソルの移動
2.2 文字の入力
2.3 文字の削除
2.4 内部バッファへの文字の複写
2.5 内部バッファに保存された文字の挿入
2.6 その他の機能
2.7 動作指定について
3. 日本語の扱い
3.1 利用する漢字コードの指定の仕方
3.2 半角カナの扱いについて
4. 日本語入力機能
4.1 基本入力モード
4.2 漢字入力と英字変換
4.3 ローマ字仮名変換
4.4 コード入力
4.5 カナ入力
4.6 語句の登録
付録A ローマ字仮名変換表
付録B 仮名漢字変換プログラム skksrchについて
B.1 skksrchの概要
B.2 辞書ファイルの指定の仕方
B.3 語句の検索、登録とローカル辞書ファイルの更新
B.4 インデックス付き辞書ファイルについて
付録C ソースの簡単な説明
付録D コンパイルオプションの説明
付録E ariで使う主要な定数定義の説明
付録F トラブルシューティング
付録G 日本語 minix 1.5 for IBM-PC で「あり?」を使う
*********
1. 概要
「あり?」は、AE(Anthony's Editor あるいは Ant's Editor)をベースとして作られ
たエディタで、以下の変更を加えています。
(1) 機能追加と Keyバインドの変更
「あり?」では AE の持つ機能のほか、さらにいくつかの機能を追加してい
ます。なお、AEの持ついくつの機能については、key バインドを変更してい
ます。
(2) 日本語対応
「あり?」はファイル入出力および表示に、JISコード、EUC あるいは
SHIFT-JIS コードを使用することができます。
(3) 日本語入力機能
「あり?」は SKK風インターフェィスの日本語入力機能があります。
「あり?」は、現在、以下のOSで動作が確認されています。
MINIX 1.5 for IBM-PC (日本語コンソール版)
MINIX 1.5 for NEC PC98 (MIX版)
MINIX 1.5 for NEC PC98 (ASCII版)
MINIX 1.5 for Mac (日本語コンソール版)
MINIX 1.5 for ATARI-ST (日本語コンソール版)
SunOS Release 4.0.3
LUNA DT330: UNIOS-B 4.3BSD UNIX: 1.60 #1
LUNA DT88k: 88000/mach-2.5-OS
NEWS NWS 800: 4.2-BSD
1.1 起動方法
「あり?」の起動方法は次のとおりです。
$ ari file
1.2 環境変数
「あり?」の動作に影響がある環境変数は次のとおりです。
LINES … 画面の行数を指定
デフォルト値は25で、最大40まで指定可能
COLUMNS … 画面の幅(文字数)を指定
デフォルト値は80で、最大120まで指定可能
ARI_SETUP … 動作指定
(『2.7 動作指定について』参照)
ARI_CODEDEF … ファイル入出力および表示の漢字コードを指定
(『3.1 利用する漢字コードの指定の仕方』参照)
ARI_KKF … 利用する仮名漢字変換プログラムを指定
(『付録B 仮名漢字変換プログラムについて』参照)
LOCAL_SKK_JISYO … 使用するローカル辞書ファイルを指定
(stand aloneタイプあるいは仮名漢字変換プログラム
としてskksrchを用いる場合)
SKK_JISYO … 使用する共通辞書ファイルを指定
(stand aloneタイプあるいは仮名漢字変換プログラム
としてskksrchを用いる場合)
この他、利用する仮名漢字変換プログラムに依存した環境変数も考慮する必
要があります。
1.3 知られている不都合な点、制限事項、Known bug
・扱える最大のファイルサイズは16383byteまで。
・内部バッファに保存できる文字は最大1023文字(漢字は1文字)。
・エラーはほとんどの場合メッセージをださない。
・NULL文字を入力すると表示がおかしくなる。
(NULL文字から行末まで表示されない)
・カーソルの形状は常に ASCII文字の幅で固定されており、全角文字や制御
文字の上では、カーソルは文字の左半分に位置する。
・ファイルの先頭あるいは最後でのカーソル移動や文字の入力位置がおかし
くなることがある。
・(特に)1行の長さが画面の幅を越えた場合、表示が乱れることがある。
・端末制御コードは固定したものを使っている。
(termcap は見ていない)
・画面内に表示される文字数が多い場合、カーソルの移動等が遅くなる。
・画面のスクロールはかなり遅い。
・利用する SKK辞書ファイルは昇順にソートされている必要がある。
・送り仮名つきの仮名漢字変換はSKKとは若干動作が異なる。
(『4.2 漢字入力と英字変換』参照)
・登録できる語句および読みの長さは画面の幅に影響される。
2. 編集機能
「あり?」がサポートしている機能は次のとおりです。ここで "[n]"は1以上の数値
を示し、省略時の値は1です。なお「あり?」では(AEと同様)改行も1つの文字と
して扱います。
2.1 カーソルの移動
[n]h 左へn文字カーソルを移動
[n]j 下へn文字カーソルを移動
[n]k 上へn文字カーソルを移動
[n]l 右へn文字カーソルを移動
[n]w 右へn単語カーソルを移動
[n]b 左へn単語カーソルを移動
^F 1ページ進む
^B 1ページ戻る
0 行頭へカーソルを移動
^ (空白を考慮して)行の先頭へカーソルを移動
$ 行末へカーソルを移動
T ファイルの先頭へカーソルを移動
B ファイルの末尾へカーソルを移動
:[n] n行目へカーソルを移動([n]は省略不可)
:$ ファイルの末尾へカーソルを移動
2.2 文字の入力
すべての入力は ESCコード (^[) で終了します。入力中には BS(= ^H) による後退に
より訂正が可能です。なお多くのコントロールコードは直接入力が可能ですが、 ESC
コードなど特別の意味を持つコントロールコードは、『 ASCIIモード』で ^V に続い
て入力します。(^Vは次の入力をエスケープする)
i カーソルの直前に入力
O カーソルのある行の上に新たな行を入力
o カーソルのある行の下に新たな行を入力
I 行頭に入力
A 行末に入力
2.3 文字の削除
直近に1つのコマンドで、削除された一連の文字は、その内容が内部バッファに保存
されます。
[n]x カーソルのある文字を(n回)削除
[n]dl カーソルのある文字を(n回)削除
[n]X カーソルの左の文字を(n回)削除
[n]dh カーソルの左の文字を(n回)削除
D カーソルから行末まで削除
[n]dd カーソルのある行を(n回)削除
2.4 内部バッファへの文字の複写
[n]Y カーソルのある行(から下n行)を内部バッファへ複写
[n]yy カーソルのある行(から下n行)を内部バッファへ複写
[n]yl カーソルのある文字(から右n文字)を内部バッファへ複写
[n]yh カーソルの左n文字を内部バッファへ複写
2.5 内部バッファに保存された文字の挿入
P カーソルの直前に挿入
p カーソルの直後に挿入
2.6 その他の機能
^L 画面の再表示
^G 編集中のファイル名、カーソルのある行番号などを報告
:r file 指定したファイルの読み込み('r'の後には1つのspaceが必要)
:w ファイルへの書き込み
:w file 指定したファイルへの書き込み('r'の後には1つのspaceが必要)
:wq ファイルへの書き込みと編集の終了
:x ファイルへの書き込みと編集の終了
:q 編集の終了(ファイルの内容が変更されている場合、終了できない)
:q! 編集の強制終了
:version バージョンの表示
:notice 著作権、無保証、再頒布条件の表示
:toroku 語句の登録(『4.6 語句の登録』参照)
:touroku 語句の登録(『4.6 語句の登録』参照)
:set param 動作指定('set'の後には1つのspaceが必要)
:set 動作指定状況の表示
:set all 動作指定状況の表示('set'の後には1つのspaceが必要)
:setup 動作指定状況の表示
':set param'、':set'、':set all'および':setup'コマンドの詳細については『2.7
動作指定について』を参照ください。
2.7 動作指定について
「あり?」では、その動作を次のパラメータにより指定することができます。
codedef=ENE@J 漢字コードを指定
(『3.1 利用する漢字コードの指定の仕方』参照)
tab=8 TAB量を指定
notabexpandを指定している場合は、TAB量は端末の設定と
一致している必要がある
notabexpand TABの展開を端末にまかせる
tabexpand TABをspaseに展開して端末に送る
nobreakfence 文字入力時にBSで入力開始位置を越えて文字を削除できない
breakfence 文字入力時にBSで入力開始位置を越えて文字を削除できる
noasciiindicate 文字入力時『ASCIIモード』では画面にモード表示をしない
asciiindicate 文字入力時『ASCIIモード』で画面にモード表示『【a】』を
表示する
これらのパラメータは、環境変数 ARI_SETUPによって起動時に設定が可能なほか、
':set param'コマンドによっても変更が可能です。現在の動作指定状況は ':setup'コ
マンドにより表示させることができます。なお ':set'コマンドあるいは ':set all'
コマンドでも同様に現在の動作指定状況を表示します。
環境変数 ARI_SETUPによる動作指定では、その値としてパラメータのみを設定します。
ここでパラメータは '|'または ','をはさんで複数を同時に指定することも可能です。
「あり?」のデフォルト動作指定は以下の設定と同等です。
$ ARI_SETUP='codedef=ENE@J | tab=8 | notabexpand'
$ ARI_SETUP="$ARI_SETUP |nobreakfence|noasciiindicate"
$ export ARI_SETUP
なお環境変数 ARI_CODEDEFによる漢字コード指定は、環境変数 ARI_SETUPによる指定
よりも優先されます。(『3.1 利用する漢字コードの指定の仕方』参照)
':set param'コマンドによる動作指定では、:setとつづく1つの spaceの後に param
としてパラメータを指定します。例えばパラメータ asciiindicateを設定するには次
のように実行します。
:set asciiindicate
3. 日本語の扱い
3.1 利用する漢字コードの指定の仕方
「あり?」では漢字コードとして JISコード、 EUCおよび SHIFT-JISコードを扱うこ
とができます。
デフォルトではファイル入出力および表示とも EUCですが、使用するコードは動作指
定パラメータ codedefにより、ファイル入出力と表示を別々に指定できます。
動作指定パラメータ codedefは5つの ASCII文字からなる文字列で、1文字目でファ
イル入出力コードを、3文字目で表示コードを指定します。
各文字での指定の仕方は次のとおりです。
JISコード 'J'
EUC 'E'(あるいは無効な文字)
SHIFT-JISコード 'S'
動作指定パラメータ codedefの2文字目は、現在ローマ字仮名変換の動作指定に用い
られています(『4.3 ローマ字仮名変換』参照)。またコード指定のための文字 'N'
は将来の拡張のためにリザーブされています。
これらの設定状況は ':setup'コマンド(あるいは ':set' または ':set all'コマン
ド)のほか '^G'コマンドでも知ることができます。
さらに4文字目および5文字目では、 JISコードでの漢字コードセット選択および
ASCIIコードセット選択のためのエスケープシーケンスで用いる文字を指定します。
4文字目は漢字コードセット選択のさいに用いる文字でデフォルト値は'@' 、また5
文字目は ASCIIコードセット選択のさいに用いる文字でデフォルト値は'J' です。
デフォルト値を用いたコードセット選択のためのエスケープシーケンスは、以下のよ
うになります。
漢字コードセット選択 ESC $ @
ASCII コードセット選択 ESC ( J
動作指定パラメータ codedefは、環境変数 ARI_SETUPあるいは ':set param'コマンド
によって設定することができます。(『2.7 動作指定について』参照)
また環境変数 ARI_CODEDEFによっても設定することが可能で、この場合はパラメータ
の値となる文字列のみ指定します。環境変数 ARI_CODEDEFによる設定は、環境変数
ARI_SETUPによる設定のあとで行われます。
パラメータを設定する場合は、次の文字も利用することができます。
デフォルト値継承 '-'
直前値継承 '!'
なおパラメータを設定する際に、指定した文字列が5文字以下の長さであれば、足り
ない部分は直前値を適用します。
例えば、環境変数 ARI_CODEDEFの値が "--S"であれば、ファイル入出力はデフォルト
値を継承し、表示には SHIFT-JISコードを指定し、漢字コードセット選択および
ASCIIコードセット選択には、(指定されていれば)環境変数 ARI_SETUPで設定され
た直前値を継承することになります。
3.2 半角カナの扱いについて
「あり?」では、いわゆる半角カナをファイル入出力、表示とも扱うことは可能です。
JISコードおよび EUCの場合では、半角カナは制御文字 SO(^N) と SI(^O) ではさむこ
で指定します。なおこのときMSBは0として、すなわち7bit単位系として扱います。
4. 日本語入力機能
「あり?」では SKK風の(しかしかなり限定された)インターフェィスで日本語入力
機能を利用することができます。できるかぎり SKKで使用されている用語に準じて説
明することとします。
4.1 基本入力モード
文字の入力ではつぎの基本的な4つのモードがあります。
『ASCIIモード』 ASCII文字の入力
(画面にモード表示はでない)
『かなモード』 ひらがなおよび漢字の入力
(画面左下にモード表示『【あ】』が表示される)
『カナモード』 カタカナおよび漢字の入力
(画面左下にモード表示『【ア】』が表示される)
『全英モード』 全角英文字の入力
(画面左下にモード表示『【A】』が表示される)
動作指定パラメータに'asciiindicate'が設定されている場合には、『ASCIIモード』
時に画面左下にモード表示『【a】』が表示されます。
(『2.7 動作指定について』参照)
モードの切り替えは次のとおりです。
'^J' 『ASCIIモード』 から 『かなモード』(あるいは『カナモード』)
'l' 『かなモード』(あるいは『カナモード』) から 『 ASCIIモード』
'q' 『かなモード』 と 『カナモード』 の切り替え
'L' 『かなモード』(あるいは『カナモード』) から 『全英モード』
'^J' 『全英モード』 から 『かなモード』(あるいは『カナモード』)
ASCIIモード
^J ↓ ↑ l
かな/カナモード(『かなモード』『カナモード』は'q'で入れ換え)
L ↓ ↑ ^J
全英モード
『かなモード』および『カナモード』では、英小文字の入力によりローマ字仮名変換
を行います。
(英大文字を入力すると漢字入力のための『漢字変換モード』に移行する)
なお、文字の入力に際し起動時の初期状態は『ASCIIモード』に設定されていますが、
入力毎に再初期化されることはありません。前回入力終了時のモードを継続します。
4.2 漢字入力と英字変換
漢字の入力は、『かなモード』あるいは『カナモード』で、その読みとなるローマ字
の最初の1文字を英大文字で、残りを英小文字で入力することで行います。たとえば
"漢字" のためには "Kanji" と入力します。
なお送り仮名がある場合には、漢字部分の最初の1文字と、送り仮名部分の最初の1
文字を英大文字とします。たとえば "動く" は "UgoKu"、 "使った" は "TsukaTta"
と入力します。
『かなモード』あるいは『カナモード』で英大文字を入力すると『漢字変換モード』
に移行します。このとき英大文字を入力した位置には'▽'が表示され『漢字変換モー
ド』であることを示します。つづいて入力される英小文字によって『漢字変換モード』
でのローマ字仮名変換が行われます。(BS = '^H' による後退での訂正も有効です)
なお、『漢字変換モード』でのローマ字仮名変換は常にひらがなで行います。
必要な読みを入力した後 spaceを入力すると、変換候補があれば『漢字選択モード』
に移行します。
(変換候補がなければ、ひらがなのまま『かなモード』または『カナモード』に戻る)
『漢字選択モード』に移行すると、ひらがなの部分が変換候補の漢字と入れ変ると同
時に、'▽'にかえて'▼'が表示されます。
以下 spaceで次候補を、また 'x'で前候補を選択します。候補があるあいだは新しい
候補が入れ変って表示されます。spaceあるいは 'x'以外の入力により『漢字選択モー
ド』は終了し変換は確定します。('^J'を除いて入力はテキストに反映される)
また次候補あるいは前候補がなくなっても『漢字選択モード』は終了しますが、この
場合は、候補の部分が元のひらがなに戻り、同時に'▼'の表示も'▽'に戻ります。
(『漢字変換モード』に戻る)
なお、SKKと異なり「あり?」では送り仮名がある場合でもspaceが入力されるまで
『漢字選択モード』には移行しません。必ず spaceによる候補選択操作が必要です。
『漢字変換モード』または『漢字選択モード』から『かなモード』あるいは『カナモ
ード』へ直接もどるためには、'^J'を入力します。記号、数字などを入力しても『か
なモード』あるいは『カナモード』に直接もどりますが、この場合、入力はテキスト
に反映されます。
英字変換を行う場合は、英大文字で始まるローマ字の代りに '/'とつづく英字を入力
します。変換の仕方は漢字変換と同様で、英字の部分が変換候補と入れ変って表示さ
れます。なお英字変換では記号も変換対象とすることが可能です。
「あり?」ではいまのところ変換候補の一覧表示の機能はサポートしていません。
4.3 ローマ字仮名変換
「あり?」のローマ字仮名変換表は付録Aに示します。
仮名の小文字は『xa』→『ぁ』、『xya』→『ゃ』のように『x』を付けることで入力
します。また以下の変換を行います。
『ん』 … 『n'』、 または直後に(『y』 以外の)子音あるいは数字、記号類が
続くときは 『n』だけで入力が可能
さらに環境変数 ARI_CODEDEFの2文字目を 'n'に指定した場合には
『nn』でも入力が可能となる(デフォルトでは不可)
『っ』 … (『n』以外の)子音を続けても入力可能
『ー』 … 『-』で入力
数字、記号の変換は次のとおりです
(示されていない記号は変換されず、そのまま入力される)
数字 → 0〜9
, → 、
. → 。
? → ?
! → !
[ → 「
] → 」
{ → {
} → }
< → <
> → >
- → ー
(さらに、『z』に続いて記号を入力した場合、以下の変換を行う)
< → ≦
> → ≧
[ → 『
] → 』
- → 〜
/ → ・
. → …
, → ‥
4.4 コード入力
「あり?」では、 JISコードあるいは EUCによる漢字の直接コード入力を行うことが
できます。
『かなモード』あるいは『カナモード』で '\'(back slash)を入力すると、画面左下
に『code: 』とコード入力のためのプロンプトが表示されますので、16進の4桁で
コードの値を入力します。たとえば『あ』のためには、 JISコードで「2422」あ
るいは EUCで「a4a2(A4A2)」と入力します。なお SHIFT-JISコードは使えません。
4.5 カナ入力
「あり?」では、コンパイル時オプションの指定により、ローマ字仮名変換に加えて
カナの直接入力も可能にしています。本機能を利用するには、シンボル H_KANA を有
効にして ariを makeする必要があります。
(『付録D コンパイルオプションの説明』参照)
カナ入力は、『かなモード』または『カナモード』、『カナ変換モード』のときに、
いわゆる半角カナ(値 0xa0〜0xdf )入力することで行います。半角カナは全角に変
換され(濁点、半濁点の処理もする)、『カナ変換モード』では仮名漢字変換の対象
となります。なお『カナ変換モード』へは『かなモード』または『カナモード』から
'^K'を入力して移行します。
カナ入力を使った漢字変換の例は次のとおりです。
なお、初期状態は『かなモード』を想定しています。
入力 表示
^K ▽
^Kアイ ▽あい
space を入力すると、
▼愛
と、『漢字選択モード』になります。なお『カナ変換モード』から『かなモード』
または、『カナモード』に直接もどるには、『漢字変換モード』と同様、'^J'ある
いは、記号、数字などを入力します('^J'を除いて入力はテキストに反映される)。
半角カナの記号でも同じです。
4.6 語句の登録
新たな語句の登録は':toroku'コマンドで行います。(':touroku'コマンドも同様)
なお本機能を利用するには、シンボル UPDATE_DIC を有効にして ariを makeする必
要があります。
(『付録D コンパイルオプションの説明』参照)
登録しようとする語句の先頭にカーソルを移動したのち、 ':toroku'コマンドを実行
すると、画面左下に『登録単語:』と表示されますので、'h'あるいは'l'でカーソル
を移動して登録する語句を指定し、その後 CR( = ^M)を入力します。
(選択した範囲は画面左下に表示される)
例えば登録単語として『野良猫』を指定すると、その後画面最下行には次のように表
示されますので、読みを入力します。
【あ】 単語:「野良猫」 よみ:
読みの入力は通常の文字入力と同様に『ASCIIモード』、『かなモード』および『全英
モード』が使えますが、コード入力や漢字変換はできません。またカタカナも使えま
せん。CRを入力すると語句の登録は終了します。登録した語句はすぐに仮名漢字変換
で利用でき、また「あり?」終了時にはローカル辞書ファイルに反映、追加されます。
なお送り仮名のある語句を登録する際には、ローマ字で送り仮名の最初の文字までを
読みに含めます。例えば『動く』を登録する場合は、次のようにします。
【あ】 単語:「動」 よみ:うごk
語句の登録に失敗した場合は画面左下に『登録できません』と表示されます。また登
録単語や読みの長さが0であったりESCが入力された場合は、語句の登録は中断、終了
します。
---- Appendix ----
付録A ローマ字仮名変換表
a i u e o
*** あ い う え お
**k か き く け こ
**g が ぎ ぐ げ ご
**s さ し す せ そ
*sh しゃ し しゅ しぇ しょ
**z ざ じ ず ぜ ぞ
**j じゃ じ じゅ じぇ じょ
**t た ち つ て と
*ts ・ ・ つ ・ ・
*ch ちゃ ち ちゅ ちぇ ちょ
**d だ ぢ づ で ど
**n な に ぬ ね の
**h は ひ ふ へ ほ
**f ふぁ ふぃ ふ ふぇ ふぉ
**b ば び ぶ べ ぼ
**p ぱ ぴ ぷ ぺ ぽ
**m ま み む め も
**y や ・ ゆ ・ よ
**r ら り る れ ろ
**w わ ゐ ・ ゑ を
**v ヴァ ヴィ ヴ ヴェ ヴォ
*ky きゃ きぃ きゅ きぇ きょ
*gy ぎゃ ぎぃ ぎゅ ぎぇ ぎょ
*sy しゃ しぃ しゅ しぇ しょ
*jy じゃ じぃ じゅ じぇ じょ
*zy じゃ じぃ じゅ じぇ じょ
*ty ちゃ ちぃ ちゅ ちぇ ちょ
*dy ぢゃ ぢぃ ぢゅ ぢぇ ぢょ
*ny にゃ にぃ にゅ にぇ にょ
*hy ひゃ ひぃ ひゅ ひぇ ひょ
*by びゃ びぃ びゅ びぇ びょ
*py ぴゃ ぴぃ ぴゅ ぴぇ ぴょ
*my みゃ みぃ みゅ みぇ みょ
*ry りゃ りぃ りゅ りぇ りょ
**x ぁ ぃ ぅ ぇ ぉ
*xk ヵ ・ ・ ヶ ・
xts ・ ・ っ ・ ・
*xt ・ ・ っ ・ ・
*xy ゃ ・ ゅ ・ ょ
*xw ゎ ・ ・ ・ ・
付録B 仮名漢字変換プログラムについて
「あり?」は、日本語エディタ機能および日本語入力インタフェース機能を提供する
プログラム 『ari』と実際の仮名漢字変換処理を行うプログラムと一対で動作します。
「あり?」の仮名漢字変換は、 『ari』が環境変数 ARI_KKFで指定される仮名漢字変
換プログラムと、その標準入出力を通して一定のプロトコルにより通信することによ
り実現していますので、 『ari』が使うプロトコルを理解できればどのような仮名漢
字変換プログラムでも利用できます。しかし、そのようなプログラムは、現在は付属
の 『skksrch』しかありません。
skksrchを利用する場合での、環境変数の設定の仕方は次のとおりです。
ARI_KKF … "skksrch"とする(場合によってはフルPATHで指定)
LOCAL_SKK_JISYO … skksrchの使用するローカル辞書ファイルを指定する
SKK_JISYO … skksrchの使用する共通辞書ファイルを指定する
なお stand aloneタイプの「あり?」は skksrchと同等の仮名漢字変換処理まで含み、
単独での動作が可能です。
(『付録D コンパイルオプションの説明』参照)
B.1 skksrchの概要
skksrch は、SKK 付属の skkservと基本的に同じアルゴリムで SKK辞書ファイルを検
索するプログラムですが、利用方法は大きく違っています。
・標準入出力をつかって通信を行う
・通信プロトコルに互換性がない
・ローカル辞書ファイルと共通辞書ファイルの2種類の辞書ファイルをもつ
ことができる
・普通の SKK辞書ファイルのほか、インデックス付き辞書ファイルを使うこ
とができる
利用する辞書ファイルは昇順にソートされている必要があります。
また普通の SKK辞書ファイルにかえてインデックス付き辞書ファイルを用いることで、
高速に起動することができます。
(『B.4 インデックス付き辞書ファイルについて』参照)
B.2 辞書ファイルの指定の仕方
ローカル辞書ファイルのデフォルトPATHは $HOME/.skk-jisyo です。これは環境変数
LOCAL_SKK_JISYO により指定できます。
ローカル辞書ファイルは、必ず必要です。(空でもよい)
一方共通辞書ファイルは環境変数 SKK_JISYOにより指定します。
(共通辞書ファイルは指定しなくてもよい)
辞書ファイルは起動時に引数を用いて指定することも可能です。例えば共通辞書ファ
イルとして SKK-JISYOを、またローカル辞書ファイルとして local-skk-jisyoを指定
する場合は、以下のように起動あるいは環境変数 ARI_KKFに指定します。
(詳細は skksrchを引数 -helpとともに起動した際に表示されるメッセージを御覧く
ださい。)
skksrch -global SKK-JISYO local-skk-jisyo
なお引数による指定は環境変数による指定より優先されます。
skksrch での語句の検索はローカル辞書ファイルと共通辞書ファイルの両方の辞書に
対して行い、ローカル辞書ファイルにある候補が先に変換候補として優先して現れま
す。また新たに登録された語句はローカル辞書ファイルに追加、更新されます。
このため、ローカル辞書ファイルにはよく利用する語句や個人で追加する語句のエン
トリのみを作成し、 SKK付属の辞書ファイルなど汎用的な大きな辞書ファイルは共通
辞書ファイルに指定されることを勧めます。
B.3 語句の検索、登録とローカル辞書ファイルの更新
skksrch は基本的に辞書ファイルに登録されている順番で検索を行います。
仮名漢字変換で確定した語句は、次の検索では共通辞書ファイルにある候補より優先
して現れます。新たに登録された語句についても同様です。
新たに登録された語句は、まず skksrch内部の作業領域に保持され、その後ローカル
辞書ファイルに追加、更新されます。ローカル辞書ファイルの更新は skksrchとして
は明示的に指示されることが必要ですが、「あり?」ではその終了時に自動的に更新
を行います。更新されたローカル辞書ファイルは普通の SKK辞書ファイルのフォー
マットで作成されます(インデックス付き辞書ファイルではありません)。
ローカル辞書ファイルを更新すると、元のローカル辞書ファイルは(可能であれば)従
来のファイル名に '~' を追加した名前で保存されます。
なお語句の登録および検索順変更の機能を利用するためには、シンボル UPDATE_DICを
有効にして、makeする必要があります。
ただし シンボル SMALL_POOLが有効であった場合は、語句の登録はできますが検索順
変更の機能は無効となります。
B.4 インデックス付き辞書ファイルについて
インデックス付き辞書ファイルは、SKK辞書ファイルをもとに見出し位置情報をその
ファイルの先頭に付加したものです。
skksrchあるいは stand aloneタイプの「あり?」は、見出し位置情報の付いていない
普通の SKK辞書ファイルもインデックス付き辞書ファイルも同様に利用することがで
きます。ただし大きな辞書ファイルでは、インデックス付き辞書ファイルを使うこと
で、普通の SKK辞書ファイルを利用する場合に比べプログラムを高速に起動すること
ができます。
このためサイズの大きい共通辞書ファイルはインデックス付き辞書ファイルに変換し
て利用されることを勧めます。
インデックス付き辞書ファイルの作成には skksrchコマンドを使い、元になる SKK辞
書ファイルをskkjisyo、作成するインデックス付き辞書を idxskkjisyo とすると、
$ skksrch -index skkjisyo > idxskkjisyo
あるいは、
$ skksrch -index skkjisyo -to idxskkjisyo
と実行してください。
見出し位置情報は ASCIIテキストとして付加されていますので、インデックス付き辞
書ファイルは int型変数の大きさや endianの異なるシステム間でも共有することがで
きます。
また SKK辞書ファイル同様エディタ等で容易に編集が可能で、ファイルの先頭に付加
された見出し位置情報を削除するだけで、普通の SKK辞書ファイルと同じフォーマッ
トになります。
例えば次のようにして、インデックス付き辞書 idxskkjisyo から SKK辞書ファイル
skkjisyoに戻すことができます。
$ sed '/^ Start of Index$/,/^ End of Index$/d' idxskkjisyo > skkjisyo
インデックス付き辞書ファイルを編集した場合は見出し位置情報が無効になりますの
で、かならず編集後のファイルをもとに再度インデックス付き辞書ファイルを生成し
直してください。なお見出し位置情報を削除する必要はありません。
(インデックス付き辞書ファイルを作成する際や、見出し位置情報とファイルの大き
さに不整合がある場合には、見出し位置情報は無視されます。)
付録C ソースの簡単な説明
「あり?」のソースプログラムは、以下のとおりです。
ari, skksrch 共通:
config.h … システム非依存のコンパイルオプション指定
ari:
lazy.h … ariの共通 headerファイル
ae.c … AE SPOILER版をベースとした編集機能関係
lazy.c … 画面制御機能と漢字コード変換
kanakan.c … 文字入力機能、ローマ字仮名変換、仮名漢字変換インターフェィス
mnxio.c … 端末制御および入出力機能(MINIX及びその姉妹向け)
skksrch:
skksrch.c … SKK辞書ファイルを用いた仮名漢字変換機能
ローマ字仮名変換表、記号の変換表、 'z'に続く記号の変換表はそれぞれ kanakan.c
内の kana_tbl、kigo_tbl、zkigo_tblです。特に kigo_tbl、zkigo_tblは入力される
記号と変換結果の対が並んでいるだけですので、その変更、追加は容易です。
なお lkigo_tblは『全英モード』のときに用いる記号の変換表です。
「あり?」で扱うtextの文字は、 ic_t型(lazy.hで定義)で、16bit 符号付き整数
を想定しています。その内部コードは次のとおりです。
・コントロールコードを含むASCII文字 … 0x0000 〜 0x007e(正値)
・いわゆる半角カナ … 0x00a0 〜 0x00df(正値)
・漢字などいわゆる全角文字 … 0xa1a1 〜 0xfefe(負値)
漢字のコード値は EUCに準拠した値を用いています。またlazy.cの中では埋め草の
無効な文字を表すために0x2020を用いています。
システム依存の高い端末制御および入出力機能は mnxio.cに集約されています。
(mnxio.cは MINIXおよび bsd、sysVなどその姉妹のシステム向けです。)
端末制御および入出力に必要なエントリと機能は次の5つです。
・char *scrctl_conf = "info"; configration情報(文字列)へのポインタ
・void init_tty() 端末の初期化
(状態の保存と rawモードへの設定)
・void end_tty() 端末状態の復帰
・void out_tty(s, n) 端末への文字列出力
char *s; 文字列へのポインタ
int n; 文字列の長さ
・int getch() 端末からの 1文字入力
ポインタ scrctl_confが指す文字列は、':setup'コマンド実行時に端末制御に関する
configration情報として、"screen control: "につづいて表示されます。
付録D コンパイルオプションの説明
config.hで指定するコンパイルオプションは次のとおりです。
H_KANA … ローマ字仮名変換だけでなく、カナ入力を可能とする
UPDATE_DIC … 語句の登録と検索順の変更を可能とする
SMALL_POOL … UPDATE_DIC指定時での語句の検索順変更機能を無効にする
(内部作業領域の効率的利用のため)
Makefileで指定するコンパイルオプションは次のとおりです。
ARI … 「あり?」としてコンパイルする際には必ず指定
TERMIO … 端末制御をsystem V向けにする
NO_STDLIB_H … stdlib.hがない場合に指定
NO_STRING_H … string.hがない場合に指定(代りにstrings.hを使用)
MERGE … stand aloneタイプのariをmakeする場合に指定
SMALL_REG … MINIX for IBM/PCなど data + stack 領域が 64KBに制限さ
れている場合に指定
sysV系のシステムでは、シンボル TERMIOを有効にする必要があります。また BSD系
の古いシステムでは、シンボル NO_STRING_Hを有効にする必要があるかもしれません。
シンボル NO_STDLIB_Hの必要性はシステム毎に異なります。
シンボル UPDATE_DICを有効にした場合、config.hで指定する定数定義 FRAME_POOLの
値が 1023以下であれば、シンボル SMALL_POOLは自動的に有効になります。
なお、コンパイルオプションを変更した場合は必ず次のように makeしてください。
$ make clean ; make
また、シンボル MERGEを有効した場合は、次のように makeしてください。
$ make clean ; make m_ari
この場合、仮名漢字変換処理を含む stand aloneタイプの 「あり?」がファイル名
m_ariとしてmakeされます。
なお MINIX 1.5 for IBM-PC などプログラムのデータ領域の大きさが 64KBに制限され
ているシステム向けに stand aloneタイプの「あり?」を makeする場合は、シンボル
SMALL_REGを有効にするか、あるいはシンボル UPDATE_DICを無効にしてください。
シンボル MERGE、UPDATE_DICおよび SMALL_REGを同時に有効にした場合、シンボル
SMALL_POOLが自動的に有効になるとともに、定数定義 FRAME_POOLの値は 256以下に制
限されます(もし FRAME_POOLの値が 256以上であれば、256に再設定されます)。
stand aloneタイプの 「あり?」は、環境変数 ARI_KKFが無効になるほかは従来の
「あり?」と同様に動作します。
付録E ariで使う主要な定数定義の説明
ariで使う主要な定数定義は次のとおりです。なお括弧内は標準設定値を示します。
config.h:
MODE … ファイルをwriteする際に使うcreatモード(0666)
BUF … 扱える最大のファイルバイト数(16383)
int型整数最大値の1/2までの値をとることが可能
FRAME_POOL … UPDATE_DIC指定時に利用する内部作業領域の大きさ(16000)
lazy.h:
SYSBUF … 画面最下行に表示するメッセージバッファの文字数(80)
ae.c:
REGBUF … 内部バッファの文字数(1023)
lazy.c:
MAX_LINES … 設定できる画面の最大の行数(40)
MAX_COLS … 設定できる画面の最大の文字数(120)
DEFAULT_LINES … 画面のデフォルト行数(25)
DEFAULT_COLS … 画面のデフォルト文字数(80)
kanakan.c:
LEN … 仮名漢字変換で用いる作業バッファのバイト数または文字数(100)。
また、画面制御用文字列は次のとおりです(lazy.c内部で定義)。
MOVE(y,x) … 画面の(y,x)へカーソルを移動
((sprintf(_wbuf, "\033[%d;%dH", (y)+1, (x)+1), _wbuf))
CLEAR … カーソルを左上に移動し画面全体をクリア
("\033[H\033[0J")
CLRTOEOL … カーソル位置から行の最後までをクリア
("\033[K")
付録F トラブルシューティング
・make時に、「stdlib.hがない」とエラーになる
→ Makefileでコンパイル時オプション NO_STDLIB_Hを有効にしてください。
・make時に、「sgtty.hがない」とエラーになる
→ Makefileでコンパイル時オプション TERMIOを有効にしてください。
・make時に、「termio.hがない」とエラーになる
→ Makefileでコンパイル時オプション TERMIOを無効にしてください。
・ariをmake時に、「関数lookup、initkkfがない」とエラーになる
→ Makefileでコンパイル時オプション MERGEを無効にしてください。
・m_ariをmake時に、「 main関数の二重定義」とエラーになる
→ Makefileでコンパイル時オプション MERGEを有効にしてください。
・ari起動時に "unable to use kanakan. -- no process" とエラーになる
→ 環境変数 ARI_KKFが定義されておりません。 ARI_KKFを正しい値に定義して
ariを起動し直してください。
・ひらがなや漢字の表示がでない、あるいはおかしい
→ ファイル入出力または表示の漢字コードが適切ではありません。環境変数
ARI_CODEDEFを正しく設定してください。
(現在の漢字コード設定状況は'^G'コマンドで知ることができます)
・ari起動時に "unable to use kanakan -- process dead." とエラーになる
… 仮名漢字変換プログラムの起動に失敗しました。次のいくつかの可能性があ
ります。
(a) 環境変数 ARI_KKFの値のあやまり
(b) 環境変数 ARI_KKFで指定する仮名漢字変換プログラムがない
(c) skksrchが使うローカル辞書ファイル $HOME/.skk-jisyoがない
(d) 環境変数 LOCAL_SKK_JISYOで指定するローカル辞書ファイルがない
(e) その他、skksrchの起動時オプションあやまり等
・ariあるいは m_ariの起動に数十秒〜1分以上かかる
→ 特に大きな辞書ファイルを用いている場合、起動に数十秒〜1分以上かかるこ
とがあります。大きな辞書ファイルをインデックス付き辞書ファイルに変更す
ることで起動時間を短くすることができます。
(『B.4 インデックス付き辞書ファイルについて』参照)
・SKK辞書ファイルにあるエントリが仮名漢字変換できない
… 次のいくつかの可能性があります。
(a) 環境変数 LOCAL_SKK_JISYOまたは SKK_JISYOの指定あやまり
→ 使用するSKK辞書ファイルを正しく指定してください。
(b) SKK辞書ファイルのエントリ順序のあやまり
→ エントリは昇順にソートしてください。なお ASCII文字の見出し語は、
ひらがなの見出し語より前にある必要があります。
(c) SKK辞書ファイルの漢字コードあやまり
→ EUCとしてください。
・語句の登録に失敗する
… 次のいくつかの可能性があります。':setup'コマンドで動作状況を調べてくだ
さい。
(a) 語句の登録機能が無効になっている
→ Makefileでコンパイル時オプション UPDATE_DICを有効にして makeし
直してください。
(b) 仮名漢字変換プログラムが動作していない
→ いったんプログラムを終了し、仮名漢字変換プログラムを正しく動作
するようにしてから、再起動してください。
(「ari起動時に "unable to ……" とエラーになる」の項参照)
(c) 内部作業領域の不足
→ いったんプログラムを終了し、再起動してください。
・ローカル辞書ファイルの更新に失敗する
… 次のいくつかの可能性があります。
(a) ローカル辞書ファイルへ書き込みができない
→ ファイルの許可モードを書き込みができるよう設定してください。
(b) 新たにローカル辞書ファイルを作成できない
→ ローカル辞書ファイルのあるディレクトリの許可モードを書き込みが
できるよう設定してください。
・ローカル辞書ファイルの更新の際、もとのファイルが保存されない。
… 次のいくつかの可能性があります。
(a) ローカル辞書ファイル名が長く保存用のファイル名が作成できない
→ MINIX や sysVではファイル名の長さは 14文字までです。
local辞書ファイル名を 13文字以下にしてください。
(b) ローカル辞書ファイル名を変更できない
→ ローカル辞書ファイルのあるディレクトリの許可モードを書き込みが
できるよう設定してください。
付録G 日本語 minix 1.5 for IBM-PC で「あり?」を使う
G.1 材料
・ari、skksrchソース一式
・SKK辞書ファイル(別途入手してください)
G.2 調理方法
(1) ari、skksrchをmakeする。
ari、skksrchのソースが展開されているディレクトリで
$ make (ari、skksrchが生成される)
(2) ari、skksrchをコマンドPATHの適当なところに置く。($HOME/bin等)
(3) ローカル辞書ファイルを作成する(とりあえず空ファイルとしておく)。
$ cp /dev/null $HOME/.skk-jisyo
(4) インデックス付き辞書ファイルを作成する。(省略可)
(SKK辞書ファイルが ./SKK-JISYO.M にあり、
インデックス付き辞書ファイルを ./idxSKK-JISYO.M とする場合)
$ skksrch -index ./SKK-JISYO -to ./idxSKK-JISYO.M
G.3 試食方法
(1) コード指定のための環境変数の設定。(EUCを使う場合は不要)
(ファイル入出力、表示ともSHIFT-JISコードを使う場合)
$ ARI_CODEDEF=SNS
$ export ARI_CODEDEF