home *** CD-ROM | disk | FTP | other *** search
/ For Beginners & Professional Hackers / cd.iso / docum / c-book.doc / t5.cod < prev    next >
Encoding:
Text File  |  1990-10-26  |  32.0 KB  |  799 lines

  1.  
  2.      /* ------------ test for a blank line ---------------- */
  3.      static int blankline(int line)
  4.      {
  5.          char *cp;
  6.          int x;
  7.  
  8.              cp = topptr + (line-1) * wwd;
  9.          for(x=0; x < wwd; x++)
  10.               if(*(cp+x) != ' ')
  11.                    break;
  12.          return(x == wwd );
  13.      }
  14.  
  15.      /*------------ delete a word ------------------------ */
  16.      static void delete_word(int x, int y)
  17.      {
  18.          int wct = 0;
  19.          char *cp1, *cp2;
  20.  
  21.          cp1= cp2= curr(x, y);
  22.          if(*cp2 == ' ')
  23.               while(*cp2 == ' ' && x+wct < wwd) {
  24.                    wct++;
  25.                    cp2++;
  26.               }
  27.          else {
  28.               while(*cp2 != ' ' && x+wct < wwd) {
  29.                    wct++;
  30.                    cp2++;
  31.               }
  32.               while(*cp2 == ' ' && x+wct < wwd) {
  33.                    wct++;
  34.                    cp2++;
  35.               }
  36.                   }
  37.          movmem(cp2, cp1, wwd-x-wct);
  38.          setmem(cp1+wwd-x-wct, wct, ' ');
  39.              dispay_text();
  40.  
  41.                              - 2 -
  42.          findlast();
  43.      }
  44.  
  45.      /*------------------ delete a line -----------------*/
  46.      static void delete_line(int y)
  47.      {
  48.          char *cp1, *cp2;
  49.          int len;
  50.  
  51.              cp1=bfptr + y + wwd;
  52.          cp2=cp1 + wwd;
  53.          if(cp1<lstptr) {
  54.               len=endptr - cp2;
  55.               movmem(cp2, cp1, len);
  56.               lstptr -= wwd;
  57.               setmem(endptr-wwd, wwd,' ');
  58.               display_text();
  59.          }
  60.      }
  61.  
  62.      /*---------- delete a block --------------------*/
  63.      static void delete_block()
  64.      {
  65.          char *cp1, *cp2;
  66.          int len;
  67.  
  68.              if(!blkbeg  || !blkend) {
  69.               putchar(BELL);
  70.               return;
  71.          }
  72.          cp1=topptr + blkend * wwd;
  73.          cp2=topptr + (blkend-1) * wwd;
  74.          len=endptr - cp1;
  75.          movmem(cp2, cp1, len);
  76.          setmem(cp2+len, endptr-(cp2+len), ' ');
  77.          blkbeg = blkend = 0;
  78.          lstptr-=(cp1 - cp2);
  79.  
  80.                              - 3 -
  81.          display_text();
  82.      }
  83.  
  84.      /*----------- move and copy text blocks --------------*/
  85.      static void mvblock(int y , int moving)
  86.      {
  87.          char *cp1, *cp2, *hd;
  88.          int len;
  89.          if(!blkbeg || ! blkend) {
  90.               putchar(BELL);
  91.               return;
  92.          }
  93.          if(lineno(y) > blkbeg-1 && lineno(y) <= blkend-1) {
  94.               error_message("Can't move/copy a blok into itself");
  95.               return;
  96.          }
  97.          len=(blkend - blkbeg + 1) * wwd;
  98.          if((hd=malloc(len)) == 0)
  99.               return;
  100.          cp1 = topptr + (blkbeg + 1) * wwd;
  101.          movmem(cp1, hd, len);
  102.          cp2 = topptr + lineno(y) * wwd;
  103.          if (moving) {
  104.               if(lineno(y) > blkbeg-1)
  105.                    cp2 -= len;
  106.               do_display_text =0;
  107.               delete_block();
  108.               do_display_text =1;
  109.          }
  110.          if(cp2+len <= endptr) {
  111.               movemem(cp2, cp2 + len, endptr - cp2 - len);
  112.                      movemem(hd, cp2, len);
  113.          }
  114.          free(hd);
  115.          blkbeg = blkend = 0 ;
  116.          display_text();
  117.      }
  118.  
  119.                              - 4 -
  120.  
  121.  
  122.      /*------------ copy a block -----------------------*/
  123.      static void copy_block(int y)
  124.      {
  125.          mvblock(y, FALSE);
  126.          findlast();
  127.      }
  128.  
  129.      /*------------------- move a block -----------------*/
  130.      static void move_block(int y)
  131.      {
  132.          mvblock(y, TRUE);
  133.      }
  134.  
  135.      /*-------- find the last  caracter in the buffer -------*/
  136.      static void findlast()
  137.      {
  138.          register char *lp = endptr - 1;
  139.          register char *tp = topptr;
  140.  
  141.              while(lp > tp && (*lp == ' ' || *lp == '\0'))  {
  142.               if (*lp == '\0')
  143.                    *lp = ' ';
  144.               --lp;
  145.              }
  146.              if(*lp != ' ')
  147.                 lp++;
  148.              lstptr = lp;
  149.      }
  150.  
  151.      /*------- go to end of the data in the buffer ---------*/
  152.      static void find_end(int *x, int *y)
  153.      {
  154.          int ct;
  155.  
  156.              bfptr = lstptr;
  157.  
  158.                              - 5 -
  159.          ct = (lstptr - topptr) % wsz;
  160.          bfptr -= ct;
  161.          if (bfptr + wsz > endptr)
  162.               bfptr = endptr - wsz;
  163.          *x = 0;
  164.          *y = (ct / wwd);
  165.          downward(y);
  166.      }
  167.  
  168.      /*---------------------carriage return ----------------*/
  169.      static void carrtn(int *x, int *y, int insert)
  170.      {
  171.          int insct;
  172.          char *cp, *nl;
  173.          int ctl = 2;
  174.  
  175.              cp = curr(*x, *y);
  176.          nl = cp + ((cp - topptr) % wwd);
  177.          if (lineno(*y)+2 < lines)
  178.               if (insert && nl < endptr) {
  179.                    insct = wwd - *x;
  180.                    while (ctl--)   {
  181.                        if (endptr > cp + insct) {
  182.                           movemem(cp, cp+insct, endptr-insct-cp);
  183.                           setmem(cp, insct, ' ');
  184.                        }
  185.                        else if(ctl == 1)
  186.                            setmem(cp, endptr - cp, ' ');
  187.                        cp += insct * 2;
  188.                         insct= *x;
  189.                    }
  190.               }
  191.          *x = 0;
  192.          downward(y);
  193.          if (insert) {
  194.               testpara(*x, *y);
  195.               display_text();
  196.  
  197.                              - 6 -
  198.          }
  199.          if (lineno(*y)+2 < lines)
  200.               if (insert)
  201.                    if ((lstptr + wwd) <= endptr)
  202.                         if(lstptr > curr(*x, *y))
  203.                              lstptr += wwd;
  204.      }
  205.      /* ------- move the buffer offset back one position ------ */
  206.      static void backspase(int *x, int *y)
  207.      {
  208.          if (*x == 0)    {
  209.              *x = wwd - 1;
  210.              upward(y);
  211.          }
  212.          else
  213.              --(*x);
  214.      }
  215.      /* ------- move the buffer offset forward one word  ------ */
  216.      static void fore_word(int *x, int *y, char *bf)
  217.      {
  218.          while (*bf != ' ')  {
  219.              if (spaceup(x, y, &bf) == 0)
  220.                  return;
  221.              if (*x == 0)
  222.                  break;
  223.          }
  224.          while (*bf == ' ')
  225.              if (spaceup(x, y, &bf) == 0)
  226.                  return;
  227.      }
  228.      static int spaceup(int *x, int *y, char **bf)
  229.      {
  230.          if (*bf == lstptr)
  231.              return 0;
  232.  
  233.          (*bf)++;
  234.          forward(x, y);
  235.  
  236.                              - 7 -
  237.          return 1;
  238.      }
  239.      /* ------- move the buffer offset backrward one word  ------ */
  240.      static void back_word(int *x, int *y, char *bf)
  241.      {
  242.          spacedn(x, y, &bf);
  243.          while (*bf == ' ')
  244.              if (spacedn(x, y, &bf) == 0)
  245.                  return;
  246.          while (*bf != ' ')  {
  247.              if (*x == 0)
  248.                  return;
  249.              if (spacedn(x, y, &bf) == 0)
  250.                  return;
  251.          }
  252.          spaceup(x, y, &bf);
  253.                  return;
  254.      }
  255.      static int spacedn(int *x, int *y, char **bf)
  256.      {
  257.          if (*bf == topptr)
  258.              return 0;
  259.          --(*bf);
  260.          backspace(x, y);
  261.          return 1;
  262.      }
  263.      /* ------- move the buffer offset forward one position ------ */
  264.      static void backspace(int *x, int *y)
  265.      {
  266.          if (*x == 0)    {
  267.             *x = wwd - 1;
  268.             upward(y);
  269.          }
  270.          else
  271.             --(*x);
  272.      }
  273.      /* ---------------------------------------------------------------- */
  274.  
  275.                              - 8 -
  276.      static void forward(int *x, int *y)
  277.      {
  278.          int ww = wwd;
  279.  
  280.          (*x)++;
  281.          if (*x == ww)    {
  282.              downward(y);
  283.              *x = 0;
  284.          }
  285.      }
  286.      /* ------- move the buffer offset down one position ------ */
  287.      static int downward(int *y)
  288.      {
  289.          if (*y < wht - 1)    {
  290.          (*y)++;
  291.          return 1;
  292.          }
  293.          else if ((bfptr + wsz) < endptr)    {
  294.              bfptr += wwd;
  295.              scroll(wnd, UP);
  296.              disp_line(wht-1);
  297.              return 1;
  298.          }
  299.          return 0;
  300.      }
  301.      /* --------- move the buffer offset up one position ------ */
  302.      static void upward(int *y)
  303.      {
  304.          if (*y)        /*    !!!!!!!!!!!    */
  305.             --(*y);
  306.          else if ((topptr + wwd) <= bfptr)    {
  307.              bfptr -= wwd;
  308.              scroll(wnd, DN);
  309.              disp_line(0);
  310.          }
  311.      }
  312.      /* ---- display all the lines in a window ------ */
  313.  
  314.                              - 9 -
  315.      static void display_text()
  316.      {
  317.          int y = 0;
  318.  
  319.          if (do_display_text)
  320.              while (y < wht)
  321.              disp_line(y++);
  322.      }
  323.      /* ---------- Display a line -------- */
  324.      static void disp_line(int y)
  325.      {
  326.          int x = 0, atr = WNORMAL;
  327.  
  328.          if (blkbeg || blkend)
  329.              if (lineno(y) >= blkbeg-1)
  330.                  if (lineno(y) <= blkend-1)
  331.                      atr = WACCENT;
  332.  
  333.          while (x < wwd) {
  334.              displine(wnd, x+1, y+1, *(bfptr+y * wwd+x), atr);
  335.              x++;
  336.          }
  337.      }
  338.  
  339.      /*--------- set insert /exchange cursor shape -----------*/
  340.      static void insert_line()
  341.      {
  342.          set_cursor_type(inserting ? 0x0106 : 0x0607);
  343.      }
  344.  
  345.  
  346.                  Ä»¿ßá¡¿Ñ »α«úαá¼¼δ: editor.c
  347.      -----------------------------------------------------------------
  348.  
  349.           Åα«úαἼᠠeditor.c ß«ñÑαª¿Γ α∩ñ «»ÑαáΓ«α«ó #define, ¬«Γ«αδÑ
  350.      π»αáó½∩εΓ πßΓá¡«ó¬«⌐ »«º¿µ¿¿ Γáíπ½∩µ¿¿ ó «¬¡Ñ αÑñá¬Γ«αá. ç¡áτÑ¡¿Ñ
  351.      ú½«íá½∞¡«⌐ »ÑαѼѡ¡«⌐ ÆÇé «»αÑñѽѡ« αáó¡δ¼ 4,  τΓ« πßΓá¡áó½¿óáÑΓ
  352.  
  353.                              - 10 -
  354.      »«º¿µ¿ε Γáíπ½∩µ¿¿ ó τÑΓδαÑ ½εíδσ  ß¿¼ó«½á.  ÄßΓá½∞¡δÑ  ú½«íá½∞¡δÑ
  355.      »ÑαѼѡ¡δÑ    -    NEXTAB,   LASTTAB   ¿   PREVTAB   -   ∩ó½∩εΓß∩
  356.      ¼á¬α«óδαáªÑ¡¿∩¼¿,  »«ºó«½∩εΘ¿¼¿ π½πτΦ¿Γ∞  πñ«í«τ¿ΓáѼ«ßΓ∞  ΓѬßΓá
  357.      »α«úαá¼¼δ  ó µÑ½«¼.  îá¬α«ß curr ó«ºóαáΘáÑΓ π¬áºáΓѽ∞ ¡á ß¿¼ó«½ ó
  358.      íπΣÑαÑ αÑñá¬Γ¿α«óá¡¿∩ ó ºáó¿ß¿¼«ßΓ¿ «Γ º¡áτÑ¡¿∩ Ñú«  ¬««αñ¿¡áΓ  ó
  359.      «¬¡Ñ,  ºáñáóáѼδσ  áαúπ¼Ñ¡ΓἿ  X  ¿ Y.  îá¬α«ß lineno ó«ºóαáΘáÑΓ
  360.      ¡«¼Ñα  ßΓ᫬¿  ó  íπΣÑαÑ,  ¬«Γ«αδ⌐  ß««ΓóÑΓßΓóπÑΓ  «Γ¡«ß¿Γѽ∞¡«¼π
  361.      ¡«¼Ñαπ  ßΓ᫬¿ ó «¬¡Ñ αÑñá¬Γ«αá,  ºáñáóáѼ«ú« º¡áτÑ¡¿Ñ¼ áαúπ¼Ñ¡Γá
  362.      y.
  363.  
  364.           ìѬ«Γ«αδÑ »ÑαѼѡ¡δÑ,  «íΩ∩ó½Ñ¡¡δÑ  ¬á¬  external,  ∩ó½∩εΓß∩
  365.      óδτ¿ß½∩Ñ¼δ¼¿  ¿  »αÑñ¡áº¡áτÑ¡δ  »αѪñÑ óßÑú« ñ½∩ ß«¬αáΘÑ¡¿∩ τ¿ß½á
  366.      óδτ¿ß½¿Γѽ∞¡δσ «»Ñαᵿ⌐ ó ΓѬßΓÑ »α«úαá¼¼δ,  τΓ«  ñѽáÑΓ  ½¿ßΓ¿¡ú
  367.      í«½ÑÑ  πñ«í«τ¿ΓáѼδ¼.  ÅÑαѼѡ¡á∩  wht  »α¿¡¿¼áÑΓ º¡áτÑ¡¿Ñ óδß«Γδ
  368.      ¼á¬ß¿¼á½∞¡« ó«º¼«ª¡«⌐ «í½áßΓ¿ ó «¬¡Ñ,  «Γó«ñ¿¼«⌐ »«ñ  ΓѬßΓ;  »α¿
  369.      óδτ¿ß½Ñ¡¿¿  º¡áτÑ¡¿∩  wht  ñѽáÑΓß∩ ¬«ααѬµ¿∩ ¡á ¡á½¿τ¿Ñ ß¿¼ó«½«ó
  370.      αἬ¿ «¬¡á.  ÅÑαѼѡ¡á∩ wwd »α¿¡¿¼áÑΓ º¡áτÑ¡¿Ñ Φ¿α¿¡δ ¼á¬ß¿¼á½∞¡«
  371.      ó«º¼«ª¡«⌐ «í½áßΓ¿, «Γó«ñ¿¼«⌐ »«ñ ΓѬßΓ, ß πτÑΓ«¼ ¡á½¿τ¿∩ ß¿¼ó«½«ó
  372.      αἬ¿  «¬¡á.  ÅÑαѼѡ¡á∩  wsz  ß«ñÑαª¿Γ  αẼÑα   «í½áßΓ¿   «¬¡á,
  373.      «Γó«ñ¿¼«⌐  »«ñ ΓѬßΓ.  ÅÑαѼѡ¡á∩ lines ß«ñÑαª¿Γ ¬«½¿τÑßΓó« ßΓ᫬
  374.      ΓѬßΓá, ¬«Γ«αδÑ ¼«úπΓ íδΓ∞ ß«σαá¡Ñ¡δ ó ΓѬßΓ«ó«¼ íπΣÑαÑ. Åáαá¼ÑΓα
  375.      endptr ∩ó½∩ÑΓß∩ π¬áºáΓѽѼ ¡á »«º¿µ¿ε »«ß½Ññ¡Ñú« ß¿¼ó«½á ó íπΣÑαÑ
  376.      »½εß Ññ¿¡¿µá.  ç¡áτÑ¡¿Ñ lstptr - π¬áºáΓѽ∞ ¡á »«ß½Ññ¡¿⌐, «Γ½¿τ¡δ⌐
  377.      «Γ »α«íѽá, ß¿¼ó«½, σαá¡∩Θ¿⌐ß∩ ó íπΣÑαÑ. ç¡áτÑ¡¿Ñ topptr ∩ó½∩ÑΓß∩
  378.      π¬áºáΓѽѼ ¡á »Ñαóδ⌐ ß¿¼ó«½, σαá¡∩Θ¿⌐ß∩ ó íπΣÑαÑ. ô¬áºáΓѽ∞ bfptr
  379.      ¿ß»«½∞ºπÑΓß∩  »α¿  ½¿ßΓá¡¿¿  ΓѬßΓá  »«ßΓαá¡¿τ¡«  ¿½¿  ß¬α«½½¿¡úá
  380.      ΓѬßΓá;  «¡ óßÑúñá π¬áºδóáÑΓ ¡á ß¿¼ó«½ ó íπΣÑαÑ ΓѬßΓá, ¬«Γ«αδ⌐ ó
  381.      ñá¡¡δ⌐ ¼«¼Ñ¡Γ «Γ«íαáªáÑΓß∩ ó ½Ñó«¼ óÑασ¡Ñ¼ πú½π «¬¡á.
  382.  
  383.           öπ¡¬µ¿∩ text_editor  óδºδóáÑΓß∩ ó ß½πτáÑ,  Ñß½¿ »«½∞º«óáΓѽε
  384.      »«¡áñ«í¿½«ß∞ óó«ñ¿Γ∞ ¿½¿ ¼«ñ¿Σ¿µ¿α«óáΓ∞  ΓѬßΓ  ó  íπΣÑαÑ.  Å«ß½Ñ
  385.      ¿¡¿µ¿á½¿ºáµ¿¿   Σπ¡¬µ¿¿   »α«¿ßσ«ñ¿Γ  óδτ¿ß½Ñ¡¿Ñ  ß««ΓóÑΓßΓóπεΘ¿σ
  386.      º¡áτÑ¡¿⌐ »ÑαѼѡ¡δσ, ¿ ¬παß«α πßΓá¡áó½¿óáÑΓß∩ ó ¡áτá½∞¡πε »«º¿µ¿ε
  387.      ß   ¬««αñ¿¡áΓἿ   (0,0).  Åα¿  óó«ñÑ  »«½∞º«óáΓѽѼ  ß¿¼ó«½«ó  ß
  388.      ¬½áó¿áΓπαδ áóΓ«¼áΓ¿τÑ߬¿ «ßπΘÑßΓó½∩ÑΓß∩ »α«óÑα¬á óó«ñᠡᠡ὿τ¿Ñ
  389.      »αÑαδóá¡¿⌐  «Γ Σπ¡¬µ¿«¡á½∞¡δ󠬽áó¿Φ ¿ π»αáó½∩εΘ¿σ ß¿ú¡á½«ó.  Åα¿
  390.      ¡áªáΓ¿¿ »«½∞º«óáΓѽѼ  ¬½áó¿Φ¿  <ééÄä>  áóΓ«¼áΓ¿τÑ߬¿  óδºδóáÑΓß∩
  391.  
  392.                              - 11 -
  393.      Σπ¡¬µ¿∩  carrtn.  ìáªáΓ¿Ñ  ¬½áó¿Φ¿  π»αáó½Ñ¡¿∩  ¬παß«α«¼ <æΓαѽ¬á
  394.      ó¡¿º>  »α¿óÑñÑΓ  ¬  ó맮óπ  Σπ¡¬µ¿¿  downward.   ìáªáΓ¿Ñ   ¬½áó¿Φ
  395.      <æΓαá¡¿µá  óóÑασ>  ¿  <æΓαá¡¿µá  ó¡¿º>  »α¿óÑñπΓ ¬ ó맮óπ Σπ¡¬µ¿⌐
  396.      upward ¿½¿ downward ß««ΓóÑΓßΓóÑ¡¡« ñ½∩ «íαáí«Γ¬¿  «Γ«íαáªÑ¡¡δσ  ó
  397.      «¬¡Ñ ßΓ᫬ ΓѬßΓá. è½áó¿Φ¿ <TÇé> ¿ <SHIFT/TAB>) ó맮óπΓ ¿º¼Ñ¡Ñ¡¿Ñ
  398.      º¡áτÑ¡¿∩ ΓѬπΘÑ⌐ ¬««αñ¿¡áΓδ X  ¬παß«αá,  »ÑαѼÑßΓ¿ó  »«ß½Ññ¡¿⌐  ó
  399.      ß½ÑñπεΘπε ¿½¿ »αÑñδñπΘπε »«º¿µ¿ε Γáíπ½∩µ¿¿. è½áó¿Φ¿ <Ctrl/ßΓαѽ¬á
  400.      ó»αáó«> »α¿óÑñπΓ  ¬  ó맮óπ  Σπ¡¬µ¿⌐  fore_word   ¿½¿   back_word
  401.      ß««ΓóÑΓßΓóÑ¡¡«. <Ctrl/é>   »α¿óÑñÑΓ   ¬  ¿º¼Ñ¡Ñ¡¿ε  ¬««αñ¿¡áΓδ  π
  402.      ¬παß«αá,  »«º¿µ¿«¡¿α«óáó Ñú«  ó  ¡¿ª¡Ñ⌐  τáßΓ¿  φ¬αá¡á.  <Ctrl/Æ>
  403.      »«º¿µ¿«¡¿απÑΓ ¬παß«α ó óÑασ¡Ñ⌐ τáßΓ¿ φ¬αá¡á, ¿º¼Ñ¡∩∩ º¡áτÑ¡¿Ñ Ñú«
  404.      ¬««αñ¿¡áΓδ Y.  <Ctrl/Home> »α¿óÑñÑΓ ¬ »ÑαѼÑΘÑ¡¿ε ¬παß«αá ó Γ«τ¬π
  405.      ß    ¬««αñ¿¡áΓἿ    (0,0)   (¿º¼Ñ¡¿ó   ß««ΓóÑΓßΓóÑ¡¡«   º¡áτÑ¡¿∩
  406.      ¬««αñ¿¡áΓ¡δσ áαúπ¼Ñ¡Γ«ó ¬παß«αá X ¿  Y),  »ÑαÑ«»αÑñѽ¿Γ  º¡áτÑ¡¿Ñ
  407.      bfptr  ¡á  áñαÑß ¡áτá½á íπΣÑαá ¿ ó맮óÑΓ Σπ¡¬µ¿ε display_text ñ½∩
  408.      óδñáτ¿ ¡«ó«⌐ ¿¡Σ«α¼áµ¿¿ ¡á φ¬αá¡ ¿º  íπΣÑαá.  è½áó¿Φá  <èπαß«α  ó
  409.      ¡áτὫ φ¬αá¡á>    (<Home>)   «í¡π½∩ÑΓ   ¬««αñ¿¡áΓπ   ¬παß«αá   X.
  410.      <Ctrl/END>) ¿ß»«½∞ºπÑΓ Σπ¡¬µ¿ε  find_end  ñ½∩  »«¿ß¬á  »«ß½Ññ¡Ñú«
  411.      ß¿¼ó«½á ó  íπΣÑαÑ  ¿  óδñáτ¿  ΓѬßΓá  ¡á φ¬αá¡.  <END> ¿ß»«½∞ºπÑΓ
  412.      Σπ¡¬µ¿ε find_end ñ½∩ »«º¿µ¿«¡¿α«óá¡¿∩ ¬παß«αá  (¿  ¿º¼Ñ¡Ñ¡¿∩  Ñú«
  413.      ¬««αñ¿¡áΓδ X)  ó ¬«¡µÑ ΓѬπΘÑ⌐ ßΓ᫬¿ ΓѬßΓá.  <Up arrow> ó맮óÑΓ
  414.      Σπ¡¬µ¿ε upward. ìáªáΓ¿Ñ <F2> ¿½¿ <ESC> ß¿ú¡á½¿º¿απÑΓ « ºáóÑαΦÑ¡¿¿
  415.      óó«ñá ΓѬßΓá.  <Left arrow> ¿ <Backspace>) »α¿ó«ñ∩Γ ¬ »ÑαѼÑΘÑ¡¿ε
  416.      ¬παß«αá  ¡á  «ñ¡π  »«º¿µ¿ε  ó½Ñó«,  óδºδóá∩  ñ½∩  φΓ«ú«   Σπ¡¬µ¿ε
  417.      backspace. è½áó¿Φá   <çáí«⌐>   (<Backspace>)  ó  φΓ«¼  ß½πτáÑ  ¡Ñ
  418.      úÑ¡Ñα¿απÑΓ ó  »α«úαἼѠ ¬«ñá,  ß««ΓóÑΓßΓóπεΘÑú«  ¬½áó¿ΦÑ  <DEL>,
  419.      ¬«Γ«αá∩ π¡¿τΓ«ªáÑΓ ß¿¼ó«½ ó »«º¿µ¿¿ ¬παß«αá,  «íαáΘá∩ß∞ ñ½∩ φΓ«ú«
  420.      ¬ Σπ¡¬µ¿¿ movmem. <ALT/D> »α¿ó«ñ¿Γ ¬ ó맮óπ delete_line. <Ctrl/D>
  421.      óδºδóáÑΓ Σπ¡¬µ¿ε  delete  _word.  è½áó¿Φá  <INS> »ÑαѬ½ετáÑΓ Σ½áú
  422.      inserting ¿ óδºδóáÑΓ  Σπ¡¬µ¿ε  insert_line  ñ½∩  ¿º¼Ñ¡Ñ¡¿∩  Σ«α¼δ
  423.      ¬παß«αá.  <F3>  óδºδóáÑΓ  erase_buffer.  <F4>  óδºδóáÑΓ paraform.
  424.      è½áó¿Φ¿ <F5> ¿ <F6> πßΓá¡áó½¿óáεΓ º¡áτÑ¡¿∩  »ÑαѼѡ¡δσ  blkbeg  ¿
  425.      blkend  ñ½∩  ΓѬπΘÑ⌐  ßΓ᫬¿  ΓѬßΓá.  ¥Γ¿  ªÑ ¬½áó¿Φ¿ »α¿ó«ñ∩Γ ¬
  426.      «íαáΘÑ¡¿ε ¬ Σπ¡¬µ¿¿ display_text ñ½∩ «Γ«íαáªÑ¡¿∩ í½«¬á  ΓѬßΓá  ó
  427.      ¿¡óÑαß¡«¼  αѪ¿¼Ñ.  è½áó¿Φ¿  <F7>,  <F8> ¿ <F9> »α¿ó«ñ∩Γ ¬ ó맮óπ
  428.      Σπ¡¬µ¿⌐ move_ block,  copy_block ¿  delete_block  ß««ΓóÑΓßΓóÑ¡¡«.
  429.      è½áó¿Φá  <F10>  «í¡π½∩ÑΓ  º¡áτÑ¡¿∩  »ÑαѼѡ¡δσ  blkbeg ¿ blkend ¿
  430.  
  431.                              - 12 -
  432.      óδºδóáÑΓ Σπ¡¬µ¿ε display_text.  ìáªáΓ¿Ñ ¬½áó¿Φ¿ <æΓαѽ¬á  ó»αáó«>
  433.      (<Right arrow>) »α¿ó«ñ¿Γ ¬ ó맮óπ Σπ¡¬µ¿¿ forward.  àß½¿ óó«ñ¿¼δ⌐
  434.      »«½∞º«óáΓѽѼ ß¿¼ó«½ «Γ½¿τáÑΓß∩ «Γ αáßß¼«ΓαÑ¡¡δσ óδΦÑ  ¿ ∩ó½∩ÑΓß∩
  435.      «ñ¡¿¼  ¿º  «Γ«íαáªáѼδσ  ß¿¼ó«½«ó ¬«ñá ASCII,  Γ« «¡ ¬«»¿απÑΓß∩ ó
  436.      íπΣÑα.  Åα¿ φΓ«¼ ó¡áτá½Ñ á¡á½¿º¿απÑΓß∩ ß¿Γπᵿ∩  ¡á  »ÑαÑ»«½¡Ñ¡¿Ñ
  437.      íπΣÑαá  ó  αѺπ½∞ΓáΓÑ  óó«ñá ß¿¼ó«½á (óó«ñ ß¿¼ó«½á ¼«ªÑΓ »α¿óÑßΓ¿
  438.      ó»«ß½ÑñßΓó¿¿ ¬ óδσ«ñπ ºá »αÑñÑ½δ  íπΣÑαá  Γ«τ¡«  Γᬠ ªÑ,  ¬á¬  ¿
  439.      óßΓáó¬á   ß¿¼ó«½á  ó  αѪ¿¼Ñ  éæÆÇéèÇ  ¼«ªÑΓ  »α¿óÑßΓ¿  ¬  »«ΓÑαÑ
  440.      »«ß½Ññ¡Ñú« ß¿¼ó«½á  αѺπ½∞ΓáΓá  «»Ñαᵿ¿).  çáΓѼ,  Ñß½¿  ó¬½ετÑ¡
  441.      αѪ¿¼  éæÆÇéèÇ,  ΓѬπΘá∩ ßΓ᫬á ßñó¿úáÑΓß∩ ¡á «ñ¿¡ ß¿¼ó«½ ó»αáó«,
  442.      »«ß½Ñ  τÑú«  ß¿¼ó«½  ºá»¿ßδóáÑΓß∩  ó  íπΣÑα.  àß½¿  ó  αѺπ½∞ΓáΓÑ
  443.      ñ«íáó½Ñ¡¿∩  ß¿¼ó«½á  ó  íπΣÑα  íδ½  ó¡ÑßÑ¡  »«ß½Ññ¡¿⌐ ß¿¼ó«½,  Γ«
  444.      π¬áºáΓѽ∞ lstptr ß««ΓóÑΓßΓóÑ¡¡« ¬«ααÑ¬Γ¿απÑΓß∩,  ¿ ΓѬπΘá∩ ßΓ᫬á
  445.      «Γ«íαáªáÑΓß∩   ¡á   φ¬αá¡Ñ  ñ¿ß»½Ñ∩.  äá½ÑÑ  Σπ¡¬µ¿∩  á¡á½¿º¿απÑΓ
  446.      ß«ßΓ«∩¡¿Ñ "¬«¡Ñµ ß½«óá".  àß½¿ »«ß½Ññ¡¿⌐ ß¿¼ó«½ ßΓ᫬¿ «Γ½¿τÑ¡ «Γ
  447.      »α«íѽá,   Γ«  «τÑαÑñ¡«Ñ  ß½«ó«  ßτ¿ΓáÑΓß∩  ºáóÑαΦÑ¡¡δ¼.  öπ¡¬µ¿∩
  448.      ß¬á¡¿απÑΓ  íπΣÑα  ß  ¡áτá½á  ñ«  ¬«¡µá  («Γ  ¼½áñΦÑú«  áñαÑßá  »«
  449.      ó«ºαáßΓá¡¿ε  áñαÑß«ó) ñ« ΓÑσ »«α,  »«¬á ¡Ñ ñ«ßΓ¿ú¡ÑΓ ¬«¡µá íπΣÑαá
  450.      ¿½¿ ¡Ñ  «í¡áαπª¿Γ  ñóπσ  ß½ÑñπεΘ¿σ  »«ñα∩ñ  »α«íѽ«ó.  çáΓѼ  «¡á
  451.      ßñó¿úáÑΓ  ΓѬßΓ  ¡á  «ñ¡π  »«º¿µ¿ε  ó»αáó«,  ¡áτ¿¡á∩ ß« ß½ÑñπεΘÑ⌐
  452.      ßΓ᫬¿ «Γ¡«ß¿Γѽ∞¡«  ßΓ᫬¿  ΓѬßΓá,  ó  ¬«Γ«α«⌐  «í¡áαπªÑ¡  Σá¬Γ
  453.      ºáóÑαΦÑ¡¿∩ ß½«óá. Æá¬¿¼ «íαẫ¼, φΓá »α«µÑñπαá ß«ºñáÑΓ »α«¼ÑªπΓ«¬
  454.      ¼Ñªñπ  ºáóÑαΦÑ¡¡δ¼  (ºá¬«¡τÑ¡¡δ¼)  ß½«ó«¼  ¿  ΓѬßΓ«¼   ß½ÑñπεΘÑ⌐
  455.      ßΓ᫬¿.  öπ¡¬µ¿∩  lastword óδºδóáÑΓß∩ ñ½∩ á¡á½¿ºá ¡«ó«ú« ß¿¼ó«½á,
  456.      Ñß½¿ «¡ ∩ó½∩ÑΓß∩ ß¿¼ó«½«¼,  óó«ñ¿¼δ¼ ó »«ß½Ññ¡ÑÑ ß½«ó«,  ¿½¿ Ñß½¿
  457.      Σá¬Γ  ºáóÑαΦÑ¡¿∩  «τÑαÑñ¡«ú«  ß½«óá  ∩ó¿½ß∩ αѺπ½∞ΓáΓ«¼ óßΓá󬿠ó
  458.      »αÑñδñπΘÑÑ ß½«ó« ßΓ᫬¿. ¥Γá »α«óÑα¬á «ßπΘÑßΓó½∩ÑΓß∩ »α«úαá¼¼«⌐ ó
  459.      ß½πτáÑ  ¿º¼Ñ¡Ñ¡¿∩  ¼ÑßΓ«»«½«ªÑ¡¿∩ ¬παß«αá »«ß½Ñ «í¡áαπªÑ¡¿∩ ¬«¡µá
  460.      ß½«óá.  ÉѺπ½∞ΓáΓ Γᬫ⌐ »α«óÑન ºá»«¼¿¡áÑΓß∩ ó »ÑαѼѡ¡«⌐  svlw.
  461.      è««αñ¿¡áΓá X »α¿¡¿¼áÑΓ º¡áτÑ¡¿Ñ ¬«¡µá ßΓ᫬¿ ΓѬßΓá. àß½¿ ß¿¼ó«½,
  462.      »αÑñΦÑßΓóπεΘ¿⌐ »«ß½Ññ¡Ñ¼π ß¿¼ó«½π,  «Γ½¿τÑ¡ «Γ  »α«íѽá,  Γ«  ñ½∩
  463.      »«º¿µ¿«¡¿α«óá¡¿∩  ¬παß«αá  ó ¡áτá½Ñ ß½ÑñπεΘÑú« ß½«óá (¿ ¿º¼Ñ¡Ñ¡¿∩
  464.      ¬««αñ¿¡áΓδ X)  ¿ß»«½∞ºπÑΓß∩  Σπ¡¬µ¿∩  back_word.  öπ¡¬µ¿∩  carrtn
  465.      óδºδóáÑΓß∩   ñ½∩   ½«ú¿τÑ߬«⌐  óßΓá󬿠 ¡«ó«⌐  ßΓ᫬¿  ó  ΓѬπΘÑ⌐
  466.      X-»«º¿µ¿¿.   (ìá   ßἫ¼   ñѽѠ  Σ¿º¿τÑ߬«⌐    óßΓá󬿠   ßΓ᫬¿
  467.      ¡Ñ»«ßαÑñßΓóÑ¡¡«  ó  íπΣÑα  ¡Ñ  »α«¿ßσ«ñ¿Γ ó ß¿½π Γ«ú«,  τΓ« íπΣÑα
  468.      »αÑñßΓáó½∩ÑΓ ß«í«⌐ «íδτ¡δ⌐ ñóπ¼Ñα¡δ⌐ ¼áß߿󠠻α∩¼«πú«½∞¡«⌐ Σ«α¼δ.
  469.  
  470.                              - 13 -
  471.      Å«φΓ«¼π  «ßπΘÑßΓó½∩ÑΓß∩  ½¿Φ∞  ßñó¿ú ΓѬßΓá ¿ «ßó«í«ªñÑ¡¿Ñ ó¡πΓα¿
  472.      ¡Ñú« »α«ßΓαá¡ßΓóá).  èπαß«α »«º¿µ¿«¡¿απÑΓß∩ ¡á ß¿¼ó«½Ñ, ß½ÑñπεΘ¿¼
  473.      ºá  ß¿¼ó«½«¼,  ¡Ñ»«ßαÑñßΓóÑ¡¡«  ñ«íáó½Ñ¡¡δ¼  ó íπΣÑα.     öπ¡¬µ¿∩
  474.      forward óδºδóáÑΓß∩,  ¡Ñ «íαáΘá∩ ó¡¿¼á¡¿∩ ñáªÑ ¡á  Σá¬Γ  «¬«¡τá¡¿∩
  475.      ß½«óá, ñ½∩ ¬«ααѬµ¿¿ ¬««αñ¿¡áΓδ X.
  476.  
  477.           öπ¡¬µ¿∩ erase_buffer   «Γ¬αδóáÑΓ   «¬¡«   ¿   ºá»αáΦ¿óáÑΓ  π
  478.      »«½∞º«óáΓѽ∩ αáºαÑΦÑ¡¿Ñ ¡á óδ»«½¡Ñ¡¿Ñ ¬«¼á¡ñδ «τ¿ßΓ¬¿ (erase). Å«
  479.      ß«ú½áΦÑ¡¿ε  »«½∞º«óáΓѽ∩  Σπ¡¬µ¿∩  «τ¿ΘáÑΓ íπΣÑα ¿ »ÑαÑ«»αÑñѽ∩ÑΓ
  480.      º¡áτÑ¡¿∩ óßÑσ »ÑαѼѡ¡δσ ¿ π¬áºáΓѽÑ⌐.
  481.  
  482.           öπ¡¬µ¿∩ lastword »α«ó«ñ¿Γ á¡á½¿º ¬««αñ¿¡áΓδ  X  αáß»«½«ªÑ¡¿∩
  483.      ¬παß«αá ó »«ß½Ññ¡Ñ¼ ß½«óÑ ßΓ᫬¿, «»αÑñѽ∩Ѽ«⌐ ¬««αñ¿¡áΓ«⌐ Y.
  484.  
  485.           öπ¡¬µ¿∩ last_char  »ÑαÑ«»αÑñѽ∩ÑΓ  ¬««αñ¿¡áΓπ Y αáß»«½«ªÑ¡¿∩
  486.      ¬παß«αá,  »α¿ßóá¿óá∩ Ñ⌐  º¡áτÑ¡¿Ñ ¡á Ññ¿¡¿µπ í«½∞ΦÑ,  τѼ »«º¿µ¿∩
  487.      αáß»«½«ªÑ¡¿∩  »«ß½Ññ¡Ñú« «Γ«íαáªáѼ«ú« ß¿¼ó«½á  ó ßΓ᫬Ñ.
  488.  
  489.           öπ¡¬µ¿∩ test_para    óδºδóáÑΓß∩   ó   ß½πτáÑ   ¡Ñ«íσ«ñ¿¼«ßΓ¿
  490.      »ÑαÑΣ«α¼áΓ¿α«óá¡¿∩  »áαáúαáΣá  ñ½∩   »α«óÑન   ó«º¼«ª¡«ßΓ¿   Ñú«
  491.      óδ»«½¡Ñ¡¿∩. ÅÑαѬ½ετáΓѽ∞   ¬½áó¿áΓπαδ   <Scroll   Lock>   ñ«½ªÑ¡
  492.      ¡áσ«ñ¿Γ∞ß∩ ó ó䬽ετÑ¡¡«¼ ß«ßΓ«∩¡¿¿  (off),  ¿  τ¿ß½«  ºáóÑαΦáεΘ¿σ
  493.      »α«íѽ«ó  ΓѬπΘÑ⌐  ßΓ᫬¿ ΓѬßΓá ñ«½ª¡« íδΓ∞ í«½∞ΦÑ ñ½¿¡δ »Ñαó«ú«
  494.      ß½«óá ß½ÑñπεΘÑ⌐ ßΓ᫬¿  ΓѬßΓá.  àß½¿  φΓ«  πß½«ó¿Ñ  óδ»«½¡∩ÑΓß∩,
  495.      Σπ¡¬µ¿∩  test_para  óδºδóáÑΓ Σπ¡¬µ¿ε paraform,  ¬«Γ«αá∩ »«ºó«½∩ÑΓ
  496.      »ÑαÑΣ«α¼áΓ¿α«óáΓ∞ »áαáúαáΣ.
  497.  
  498.           öπ¡¬µ¿∩ trailing_spaces  «ßπΘÑßΓó½∩ÑΓ  »«ñßτÑΓ   ºáóÑαΦáεΘ¿σ
  499.      »α«íѽ«ó ßΓ᫬¿ ΓѬßΓá.
  500.  
  501.           öπ¡¬µ¿∩ first_woldlen   »«ñßτ¿ΓδóáÑΓ   ñ½¿¡π  »Ñαó«ú«  ß½«óá
  502.      ß½ÑñπεΘÑ⌐ ßΓ᫬¿ ΓѬßΓá.
  503.  
  504.           öπ¡¬µ¿∩ paraform «ßπΘÑßΓó½∩ÑΓ  »ÑαÑΣ«α¼áΓ¿α«óá¡¿Ñ »áαáúαáΣá,
  505.      Ñß½¿,   ÑßΓÑßΓóÑ¡¡«,   »αÑñóáα¿Γѽ∞¡«  »áαáúαáΣ  íδ½  «Γñѽѡ  «Γ
  506.      «ßΓá½∞¡«ú«  ΓѬßΓá  ñóπ¼∩  »πßΓ묨  ßΓα«¬á¼¿.  öπ¡¬µ¿∩   paraform
  507.      óδºδóáÑΓß∩  ó αѺπ½∞ΓáΓÑ ¡áªáΓ¿∩ »«½∞º«óáΓѽѼ ¬½áó¿Φ¿ <F4> ¿½¿ ó
  508.  
  509.                              - 14 -
  510.      αѺπ½∞ΓáΓÑ    αáí«Γδ    Σπ¡¬µ¿¿     test_para,     «ßπΘÑßΓó½∩εΘÑ⌐
  511.      áóΓ«¼áΓ¿τÑ߬«Ñ  »α¿¡∩Γ¿Ñ αÑΦÑ¡¿∩ « ó«º¼«ª¡«ßΓ¿ »ÑαÑΣ«α¼áΓ¿α«óá¡¿∩
  512.      »áαáúαáΣá.  é« óßÑσ φΓ¿σ ß½πτá∩σ,  Ñß½¿ »αÑñóáα¿Γѽ∞¡« »ÑαѼѡ¡δÑ
  513.      blkbeg  ¿  blkend  ¡Ñ »«½πτ¿½¿ ß««ΓóÑΓßΓóπεΘ¿σ º¡áτÑ¡¿⌐ ñ½∩ í½«¬á
  514.      ΓѬßΓá,  ó¬½ετáεΘÑú«  ΓѬπΘ¿⌐  »áαáúαáΣ,  Σπ¡¬µ¿∩   πßΓá¡áó½¿óáÑΓ
  515.      ß««ΓóÑΓßΓóπεΘ¿Ñ  º¡áτÑ¡¿∩  φΓ¿σ  »ÑαѼѡ¡δσ.  ç¡áτÑ¡¿Ñ »ÑαѼѡ¡«⌐
  516.      blkbeg πßΓá¡áó½¿óáÑΓß∩  αáó¡δ¼  ΓѬπΘÑ⌐  ßΓα«¬Ñ  ΓѬßΓá.  öπ¡¬µ¿∩
  517.      »α«ß¼áΓα¿óáÑΓ ΓѬßΓ ó»ÑαÑñ,  ¡áτ¿¡á∩ ß ΓѬπΘÑ⌐ ßΓ᫬¿, ¡á »αÑñ¼ÑΓ
  518.      ¡á½¿τ¿∩ ñóπσ »πßΓδσ ßΓ᫬ (ßΓ᫬,  µÑ½¿¬«¼ ß«ßΓ«∩Θ¿σ ¿º »α«íѽ«ó)
  519.      ¿½¿  ñ«ßΓ¿ªÑ¡¿∩  ¬«¡µá  íπΣÑαá,  πßΓá¡áó½¿óá∩  »α¿  φΓ«¼ º¡áτÑ¡¿Ñ
  520.      »ÑαѼѡ¡«⌐ blkend.
  521.  
  522.           ÅÑαÑΣ«α¼áΓ¿α«óá¡¿Ñ »áαáúαáΣá     Σπ¡¬µ¿∩     ¡áτ¿¡áÑΓ     ß«
  523.      ß¬á¡¿α«óá¡¿∩  ΓѬßΓá  »«ß½Ñ  »αÑñΦÑßΓóπεΘ¿σ  »áαáúαáΣπ ½¿ñ¿απεΘ¿σ
  524.      »α«íѽ«ó.  àß½¿  «¡á  «í¡áαπª¿½á  ¡Ñ»πßΓ«Ñ  ß½«ó«,  Γ«  ßαáºπ  ªÑ
  525.      ¡áτ¿¡áÑΓß∩  »α«µÑßß ¬«»¿α«óá¡¿∩ φΓ«ú« ß½«óá ó ¡áτὫ íπΣÑαá. àß½¿
  526.      «í¡áαπªÑ¡ »α«íѽ,  Γ« Σπ¡¬µ¿∩ ½«ú¿τÑ߬¿ π¡¿τΓ«ªáÑΓ φëà»α«íѽ. é
  527.      »α«µÑßßÑ   ¬«»¿α«óá¡¿∩  ß½«óá  Σπ¡¬µ¿∩  á¡á½¿º¿απÑΓ  ß¿Γπáµ¿ε  ¡á
  528.      »αÑñ¼ÑΓ ºáóÑαΦÑ¡¿∩ ßΓ᫬¿ ΓѬßΓá,  ºáΓѼ  ó«ºóαáΘáÑΓß∩  ó  ¡áτὫ
  529.      ¬«»¿απѼ«ú« ß½«óá,  óßΓáó½∩ÑΓ »α«íѽδ ó íπΣÑα ¿ »α«ñ«½ªáÑΓ αáí«Γπ
  530.      ñá½ÑÑ.  é  ßó∩º¿  ß  φΓ¿¼  ó«º¼«ª¡«  ½«ú¿τÑ߬«Ñ  ßªáΓ¿Ñ  «í½áßΓ¿,
  531.      ºá¡¿¼áѼ«⌐  úαπ»»«⌐ ß½«ó,  »πΓѼ πñá½Ñ¡¿∩ ¿ºíδΓ«τ¡δσ »α«íѽ«ó.  é
  532.      αѺπ½∞ΓáΓÑ αáí«Γδ Σπ¡¬µ¿¿ ¼«úπΓ íδΓ∞ «íαẫóá¡δ  «ñ¡á  ¿½¿  í«½ÑÑ
  533.      »πßΓδσ   ßΓ᫬,   ñ½∩   πñá½Ñ¡¿∩   ¬«Γ«αδσ  ¿ß»«½∞ºπÑΓß∩  Σπ¡¬µ¿∩
  534.      delete_block.
  535.  
  536.           öπ¡¬µ¿∩ blank_line   ¿ß»«½∞ºπÑΓß∩   ó   Γ«¼   ß½πτáÑ,   Ñß½¿
  537.      ß»Ñµ¿Σ¿µ¿α«óá¡¡á∩  ßΓα«¬á µÑ½¿¬«¼ ß«ßΓ«¿Γ ¿º »α«íѽ«ó ñ½∩ á¡á½¿ºá
  538.      ßΓ᫬¿.
  539.  
  540.           öπ¡¬µ¿∩  delete_word π¡¿τΓ«ªáÑΓ ß½«ó« ó íπΣÑαÑ. àß½¿ ΓѬπΘÑÑ
  541.      º¡áτÑ¡¿Ñ  ¬««αñ¿¡áΓδ  ¼ÑßΓ«αáß»«½«ªÑ¡¿∩  ¬παß«αá X  ß««ΓóÑΓßΓóπÑΓ
  542.      »α«íѽπ, Γ« Σπ¡¬µ¿∩ π¡¿τΓ«ªáÑΓ »α«íѽ, »αÑñΦÑßΓóπεΘ¿⌐  ß½ÑñπεΘѼπ
  543.      ß½«óπ;  Γᬿ¼  «íαẫ¼,  Σπ¡¬µ¿∩  π¡¿τΓ«ªáÑΓ  ß½«ó«,  ¡áτ¿¡á∩   ß
  544.      »«º¿µ¿¿,     ß»Ñµ¿Σ¿µ¿α«óá¡¡«⌐     ¬«αñ¿¡áΓ«⌐    X,    ¡«   »«ß½Ñ
  545.      »α«íѽá,  ßΓ«∩ΘÑú« ºá »αÑñΦÑßΓóπεΘ¿¼ ß½«ó«¼, ñ« ¡áτá½á ß½ÑñπεΘÑú«
  546.      ß½«óá.
  547.  
  548.                              - 15 -
  549.  
  550.           öπ¡¬µ¿∩ delete_line π¡¿τΓ«ªáÑΓ  ßΓ᫬π  ΓѬßΓá ß »«ß½ÑñπεΘ¿¼
  551.      ßñó¿ú«¼  óßÑú« ΓѬßΓá.  é¡áτá½Ñ  Σπ¡¬µ¿∩ óδτ¿ß½∩ÑΓ  áñαÑß »Ñαó«ú«
  552.      ß¿¼ó«½á ΓѬπΘÑ⌐  ¿  ß½ÑñπεΘÑ⌐  ßΓ᫬¿.  çáΓѼ  Σπ¡¬µ¿∩ «»αÑñѽ∩ÑΓ
  553.      «íΩѼ ΓѬßΓá,  ¬«Γ«αδ⌐  ñ«½ªÑ¡  íδΓ∞  ßñó¿¡πΓ,  ¬á¬ αáßßΓ«∩¡¿Ñ «Γ
  554.      ß½ÑñπεΘÑ⌐ (ºá π¡¿τΓ«ªÑ¡¡«⌐)  ßΓ᫬¿ ñ« ¬«¡µá íπΣÑαá ΓѬßΓá. Å«ß½Ñ
  555.      »ÑαÑτ¿ß½Ñ¡¡δσ   ñÑ⌐ßΓó¿⌐   «ßπΘÑßΓó½∩ÑΓß∩   ßñ󿪬ᠠ ΓѬßΓá,   ¿
  556.      »ÑαѼѡ¡á∩ lstptr »α¿¡¿¼áÑΓ ¡«ó«Ñ º¡áτÑ¡¿Ñ.  üπΣÑα ºá»«½¡∩ÑΓß∩ ñ«
  557.      ¬«¡µá ¿ºíδΓ«τ¡δ¼¿ »α«íѽἿ.
  558.  
  559.           öπ¡¬µ¿∩ delete_block  αÑí«ΓáÑΓ  Γ«τ¡« ΓᬠªÑ,  ¬á¬ ¿ Σπ¡¬µ¿∩
  560.      delete_line,  «ñ¡á¬« «»Ñα¿απÑΓ ß í½«¬«¼ ΓѬßΓá,  ¬«Γ«αδ⌐ ß«ñÑনΓ
  561.      í«½ÑÑ «ñ¡«⌐ ßΓ᫬¿ ΓѬßΓá.
  562.  
  563.           öπ¡¬µ¿∩ mvblock ¿ß»«½∞ºπÑΓß∩  ñ½∩  »ÑαѼÑΘÑ¡¿∩ ¿ ¬«»¿α«óá¡¿∩
  564.      í½«¬á ΓѬßΓá.  é¡áτá½Ñ »α«¿ßσ«ñ¿Γ αẼÑΘÑ¡¿Ñ ó »á¼∩Γ¿  íπΣÑαá ñ½∩
  565.      σαá¡Ñ¡¿∩  ΓѬßΓá,  ¿  í½«¬  ΓѬßΓá »«¼ÑΘáÑΓß∩ ó φëà íπΣÑα. àß½¿
  566.      «»Ñαᵿ∩  »ÑαѼÑΘÑ¡¿∩  í½«¬á  ΓѬßΓá  »αÑñ»«τΓ¿Γѽ∞¡ÑÑ,  τѼ  Ñú«
  567.      ¬«»¿α«óá¡¿Ñ,  Γ«  óδºδóáÑΓß∩  Σπ¡¬µ¿∩  π¡¿τΓ«ªÑ¡¿∩  í½«¬á  ΓѬßΓá
  568.      delete_block()  ó  íπΣÑαÑ  αÑñá¬Γ«αá.  ÆÑ¬ßΓ  ó  íπΣÑαÑ αÑñá¬Γ«αá
  569.      ß¼ÑΘáÑΓß∩ ó»αáó«,  ¡áτ¿¡á∩ ß ΓѬπΘÑ⌐ ßΓ᫬¿, «ßó«í«ªñá∩ ¼ÑßΓ« ñ½∩
  570.      í½«¬á ΓѬßΓá,  ¬«Γ«αδ⌐ íπñÑΓ »ÑαѼÑΘÑ¡ ßεñá ¿½¿ ß¬«»¿α«óá¡ ¡á φΓ«
  571.      ¼ÑßΓ«.   ÆÑ¬ßΓ   ¿º   »α«¼ÑªπΓ«τ¡«ú«   íπΣÑαá   »ÑαѼÑΘáÑΓß∩   ¡á
  572.      «ßó«í«ªñÑ¡¡«Ñ  »«ß½Ñ ßñ󿪬¿  ΓѬßΓá  »α«ßΓαá¡ßΓó«. Åα«¼ÑªπΓ«τ¡δ⌐
  573.      íπΣÑα  πñá½∩ÑΓß∩ ¿º  »á¼∩Γ¿ ¿  ó«ßßΓá¡áó½¿óáÑΓß∩ ¿º«íαáªÑ¡¿Ñ «¬¡á
  574.      »«ß½Ñ «íαáΘÑ¡¿∩ ¬ Σπ¡¬µ¿¿ display_text.
  575.  
  576.           öπ¡¬µ¿¿ copy_block ¿ move_block óδºδóáεΓß∩ ñ½∩ ¬«»¿α«óá¡¿∩ ¿
  577.      »ÑαѼÑΘÑ¡¿∩  í½«¬á ΓѬßΓá ß««ΓóÑΓßΓóÑ¡¡«.  ¥Γ¿ Σπ¡¬µ¿¿ ¿ß»«½∞ºπεΓ
  578.      mvblock ñ½∩ óδ»«½¡Ñ¡¿∩ ó«º½«ªÑ¡¡δσ ¡á ¡¿σ «»Ñαᵿ⌐.
  579.  
  580.           öπ¡¬µ¿∩   findlast  «αúá¡¿ºπÑΓ  »«¿ß¬  »«ß½Ññ¡Ñú«  º¡áτáΘÑú«
  581.      ß¿¼ó«½á ó íπΣÑαÑ ¿ πßΓá¡áó½¿óáÑΓ  π¬áºáΓѽ∞  lstptr  ¡á ß½ÑñπεΘπε
  582.      ºá ¡¿¼ »«º¿µ¿ε.
  583.  
  584.           öπ¡¬µ¿∩  carrtn  «Γ߽Ѫ¿óáÑΓ  ß¿Γπáµ¿ε  ó«ºóαáΓá ¬áαÑΓ¬¿ »α¿
  585.      «¬«¡τá¡¿¿  ßΓ᫬¿  ΓѬßΓá  ó¡πΓα¿  íπΣÑαá   αÑñá¬Γ«αá   óß½Ññ  ºá
  586.  
  587.                              - 16 -
  588.      ñó¿ªÑ¡¿Ñ¼  ¬παß«αá  »«½∞º«óáΓѽ∩.  Ä¡á  óδτ¿ß½∩ÑΓ  áñαÑß  »Ñαó«ú«
  589.      ß¿¼ó«½á ß½ÑñπεΘÑ⌐ ßΓ᫬¿  ΓѬßΓá  »«  ΓѬπΘÑ⌐ »«º¿µ¿¿  ß¿¼ó«½á, ó
  590.      ¬«Γ«α«⌐  »«º¿µ¿«¡¿α«óá¡  ¬παß«α.   àß½¿  ó¬½ετÑ¡  αѪ¿¼  "éßΓáó¬á
  591.      ß¿¼ó«½á",  Σπ¡¬µ¿∩ ñ«½ª¡á «íÑß»Ñτ¿Γ∞ "αáºñó¿úá¡¿Ñ" ßΓ᫬¿ ΓѬßΓá,
  592.      ¬«Γ«α«Ñ  ñ«ßΓ¿úáÑΓß∩  ß¼ÑΘÑ¡¿Ñ¼  ΓѬßΓá,  ¡áσ«ñ∩ΘÑú«ß∩  ó  íπΣÑαÑ
  593.      αÑñá¬Γ«αá,  ó»αáó«,  ¡áτ¿¡á∩  ß  »«º¿µ¿¿,  ó  ¬«Γ«α«⌐  αáß»«½«ªÑ¡
  594.      ¬παß«α, ¬ ¬«¡µπ ΓѬπΘÑ⌐ ßΓ᫬¿ ¿ ºá»«½¡Ñ¡¿∩ «íαẫóáóΦ¿σß∩ »πßΓ«Γ
  595.      ¿ºíδΓ«τ¡δ¼¿ »α«íѽἿ.  ì«óá∩ ßΓα«¬á »«ñóÑαúáÑΓß∩ Γ«τ¡« Γᬫ¼π ªÑ
  596.      ßñó¿úπ ¿  ºá»«½¡Ñ¡¿ε  »α«íѽἿ  ñ«  ¼¿¡¿¼á½∞¡«⌐  ÑÑ  ñ½¿¡δ »«ß½Ñ
  597.      «»Ñαᵿ¿ óßΓáó¬¿.
  598.  
  599.          öπ¡¬µ¿∩  downward   ¿ß»«½∞ºπÑΓß∩  ñ½∩  «Γ߽Ѫ¿óá¡¿∩ ¿º¼Ñ¡Ñ¡¿∩
  600.      ¬««αñ¿¡áΓ  ß½ÑñπεΘÑ⌐  (󫺼«ª¡«,  ¡«ó«⌐)  ßΓ᫬¿  ΓѬßΓá  ¿, Ñß½¿
  601.      ó¬½ετÑ¡ αѪ¿¼ "éßΓáó¬á",  ñ½∩ »ÑαÑ«»αÑñѽѡ¿∩  º¡áτÑ¡¿∩ π¬áºáΓѽ∩
  602.      lstptr.
  603.  
  604.           ü«½∞Φ¿¡ßΓó« Σπ¡¬µ¿⌐,  ¬  ¬«Γ«αδ¼  «ßπΘÑßΓó½∩ÑΓß∩  «íαáΘÑ¡¿Ñ,
  605.      ¿ß»«½∞ºπεΓ  »α∩¼«  ¿½¿  ¬«ßóÑ¡¡«  ¬««αñ¿¡áΓδ »«º¿µ¿¿ αáß»«½«ªÑ¡¿∩
  606.      ¬παß«αá.   Æá¬¿¼¿   Σπ¡¬µ¿∩¼¿   ∩ó½∩εΓß∩   find_end,   backspace,
  607.      fore_word,  spaceup,  back_word,  spacedn,  forward,  downward  ¿
  608.      upward.
  609.  
  610.  
  611.                   Åα¿¼Ñα: êß»«½∞º«óá¡¿Ñ αÑñá¬Γ«αá
  612.      -----------------------------------------------------------------
  613.  
  614.           ï¿ßΓ¿¡ú¿ 9.2,  9.3 ¿ 9.4 ñѼ«¡ßΓα¿απεΓ »α¿¼Ñα  ¿ß»«½∞º«óá¡¿∩
  615.      «¬«¡¡«ú« αÑñá¬Γ«αá ΓѬßΓ«ó ó ñ¿á½«ú«ó«⌐ »α«úαá¼¼Ñ.
  616.  
  617.           ï¿ßΓ¿¡ú 9.2   ß«ñÑαª¿Γ   ΓѬßΓ   »α«úαá¼¼δ  note.c,  ¬«Γ«αá∩
  618.      ∩ó½∩ÑΓß∩ ú½áó¡«⌐  Σπ¡¬µ¿Ñ⌐,  «íαáΘáεΘÑ⌐ß∩  ¬  Σπ¡¬µ¿¿  notepad.c,
  619.      ¿ßσ«ñ¡δ⌐ ΓѬßΓ ¬«Γ«α«⌐ »α¿óÑñÑ¡ ó ½¿ßΓ¿¡úÑ 9.3. öπ¡¬µ¿∩ notepad.c
  620.      óδñѽѡá ó «Γñѽ∞¡δ⌐ Σá⌐½ ó ßó∩º¿ ß ΓѼ,  τΓ« «¡á ¿ß»«½∞ºπÑΓß∩  ó
  621.      »α¿¼Ñαáσ ¼Ñ¡ε (â½áóá 10) ¿ »α¿ «»¿ßá¡¿¿ αѺ¿ñÑ¡Γ¡δσ πΓ¿½¿Γ (â½áóá
  622.      12).
  623.  
  624.           ï¿ßΓ¿¡ú 9.4  ß«ñÑαª¿Γ  »α¿¼Ñα   make-Σá⌐½á   Æπαí«   æ¿,   ó
  625.  
  626.                              - 17 -
  627.      ß««ΓóÑΓßΓó¿¿  ß  ¬«Γ«αδ¼  ßΓα«¿Γß∩  »α¿¼Ñα ¿ß»«½∞º«óá¡¿∩ «¬«¡¡«ú«
  628.      αÑñá¬Γ«αá.
  629.  
  630.           öπ¡¬µ¿∩ notepad.c «íαáíáΓδóáÑΓ Σá⌐½, ¿¼∩ ¬«Γ«α«ú« «»αÑñѽѡ«
  631.      ó ¼áßß¿óÑ,  «»¿ßá¡¡«¼ ¬á¬ external.  é ñá¡¡«¼ »α¿¼ÑαÑ φëà¼áßß¿ó
  632.      «»αÑñѽѡ ó note.c,  ¿ ¿¼∩ Σá⌐½á π¬áºá¡« ¬á¬ note.pad. àß½¿ Γᬫ⌐
  633.      Σá⌐½  πªÑ  ßπΘÑßΓóπÑΓ  ¡á  ¼«¼Ñ¡Γ  ºá»πß¬á »α¿¼Ñαá,  Γ« notepad.c
  634.      ßτ¿ΓδóáÑΓ Ñú« ó íπΣÑα αÑñá¬Γ«αá.
  635.  
  636.           Notepad.c πßΓá¡áó½¿óáÑΓ  «¬¡«,  ºá¬½ετáÑΓ   Ñú«   ó   αἬπ,
  637.      »α¿ßóá¿óáÑΓ «¬¡π ¡áºóá¡¿Ñ,  ¡áº¡áτáÑΓ µóÑΓá ñ½∩ «¬¡á ¿ «Γ«íαáªáÑΓ
  638.      Ñú« ¡á φ¬αá¡Ñ ñ¿ß»½Ñ∩.  çáΓѼ notepad.c óδºδóáÑΓ Σπ¡¬µ¿ε «¬«¡¡«ú«
  639.      αÑñá¬Γ«αá  text_editor.  Å« ºáóÑαΦÑ¡¿¿ αáí«Γδ Σπ¡¬µ¿¿ text_editor
  640.      notepad.c π¡¿τΓ«ªáÑΓ «¬¡« ¿ ß«σαá¡∩ÑΓ ßΓ᫬¿ ΓѬßΓá ó  íπΣÑαÑ,  ó
  641.      ¬«Γ«αδ⌐  íδ½  ºá»¿ßá¡  »«ß½Ññ¡¿⌐  ¡πª¡δ⌐  ΓѬßΓ.  çáΓѼ notepad.c
  642.      ºá»¿ßδóáÑΓ ß«ñÑন¼«Ñ íπΣÑαá ó Σá⌐½ (note.pad).
  643.  
  644.           ï¿ßΓ¿¡ú 9.2. note.c
  645.  
  646.      /* ------ note.c ---------*/
  647.  
  648.      #include "twindow.h"
  649.  
  650.      void notepad(void);
  651.      char notefile [] = "note.pad";
  652.  
  653.      main()
  654.      {
  655.        load_help("tcprogs.hlp");
  656.        notepad();
  657.      }
  658.  
  659.  
  660.  
  661.  
  662.      ï¿ßΓ¿¡ú 9.3: notepad.c
  663.  
  664.  
  665.                              - 18 -
  666.  
  667.      /* ----------------- notepad.c -----------------*/
  668.  
  669.      #include <stdio.h>
  670.      #include <mem.h>
  671.      #include "twindow.h"
  672.  
  673.      #define LWID 60
  674.      #define WHT 10
  675.      #define PADHT 20
  676.  
  677.      char bf [PADHT] [LWID];
  678.      extern char notefile[];
  679.  
  680.      void notepad()
  681.      {
  682.              WINDOW *wnd;
  683.              FILE *fp, *fopen();
  684.              int i, ctr = 0;
  685.  
  686.              set_help("notepad ",0,0);
  687.              setmem(bf, sizeof bf, ' ');
  688.              if ((fp = fopen(notefile, "rt")) != NULL)  {
  689.                  while (fread(bf [ctr], LWID, 1, fp))
  690.                      ctr++;
  691.                  fclose(fp);
  692.              }
  693.              wnd = establish_window
  694.                      ((80-(LWID+2))/2, (25-(WHT+2))/2, WHT+2, LWID+2);
  695.              set_border(wnd, 3);
  696.              set_title(wnd, "  Note Pad  ");
  697.              set_colors(wnd, ALL, BLUE, AQUA, BRIGHT);
  698.              set_colors(wnd, ACCENT, WHITE, BLACK, DIM);
  699.              display_window(wnd);
  700.              text_editor(wnd, bf[0], (unsigned) LWID * PADHT);
  701.              delete_window(wnd);
  702.              ctr = PADHT;
  703.  
  704.                              - 19 -
  705.              while (--ctr) {
  706.                      for (i = 0; i < LWID; i++)
  707.                              if( bf [ctr] [i] != ' ')
  708.                                      break;
  709.                      if (i < LWID)
  710.                              break;
  711.              }
  712.              fp = fopen(notefile, "w");
  713.              for (i = 0; i < ctr+1; i++)
  714.                      fwrite(bf[i], LWID, 1, fp);
  715.              fclose(fp);
  716.      }
  717.  
  718.  
  719.  
  720.      ï¿ßΓ¿¡ú 9.4 note.prj
  721.  
  722.      note
  723.      notepad(twindow.h)
  724.      editor(twindow.h, keys.h)
  725.      thelp(twindow.h, keys.h)
  726.      twindow(twindow.h, keys.h)
  727.      ibmpc.obj
  728.  
  729.  
  730.  
  731.           ä½∩ óδ»«½¡Ñ¡¿∩ »α¿¼Ñαá óóÑñ¿ΓÑ ¬«¼á¡ñπ
  732.  
  733.      C > note
  734.  
  735.           Å«ß½Ñ Γαá¡ß½∩µ¿¿  ¿ αÑñá¬Γ¿α«óá¡¿∩ óáΦ¿σ »α«úαá¼¼ óδ πó¿ñ¿ΓÑ
  736.      ¡á φ¬αá¡Ñ ñ¿ß»½Ñ∩ ¬«»¿ε α¿ßπ¡¬á 9.2.  Åα¿ »Ñαó«¼ ºá»π߬Ѡ »α¿¼Ñαá
  737.      Σá⌐½ note.pad íπñÑΓ »πßΓδ¼.  Å«ß½Ñ Γ«ú«, ¬á¬ óδ óóÑñÑΓÑ ß »«¼«Θ∞ε
  738.      αÑñá¬Γ«αá ¬á¬πε-½¿í«  ¿¡Σ«α¼áµ¿ε,  »α¿  óδσ«ñÑ  ¿º  αÑñá¬Γ«αá  »«
  739.      ¬½áó¿ΦÑ <ESC>  ¿½¿  <F2>  ñá¡¡δÑ íπñπΓ ºá»«¼¡Ñ¡δ ó Σá⌐½Ñ note.pad
  740.      ñ½∩ ñá½∞¡Ñ⌐ΦÑú« ¿ß»«½∞º«óá¡¿∩. àßΓÑßΓóÑ¡¡«, τΓ« Ñß½¿ óδ ºá»«¼¡¿½¿
  741.      ΓѬßΓ,  Γ«  »α¿  ß½ÑñπεΘѼ  óδ»«½¡Ñ¡¿¿  »α«úαá¼¼δ  «¡  íπñÑΓ  óá¼
  742.  
  743.                              - 20 -
  744.      «Γ«íαáªáΓ∞ß∩ ó «¬¡Ñ αÑñá¬Γ«αá.
  745.  
  746.      ┌───────────────────────────────────────────────────────────────┐
  747.      │                                                               │
  748.      │                                                               │
  749.      │                                                               │
  750.      │                                                               │
  751.      │                                                               │
  752.      │         ┌────────────────  Note Pad ──────────────┐           │
  753.      │         │The window notepad can be used to record │           │
  754.      │         │random thoughts, appointments, reminders,│           │
  755.      │         │and daily activities._                   │           │
  756.      │         │                                         │           │
  757.      │         │                                         │           │
  758.      │         │                                         │           │
  759.      │         └─────────────────────────────────────────┘           │
  760.      │                                                               │
  761.      │                                                               │
  762.      │                                                               │
  763.      │                                                               │
  764.      │                                                               │
  765.      │                                                               │
  766.      └───────────────────────────────────────────────────────────────┘
  767.  
  768.                 É¿ß. 9.2 Åα¿¼Ñα ¿ß»«½∞º«óá¡¿∩ αÑñá¬Γ«αá.
  769.  
  770.  
  771.           Åα¿ óó«ñÑ  ΓѬßΓá  ¿  Ñú«  ñá½∞¡Ñ⌐ΦÑ⌐  «íαáí«Γ¬Ñ ¿ß»«½∞ºπ⌐ΓÑ
  772.      »ÑαÑτÑ¡∞ ¬«¼á¡ñ, «Γ«íαáªÑ¡¡δ⌐ ¡á α¿ßπ¡¬Ñ 9.1. ìáªá󠬽áó¿Φπ <F1>,
  773.      óδ ¼«ªÑΓÑ »«½πτ¿Γ∞ »ÑαÑτÑ¡∞ φΓ¿σ ¬«¼á¡ñ ¡á φ¬αá¡Ñ ßó«Ñú« ñ¿ß»½Ñ∩.
  774.  
  775.  
  776.  
  777.                              ÉѺε¼Ñ
  778.      -----------------------------------------------------------------
  779.  
  780.           êΓá¬, ¼δ αáßß¼«Γαѽ¿ ÑΘÑ  «ñ¡π  ñ«»«½¡¿Γѽ∞¡πε  ó«º¼«ª¡«ßΓ∞,
  781.  
  782.                              - 21 -
  783.      ¬«Γ«αá∩  ¼«ªÑΓ  íδΓ∞  ñ«íáó½Ñ¡á  ó  ß»¿ß«¬  í¿í½¿«ΓѬ¿  »«ññÑ᪬¿
  784.      «¬«¡¡«⌐ ΓÑσ¡«½«ú¿¿.  Æá¬¿¼ «íαẫ¼,  ¿ºπτÑ¡¡«Ñ óἿ ¡á  ¡áßΓ«∩Θ¿⌐
  785.      ¼«¼Ñ¡Γ   »α«úαá¼¼¡«Ñ   «íÑß»ÑτÑ¡¿Ñ   ¼«ªÑΓ   ¿ß»«½∞º«óáΓ∞ß∩   ¬á¬
  786.      Σπ¡¬µ¿«¡á½∞¡«Ñ  ßαÑñßΓó«  »«ññÑ᪬¿   ß»Ñµ¿á½¿º¿α«óá¡¡δσ   ºáñáτ,
  787.      «α¿Ñ¡Γ¿α«óá¡¡δσ  ¡á ¿ß»«½∞º«óá¡¿Ñ «¬«¡¡«⌐ ΓÑσ¡«½«ú¿¿. Åα«úαá¼¼¡«Ñ
  788.      «íÑß»ÑτÑ¡¿Ñ  »«ºó«½∩ÑΓ  «αúá¡¿º«óáΓ∞  ñ¿á½«ú«óπε  help-»«ññÑ᪬π,
  789.      Φáí½«¡δ  óó«ñá  ñá¡¡δσ,  á  ΓᬪѠ ¿ß»«½∞º«óáΓ∞ «¬«¡¡δ⌐ ΓѬßΓ«óδ⌐
  790.      αÑñá¬Γ«α.  æ½ÑñπεΘÑ⌐ ñ«»«½¡¿Γѽ∞¡«⌐ ó«º¼«ª¡«ßΓ∞ε,  ¬«Γ«αá∩  ¼«ªÑΓ
  791.      óἿ ß πß»Ñσ«¼ »α¿¼Ñ¡∩Γ∞ß∩,  ∩ó½∩ÑΓß∩ ¿Ñαáασ¿τÑ߬á∩ ß¿ßΓѼᠼѡε,
  792.      ¿ß»«½∞ºπѼδσ ó «¬¡Ñ.  ¥Γá ß¿ßΓѼᠼѡε ó¬½ετáÑΓ ó ßÑí∩ ß¬«½∞º∩ΘÑÑ
  793.      ¼Ñ¡ε-ßΓα«¬π ¿ ß¿ßΓÑ¼π »«∩ó½∩εΘ¿σß∩ ¼Ñ¡ε Γ¿»á "pop-down" (φΓ«Γ Γ¿»
  794.      ¼Ñ¡ε ÑΘÑ ¡áºδóáεΓ "óß»½δóáεΘ¿¼",  Γᬠ¬á¬ Ñú« »«∩ó½Ñ¡¿Ñ ¡á φ¬αá¡Ñ
  795.      «τÑ¡∞ ¡á»«¼¿¡áÑΓ φΣΣÑ¬Γ óß»½δΓ¿∩ ¿º "ú½πí¿¡δ" ñ¿ß»½Ñ∩) ñ½∩ óδí«αá
  796.      ¿ óδ»«½¡Ñ¡¿∩ αẽ¿τ¡δσ Σπ¡¬µ¿⌐ »α¿¬½áñ¡«⌐ »α«úαá¼¼«⌐,  ó  ¬«Γ«α«⌐
  797.      ß¿ßΓÑ¼á ¼Ñ¡ε ¿ß»«½∞ºπÑΓß∩.
  798.  
  799.