Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Next Previous Contents

4. Настройка Emacs

4.1 Символы с диактрическими знаками

Если вы хотите писать документы на французском или на каком-то другом языке западной Европы, то вам необходимо использование восьмибитных символов. Здесь рассказывается как настроить Emacs, чтобы он воспринимал такие символы.

Отображение 8-битных символов

Чтобы позволить Emacs отображать 8-битные символы, вам необходимо добавить следующие строки в ваш файл .emacs:


    (standard-display-european 1)

    (load-library "iso-syntax")

   

Если вы используете Emacs на терминале, который не имеет 8-битной поддержки, то вы можете использовать библиотеку iso-ascii ((load-library "iso-ascii")), которая заставляет Emacs отображать такие символы с лучшим приближением.

Набор 8-битных символов

Если ваша клавиатура позволяет вам вводить символы, с диактрическими знаками то нет никаких проблем. А вот если не позволяет, то есть способ решающий эту проблему:

Библиотека iso-acc

Библиотека iso-acc для Emacs позволит вам печатать 8-битные символы на 7-битной клавиатуре.

Для ее использования вставте в ваш файл .emacs такую строчку:


      (load-library "iso-acc")

      

Затем, после запуска Emacs и открытия файла, который вам надо отредактировать, наберите Meta-x iso-accents-mode.

Вы можете затем ввести é во французском слове café набрав ' затем e. В общем, вы будете набирать сначала знак ударения (??? accent), а затем символ на котором ставится диактричекий знак (в верхнем или нижнем регистре). Могут использоваться следующие диактрические знаки:

  • ' : Acute
  • ` : Grave
  • ^ : Circumflex
  • " : Dieresis
  • ~ : Тильда, cedilla, и другие частные случаи (cf iso-acc.el).
  • / :Для перечеркивания символа, и т.п.
  • Если вам нужен один из этих символов, а не символ с диактрическим знаком, наберите пробел вслед за набором специального символа Например, для набора l'éléphant, наберите l ' spc ' e l ' e ...

    Вы найдете список всех возможных комбинаций в файле iso-acc.el.

    Клавиша Meta

    Некоторые терминалы позволят вам набрать 8-битные символы с помощью клавиши Meta (или Alt). Например, нажатие Meta-i даст вам символ é.

    Но Emacs резервирует клавишу Meta для собственного использования, и я не знаю библиотеку, которая позволит вам использовать эту клавишу для символов с диактрическими знаками.

    Вот решение этой проблемы:

    
          (global-set-key "\ei" '(lambda () (interactive) (insert ?\351)))
    
                             _                                      ___
    
          
    
    

    Такая строка, если будет вставлена в ваш файл .emacs, позволит набирать вам é используя сочетание клавиш Meta-i. Вы можете переопределить таким образом те сочетания клавиш которые вам нужны, если вы замените i нужной клавишей и 351 нужным кодом (код был взят из набора символов ISO-8859-1).

    Предупреждение! Некоторые локальные режимы могут переопределять такие сочетания клавиш.

    Отображение 8-битных символов SGML

    В SGML, вы можете печатать символы с диактрическими знаками с помощью макросов. Например, клавиша é обозначена как é. В общем приложения, которым надо читать SGML могут читать 8-битные символы и нет необходимости использовать эти макросы. Но некоторые программы не могут делать это. Существует способ, который позволит избежать краха приложений.

    Библиотека iso-sgml позволит вам печатать символы с диактрическими знаками в Emacs, но при сохранении вашего файла на диск, он превратит 8-битные символы в их SGML-эквиваленты.

    Поэтому легко, спасибо библиотеке, набирать и читать ваши документы в Emacs, и вы можете быть уверены, что не 8-битные приложения будут понимать ваши документы.

    Для использования этой библиотеки вам просто надо добавить следующие строки в ваш файл .emacs:

    
          (setq sgml-mode-hook
    
          '(lambda () "Defaults for SGML mode."
    
           (load-library "iso-sgml")))
    
          
    
    

    4.2 Режим SGML

    При загрузке файла с расширением .sgml, Emacs автоматически запускает режим sgml. Если это не делается, вы можете задать это вручную набрав Meta-x sgml-mode, или автоматически, добавив следующие строки в ваш файл .emacs:

    
          (setq auto-mode-alist
    
          (append '(("\.sgml$"  . sgml-mode))
    
                    auto-mode-alist))
    
         
    
    

    Этот режим позволит вам например, выбрать как вставлять 8-битные символы. С помощью Meta-x sgml-name-8bit-mode (или пункта меню SGML/Toggle 8-bit insertion), вы можете выбрать как печатать 8-битные символы -- как есть, или в форме SGML form, например в форме &...;.

    Этот режим также позволит вам показывать или прятать таги SGML, с помощью Meta-x sgml-tags-invisible (или пункта меню SGML/Toggle Tag Visibility).

    4.3 Режим PSGML

    Режим PSGML позволит вам более удобно редактировать документы в SGML с помощью Emacs.

    Документация psgml-linuxdoc объясняет как установить этот режим и использовать его вместе с LinuxDoc.

    4.4 Разное

    Режим auto-fill

    В нормальном режиме, когда вы печатаете абзац и достигаете конца строки, вы должны сами использовать клавишу Return для перехода на следующую строку, или весь параграф будет состоять из одной строки. Когда вы используете клавишу Return для перехода к следующей строке, то вы получаете абзацы с неровными правыми границами.

    Если вы позволите некоторым строкам превысить разумную ширину, то вы не сможете просматривать их в некоторых редакторах.

    Режим auto-fill автоматизирует эту скучную задачу: когда вы перейдете далее определенной колонки, (по умолчанию 70-ая), то вы автоматически перейдете на следующую строку.

    Теперь расскажем как установить этот режим, и установить ширину текста равной 80 символам:

    
           (setq sgml-mode-hook
    
                 '(lambda () "Defaults for SGML mode."
    
                     (auto-fill-mode)       
    
                     (setq fill-column 80)))
    
           
    
    


    Next Previous Contents