Ocenite etot tekst:




          Proizvodstvenno-vnedrencheskij kooperativ

                    "I N T E R F E J S"





                Dialogovaya Edinaya Mobil'naya

                    Operacionnaya Sistema

                        Demos/P 2.1






               Poliekrannyj redaktor tekstov

                            red

                 (rukovodstvo programmista)




                           Moskva

                            1988




                             2


ANNOTACIYA
Opisan poliekrannyj dialogovyj redaktor tekstov red  (versiya
3.3).   Privedena  instrukciya po rabote v redaktore, a takzhe
pravila opisaniya terminalov novyh tipov dlya podklyucheniya ih k
red.


















2



                             3


1.  VVEDENIE

   |krannyj redaktor  red rabotaet pod upravleniem  operaci-
onnoj sistemy DEMOS i prednaznachen dlya prosmotra i izmeneniya
tekstovyh fajlov DEMOS v ekrannom rezhime. On imeet sleduyushchie
osobennosti:

-    dlya vvoda  komand  shiroko  ispol'zuetsya  funkcional'naya
     klaviatura i upravlyayushchie klavishi terminala;

-    vozmozhna rabota s neskol'kimi fajlami odnovremenno;

-    vozmozhno obrazovanie  na  ekrane  terminala  neskol'kih
     "okon" i odnovremennyj prosmotr neskol'kih fajlov;

-    vozmozhno avtomaticheskoe vosstanovlenie  redakcij  posle
     sboya |VM;

-    redaktor dinamicheski nastraivaetsya na terminal;

-    imeyutsya makroperemennye dlya hraneniya fragmentov teksta,
     naborov komand redaktora i t.p.;

-    imeetsya vozmozhnost' pereopredeleniya funkcional'noj kla-
     viatury i vvedeniya novyh funkcional'nyh klavish;

-    vozmozhno ispol'zovanie "vneshnih" komand, to est' komand
     operacionnoj sistemy DEMOS.

2.  OBSHCHEE OPISANIE REDAKTORA

2.1.  Osnovnye principy redaktirovaniya.

   Pri rabote red ispol'zuet ves' ekran terminala. Na ekrane
vydelyaetsya  neskol'ko  razlichnyh  oblastej.   Osnovnuyu chast'
zanimaet "okno" otobrazheniya fajla, obvedennoe ramkoj,  samaya
nizhnyaya  stroka  ostavlyaetsya  dlya  vvoda  "parametrov komand"
redaktora i dlya vydachi soobshchenij.  V etoj zhe stroke vysvechi-
vaetsya nomer stroki i imya redaktiruemogo fajla (risunok 1).


   Pri neobhodimosti  "okno"  mozhno  podelit'  na  neskol'ko
men'shih  okon  i  izobrazit'  v  nih raznye fajly ili raznye
chasti odnogo fajla.  Kazhdoe "okno" pokazyvaet chast'  zakrep-
lennogo za nim fajla.

   Dlya peremeshcheniya kursora vnutri okna ispol'zuyutsya  klavishi
so strelkami i nadpisyami <RETURN> (<VK>), <HOME>, <TAB>; pri
nabore teksta na tekstovoj klaviature on prosto  vvoditsya  v
fajl  v mesto, ukazyvaemoe kursorom.  Dlya bolee slozhnyh ope-
racij sluzhat "komandy" redaktora  red,  kotorye  vvodyatsya  s
pomoshch'yu funkcional'noj klaviatury i, v chastnosti, pozvolyayut:



                           - 3 -



                             4



____________________________________________________________


                   |kran terminala

        ............................................
        . ---------------------------------------- .
        . :                                      : .
        . :                                      : .
        . :                                      : .
        . :       <okno>                         : .
        . :                                      : .
        . :                                      : .
        . :                                      : .
        . :                                      : .
        . :                                      : .
        . ---------------------------------------- .
        . Arg:<parametry>        Fajl:a Str: 10    .
        ............................................

                          Ris. 1

____________________________________________________________


-    dvigat' "okno" vverh, vniz, vpravo, vlevo po fajlu;

-    unichtozhat', vstavlyat' ili peremeshchat'  fragmenty  teksta
     kak vnutri odnogo fajla, tak i mezhdu raznymi fajlami;

-    pereklyuchat' "okna" s fajla na fajl, zapisyvat' fajly  v
     arhiv, sozdavat' novye "okna";

-    osushchestvlyat' poisk strok po kontekstu.

   Pri etom na ekrane izobrazhaetsya tekushchee sostoyanie  redak-
tiruemyh fajlov.

   Komandy redaktora vvodyatsya pri pomoshchi funkcional'nyh kla-
vish    i    oboznachayutsya    v    dannom    dokumente    tak:
<NAZVANIE KOMANDY>.

   Redaktor nakaplivaet informaciyu ob izmeneniyah vo  vremen-
nom  bufere.   Po  okonchanii redaktirovaniya izmenennye fajly
perepisyvayutsya obratno v  arhiv.   Pri  neobhodimosti  mozhno
prervat'   seans  redaktirovaniya,  ne  zapominaya  izmenenij.
Redaktor zapominaet imena fajlov i sostoyanie  ekrana  i  pri
povtornom  vyzove red  mozhno prodolzhit' redaktirovanie tochno
s prervannogo mesta. Redaktor vedet takzhe  protokol  raboty,
pozvolyayushchij prakticheski polnost'yu povtorit' process redakti-
rovaniya v sluchae sboya.



                           - 4 -



                             5


2.2.  Vyzov redaktora

   Dlya redaktirovaniya fajla  imya , nachinaya so stroki  nomer,
neobhodimo nabrat' komandu:

 red imya [nomer]

   V kvadratnye skobki []  vzyaty  neobyazatel'nye  parametry,
zhirnym  shriftom  vydeleny komandy sistemy, podcherknuty para-
metry komandy.

   Redaktor schitaet i vysvetit fajl   imya  ,  prichem  kursor
ustanovitsya na stroku  nomer (Po umolchaniyu kursor ustanavli-
vaetsya na 11-yu stroku fajla).  Posle etogo mozhno  prosmatri-
vat'  i  redaktirovat' fajl. V konce raboty vvoditsya komanda
<EXIT>, dlya  etogo  nuzhno  nazhat'  klavishi  <Line  Feed><Del
(<PS><ZB>  v russkoj notacii), i izmeneniya budut zapisany na
disk.

   Mozhno prodolzhit' redaktirovanie s  togo  mesta,  gde  ono
bylo okoncheno poslednij raz. Dlya etogo sluzhit komanda (1):

    red


   V sluchae sboya sistemy ili redaktora seans  redaktirovaniya
mozhno vosproizvesti s pomoshch'yu komandy:

    red -

Pri vyzove red mozhno takzhe ukazyvat' "rezhimy" raboty  redak-
tora:

 red -[-klyuchi][+klyuchi] ostal'nye parametry

podrobnee o rezhimah raboty skazano v razdele 4.

2.3.  Ispol'zovanie klaviatury i vvod komand redaktora

   V dannom razdele opisany pravila vvoda komand i ispol'zo-
vaniya  klaviatury pri rabote s redaktorom red, a takzhe izob-
razhenie simvolov iz fajla na ekrane  terminala.   Dlya  vvoda
komand  redaktora,  kak pravilo, ispol'zuetsya dopolnitel'naya
cifrovaya klaviatura, kotoraya razmeshchena  sprava  ot  osnovnoj
klaviatury.  Tak,  komanda <+PAGE> vvoditsya nazhatiem klavishi
____________________
   1) Pri vyzove red mozhet okazat'sya, chto redaktoru ne  dos-
tupny  harakteristiki  vashego terminala. V etom sluchae pered
pervym vyzovom redaktora vvedite komandu  (v  interpretatore
csh):
 setenv TERM Tip_terminala




                           - 5 -



                             6


7, a  komanda  <ARG>  -  klavishej  1.   Esli  predpolagaetsya
ispol'zovat' dlya raboty s red terminal, kotoryj imeet polnyj
nabor propisnyh i strochnyh russkih i latinskih bukv i dopol-
nitel'nuyu  klaviaturu, nikakih slozhnostej s vvodom ne vozni-
kaet - terminal pozvolyaet vvodit' vse simvoly koda  KOI-8  i
ispol'zovat'  dopolnitel'nuyu klaviaturu dlya vvoda komand.  V
etom sluchae mozhno perehodit' k chteniyu sleduyushchego  paragrafa.
Nekotorye  slozhnosti  voznikayut pri rabote na terminalah, ne
imeyushchih polnogo nabora simvolov libo dopolnitel'noj cifrovoj
klaviatury.

   Uslovno klaviaturu lyubogo terminala mozhno   razdelit'  po
funkciyam na sleduyushchie chasti:

1)   Klavishi, ne vyrabatyvayushchie  kodov  (takie,  kak  SHIFT,
     ROLL  i  t.p.).   iz  nih nas interesuet tol'ko klavisha
     CTRL (ili US), kotoraya vyzyvaet pri odnovremennom nazha-
     tii  osnovnoj  klavishi klaviatury vyrabotku upravlyayushchih
     kodov ("control-simvoly");.

2)   Osnovnaya klaviatura - soderzhit simvoly koda  ASCII  ili
     KOI-8.   V  zavisimosti ot  nabora etih simvolov termi-
     naly mozhno razdelit' na tri gruppy:

    -    Terminal mozhet otobrazhat' tol'ko latinskie (propis-
         nye  i  strochnye)  bukvy  i vse special'nye simvoly
         koda ASCII;

    -    Terminal mozhet otobrazhat' tol'ko propisnye  russkie
         i latinskie bukvy;

    -    Terminal  mozhet  izobrazhat'  russkie  i   latinskie
         strochnye  i  propisnye bukvy i vse special'nye sim-
         voly, to est' vse  simvoly  koda  KOI-8  (naprimer,
         terminal "|lektronika-15-I|-0013");

3)   Obshcheprinyatye upravlyayushchie klavishi:

    -    strelki vlevo, vpravo, vverh, vniz;

    -    RETURN (Vozvrat Karetki);

         LINE FEED (Perevod Stroki);

         TAB (Tabulyaciya);

         HOME (Kursor v nachalo ekrana);

4)   Dopolnitel'naya funkcional'naya klaviatura, obychno sovme-
     shchennaya  s cifrovoj (naprimer, terminal "|lektronika-15-
     I|-0013" imeet gruppu klavish s nadpisyami 0 - 9, kotorye
     v  zavisimosti  ot rezhima raboty yavlyayutsya libo obychnymi
     simvolami  '0'-'9',   libo   vyrabatyvayut   upravlyayushchie


                           - 6 -



                             7


     posledovatel'nosti  kodov  i  mogut  ispol'zovat'sya kak
     funkcional'nye klavishi; na terminalah  serii  VTA  2000
     klavishi  0 - 9 vyrabatyvayut upravlyayushchie kody pri odnov-
     remennom nazhatii na klavishu UPR);

5)   Dopolnitel'nye upravlyayushchie klavishi,  naprimer  IL,  DL,
     IC, DC, ERASE, - na  VDT-52100c ili analogichnye klavishi
     na drugih terminalah.V  avtonomnom  rezhime  oni  obychno
     redaktiruyut tekst na ekrane terminala.

   Dlya raboty v red dostatochno ispol'zovat' osnovnuyu klavia-
turu i obshcheprinyatye upravlyayushchie klavishi. Dlya uproshcheniya vvoda
komand mozhno  ispol'zovat'  funkcional'nuyu  klaviaturu  libo
dopolnitel'nye  upravlyayushchie  simvoly, esli oni est' na vashem
terminale.

2.3.1.  Otobrazhenie informacii

   Redaktor rasschitan  na  rabotu  s  tekstami,  soderzhashchimi
strochnye i propisnye russkie i latinskie bukvy v kode KOI-8,
dopuskayutsya takzhe simvoly s kodami, ne imeyushchimi graficheskogo
izobrazheniya.  V zavisimosti ot vozmozhnostej terminala, neko-
torye simvoly fajla mogut izobrazhat'sya na ekrane v vide dvuh
i bolee simvolov:

1)   Simvoly s kodami 0 - 037 izobrazhayutsya v vide pary  sim-
     volov: simvola "zaboj" (svetlyj pryamougol'nik) i grafi-
     cheskogo simvola, kod  kotorogo  v  "KOI-8"  raven  kodu
     ishodnogo plyus 0100.  (|to odin iz simvolov @, A-Z,[,],
     \ , _,^); Esli na terminale net simvola "zaboj", vysve-
     chivaetsya @ libo nestandartnyj simvol, vybrannyj sistem-
     nym programmistom pri nastrojke redaktora na terminal.

2)   Esli terminal ne imeet propisnyh bukv, to otsutstvuyushchie
     simvoly izobrazhayutsya sleduyushchim obrazom:
      "strochnye bukvy"           - propisnymi  bukvami
      "propisnye bukvy"          - \propisnaya bukva
      "\"                         - \\,
      "~ (til'da)"               - \^ (\`nadcherk')
      "` (obratnaya kavychka)"     - \'
      "} (zakr.figurnaya skobka)" - \)
      "{ (otkr.figurnaya skobka)" - \(
      "| (vertikal'naya cherta)"   - \!

3)   Esli terminal ne imeet russkih bukv, to  oni  izobrazha-
     yutsya  paroj simvolov #latinskaya bukva, prichem propisnym
     "A"- "YA" sootvetstvuyut propisnye "A"-"Q", a strochnym  -
     strochnye "a"-"q" v sootvetstvii s kodom "KOI-8";

4)   Simvoly 0200 - 0277 i 0377 izobrazhayutsya  posledovatel'-
     nost'yu:

      @kkk


                           - 7 -



                             8


     gde kkk - trehznachnyj kod simvola, a "@" - "zaboj" libo
     sootvetstvuyushchij emu simvol .

        Simvol "Zaboj" (kod 0177) izobrazhaetsya kak

      @#


2.3.2.  Vvod informacii s klaviatury

   Vvod teksta s klaviatury prakticheski ne zavisit  ot  tipa
terminala.

1)   Special'nye simvoly (probel, zapyataya i t.d.)  s  kodami
     040 - 077 vvodyatsya obychnym obrazom;

2)   Latinskij registr vklyuchaetsya pri nazhatii klavish  CTRL/O
     (klavisha  LAT na terminalah "|lektronika").  Na latins-
     kom registre vvodyatsya propisnye i strochnye bukvy  (pro-
     pisnye v verhnem (na VTA 2000 -LAT) registre klaviatury
     i strochnye - v nizhnem (na VTA 2000 -RUS)),  special'nye
     simvoly \, [, ] i drugie simvoly koda KOI-8 s kodami ot
     0100 do 0176;

3)   Russkij registr vklyuchaetsya nazhatiem CTRL/N (klavisha RUS
     na  terminalah  "|lektronika").  Posle etogo vvodyatsya v
     zavisimosti ot registra  klaviatury  russkie  propisnye
     ili strochnye bukvy;

4)   Priznak negraficheskogo simvola ("zaboj" na ekrane) vvo-
     ditsya komandoj <ESCAPE> (CTRL/A libo 2. na dopolnitel'-
     noj klaviature).

2.3.3.  Vvod komand v redaktor red

   Dlya upravleniya redaktirovaniem, prosmotra fajlov i drugih
dejstvij ispol'zuyutsya komandy redaktora red, kotorye identi-
ficiruyutsya komandami, vvodimymi s klaviatury.  Komandy  vvo-
dyatsya nazhatiem 1 ili 2-h upravlyayushchih ili funkcional'nyh kla-
vish. V zavisimosti ot konkretnogo terminala, oni mogut  vvo-
dit'sya odnim iz neskol'kih sposobov:

1)   Esli na terminale est' dopolnitel'naya cifrovaya  klavia-
     tura,  to lyubuyu komandu mozhno vvesti nazhatiem odnoj ili
     dvuh klavish na nej, naprimer 1 - komanda <ARG>, a 29  -
     komanda <PUT>.  Pri etom klavisha 2 sluzhit dlya izmeneniya
     smysla sleduyushchej komandy (esli nazhat'  9,  to  vvedetsya
     komanda <PICK>).

2)   Esli etoj klaviatury net, to vmesto Cifra nuzhno  nazhat'
     Line  FeedCifra  (na  osnovnoj  klaviature),  a  vmesto
     2Cifra - Line Feed Line Feed Cifra.



                           - 8 -



                             9


3)   Mnogie  komandy  mozhno  takzhe  vvodit'  cherez  control-
     simvoly, naprimer, CTRL/T - komanda <+LINE>.

4)   Naibolee upotrebitel'nye komandy mogut takzhe byt'  vve-
     deny  cherez  upravlyayushchie ili funkcional'nye klavishi; ih
     znachenie zavisit ot tipa terminala. Tak, klavishi PF2  i
     PF3 na bol'shinstve terminalov vyzyvayut komandy <OPEN> i
     <CLOSE>.

   Komandy, upravlyayushchie dvizheniem kursora, vvodyatsya tol'ko s
upravlyayushchej klaviatury (strelki, RETURN, TAB, HOME).

2.4.  Okna i redaktiruemye fajly

   Redaktor  pokazyvaet  uchastok  redaktiruemogo  fajla   na
ekrane terminala v "okne". Imya fajla, kotoryj nuzhno redakti-
rovat' pervym, ukazyvaetsya v parametrah  vyzova  red.  Mozhno
perejti  k  drugomu  fajlu, vospol'zovavshis' komandoj <USE>.
Krome togo, redaktor  avtomaticheski  podklyuchaet  psevdo-fajl
"#",  v  kotorom zapominayutsya vse otmechennye ili isklyuchennye
stroki.

   "Okno"  mozhno razdelit' na  neskol'ko  men'shih  "okon"  s
pomoshch'yu  komandy  <M-PORT>,  otobraziv v kazhdom uchastok togo
ili inogo fajla (ris.2). Dlya uproshcheniya pereklyucheniya s  fajla
na  fajl  lyuboe "okno" mozhet byt' svyazano takzhe s "al'terna-
tivnym fajlom". Komanda <USE> bez parametrov menyaet  mestami
osnovnoj  i al'ternativnyj fajly v tekushchem okne. Pri vhode v
redaktor  al'ternativnym  yavlyaetsya  fajl  /usr/lib/re.std  ,
soderzhashchij kratkoe opisanie redaktora.

   Dlya unichtozheniya okon sluzhit komanda <ARG><M-PORT>.  Izme-
neniya,  proizoshedshie  v  fajle,  povtoryayutsya odnovremenno vo
vseh "oknah", svyazannyh s nim.

   Sredi vseh "okon" imeetsya "tekushchee", v kotorom  nahoditsya
kursor.  Levye i pravye simvoly-ogranichiteli nesut sleduyushchuyu
informaciyu:

sleva:

    ; -  dannoj stroki v fajle net;

    ! -  stroka est' v fajle i "okno" nachinaetsya s 1 kolonki
         fajla;

    < -  "okno" nachinaetsya ne s 1 kolonki fajla, a  sdvinuto
         po fajlu vpravo;

sprava:

    ! -  v stroke net informacii sprava ot okna;



                           - 9 -



                             10



____________________________________________________________


                     Primer "okon"

            .....................................
            .-----------------------------------.
            .!              !!                 !.
            .! tekushchee      !!   eshche odno      !.
            .! "okno"       !!   "okno"        !.
            .!              !!                 !.
            .!dlinnaya stroka>!                 !.
            .!              !!                 !.
            .!              !!                 !.
            .;              !!                 !.
            .;              !!                 !.
            .-----------------------------------.
            .arg:           file: a line 10     .
            .....................................

                         Ris. 2

____________________________________________________________


    > -  stroka prodolzhaetsya za pravuyu granicu "okna".

   Vse izmeneniya, sdelannye na ekrane,  zapominayutsya  i  pri
vyhode  iz  redaktora  po  komande  <EXIT>  (ili  po komande
<ARG>q<RETURN>) izmenennye fajly zapisyvayutsya v  arhiv.  Pri
etom starye varianty fajlov pereimenovyvayutsya putem dobavle-
niya suffiksa .b, i v rezul'tate takzhe sohranyayutsya v  arhive.
Imeetsya  vozmozhnost' zapisat' fajl pod tekushchim ili pod novym
imenem v   arhiv  eshche  v  processe  redaktirovaniya  (komanda
<SAVE>),  a  takzhe  vyjti iz redaktora bez zapisi izmenennyh
fajlov, vvedya <ARG>qa<RETURN>.

2.5.  Peremennye i makrokomandy

   V processe redaktirovaniya chasto  voznikaet  neobhodimost'
vremenno  zapomnit'  tochku  redaktirovaniya,  tekst ili nabor
komand i zatem mnogokratno  ih  ispol'zovat'.  Dlya  etogo  v
redaktore  red  sluzhat  peremennye.  Imeetsya 26 peremennyh s
imenami ot a do z (imya sostoit iz odnoj latinskoj bukvy),  v
kotoryh mozhno hranit' sleduyushchuyu informaciyu:

-    zapominat' polozhenie kursora v fajle i zatem  ispol'zo-
     vat'  ego dlya vozvrata v nuzhnuyu tochku libo dlya ukazaniya
     odnoj iz  granic  oblasti  fajla  v  komandah  <CLOSE>,
     <OPEN>, <PICK>;




                           - 10 -



                             11


-    zapominat'   tekst  dlya  ispol'zovaniya  ego  v  komande
     <PICK>;

-    zapominat' posledovatel'nost' komand i teksta, to  est'
     makrokomandu.

   Vyzov peremennoj oboznachaetsya kak imya, a zapis' v  nee  -
>imya,

   gde imya - latinskaya malaya  bukva.  V  nekotoryh  komandah
peremennaya oboznachaetsya bez simvolov $ ili >.

2.6.  Izmenenie rezhimov raboty redaktora

   Rezhimy raboty redaktora red opredelyaetsya neskol'kimi klyu-
chami,  kazhdyj  iz kotoryh identificiruetsya bukvoj latinskogo
alfavita i mozhet byt' vklyuchen ili vyklyuchen. Klyuchi ustanavli-
vayutsya po umolchaniyu (v zavisimosti ot vozmozhnostej terminala
i peremennyh okruzheniya SHELL) i mogut byt' izmeneny  pol'zo-
vatelem.  Vklyuchennye klyuchi oznachayut sleduyushchee:

e    - na terminale net russkih bukv;

l    - na terminale net strochnyh bukv;

t    - pri zapisi strok zamenyat' nachal'nye probely tabulyaci-
       yami;

w    - razresheno izmenenie tekushchego fajla;

i    - rezhim vstavki;

s    - razresheno pol'zovat'sya apparatnymi  funkciyami  sdviga
       teksta na ekrane;

f    - zapret sdviga ekrana pri dostizhenii kursorom ego gra-
       nicy pri vvode;

a    - special'nyj rezhim AVTOSDVIG, pri kotorom  po  komande
       <RETURN>  kursor  ustanavlivaetsya  ne  na 1-yu kolonku
       ekrana, a na tu kolonku, s  kotoroj  byl  nachat  vvod
       teksta  poslednij raz (eta kolonka ukazyvaetsya v nizh-
       nej stroke okna special'nym kursorom).

   Klyuchi ustanavlivayutsya avtomaticheski pri vyzove  redaktora
i mogut byt' izmeneny sleduyushchimi sposobami:

1)   Pri vyzove redaktora:

      red [-[-klyuchi][+klyuchi]] ostal'nye argumenty

     Klyuchi, ukazannye posle -, sbrasyvayutsya, posle + - usta-
     navlivayutsya, naprimer:


                           - 11 -



                             12


      red --t a.mx


2)   CHerez peremennuyu sh ili csh REDKEYS v forme:

      setenv REDKEYS [-klyuchi][+klyuchi]

     (dlya csh);

3)   Komandoj redaktora:

      <ARG>[-klyuchi][+klyuchi]<RETURN>


   Po umolchaniyu ustanavlivaetsya klyuch t, klyuchi l, s i e usta-
navlivayutsya v zavisimosti ot vozmozhnostej terminala.

   Klyuch w ispol'zuetsya dlya zapreta ili razresheniya  zapisi  v
tekushchij  fajl. Ego imeet smysl ispol'zovat' dlya redaktirova-
niya zakrytyh na zapis' fajlov v sluchae, esli zapis' v  spra-
vochnik  razreshena. Sleduet uchityvat', chto pri otmene klyucha w
otmenyaetsya takzhe avtomaticheskaya  zapis'  dannogo  fajla  pri
vyhode iz redaktora.

2.7.  CHto delat' pri sboe

   Redaktor  red   obespechivaet  dvojnuyu  zashchitu  ot  poteri
informacii.   Vo  pervyh, pri zapisi fajla staroe soderzhimoe
sohranyaetsya pod imenem staroe_imya.b. Vo vtoryh, redaktor pri
rabote  vedet  protokol raboty v fajle /tmp/rettnn.name, gde
nn - dva poslednih simvola imeni terminala, a name - identi-
fikator  pol'zovatelya.   Esli  proizojdet  sboj  mashiny libo
redaktora, mozhno povtorit' seans komandoj:

                           red -


Proizojdet povtorenie vsego seansa  raboty,  za  isklyucheniem
odnogo  -  dvuh  poslednih  vvedennyh  s terminala simvolov,
posle chego upravlenie peredastsya na klaviaturu i vy  smozhete
prodolzhit'  redaktirovanie.  V sluchae, esli sboj proizoshel v
moment zapisi fajla ili v processe redaktirovaniya  ispol'zo-
valsya  komanda  <SAVE>  bez  parametrov,  pered  povtoreniem
seansa neobhodimo vosstanovit' ishodnoe sostoyanie redaktiru-
emyh  fajlov,  skopirovav  ih  pri neobhodimosti iz fajlov s
suffiksom .b.





                           - 12 -



                             13


3.  KOMANDY REDAKTORA red

   Komandy red  identificiruyutsya  komandnymi  posledovatel'-
nostyami  i  mogut  byt' vvedeny kak s parametrami, tak i bez
parametrov:

    <KOMANDA>
    <ARG>parametry<KOMANDA>


   Zdes' i dalee uglovymi skobkami oboznacheny komandy redak-
tora, kotorye vvodyatsya s upravlyayushchej klaviatury.

3.1.  Vvod parametrov <ARG>

   V sluchae komandy s parametrami snachala  vvoditsya  komanda
<ARG>,  zatem  parametry  i  zatem  sootvetstvuyushchaya komanda.
Tak, naprimer, dlya podvoda k  100 stroke neobhodimo:

1)   vvesti komandu <ARG> (naprimer, nazhav klavishu `1');

2)   nabrat' parametr (v dannom sluchae chislo 100);

3)   vvesti komandu <GOTO> (naprimer, nazhav `4').

   Sokrashchenno eto zapisyvaetsya tak:

    <ARG>100<GOTO>


   Parametry byvayut treh tipov:

1)   Proizvol'nyj tekst (naprimer, imya fajla ili stroka  dlya
     poiska);

2)   CHislovoj (naprimer, nomer stroki);

3)   Ukazatel' chasti  fajla.  |tot  parametr  vstrechaetsya  v
     komandah, kotorye zapominayut, razdvigayut ili unichtozhayut
     tekst. Dlya ukazaniya uchastka na ekrane neobhodimo:

         - podvesti kursor na nachalo ukazyvaemogo uchastka;

         - vvesti komandu <ARG>;

         - klavishami so strelkami podvesti  kursor  k  koncu
           oblasti.  Pri etom vydaetsya soobshchenie:

               * * * ukazanie kursorom * * *


         - vvesti komandu (naprimer, <PICK>).



                           - 13 -



                             14


       Dlya dvizheniya kursora mozhno  ispol'zovat'  klavishi  so
    strelkami, <RETURN>, <TAB>, <BACK-TAB>. Oblast', ukazan-
    naya kursorom, zavisit ot nachal'nogo i konechnogo  polozhe-
    nij kursora:

         - Esli nachal'naya kolonka sovpadaet s  konechnoj,  to
           komanda  dejstvuet  na  stroki  mezhdu nachal'noj i
           konechnoj strokami vklyuchitel'no;

         - Esli nachal'naya stroka sovpadaet  s  konechnoj,  to
           komanda dejstvuet na uchastok etoj stroki.

         - V protivnom  sluchae  oblast'yu  dejstviya  yavlyaetsya
           pryamougol'naya  oblast' mezhdu nachal'nym i konechnym
           polozheniyami kursora.

   Esli nuzhno ukazat' uchastok fajla, kotoryj ne umeshchaetsya na
ekrane,  to  ego  nachalo (ili konec) zapominayut v kakoj-libo
peremennoj     (ustanavlivayut      kursor      i      vvodyat
<ARG>>imya<RETURN>),  podvodyat  kursor  k koncu (ili k nachalu
sootvetstvenno)  ukazyvaemogo  uchastka  i  vvodyat   komanda:
<ARG>$imya<RETURN>  Rezul'tat  ravnosilen  ukazaniyu  kursorom
uchastka fajla ot tochki, zapomnennoj v  peremennoj  "imya"  do
tekushchego  polozheniya  kursora.   V  komandah <OPEN>, <CLOSE>,
<PICK>  mozhno  srazu  vvodit'  sootvetstvuyushchuyu  komandu  bez
<RETURN>.

   Pri vvode parametrov  vydaetsya  priglashenie  "arg:",  dlya
otmeny neverno nabrannyh simvolov sluzhit <DEL> (<ZB>).

3.2.  Vosstanovlenie ekrana

   Pri sluchajnom narushenii izobrazheniya na  ekrane  terminala
ego mozhno vosstanovit', nazhav:

     CTRL/L
     ili
     <ARG>r<RETURN>


3.3.  Dvizhenie kursora vnutri okna

3.3.1.  Klavishi so strelkammi

   Pri nazhatii na sootvetstvuyushchuyu klavishu  kursor  peremeshcha-
etsya na odnu poziciyu:

<strelka vverh>     - vverh;

<strelka vniz>      - vniz;

<strelka vpravo>    - vpravo;



                           - 14 -



                             15



    ________________________________________________________

                    Primer ukazaniya oblasti

               ..................................
               .  okno                          .
               .     nach.polozhenie              .
               .     1***************           .
               .     **oblast'*******           .
               .     **dejstviya******           .
               .     ****************2          .
               .                     kon.       .
               .                     polozhenie  .
               ..................................

               ..................................
               .  okno                          .
               .     nach.polozhenie              .
               .*****1**************************.
               .*******oblast'****na vsyu********.
               .*******dejstviya****shirinu*******.
               .*****2**************************.
               .     kon.                       .
               .     polozhenie                  .
               ..................................

               ..................................
               .  okno                          .
               .     nach.polozhenie              .
               .     1***************2          .
               .                     kon.       .
               .                     polozhenie  .
               ..................................

              (simvol 1 vhodit v oblast', 2 - net)
                             Ris. 3
    ________________________________________________________


<strelka vlevo>     - vlevo.

Na granice "okna" proishodit avtomaticheskij  sdvig  okna  po
fajlu, esli tol'ko ne ustanovlen klyuch "f".

3.3.2.  Komandy <HOME> i <RETURN>

<HOME>
     - kursor perehodit v levyj verhnij ugol okna videniya;

<RETURN>
     - kursor perehodit na  nachalo  sleduyushchej  stroki.  Esli
       stroka  byla  poslednej,  "okno" peremeshchaetsya vniz po


                           - 15 -



                             16


       fajlu. Esli ono nachinalos' ne s 1 kolonki fajla,  ono
       sdvinetsya na pervuyu kolonku;

<ARG>komanda<RETURN>
     - vvod direktivy redaktora ;

3.3.3.  Tabulyaciya (<tab>, <b-tab>, <set-tab>)

<TAB>
     - Tabulyaciya. Kursor peremeshchaetsya na  ocherednuyu  poziciyu
       tabulyacii.  Po umolchaniyu eto - 9, 13, 25, 33, 31, 49,
       57, 65 i 73 kolonki;

<B-TAB>
     - tabulyaciya nazad. Polnost'yu analogichno <TAB>, no  kur-
       sor dvizhetsya nazad. Po umolchaniyu - klavisha `.';

<SET-TAB>
     - ustanavlivaet  novuyu  poziciyu  tabulyacii  v   tekushchej
       kolonke.  Po umolchaniyu vvoditsya nazhatiem na 2 klavishi
       - `2'`5';

<ARG><SET-TAB>
     - snimaet poziciyu tabulyacii v tekushchej kolonke;

3.4.  Redaktirovanie vnutri stroki

3.4.1.  Vvod teksta. Rezhim vstavki (<INSERT>)

   Esli v redaktiruemyj fajl razreshena zapis',  to  simvoly,
nabiraemye  na  klaviature, popadayut v tekushchij fajl tak, kak
eto izobrazhaetsya na ekrane.  Pri dostizhenii kursorom  pravoj
granicy  ekrana  on  avtomaticheski  sdvigaetsya na 30 kolonok
vpravo. Pri dostizhenii kursorom 72  kolonki  fajla  vydaetsya
predupreditel'nyj zvukovoj signal.

   Dlya vstavki simvolov sluzhit  rezhim  vstavki  "INSERT".  V
etom  rezhime  pri  nabore  simvolov stroka razdvigaetsya. Dlya
vklyucheniya i vyklyucheniya rezhima sluzhit komanda:

<INSERT>
     - vklyuchit'/vyklyuchit' rezhim vstavki. Po umolchaniyu eto  -
       klavisha `5';

3.4.2.  Unichtozhenie simvolov (<DEL-CH> i <BACKSPACE>)

   Dlya  unichtozheniya  simvolov  vnutri  stroki   sluzhat   dve
komandy:

<DEL-CH>
     - unichtozhaetsya  tekushchij  simvol,  pravaya  chast'  stroki
       sdvigaetsya vlevo na 1 poziciyu. Po umolchaniyu - klavisha
       `6';


                           - 16 -



                             17


<B-SPACE>
     - otmenyaet predydushchij simvol; v rezhime  vstavki  stroka
       uplotnyaetsya.   Dejstvuet  i  pri vvode parametrov. Po
       umolchaniyu - klavishi `DEL' ili `BackSpace'.

3.4.3.  Vvod netekstovyh simvolov (<ESCAPE>)

   Netekstovymi (negraficheskimi) yavlyayutsya simvoly  s  kodami
0-037,  0177-0277,, 0377.  Dlya ih vvoda v fajl sluzhit speci-
al'nyj "ESCAPE"-simvol, kotoryj preobrazuet sleduyushchij za nim
simvol v netekstovyj.

   Dlya vvoda simvola s kodom 0-037 neobhodimo:

         - vvesti komandu <ESCAPE> (po umolchaniyu CTRL/A);

         - vvesti sootvetstvuyushchij "CTRL"-simvol libo propis-
           nuyu  latinskuyu  bukvu, libo vos'merichnyj kod sim-
           vola i zatem CTRL/L.

Na ekrane poyavitsya para simvolov:  svetlyj  kvadratik  (libo
simvol ego zamenyayushchij) i tekstovyj simvol. Pri zapisi v fajl
eta para zamenitsya na odin simvol s kodom <simvol>&037,  gde
"&"-  "porazryadnoe  logicheskoe umnozhenie", to est' bukve "A"
sootvetstvuet kod 01 i tak dalee.

   Dlya vvoda simvolov s kodami 0200-0277 i 0377:

         - vvedite <ESCAPE> (CTRL/A);

         - vvedite trehznachnyj kod simvola.

   Simvol <Zaboj> (0177) vvoditsya kak <ESCAPE>#.

3.5.  Peremeshchenie po fajlu

3.5.1.  Zapominanie mesta v fajle

<ARG>>imya<RETURN>
     Tekushchee polozhenie  kursora  zapominaetsya  v  peremennoj
     "imya".   Zatem eta peremennaya mozhet byt' ispol'zovana v
     komandah <OPEN>, <CLOSE>, <PICK>, <GOTO>.

3.5.2.  Podvod k stroke (<GOTO>)

   V redaktore stroki teksta schitayutsya pronumerovannymi pod-
ryad,  nachinaya  s  1.   Dlya  podvoda  k  nuzhnoj stroke sluzhit
komanda <GOTO> (po umolchaniyu klavisha `4').

<GOTO>
     - podvod k nachalu fajla;




                           - 17 -



                             18


<ARG><GOTO>
     - podvod k koncu fajla;

<ARG>N<GOTO>
     - podvod k stroke nomer "N" (N - celoe chislo);

<ARG>$imya<GOTO>
     - podvod k mestu v fajle, zapomnennomu pod imenem "imya"
       ("imya" - odna latinskaya bukva);

Nomer tekushchej stroki vydaetsya na nizhnej stroke ekrana.

3.5.3.  Listovanie  fajla  (<+PAGE>,  <-PAGE>,  <+LINE>,  <-
LINE>)

   Stranicej schitaetsya chast' fajla,  umeshchayushchayasya  v  tekushchem
okne na ekrane.

<+PAGE>
     - peremeshchaet okno na 1  stranicu  vniz  po  fajlu;   po
       umolchaniyu klavisha `7';

<-PAGE>
     - peremeshchaet okno na 1  stranicu  vverh;  po  umolchaniyu
       klavishi `2'`7';

<ARG>N<-PAGE>
     peremeshchaet okno vniz (vverh) na N stranic.

   Dlya peremeshcheniya okna s tochnost'yu do stroki sluzhat komandy
<+/-LINE>; (CTRL/T/CTRL/W):

<ARG>N<+LINE>
     - vpered na N strok;

<ARG>N<-LINE>
     - nazad na N strok;

<+LINE>
     - vpered na 1 stroku, esli terminal podderzhivaet  appa-
       ratnyj  sdvig teksta na ekrane, ili na 8 strok v pro-
       tivnom sluchae;

<-LINE>
     - nazad na 1 stroku (8, esli net apparatnogo sdviga) ;

<ARG><+LINE>
     - Sdvinut' "okno" vniz tak, chtoby tekushchaya stroka  stala
       pervoj na ekrane;

<ARG><+LINE>
     - Sdvinut' "okno" vverh tak, chtoby tekushchaya stroka stala
       poslednej na ekrane;


                           - 18 -



                             19


3.5.4.  Sdvig okna vpravo/vlevo (<RIGHT> i <LEFT>)

<RIGHT>
     - sdvinut' "okno" vpravo na 30  kolonok;  po  umolchaniyu
       `2'<strelka vpravo>.

<LEFT>
     sdvinut' "okno" vlevo  na  30  kolonok;   po  umolchaniyu
     `2'<strelka vlevo>.

<ARG>N<RIGHT>
     - sdvinut' "okno" vpravo na N kolonok;

<ARG>N<LEFT>
     - sdvinut' "okno" vlevo na N kolonok;

   Komanda  <RIGHT>  vypolnyaetsya  avtomaticheski,  esli   pri
nabore  teksta  kursor  dostig  pravuyu  granicu  ekrana.  Po
komande <RETURN> okno avtomaticheski ustanavlivaetsya  na  1-yu
kolonku fajla.

3.5.5.  Peremeshchenie s pomoshch'yu strelok

   Okno mozhno dvigat' po fajlu s pomoshch'yu  klavish  so  strel-
kami:  esli  ne  ustanovlen  klyuch  f (po umolchaniyu) i kursor
"upiraetsya" v granicu okna, pri ocherednom nazhatii na klavishu
dvizheniya kursora okno sdvinetsya v nuzhnuyu storonu.

3.6.  Kontekstnyj poisk (<+SEARCH>, <-SEARCH>)

   Komandy <+/-SEARCH> (po umolchaniyu `3' i `2'`3')  vyzyvayut
poisk  zadannogo  obraza  v  fajle sootvetstvenno vpered ili
nazad ot tekushchego mesta. Dlya ukazaniya teksta, kotoryj  nuzhno
najti, sluzhat komandy:

<ARG>tekst<+SEARCH>
<ARG>tekst<-SEARCH>
     proizvoditsya poisk ukazannogo  teksta  v  fajle  vpered
     (nazad) ot tekushchego polozheniya v fajle.  Esli tekst naj-
     den, eto mesto v fajle vysvechivaetsya na ekrane i kursor
     ustanavlivaetsya  na  nachalo  najdennogo  teksta,  inache
     vydaetsya predupreditel'noe soobshchenie:

         "search key not found"
         "Tekst ne najden"


   Dlya prodolzheniya poiska dannogo obraza  dostatochno  vvesti
odnu iz komand:

<+SEARCH> ili <-SEARCH>




                           - 19 -



                             20


3.7.  CHtenie i zapis' fajlov (<USE>, <SAVE>)

   Komanda <USE> (CTRL/D, ili `-') sluzhit  dlya  pereklyucheniya
redaktora  s  fajla  na  fajl. Dlya perehoda k redaktirovaniyu
novogo fajla sluzhit komanda:

<ARG>imya<USE>
     nachat' redaktirovat' fajl imya.

Pri etom vozmozhny sleduyushchie sluchai:

    1)   Fajl sushchestvuet, dostupen i ne vhodit v chislo  faj-
         lov,  kotorye  uzhe  redaktirovalis' v dannom seanse
         raboty. V etom sluchae  redaktor  podklyuchaet  ego  i
         vysvechivaet v tekushchem "okne", a ranee redaktirovav-
         shijsya fajl stanovitsya "al'ternativnym";

    2)   Fajl uzhe  redaktirovalsya  v  dannom  seanse  raboty
         (hotya,  vozmozhno, i ne pokazyvaetsya ni v odnom okne
         na ekrane terminala). V etom sluchae fajl  otobrazha-
         etsya na ekrane so vsemi uzhe vnesennymi izmeneniyami.
         Otmetim, chto redaktor  ne  chitaet  fajl  iz  arhiva
         zanovo.  Tekushchij fajl stanovitsya "al'ternativnym";

    3)   Fajl ne  sushchestvuet.  Redaktor  prosit  podtverdit'
         neobhodimost' sozdaniya novogo fajla:

             "Create (y/n)?"
             ("Sozdat'(y/n)?")


         v  sluchae  polozhitel'nogo  otveta  sozdaetsya  novyj
         fajl.

   Komanda <USE> bez parametrov pereklyuchaet redaktor na al'-
ternativnyj  fajl.  V  chastnosti,  v  nachale seansa on mozhet
ispol'zovat'sya dlya polucheniya spravochnoj informacii iz  fajla
/usr/lib/re.std

<SAVE>
     - zapis' tekushchego fajla v arhiv (`2'`-' ili  CTRL/V  po
       umolchaniyu).  Pri etom ishodnyj variant fajla pereime-
       novyvaetsya v "staroe imya.b".  Posle vypolneniya <SAVE>
       bez  parametrov  dlya  povtoreniya seansa v sluchae sboya
       neobhodimo vosstanovit' ishodnoe sostoyanie  fajla  iz
       fajla  imya.b, poskol'ku izmenilos' ishodnoe sostoyanie
       redaktiruemyh fajlov.

<ARG>imya<SAVE>
     Proishodit zapis' tekushchego fajla v fajl "imya".

   Komanda <SAVE> avtomaticheski vypolnyaetsya dlya  vseh  izme-
nennyh  v  processe raboty fajlov pri vyhode iz redaktora po


                           - 20 -



                             21


komande <EXIT>.

3.7.1.  Zapret i razreshenie zapisi v fajl

<ARG>+w<RETURN>
     - zapretit' izmenenie tekushchego fajla;

<ARG>-w<RETURN>
     - razreshit' izmenenie (i zapis',  esli  ona  razreshena)
       redaktiruemogo fajla.

3.8.  Perenos, unichtozhenie i vstavka teksta

3.8.1.  Komandy <OPEN> i <CLOSE>

   Komanda <OPEN> (razdvinut')  pozvolyaet  vstavit'  probely
mezhdu kolonkami, strokami ili v seredinu gruppy strok.

<OPEN>
     - pered tekushchej strokoj vstavlyaetsya pustaya  stroka;  po
       umolchaniyu `8' ili PF2.

<ARG>n<OPEN>
     - pered tekushchej strokoj vstavlyaetsya  "n"  pustyh  strok
       (gde "n"-celoe polozhitel'noe chislo);

<ARG><OPEN>
     - tekushchaya stroka delitsya na dve chasti, nachinaya s  teku-
       shchej kolonki;


<ARG>ukazanie_kursorom<OPEN>
<ARG>$imya<OPEN>
     - v otmechennoe kursorom (ili kursorom i tochkoj,  zapom-
       nennoj v "imya") mesto vstavlyayutsya probely (ili pustye
       stroki, esli otmechena gruppa strok celikom).  Pravila
       ukazaniya  chasti fajla s pomoshch'yu kursora podrobno pri-
       vedeny v opisanii komandy <ARG>.

   Komanda <CLOSE> dejstvuet protivopolozhno komande  <OPEN>,
ubiraya iz fajla sootvetstvuyushchuyu chast' teksta:

<CLOSE>
     - unichtozhit' tekushchuyu stroku; po  umolchaniyu  `2'`8'  ili
       PF3.

<ARG>n<CLOSE>
     - unichtozhit' "n" strok, nachinaya s tekushchej;

<ARG><CLOSE>
     - skleit' tekushchuyu stroku so sleduyushchej, prichem sleduyushchaya
       stroka prikleivaetsya nachinaya s  tekushchej kolonki;



                           - 21 -



                             22


<ARG>ukazanie_kursorom<CLOSE>
<ARG>$imya<CLOSE>
     - unichtozhaetsya ukazannyj kusok teksta libo gruppa strok
       celikom.   Pravila  ukazaniya s pomoshch'yu kursora prive-
       deny v razdele <ARG>.

   Tekst, udalennyj s pomoshch'yu komandy  <CLOSE>,  popadaet  v
konec psevdo-fajla "#" i mozhet byt' vstavlen obratno (libo v
drugoe  mesto) s pomoshch'yu komandy:

<ARG><PUT>
     - tekst, ubrannyj poslednej komandoj <CLOSE>,  vstavlya-
       etsya v tekushchee mesto fajla.

   Psevdo-fajl "#" mozhno prosmotret', vvedya komandu:

    <ARG>#<USE>


Dlya vozvrata v prezhnij fajl sluzhit komanda <USE>.

<ARG>>imya<CLOSE>
     - tekst, ubrannyj poslednej komandoj <CLOSE>, zapomina-
       etsya v peremennoj "imya".

3.8.2.  Kopirovanie teksta (<PICK>, <PUT>)

   Dlya kopirovaniya teksta ispol'zuyutsya dve komandy.  Komanda
<PICK>  (vybrat')  pozvolyaet  zapisat' v bufer vstavok kusok
teksta, kotoryj zatem mozhet  byt'  vstavlen  v  proizvol'noe
mesto  po  komande  <PUT>.  Vybrannyj tekst popadaet v konec
psevdo-fajla "#" i mozhet byt' prosmotren  (<ARG>#<USE>)  ili
vybran zanovo:

<PICK>
     - vybrat' dlya vstavki tekushchuyu stroku; po umolchaniyu vvo-
       ditsya klavishej `9'.

<ARG>n<PICK>
     - vybrat' n strok, nachinaya s tekushchej;


<ARG>ukazanie_kursorom<PICK>
<ARG>$imya<PICK>
     - vybrat' ukazannyj kursorom uchastok fajla (smotri opi-
       sanie <ARG>).

   Vybrannyj tekst zanositsya v tak  nazyvaemyj  "PICK"-bufer
(bufer vstavki);

<ARG>>imya<PICK>
     - zapomnit' vybrannyj poslednej komandoj <PICK> tekst v
       peremennoj "imya".


                           - 22 -



                             23


   Dlya vstavki teksta v fajl ispol'zuyutsya komandy:

<PUT>
     - (po umolchaniyu `2'`9'): vybrannyj ranee tekst vstavlya-
       etsya v tekushchee mesto fajla.  Pri etom, esli byla vyb-
       rana gruppa strok celikom, proishodit vstavka  strok,
       inache  tekst  vstavlyaetsya  v seredinu imeyushchihsya strok
       (kotorye dlya etogo razdvigayutsya);

<ARG><PUT>
     - rabotaet analogichno <PUT>,  no  vmesto  "PICK"-bufera
       ispol'zuetsya  "CLOSE"-bufer,  v  kotorom zapominaetsya
       tekst,  isklyuchennyj  iz  fajla   poslednej   komandoj
       <CLOSE>;

<ARG>$imya<PUT>
     - tekst iz peremennoj "imya" ("imya" - odna bukva) vstav-
       lyaetsya v fajl i stanovitsya tekushchim buferom vstavki.

3.9.  Rabota s oknami (<M-PORT> i <CH-PORT>)

   Na ekrane terminala mozhno sozdavat' novye "okna" i  unich-
tozhat'  starye.  Dlya  etogo sluzhit komanda <M-PORT> (sozdat'
"okno", klavishi `2'`4').  Novoe "okno" sozdaetsya v uzhe imeyu-
shchemsya  putem deleniya ego na dve chasti. Esli kursor nahoditsya
v pervoj stroke "okna", to ono delitsya  po  vertikali.  Esli
kursor stoit v pervoj kolonke okna, to delenie proishodit po
gorizontali.  V  ostal'nyh  sluchayah  vydaetsya  soobshchenie  ob
oshibke. Primery privedeny na risunkah 4 i 5.


____________________________________________________________


                   Delenie po gorizontali

             Do komandy          Posle komandy

            ------------------ ------------------
            !                ! !   staroe       !
            !                ! !    okno        !
            !*-kursor        ! !----------------!
            !   staroe       ! !   novoe        !
            !    okno        ! !    okno        !
            !                ! !                !
            !                ! !                !
            ------------------ ------------------

                           Ris. 4
____________________________________________________________

                           - 23 -



                             24



____________________________________________________________

                    Delenie po vertikali

             Do komandy          Posle komandy

           ------------------ -------------------
           !       *-kursor ! !        !!       !
           !                ! ! staroe !! novoe !
           !                ! !        !!       !
           !   staroe       ! ! okno   !! okno  !
           !    okno        ! !        !!       !
           !                ! !        !!       !
           !                ! !        !!       !
           ------------------ -------------------

                           Ris 5.
____________________________________________________________


   Maksimal'noe chislo okon na ekrane ravno 10.

   Dlya sozdaniya i unichtozheniya  okon  ispol'zuyutsya  sleduyushchie
komandy:

<M-PORT>
     - sozdaetsya novoe okno,  i  v  nem  vysvechivaetsya  fajl
       /usr/lib/re.std;

<ARG>imya<M-PORT>
     - Sozdaetsya novoe okno,  i  v  nem  vysvechivaetsya  fajl
       "imya".   V  tom,  chto  kasaetsya novogo fajla, komanda
       polnost'yu analogichna komande <USE>;

<ARG><M-PORT>
     - unichtozhit' okno, sozdannoe poslednim.

   Esli odin fajl izobrazhen srazu v neskol'kih oknah,  izme-
neniya v nem budut vysvechivat'sya odnovremenno vo vseh oknah.

   Dlya perehoda iz okna v okno sluzhit komanda:

    <CH-PORT>
    (po umolchaniyu `0')


   Neskol'kih okon celesoobrazno ispol'zovat' pri  sravnenii
fajlov,  chastichnom  kopirovanii  odnogo  fajla v drugoj, pri
rabote s fajlami diagnostik ob oshibkah i v ryade drugih  slu-
chaev.




                           - 24 -



                             25


3.10.  Ispol'zovanie makrokomand

   Posledovatel'nost' komand redaktora vmeste s lyubym  teks-
tom,  esli ih prihoditsya chasto povtoryat', mozhet byt' prisvo-
ena "peremennoj" redaktora red. Dlya zapisi  makroopredeleniya
sluzhit komanda:

    <ARG>d imya<RETURN>


(imya - odna bukva). Redaktor vydast priglashenie na vvod:

    Mac:


   Vvedennyj v otvet tekst i komandy redaktora  zapishutsya  v
peremennuyu  imya.   Redaktor  otobrazhaet  komandy na ekrane v
vide pary simvolov, ih kodirovka privedena v  prilozhenii  2.
Priznakom  konca  vvoda  yavlyaetsya  komanda  <EXIT>  (klavishi
<LineFeed><Del>), dlya otmeny oshibochnyh simvolov  ili  komand
ispol'zuetsya  komanda  <B-SPACE>  (klavisha  <Del> ili <Back-
Space>).

   Dlya vypolneniya makrokomandy dostatochno vvesti:

    <LineFeed>$imya


   to est' posledovatel'no nazhat'  klavishi  <LineFeed>  (ili
<PS>),  "$" i maluyu latinskuyu bukvu, kotoroj imenuetsya pere-
mennaya. Redaktor podstavlyaet  soderzhimoe  peremennoj  vmesto
vvoda  s  terminala.  Vypolnenie makro preryvaetsya, esli pri
vypolnenii zapisannoj v  makro  operacii  poiska  ne  najden
iskomyj   tekst.   Pri  neobhodimosti  mozhno  pereopredelit'
kakuyu-libo funkcional'nuyu klavishu terminala kak vyzov  opre-
delennoj makrokomandy.

3.11.  Pereopredelenie klaviatury

   V redaktore imeetsya vozmozhnost' izmenit' dejstvie funkci-
onal'nyh  i  upravlyayushchih  klavish terminala. Pri etom klavisha
mozhet oboznachat' kak lyubuyu komandu redaktora, tak i vypolne-
nie makrokomandy. Dlya etogo sluzhit komanda:

    <ARG>k<RETURN>


   Redaktor zaprashivaet:

    Enter <new key>:

                           - 25 -



                             26


Nazhmite  pereopredelyaemuyu  klavishu  i  zatem  klavishu  <Del>
(<Zaboj>).

   Redaktor zaprashivaet:

    Enter <command> or <macro name>:


   Vvedite komandu,  imya  makroperemennoj  (maluyu  latinskuyu
bukvu) ili priznak makroperemennoj "$". Esli vvedena komandy
redaktora, to pri  nazhatii  pereopredelyaemoj  klavishi  budet
vvodit'sya  eta komanda.  Esli vvedeno imya peremennoj, znache-
niem kotoroj dolzhna  byt'  makrokomanda,  to  klavisha  budet
vyzyvat'  etu  makrokomandu.  Esli byl vveden simvol "$", to
klavisha stanet priznakom makroperemennoj  vmesto  kombinacii
<Line Feed>$ (<Perevod Stroki>$).

3.12.  Vypolnenie komand-fil'trov   (komanda <EXEC>)

   Takie poleznye operacii  nad  tekstami,  kak  sortirovka,
vyravnivanie paragrafov teksta, strukturizaciya tekstov prog-
ramm na "Si" i drugie,  vypolnyayutsya  komandami  operacionnoj
sistemy  DEMOS.  Redaktor  red  pozvolyaet ispol'zovat' takie
komandy  dlya  pererabotki  chasti  fajla  s  pomoshch'yu  komandy
<EXEC>. Naprimer, dlya kontekstnoj zameny int na short v oche-
rednyh 10 strokah fajla sluzhit komanda:

    <ARG>10l rpl "int" "short"<EXEC>


Posle etogo v ocherednyh 10 strokah proizojdet zamena  teksta
int  na  short,  kotoruyu  vypolnit  komanda DEMOS "rpl", na-
pisannaya special'no dlya red. Mozhno vyzyvat'  lyubye  komandy,
kotorye mogut ispol'zovat'sya kak fil'tr.  Naprimer:

cb   - uluchshenie chitaemosti programmy na Si,

sort - sortirovka

Komanda <EXEC> mozhet vypolnyat'sya v odnom iz sleduyushchih forma-
tov:

    <ARG><ch.p> <komanda> <s.p.><EXEC>
    libo
    <ARG>-<ch.c.><komanda> <s.p.><EXEC>
    libo
    <ARG><ch.s.>l <komanda> <s.p.><EXEC>
    gde <ch.p.> - chislo paragrafov,
        <ch.s.> - chislo strok,
        <s.p.> - spisok parametrov.

                           - 26 -



                             27


Prichem <chislo strok> ili <spisok parametrov> mogut  otsutst-
vovat'.

   Pervyj (neobyazatel'nyj) argument formata opredelyaet chislo
strok  libo  paragrafov  za tekushchej strokoj v fajle, kotorye
budut obrabatyvat'sya komandoj. Paragrafy - eto gruppy nepus-
tyh  strok,  razdelennye odnoj ili neskol'kimi pustymi stro-
kami. Celoe neotricatel'noe chislo ukazyvaet  chislo  paragra-
fov.  esli  chislo  otricatel'no ili za nim sleduet bukva l -
ono ukazyvaet chislo strok. Esli pervyj argument  opushchen,  to
imeetsya v vidu 1 paragraf teksta. Takim obrazom, -15 ili 15l
zadayut 15 strok teksta, a 2 - 2 paragrafa.

   Vtoroj argument - imya komandy  operacionnoj  sistemy,  za
kotorym  mogut idti ee argumenty, razdelennye probelami. Dlya
vklyucheniya probelov v argument mozhno ispol'zovat' kavychki ".

   Dejstvie <EXEC> sostoit v tom, chto  vyzyvaetsya  ukazannaya
komanda  operacionnoj  sistemy  s ukazannymi parametrami. Na
standartnyj vvod ej podayutsya zadannye stroki.  Esli  komanda
vypolnilas'  normal'no,  to ukazannye stroki v fajle zamenya-
yutsya na standartnyj vyvod komandy. Starye stroki  pomeshchayutsya
v CLOSE-bufer.

3.12.1.  Kontekstnaya zamena (rpl)

   Programma rpl vyzyvaetsya komandoj <EXEC>  i  trebuet  dva
argumenta.  Ona  zamenyaet  v ukazannyh strokah vse vhozhdeniya
pervogo argumenta na vtoroj argument. Esli kakoj-libo  argu-
ment  soderzhit  probely,  on dolzhen byt' vzyat v kavychki. rpl
raspoznaet regulyarnye vyrazheniya v pervom argumente po tem zhe
pravilam,  chto i redaktor ed v kontekste poiska, s tem otli-
chiem, chto vmesto simvola . ispol'zuetsya  @  dlya  oboznacheniya
odnogo proizvol'nogo simvola.

Naprimer, komanda:

    <ARG>100l rpl "^ *" " "<EXEC>


isklyuchit vse gruppy probelov v nachale sleduyushchih  100  strok.
dlya  oboznacheniya  samih  simvolov  $,  &, @, ^, * pered nimi
neobhodimo stavit' \ (obratnuyu chertu).

3.12.2.  Primery ispol'zovaniya komandy <EXEC>

   S pomoshch'yu komandy <EXEC> mozhno  vstavit'  v  lyuboe  mesto
fajla gruppu fajlov, nabrav:

    <ARG>0 cat <spisok fajlov><EXEC>

                           - 27 -



                             28


   Esli pri vvode programm na yazyke Si v otdel'nyh  funkciyah
ne  ostavlyat' pustyh strok, a sami funkcii razdelyat' pustymi
strokami, to mozhno uluchshit' chitaemost' teksta lyuboj funkcii,
podvedya kursor k ee nachalu i nabrav:

    <ARG>cb<EXEC>


3.12.3.  Vyhod iz redaktora  (<EXIT>)

   Dlya togo, chtoby okonchit' rabotu v red, zapisav vse  izme-
neniya v arhiv, sluzhit komanda:

    <EXIT>


Po umolchaniyu eto dve klavishi: <LineFeed>,<Del>.  Esli  nuzhno
vyjti  iz redaktora, ne zapisyvaya izmeneniya v arhiv, neobho-
dimo nabrat':

    <ARG>a<EXIT>


gde "a" - strochnaya latinskaya bukva "a".

   Komandu <EXIT> mozhno vvesti i  tak:  <ARG>q<RETURN>,  dlya
vyhoda bez zapisi nuzhno nabrat': <ARG>qa<RETURN>.

3.13.  Preryvanie vydachi. Avarijnyj vyhod iz redaktora

   Operacionnaya  sistema  interpretiruet   simvoly   CTRL/S,
CTRL/Q   (priostanovit'   peredachu,   prodolzhit'  peredachu),
CTRL/N, CTRL/O (russkij registr, latinskij registr), a takzhe
simvol "preryvanie" (interrupt) - CTRL/C.  Odinochnoe nazhatie
simvola "preryvanie" preryvaet vyvod na ekran  ili  operaciyu
kontekstnogo poiska i perevodit redaktor v rezhim vvoda para-
metrov.  Dvojnoe nazhatie simvola "preryvanie" v sluchae, esli
redaktor ne uspel perejti v rezhim vvoda parametrov, privodit
k avarijnomu zaversheniyu raboty bez zapisi izmenennyh fajlov.
V rezhime priema s klaviatury simvol "preryvanie" interpreti-
ruetsya kak komanda <ARG>. V  rezhime  povtoreniya  prervannogo
seansa  nazhatie  simvola "preryvanie" preryvaet povtorenie i





                           - 28 -



                             29


perevodit redaktor v rezhim vvoda s terminala.

4.  DIAGNOSTICHESKIE SOOBSHCHENIYA

   Soobshcheniya redaktora vysvechivayutsya v nizhnej stroke ekrana.
Oni  delyatsya  na  soobshcheniya  o rezhimah raboty i soobshcheniya ob
oshibkah.  V zavisimosti ot  ustanovlennoj  versii  redaktora
diagnostiki  vydayutsya  na russkom ili anglijskom yazyke. Nizhe
budut privodit'sya oba varianta diagnostiki.

   Soobshcheniya o rezhimah raboty

Red:<imya>
use:<imya>
     - idet chtenie fajla <imya>;

Zap:<imya>
save:<imya>
     - idet zapis' fajla <imya>;

+Poisk:<tekst>
-Poisk:<tekst>
+search:<tekst>
-search:<tekst>
     - idet poisk teksta <tekst> vpered ili nazad;

Vypolnenie.
executing..
     - idet vypolnenie vneshnej komandy;

Rezhim vstavki
insertmode
     - ustanovlen rezhim vstavki;

Ukazanie kursorom
cursor defined
     - idet ukazanie uchastka teksta dlya  komand  <PICK>  ili
     <CLOSE>;

Sozdat'(y/n)? imya
Create (y/n)? imya
     - esli  vy  dejstvitel'no  hotite  sozdat'  novyj  fajl
     <imya>, to vvedite "y";

Stroki ukazany metkoj
lines defined by tag
     - predydushchej komandoj ukazana  chast'  strok  fajla  (ot
     kursora  do  zapomnennoj  v  peremennoj metki), kotoraya
     budet peredana ocherednoj komande kak parametr;

Pryamougol'nik ukazan metkoj
square defined by tag
     - predydushchej komandoj ukazana chast' fajla  (ot  kursora


                           - 29 -



                             30


     do zapomnennoj v peremennoj metki), kotoraya budet pere-
     dana ocherednoj komande kak parametr;

CHast' stroki ukazana metkoj
columns defined by tag
     - predydushchej komandoj ukazana chast' stroki (ot  kursora
     do  metki, prisvoennoj peremennoj), kotoraya budet pere-
     dana ocherednoj komande kak parametr.

   Soobshcheniya ob oshibkah :

Argument dolzhen byt' chislom
argument must be numeric
     - argument komandy dolzhen byt' chislovym;

Argument dolzhen byt' polozhitel'nym
argument must be positive
     - argument dolzhen byt' polozhitel'nym;

Bufer vstavok pust
nothing in the pick buffer
     - vvedena komanda <PUT>,  no  ni  razu  ne  vypolnyalas'
     komanda <PICK>;

Close bufer pust
nothing in the close buffer
     - vvedena komanda <ARG><PUT>, no ni razu ne vypolnyalas'
     komanda <CLOSE>;

A chto iskat'?
nothing to search for
     - ne zadan obraz dlya kontekstnogo poiska;

Tekst ne najden
search key not found
     - obraz dlya poiska ne najden;

Zdes' nel'zya sozdat' okno
can't put a window there
     - pri sozdanii novogo "okna" kursor dolzhen byt' v  per-
     voj stroke "okna" ili na pervoj kolonke;

Ne mogu sozdat' stol'ko
can't make any more ports
     - prevysheno dopustimoe chislo "okon" (10);

Slishkom mnogo fajlov
too many files...
     - prevysheno maksimal'no dopustimoe chislo fajlov (10);

Vy ne mozhete izmenit' etot fajl
you can't modify this file
     -  fajl  nel'zya  izmenyat',  tak  kak  zapis'   v   nego


                           - 30 -



                             31


     zapreshchena.

   Imeetsya eshche neskol'ko redkih diagnostik, no oni, kak pra-
vilo, samoochevidny.

5.  POSTANOVKA REDAKTORA red. PODKLYUCHENIE NOVYH TIPOV TERMI-
NALOV

   Redaktor red nichego ne znaet o terminalah, na kotoryh  on
rabotaet.  Neobhodimuyu  dlya raboty informaciyu on poluchaet ot
operacionnoj sistemy. Operacionnaya sistema znaet tip  termi-
nala  i  ustanavlivaet  ego v peremennuyu TERM interpretatora
SHELL ili CSH.

   Svojstva terminalov opisany v fajle /etc/termcap.  Termi-
naly  harakterizuyutsya  naborom  funkcional'nyh vozmozhnostej,
kodami komand  i  sposobom  vypolneniya  razlichnyh  operacij.
Spisok  terminalov, opisanie kotoryh uzhe zaneseno v sistemu,
priveden v nachale fajla "/etc/termcap".

   |lementy fajla termcap sostoyat iz simvol'nyh polej,  raz-
delennyh  simvolom  ":"(dvoetochie). Pervyj element ukazyvaet
imena, pod kotorymi terminal izvesten v sisteme. imena  raz-
deleny simvolom (vertikal'naya cherta). Kak pravilo, poslednee
imya yavlyaetsya polnym nazvaniem terminala, a predydushchie  imena
-  ego  sokrashcheniyami,  kotorye  ispol'zuyutsya, v chastnosti, v
fajle /etc/ttytype.  Podrobnuyu informaciyu mozhno najti v sle-
duyushchih razdelah  operativnoj dokumentacii po OS DEMOS:

    environment (5),
    tset        (1)
    ttys        (5)
    ttytype     (5)
    termcap     (5)


Nizhe  povtoryaetsya  opisanie  formata   opisaniya   terminalov
termcap.

5.1.  Opisanie terminala v baze opisanij terminalov

   Opisanie kazhdogo tipa  terminalov  v  fajle  /etc/termcap
sostoit iz ryada polej, razdelennyh simvolom ":". Esli opisa-
nie perenositsya na novuyu stroku, to v konce predydushchej  sta-
vitsya ":\", i novaya stroka nachinaetsya s simvola ":".

   Vse harakteristiki imeyut dvuhsimvol'nye kody.

Harakteristika mozhet imet' odnu iz treh form zapisi:

:<imya>:
     - harakteristika  opisyvaet  nalichie   ili   otsutstvie
       kakoj-libo vozmozhnosti (logicheskij tip);


                           - 31 -



                             32


:<imya>#<chislo>:
     - eto  chislennaya   harakteristika   (naprimer,   razmer
       ekrana);

:<imya>=<zaderzhka><stroka>:
     - znacheniem yavlyaetsya stroka simvolov, prichem <zaderzhka>
       mozhet otsutstvovat'.

   V poslednem sluchae za "=" sleduet  neobyazatel'noe  chislo,
kotoroe   ukazyvaet  dlitel'nost'  zaderzhki  pri  vypolnenii
komandy v millisekundah. zatem  sleduet  stroka  simvolov  v
zakodirovannoj forme. |lementy stroki mogut predstavlyayutsya v
odnoj iz chetyreh form:

1)   \<simvol> - oboznachaet odin iz sleduyushchih  simvolov,  ne
     predstavimyh graficheski:

    \r     - kod 015 (return);

    \n     - kod 012 (line feed);

    \t     - kod 011 (tab);

    \b     - kod 010 (backspace);

    \f     - kod 014;

2)   \nnn,

   gde "nnn" -vos'merichnye cifry - simvol s kodom "nnn";

3)   ^<bukva> - upravlyayushchij simvol  CTRL+<bukva>,  naprimer,
     "^C" oboznachaet simvol "003";

4)   <lyuboj simvol>, krome ":",  "\",  "^",  oboznachaet  sam
     sebya.

Simvol "pusto" kodiruetsya kak \200.


       Tablica 1. Osnovnye harakteristiki terminalov


        --------------------------------------------
        | n imya tip obya- tol'ko   znachenie         |
        |   har     zat. dlya red  harakteristiki   |
        |------------------------------------------|
        | 1 co  chis   +  - chislo kolonok v stroke  |
        |   li  chis   +  - chislo strok na ekrane   |
        |------------------------------------------|

                           - 32 -



                             33


                                          Prodolzhenie tab. 1


        --------------------------------------------
        | n imya tip obya- tol'ko   znachenie         |
        |   har     zat. dlya red  harakteristiki   |
        |------------------------------------------|
        | 2 am  log   -  - terminal imeet avtoma-  |
        |                  ticheskij perevod strok  |
        |------------------------------------------|
        | 3 bs  log   -  - kod 010 vyzyvaet vozvrat|
        |                  na 1 poziciyu nazad      |
        |   rt  str   -  - vozvrat na nachalo stroki|
        |   bc  str   -  - kod "kursor nazad",     |
        |                  esli ne 010             |
        |   cm  str   -  - adresaciya kursora *     |
        |   cl  str   +  - ochistka ekrana          |
        |   do  str   *  - kursor vniz             |
        |   up  str   *  - kursor vverh            |
        |   nd  str   *  - kursor vpravo           |
        |   ho  str   *  - kursor v nachalo ekrana  |
        |------------------------------------------|
        | 3 is  str   -  - inicializaciya terminala |
        |   fs  str   -  + konec raboty v redaktore|
        |                  vozvrat v nachal'noe     |
        |                  sostoyanie               |
        |   cu  str   -  + kod "svetlyj kvadrat"   |
        |                  (kak pravilo, \177.)    |
        |   nb  log   -  + net zvukovogo signala   |
        |------------------------------------------|
        | 4 UC  log   -  - terminal imeet tol'ko   |
        |                  propisnye bukvy         |
        |   LC  log   -  - terminal imeet propisnye|
        |                  strochnye bukvy          |
        |   CY  log   -  + terminal imeet russkie i|
        |                  latinskie  bukvy        |
        |------------------------------------------|
        | 5 al  str   -  - vstavka pustoj stroki   |
        |   dl  str   -  - isklyuchenie stroki       |
        |   ic  str   -  - vstavit' simvol         |
        |   dc  str   -  - isklyuchit' simvol        |
        |   cd  str   -  - ochistit' ekran ot kursor|
        |                  do konca                |
        |   ce  str   -  - ochistka konca stroki    |
        |   sr  str   -  - prokrutit' tekst vniz   |
        |   sf  str   -  - prokrutit' tekst vverh  |
        |   ns  log   -  - net sdvizhki teksta      |
        |                  (net roll)              |
        |   cs  str   -  - izmenenie oblasti pro-  |
        |                  krutki teksta*          |
        |------------------------------------------|




                           - 33 -



                             34


                                          Prodolzhenie tab. 1


        --------------------------------------------
        | n imya tip obya- tol'ko   znachenie         |
        |   har     zat. dlya red  harakteristiki   |
        |------------------------------------------|
        | 6 kd  str   +  - kod klavishi strelka vniz|
        |   ku  str   +  -  -- // -- strelka vverh |
        |   kl  str   +  -  -- // -- strelka vlevo |
        |   kr  str   +  -  -- // -- strelka vpravo|
        |   kh  str   +  -  -- // -- "home"        |
        |------------------------------------------|
        | 7                 kody klavish, ispol'zue-|
        |                   myh dlya vypolneniya     |
        |                   komand redaktora:      |
        |   kN        -  -  komanda <-PAGE>        |
        |   kP        -  -  komanda <+PAGE>        |
        |   kB        -  -  komanda <B-TAB>        |
        |   kF        -  -  komanda <+LINE>        |
        |   kR        -  -  komanda <-LINE>        |
        |------------------------------------------|
        | 8                 Kody, vyrabatyvaemye   |
        |                   funkcional'nymi klavi- |
        |                   shami PF1 - PF5         |
        |                   Traktuyutsya oni tak:    |
        |   k1  str   -  -  komanda <ARG>          |
        |   k2  str   -  -  komanda <OPEN>         |
        |   k3  str   -  -  komanda <CLOSE>        |
        |   k4  str   -  -  komanda <INSERT>       |
        |   k5  str   -  -  komanda <DCHAR>        |
        |------------------------------------------|
        | 9 f.  str   -  +  Kody, vyrabatyvaemye   |
        |   f-  str   -  +  dopolnitel'noj funkcio-|
        |   f0  str   -  +  nal'noj klaviaturoj.   |
        |   f1                                     |
        |   ..  ...   .  .                         |
        |   f9  str   -  +                         |
        |------------------------------------------|
        |10 tc=<imya>    oznachaet, chto ostal'nye ha-|
        |               rakteristiki   sovpadayut  s|
        |               harakteristikami terminala |
        |               <imya>                      |
        |   <imya>@      otmena harakteristiki      |
        |               <imya>                      |
        |   hR   str  -  +   Imya fajla s kratkim   |
        |                    opisaniem komand      |
        |                   (vydaetsya pol'zovatelyu)|
        |------------------------------------------|


                           - 34 -



                             35


                                          Prodolzhenie tab. 1


        --------------------------------------------
        | n imya tip obya- tol'ko   znachenie         |
        |   har     zat. dlya red  harakteristiki   |
        |------------------------------------------|
        |11 Gs   str  -  +  Vklyuchenie psevdografi- |
        |                   cheskogo nabora simvolov|
        |   Ge   str  -  +  Vyklyuchenie psevdografi-|
        |                   ki                     |
        |   Gt   str  -  +  Nabor simvolov psevdo- |
        |                   grafiki                |
        --------------------------------------------


   V tablice 1 privedeny osnovnye harakteristiki, ispol'zue-
mye redaktorom red.  Polnoe opisanie vozmozhnyh harakteristik
imeetsya v dokumentacii po operacionnoj sisteme.

   Harakteristiki razbity na 11 grupp.

Gruppa 1.
     Opisyvaet razmery ekrana terminala;

Gruppa 2.
     Opisyvaet sposob upravleniya kursorom na  ekrane.  Samyj
     slozhnyj  element  gruppy  - harakteristika "cm". Esli u
     terminala net vozmozhnosti pryamoj adresacii  kursora  na
     ekrane,  to  dlya  raboty red neobhodimy harakteristiki,
     pomechennye simvolom "*" v grafe "obyazatel'nyj", v  pro-
     tivnom sluchae redaktor mozhet obojtis' i bez nih. Harak-
     teristika  "am"  oznachaet,  chto  pri  dostizhenii  konca
     stroki kursor avtomaticheski perehodit na nachalo sleduyu-
     shchej stroki;

Gruppa 3.
     Opisyvaet inicializaciyu displeya  i  dopolnitel'nye  ego
     harakteristiki.   "cu" - eto kod simvola, ispol'zuemogo
     redaktorom dlya markirovki polozheniya kursora  v  "okne".
     esli on ne ukazan, ispol'zuetsya simvol "@".  Rekomendu-
     etsya ukazyvat' "cu=\177", esli  tol'ko  terminal  umeet
     otobrazhat' etot kod kak svetlyj kvadrat;

Gruppa 4.
     Vozmozhnosti terminala  po  otobrazheniyu  simvolov.  esli
     "UC", to terminal dolzhen rabotat' v rezhime "lcase"; |ti
     harakteristiki ispol'zuet sistema, a ne  redaktor,  dlya
     ustanovki flagov terminala.

Gruppa 5.
     Dopolnitel'nye  redaktiruyushchie  vozmozhnosti   terminala;
     harakteristika   "cs"   analogichna  "cm"  po  rabote  s


                           - 35 -



                             36


     parametrami - nomerami verhnej i nizhnej stroki  oblasti
     sdviga teksta.

Gruppa 6.
     Kody, vyrabatyvaemye osnovnymi upravlyayushchimi klavishami;

Gruppa 7.
     Kody, vyrabatyvaemye funkcional'nymi klavishami, kotorye
     predpolagaetsya  ispol'zovat' v sootvetstvii s ukazannoj
     traktovkoj.

Gruppa 8.
     Kody, vyrabatyvaemye funkcional'nymi  klavishami  PF1  -
     PF5 ili klavishami, ih zamenyayushchimi.

Gruppa 9.
     Kody, vyrabatyvaemye dopolnitel'noj funkcional'noj kla-
     viaturoj s nadpisyami "0"-"9", "-", ".".

Gruppa 10.
     Pozvolyaet opisyvat' odin terminal  cherez  drugoj,  esli
     oni pohozhi.  naprimer:

               vt340:cm@:UC:KI:LC@:nb:tc=vdt52100c


Gruppa 11
     Opisyvaet rabotu s psevdograficheskimi simvolami,  koto-
     rye ispol'zuyutsya dlya risovaniya ramok. Gs vklyuchaet rezhim
     vyvoda psevdograficheskih simvolov,  Ge  ego  vyklyuchaet.
     Stroka  Gt opisyvaet kodirovanie psevdograficheskih sim-
     volov v  rezhime  psevdografiki:  kazhdyj  simvol  stroki
     sootvetstvuet  odnomu simvolu psevdografiki v sleduyushchem
     poryadke:

          - gorizontal'naya cherta;
          - bol'shoj zakrashennyj kvadrat;
          - vertikal'naya cherta;
          - levyj nizhnij ugol;
          - nizhnee "T";
          - pravyj nizhnij ugol;
          - levoe "T";
          - peresechenie dvuh linij;
          - pravoe "T";
          - verhnij levyj ugol;
          - verhnee "T";
          - verhnij pravyj ugol;
          - strelka vniz;
          - strelka vverh;
          - strelka vlevo;
          - strelka vpravo;

     esli v  stroke  zadano  men'she  simvolov,  ne  zadannye


                           - 36 -



                             37


     simvoly  zamenyayutsya  na sootvetstvuyushchie im obychnye sim-
     voly KOI-8.

5.2.  Adresaciya kursora.

   Sposob adresacii kursora dlya dannogo  terminala  opisyva-
etsya  harakteristikoj  "cm"  strochnogo tipa. Krome simvolov,
kotorye prosto peredayutsya na terminal, v stroke mogut vstre-
chat'sya  special'nye  posledovatel'nosti vida %X, kotorye pri
vyvode zamenyayutsya na nomer kolonki ili nomer stroki po  pra-
vilam, opredelyaemym simvolom X (analogichno rabotaet format v
printf).  Esli rassmatrivat' stroku "cm" kak format  vyvoda,
to  parametrami funkcii vyvoda yavlyayutsya nomer stroki i pozi-
cii,  na kotorye dolzhen byt' ustanovlen  kursor.  Kody  tipa
"%" imeyut sleduyushchij smysl:

%d   - to zhe,  chto i dlya programmy "printf",  prichem numera-
       ciya kolonok i stolbcov nachinaetsya s 0;

%2   - ekvivalentno %2d;

%3   - ekvivalentno %3d;

%.   - ekvivalentno %c;

%+x  - slozhit' kod simvola "x" s  sootvetstvuyushchim  znacheniem
       (nomerom  stroki  ili  kolonki),   zatem vydat' ee po
       "%.";

%r   - obratnyj poryadok nomerov stroki i pozicii.  vyvod  ne
       proizvoditsya;

%i   - nomera stroki i kolonki otschityvat' s 1 (vmesto 0);

%%   - daet odin simvol "%".

   Naprimer,  dlya terminala  "VDT-52100"  adresaciya  kursora
opisyvaetsya sleduyushchej strokoj:

                         cm=3^a%.%.


   Terminaly, kotorye ispol'zuyut  kody  vida  "%.",   dolzhny
imet'  harakteristiki  "bs" (ili "bc") i "up", to est' imet'
vozmozhnost' peremeshchat' kursor nazad na 1 poziciyu i vverh  na
odnu  stroku.   |to  neobhodimo,  tak kak redaktor ne vydaet
pri adresacii kursora simvoly \t, \n, ^D i \r: sistema mozhet
izmenit' ili unichtozhit' eti simvoly.

   V dannom razdele ochen' kratko byli izlozheny pravila  opi-
saniya  terminala  v fajle /etc/termcap. Obychno pri poyavlenii
novogo  terminala  byvaet  celesoobrazno  dlya  ego  opisaniya
ispol'zovat'  opisanie  kakogo-libo  drugogo  terminala libo


                           - 37 -



                             38


ispol'zovat' kratkoe opisanie s parametrom "tc=...".  Odnako
skoree  vsego vse vashi terminaly uzhe imeyutsya v /etc/termcap,
chto izbavit ot neobhodimosti razbirat'sya v ne ochen'  prostyh
pravilah opisaniya terminalov.



















                           - 38 -



                             39


PRILOZHENIE 1. Spravochnaya informaciya po red

   Redaktor red prednaznachen dlya redaktirovaniya i  prosmotra
fajlov  v  ekrannom  rezhime.   On pozvolyaet prosmatrivat' na
ekrane terminala odin ili  neskol'ko  fajlov,  redaktirovat'
fajly s ispol'zovaniem upravlyayushchih klavish terminala i komand
redaktora, perenosit' informaciyu iz fajla v fajl i provodit'
drugie operacii redaktirovaniya.

   Redaktor vyzyvaetsya s pomoshch'yu komandy red v odnom iz sle-
duyushchih formatov:

red [-klyuchi] imya_fajla [nomer_stroki]
     Nachat' redaktirovanie fajla "imya_fajla", ustanoviv okno
     na  stroku nomer_stroki; esli nomer ne ukazan, vysvechi-
     vaetsya nachalo fajla.

red [-klyuchi]
     Prodolzhit' redaktirovanie s togo sostoyaniya,  v  kotorom
     byl  zavershen  predydushchij seans raboty s dannogo termi-
     nala.

red [-klyuchi] -
     Povtorit' seans redaktirovaniya fajlov posle  sboya  sis-
     temy ili redaktora.

red [-klyuchi] -r fajl_protokol
     Povtorit' seans redaktirovaniya, schitav protokol iz uka-
     zannogo fajla.

   Vvod komand osushchestvlyaetsya s pomoshch'yu funkcional'nyh  kla-
vish  terminala.  Na bol'shinstve terminalov dlya etogo ispol'-
zuetsya  dopolnitel'naya  cifrovaya  klaviatura,  raspolozhennaya
sprava  dlya  osnovnoj.  Osoboe  znachenie  imeet klavisha `2',
kotoraya izmenyaet znachenie sleduyushchej klavishi.  Esli  dopolni-
tel'naya  cifrovaya klaviatura otsutstvuet ili ne imeet rezhima
generacii upravlyayushchih kodov, ispol'zuetsya  klavisha  <perevod
stroki>    (<LineFeed>),    naprimer   vmesto   `1'   vvodyat
<LineFeed>`1', a vmesto `2'`4' - <LineFeed><LineFeed>`4'.

Kratkoe opisanie komand

   V opisanii privedeny: kratkoe  nazvanie  komandy,  polnoe
nazvanie  komandy,  vvod s klaviatury (cherez "," perechisleny
vozmozhnye varianty vvoda, zapis' ^C oznachaet CTRL+C):

<ARG> - VVOD ARGUMENTA: `1', <LineFeed><Probel>
     Nachalo vvoda argumenta. Argumentom  mozhet  byt'  stroka
     simvolov  ili  ukazanie  oblasti  na  ekrane  terminala
     (oblast' opredelyaetsya nachal'nym i konechnym  polozheniyami
     kursora  i  predstavlyaet  soboj  libo  pryamougol'nik na
     ekrane, esli nachal'naya i konechnaya kolonki ne sovpadayut,
     libo neskol'ko strok, esli nachal'naya i konechnaya kolonki


                           - 39 -



                             40


     sovpadayut).  Vvod argumenta zavershaetsya vvodom komandy,
     k kotoroj etot argument otnositsya.

<TAB> - TABULYACIYA: <TAB>
<B-TAB> - TABULYACIYA NAZAD: `.', ^B
     peredvinut' kursor na  sleduyushchuyu  (predydushchuyu)  poziciyu
     tabulyacii.

<GOTO> - PEREJTI NA: `4'
     Bez argumenta - perehod na nachalo  fajla.   Argument  -
     nomer stroki; pustoj argument - konec fajla.

<LEFT> - SDVIG VLEVO: `2'<kursor vlevo>
<RIGHT> - SDVIG VPRAVO: `2'<kursor vpravo>
     Sdvig ekrana vlevo/vpravo.

<+PAGE> - LIST VPERED:  `7', <NextScr>
<-PAGE> - LIST NAZAD:   `2'`7', <PrevScr>
     Vozmozhnyj argument - chislo stranic,  na  kotorye  ekran
     peremeshchaetsya po tekushchemu fajlu.

<+LINE> - STROKA VPERED: <Forward>, ^T
<-LINE> - STROKA NAZAD:  <Backward>, ^W
     Argument - chislo strok; pustoj argument - vyvesti teku-
     shchuyu stroku v verhnyuyu (nizhnyuyu) stroku okna (peremeshcheniem
     okna po fajlu).  Klavishi <Forward> i  <Backward>  (nad-
     pisi  mogut  byt' i inymi) oboznacheny v opisanii termi-
     nala v sisteme kak "kF" i "kR".

<+SEARCH> - POISK VPERED: `3', ^R
<-SEARCH> - POISK NAZAD: `2'`3', ^E
     Argument - tekst, kotoryj nuzhno najti v fajle.

<INSERT> - REZHIM VSTAVKI: `5', <PF4>
     Vklyuchaet/vyklyuchaet rezhim vstavki;

<D-CHAR> - ISKLYUCHITX SIMVOL: `6', ^U

<TRUNC> - ISKLYUCHITX KONEC STROKI: `1'`6'

<OPEN>  - RAZDVINUTX: `8',  <PF2>
     Vstavit' pustuyu stroku; argument  -  chislo  strok  libo
     oblast' na ekrane, v kotoruyu nuzhno vstavit' probely.

<CLOSE> - UBRATX: `2'`8', <PF3>
     Ubrat' stroki libo oblast' na ekrane.  Ubrannaya  infor-
     maciya popadaet v bufer ubrannyh strok.

<GET> - VZYATX: `9', ^F
     Zapomnit' stroki libo oblast' na ekrane.

<PUT> - POLOZHITX: `2'`9', ^G
     Vzyataya ranee informaciya pomeshchaetsya v tekushchee  mesto  na


                           - 40 -



                             41


     ekrane.   Komanda  s  pustym  argumentom  ispol'zuetsya,
     chtoby vstavit' informaciyu iz bufera ubrannyh strok.

<SPLIT> - RAZREZATX STROKU NA DVE
     Otrabatyvaetsya po komande <OPEN> s  pustym  argumentom.
     (`1'<PF2>).

<JOIN> - SKLEITX STROKI
     Otrabatyvaetsya po komande <CLOSE> s pustym  argumentom.
     (`1'<PF3>).

<SAVE> - ZAPISX: `2' `-', ^V
     Argument - imya fajla (esli ne sovpadaet so starym).

<USE> - REDAKTIROVATX: `-', ^D
     Komanda bez argumenta perehodit k al'ternativnomu fajlu
     (po umolchaniyu - fajl podskazok).

<M-PORT> - SOZDATX OKNO: `2'`4'
     Argument - imya fajla,  kotoryj  budet  vysvechivat'sya  v
     novom  okne.   Kursor  dolzhen byt' libo v krajnej levoj
     pozicii ekrana libo na verhnej stroke ekrana.   Komanda
     s  pustym  argumentom vypolnyaet otmenu poslednego zave-
     dennogo okna.

<CH-PORT> - SMENITX OKNO: `0'
     smenit' tekushchee  okno  (esli  otkryto  bolee  chem  odno
     okno).

<EXEC> - VYPOLNITX: `2'`0', ^P
     Argument: "[chislo[l] ] komanda [argumenty]".  "komanda"
     vypolnyaetsya  kak fil'tr nad tekstom v ocherednyh "chislo"
     abzacah (esli  ukazana  bukva  l,  to  strokah)  fajla.
     Abzac  - gruppa nepustyh strok fajla, razdelennaya odnoj
     ili neskol'kimi pustymi strokami.

<EXIT> - VYHOD: <Perevod stroki><Zaboj>
     Argument  "a"  blokiruet  zapis'   izmenennyh   fajlov.
     Komanda  mozhet  takzhe  vvodit'sya  kak <ARG>q[a]<Vozvrat
     karetki>.

 - Zapomnit' v peremennuyu: <ARG>>I<Komanda>
     Gde I - imya makroperemennoj (odna bukva),  <Komanda>  -
     libo  <Vozvrat  karetki>  (togda  zapominaetsya  tekushchee
     mesto  v  fajle),  libo   <GET>   (zapominaetsya   bufer
     vstavki),  libo  <CLOSE>  (zapominaetsya  bufer ubrannyh
     strok).  Makro  zatem  mozhno  ispol'zovat'  v  komandah
     <GOTO>,  <PUT>,  a takzhe v komandah, argumentom kotoryh
     mozhet byt' oblast' na ekrane (v  etom  sluchae  vvoditsya
     oblast'  ot  tekushchego  polozheniya kursora do zapomnennoj
     metki), ukazav v kachestve argumenta "$I".




                           - 41 -



                             42


 - VVOD MAKRO: <ARG>d I<VK>
     Koncom vvoda sluzhit komanda <VYHOD>.

 - VYPOLNENIE MAKRO: <PS>$I

 - PEREOPREDELENIE KLAVISHI: <ARG>k<VK>
     Pri etom,  esli  v  otvet  na  zapros  pereopredelyaemoj
     komandy  vvedeno  imya  makro  (odna bukva), pri nazhatii
     etoj klavishi vypolnyaetsya dannoe makro.

<ESCAPE> - PRIZNAK NETEKSTOVOGO SIMVOLA: `2'`0', ^A
     Po etoj komande vvoditsya special'nyj simvol i sleduyushchij
     upravlyayushchij  simvol  vvoditsya  v  fajl, a ne traktuetsya
     redaktorom kak komanda.

   Dalee privedena kodirovka komand dlya naibolee rasprostra-
nennyh  terminalov.   Esli na vashem terminale oboznacheniya na
upravlyayushchej klaviature ne sovpadayut s nimi, neobhodimo utoch-
nit' kodirovanie komand redaktora u sistemnyh programmistov.
Na shemah klaviatury sverhu napisano nazvanie komandy, koto-
raya  ispolnyaetsya po dannoj klavishe.  Poseredine - nadpis' na
klavishe.  Snizu napisano nazvanie komandy, kotoraya  ispolnya-
etsya, esli predvaritel'no nazhat' klavishu `2'.

____________________________________________________________

          Komandy dlya |lektronika-15-I|-0013

 upravlyayushchaya klaviatura         cifrovaya klaviatura

 ---------------------------   ----------------------------
 |        |   &    |  USE  |   | +PAGE  |  OPEN  |  PICK  |
 |  i~~   |   I    |  V_|  |   |  -7-   |  -8-   |  -9-   |
 |        | +LINE  |  SAVE |   | -PAGE  |  CLOSE |  PUT   |
 ---------------------------   ----------------------------
 |        |  HOME  |       |   |  GOTO  | INSERT | DCHAR  |
 |  <--   |   &    |  -->  |   |  -4-   |  -5-   |  -6-   |
 |  LEFT  |        | RIGHT |   | M-PORT | CH-TAB |        |
 ---------------------------   ----------------------------
 | BSPACE |   I    |       |   |  ARG   | "UST"  | +SEARC |
 |  <-I   |   V    |  I->  |   |  -1-   |  -2-   |  -3-   |
 |        | -LINE  |       |   |        | "OTM"  | -SEARC |
 ---------------------------   |   ESCAPE        | B-TAB  |
 | OPEN   | INSERT | CLOSE |   |     -0 -        |  -,-   |
 |   =    |   ..   |   =   |   |   CH-PORT       | EXEC   |
 ---------------------------   ----------------------------
                 EXIT -"PS""ZB"  TAB  - "GT"
                           Ris 6
____________________________________________________________


                           - 42 -



                             43


____________________________________________________________

               Komandy dlya VDT52100 i VT-340
           -------------------- ------------------
           | <CLOSE> | <OPEN> | |        | <ARG> |
           | "d l"   |  "i l" | |"return"|"erase"|
           -------------------- ------------------
           |<B-SPACE>|<INSERT>|
           | "d c"   |  "i c" |
           --------------------
           |     <HOME>       |
           |    "h o m e"     |
           --------------------

                     Vvod ostal'nyh komand:
           <+PAGE>   - <LF>`8'      <+LINE>   - ^T
           <-PAGE>   - <LF><LF>`8'  <-LINE>   - ^W
           <LEFT>    - <LF><StrelkaVlevo>
           <RIGHT>   - <LF><StrelkaVpravo>
           <GOTO>    - <LF>`4'      <+SEARCH> - ^R
           <M-PORT>  - <LF><LF>`4'  <PICK>    - ^F
           <CH-PORT> - <LF>`0'      <PUT>     - ^G
           <ESCAPE>  - ^A           <EXEC>    - ^P
           <CH-TAB>  - <LF><LF>`5'  <B-TAB>   - ^B
           <DEL-CH>  - ^U           <-SEARCH> - ^E
           <SAVE>    - <LF><LF>`-'  <USE>     - ^D

                           Ris. 7
____________________________________________________________










                           - 43 -



                             44


____________________________________________________________

                   Komandy dlya VTA 2000.3
             Pri nazhatii na klavishi 0-9, ".",","
             neobhodimo odnovremenno
             nazhat' klavishu "UPR".
            -------------------------------------
            | ARG    | B-SPACE|  HOME  |    /   |
            | ***    | ***00  | &      |  ***   |
            | *00    |        | +----  |  /     |
            -------------------------------------
            | +PAGE  |  OPEN  |  PICK  |   &    |
            |  -7-   |  -8-   |  -9-   |   I    |
            | -PAGE  |  CLOSE |  PUT   | +LINE  |
            -------------------------------------
            |  GOTO  | INSERT | DCHAR  |   I    |
            |  -4-   |  -5-   |  -6-   |   V    |
            | M-PORT | CH-TAB |        | -LINE  |
            -------------------------------------
            |  ARG   | "ust"  | +SEARC |        |
            |  -1-   |  -2-   |  -3-   |  -->   |
            |        | "otm"  | -SEARC | RIGHT  |
            -------------------------------------
            |   ESCAPE        | B-TAB  |        |
            |     -0 -        |  -,-   |  <--   |
            |   CH-PORT       | EXEC   |  LEFT  |
            -------------------------------------
                           Ris. 8
____________________________________________________________










                           - 44 -



                             45


____________________________________________________________

                   Komandy dlya VTA 2000.1
          Pri nazhatii na klavishi 0-9, ".",","
          neobhodimo odnovremenno
          nazhat' klavishu "UPR".
         ------------------------------------------
         | ARG    |       |       |INSERT |B-SPACE|
         |"chistka | ***** | **::: |  ***> | <***  |
         | ekrana"| ***:: |       |       |       |
         ------------------------------------------
         |  HOME  |       |       |   &   | OPEN  |
         | &      |       |       |   I   |   *   |
         | +----  |       |       | +LINE |   V   |
         ------------------------------------------
         | +PAGE  | OPEN  | PICK  |   I   | CLOSE |
         |  -7-   |  -8-  |  -9-  |   V   |   &   |
         | -PAGE  | CLOSE |  PUT  | -LINE |   *   |
         ------------------------------------------
         |  GOTO  |INSERT | DCHAR |       |       |
         |  -4-   |  -5-  |  -6-  | --->  |       |
         | M-PORT |CH-TAB |       | RIGHT |       |
         ------------------------------------------
         |  ARG   |"ust"  |+SEARC |       |       |
         |  -1-   |  -2-  |  -3-  | <---  |       |
         |        |"otm"  |-SEARC | LEFT  |       |
         ------------------------------------------
         |   ESCAPE       | B-TAB |       |       |
         |     -0 -       |  -,-  |       |       |
         |   CH-PORT      | EXEC  |       |       |
         ------------------------------------------
                           Ris. 9
____________________________________________________________










                           - 45 -



                             46


____________________________________________________________

              MERA-7958,VDT-STATION,VDT-52129
          i drugie terminaly, pohozhie na DEC/VT-52
             ----------------------------------
             | ARG    | OPEN  | CLOSE |   &   |
             | pf1    | pf2   | pf3   |   |   |
             |        |       |       | +LINE |
             ----------------------------------
             | +PAGE  | OPEN  | PICK  |   I   |
             |  -7-   |  -8-  |  -9-  |   V   |
             | -PAGE  | CLOSE |  PUT  | -LINE |
             ----------------------------------
             |  GOTO  |INSERT | DCHAR |       |
             |  -4-   |  -5-  |  -6-  | --->  |
             | M-PORT |CH-TAB |       | RIGHT |
             ----------------------------------
             |  ARG   |"ust"  |+SEARC |       |
             |  -1-   |  -2-  |  -3-  | <---  |
             |        |"otm"  |-SEARC | LEFT  |
             ----------------------------------
             |   ESCAPE      | B-TAB  | USE   |
             |     -0 -      |  -,-   | enter |
             |   CH-PORT     | EXEC   | SAVE  |
             -----------------------------------
                          Ris. 10
____________________________________________________________



PRILOZHENIE 2. Izobrazhenie komand redaktora pri vvode  makro-
opredeleniya

                  lt      ^F    ch-tab  ^]
                  rt      ^E    escape  ^@
                  up      ^A    +line   ^T
                  dn      ^B    -line   ^W
                  rn      ^C    +page   ^N
                  home    ^D    -page   ^Q
                  tab     ^G    goto    ^O
                  b-tab   ^H    left    ^S
                  right   ^Y    ch-port ^M
                  +search ^R    del-ch  ^U
                  -search ^X    b-space net
                  open    ^K    arg     ^_
                  close   ^^    insert  ^\
                  pick    ^I    save    ^V
                  put     ^Z    use     ^L
                  m-port  ^J    exec    ^P


                           - 46 -



                             47


                         SODERZHANIE



    ANNOTACIYA .........................................    2

1.  VVEDENIE ..........................................    3

2.  OBSHCHEE OPISANIE REDAKTORA ..........................    3
2.1.  Osnovnye principy redaktirovaniya. ...............    3
2.2.  Vyzov redaktora .................................    5
2.3.  Ispol'zovanie klaviatury  i  vvod  komand  redak-
      tora ............................................    5
2.3.1.  Otobrazhenie informacii ........................    7
2.3.2.  Vvod informacii s klaviatury ..................    8
2.3.3.  Vvod komand v redaktor red  ...................    8
2.4.  Okna i redaktiruemye fajly ......................    9
2.5.  Peremennye i makrokomandy .......................   10
2.6.  Izmenenie rezhimov raboty redaktora ..............   11
2.7.  CHto delat' pri sboe .............................   12

3.  KOMANDY REDAKTORA red .............................   13
3.1.  Vvod parametrov <ARG> ...........................   13
3.2.  Vosstanovlenie ekrana ...........................   14
3.3.  Dvizhenie kursora vnutri okna ....................   14
3.3.1.  Klavishi so strelkammi .........................   14
3.3.2.  Komandy <HOME> i <RETURN> .....................   15
3.3.3.  Tabulyaciya (<tab>, <b-tab>, <set-tab>) .........   16
3.4.  Redaktirovanie vnutri stroki ....................   16
3.4.1.  Vvod teksta. Rezhim vstavki (<INSERT>) .........   16
3.4.2.  Unichtozhenie   simvolov   (<DEL-CH>   i   <BACK-
        SPACE>) .......................................   16
3.4.3.  Vvod netekstovyh simvolov (<ESCAPE>) ..........   17
3.5.  Peremeshchenie po fajlu ............................   17
3.5.1.  Zapominanie mesta v fajle .....................   17
3.5.2.  Podvod k stroke (<GOTO>) ......................   17
3.5.3.  Listovanie fajla  (<+PAGE>,  <-PAGE>,  <+LINE>,
        <-LINE>) ......................................   18
3.5.4.  Sdvig okna vpravo/vlevo (<RIGHT> i <LEFT>) ....   19
3.5.5.  Peremeshchenie s pomoshch'yu strelok .................   19
3.6.  Kontekstnyj poisk (<+SEARCH>, <-SEARCH>)  .......   19
3.7.  CHtenie i zapis' fajlov (<USE>, <SAVE>) ..........   20
3.7.1.  Zapret i razreshenie zapisi v fajl .............   21
3.8.  Perenos, unichtozhenie i vstavka teksta ...........   21
3.8.1.  Komandy <OPEN> i <CLOSE> ......................   21
3.8.2.  Kopirovanie teksta (<PICK>, <PUT>) ............   22
3.9.  Rabota s oknami (<M-PORT> i <CH-PORT>) ..........   23
3.10. Ispol'zovanie makrokomand .......................   25
3.11. Pereopredelenie klaviatury ......................   25
3.12. Vypolnenie komand-fil'trov   (komanda <EXEC>) ...   26
3.12.1. Kontekstnaya zamena (rpl)     ..................   27
3.12.2. Primery ispol'zovaniya komandy <EXEC>       ....   27
3.12.3. Vyhod iz redaktora  (<EXIT>) ..................   28


                           - 47 -



                             48


3.13. Preryvanie vydachi. Avarijnyj vyhod  iz  redaktora
       ................................................   28

4.  DIAGNOSTICHESKIE SOOBSHCHENIYA  ........................   29

5.  POSTANOVKA REDAKTORA red. PODKLYUCHENIE  NOVYH  TIPOV
    TERMINALOV ........................................   31
5.1.  Opisanie terminala v baze opisanij terminalov ...   31
5.2.  Adresaciya kursora. ..............................   37

    PRILOZHENIE 1. Spravochnaya informaciya po red ........   39

    Kratkoe opisanie komand ...........................   39

    PRILOZHENIE  2.  Izobrazhenie  komand  redaktora  pri
    vvode makroopredeleniya ............................   46















                           - 48 -




Last-modified: Tue, 30 Jun 1998 04:29:08 GMT
Ocenite etot tekst: