61 |
C-p, C-b, C-f и C-n. Каждая из этих команд передвигает курсор на одну |
C-p, C-b, C-f и C-n. Каждая из этих команд передвигает курсор на одну |
62 |
строку или колонку на экране в определенном направлении. Эта таблица |
строку или колонку на экране в определенном направлении. Эта таблица |
63 |
показывает четыре команды и четыре направления их движения: |
показывает четыре команды и четыре направления их движения: |
64 |
|
|
65 |
Предыдущая строка, C-p |
Предыдущая строка, C-p |
66 |
: |
: |
67 |
: |
: |
196 |
выполнения команды. |
выполнения команды. |
197 |
|
|
198 |
Например, C-u 8 C-f переместит курсор на восемь символов вперед. |
Например, C-u 8 C-f переместит курсор на восемь символов вперед. |
199 |
|
|
200 |
>> Попробуйте использовать C-n или C-p с цифровым аргументом, чтобы |
>> Попробуйте использовать C-n или C-p с цифровым аргументом, чтобы |
201 |
переместить курсор на строку рядом с этой командой. |
переместить курсор на строку рядом с этой командой. |
202 |
|
|
204 |
некоторые команды используют его другим способом. Некоторые команды (но ни |
некоторые команды используют его другим способом. Некоторые команды (но ни |
205 |
одна из них не была еще изучена здесь) используют его как флаг -- наличие |
одна из них не была еще изучена здесь) используют его как флаг -- наличие |
206 |
префиксного аргумента вне зависимости от его значения, изменяет поведение |
префиксного аргумента вне зависимости от его значения, изменяет поведение |
207 |
команды. |
команды. |
208 |
|
|
209 |
Другим видом исключений являются ключи C-v и M-v. При получении числового |
Другим видом исключений являются ключи C-v и M-v. При получении числового |
210 |
аргумента, они прокручивают экран вверх или вниз на указанное число строк, |
аргумента, они прокручивают экран вверх или вниз на указанное число строк, |
246 |
потому что вы не отпускаете кнопку CONTROL между нажатиями. |
потому что вы не отпускаете кнопку CONTROL между нажатиями. |
247 |
|
|
248 |
|
|
249 |
* ЕСЛИ EMACS ЗАВИС |
* ЕСЛИ EMACS ЗАВИС |
250 |
------------------ |
------------------ |
251 |
|
|
252 |
Если Emacs перестал реагировать на ваши команды, вы можете остановить это |
Если Emacs перестал реагировать на ваши команды, вы можете остановить это |
572 |
>> Создайте файл с именем "foo" набирая C-x C-f foo <Return>. |
>> Создайте файл с именем "foo" набирая C-x C-f foo <Return>. |
573 |
Вставьте какой-нибудь текст, отредактируйте его, и сохраните "foo" |
Вставьте какой-нибудь текст, отредактируйте его, и сохраните "foo" |
574 |
набрав C-x C-s. |
набрав C-x C-s. |
575 |
Наконец, наберите C-x C-f TUTORIAL.ru <Return> |
Наконец, наберите C-x C-f TUTORIAL.ru <Return> |
576 |
чтобы вернуться назад к учебнику. |
чтобы вернуться назад к учебнику. |
577 |
|
|
578 |
Emacs сохраняет текст каждого файла внутри в объекте называемый "буфер" |
Emacs сохраняет текст каждого файла внутри в объекте называемый "буфер" |
610 |
Ответьте на вопрос да набрав "y". |
Ответьте на вопрос да набрав "y". |
611 |
|
|
612 |
|
|
613 |
* РАСШИРЕННЫЙ НАБОР КОМАНД |
* РАСШИРЕННЫЙ НАБОР КОМАНД |
614 |
-------------------------- |
-------------------------- |
615 |
|
|
616 |
У Emacs очень много команд, они могут быть назначены на все control- и meta- |
У Emacs очень много команд, они могут быть назначены на все control- и meta- |
617 |
символы. Emacs обходит это, используя X-команду (eXtend). Есть две |
символы. Emacs обходит это, используя X-команду (eXtend). Есть две |
618 |
возможности: |
возможности: |
619 |
|
|
620 |
C-x Символ расширения (Character eXtend). |
C-x Символ расширения (Character eXtend). |
621 |
За ним следуем один символ. |
За ним следуем один символ. |
622 |
M-x Именованные расширенные команды (Named command eXtend). |
M-x Именованные расширенные команды (Named command eXtend). |
623 |
За ним следует имя команды. |
За ним следует имя команды. |
752 |
Не волнуйтесь, ни одна из выученных вами команд Emacs не изменилась. Но вы |
Не волнуйтесь, ни одна из выученных вами команд Emacs не изменилась. Но вы |
753 |
можите заметить, что M-f и M-b теперь различать апострофы как части слова. |
можите заметить, что M-f и M-b теперь различать апострофы как части слова. |
754 |
Ранее, в базовом режиме (Fundamental mode), M-f и M-b понимали апострофы |
Ранее, в базовом режиме (Fundamental mode), M-f и M-b понимали апострофы |
755 |
как разделители слов. |
как разделители слов. |
756 |
|
|
757 |
Основной режим обычно делает небольшие изменения, такие как: большинство |
Основной режим обычно делает небольшие изменения, такие как: большинство |
758 |
команд делают "ту же работу" в каждом из режимов, но их работа отличается |
команд делают "ту же работу" в каждом из режимов, но их работа отличается |
793 |
|
|
794 |
>> Введите C-x f с аргументом 20. (C-u 2 0 C-x f). Затем введите |
>> Введите C-x f с аргументом 20. (C-u 2 0 C-x f). Затем введите |
795 |
какой-нибудь текст, и посмотрите как Emacs заполняет строки по 20 |
какой-нибудь текст, и посмотрите как Emacs заполняет строки по 20 |
796 |
символов в каждой. Верните значение границы 70 назад, |
символов в каждой. Верните значение границы 70 назад, |
797 |
снова используя C-x f. |
снова используя C-x f. |
798 |
|
|
799 |
Если вы сделали изменения в середине параграфа, автозаполнение не перестроит |
Если вы сделали изменения в середине параграфа, автозаполнение не перестроит |
818 |
нужно пробовать прямо сейчас. |
нужно пробовать прямо сейчас. |
819 |
|
|
820 |
Когда вы нажмете C-s вы увидите строку "I-search", появившуюся в области эхо. |
Когда вы нажмете C-s вы увидите строку "I-search", появившуюся в области эхо. |
821 |
Вам сообщается что Emacs ждет ввода слова, которое вы хотите найти. |
Вам сообщается что Emacs ждет ввода слова, которое вы хотите найти. |
822 |
<Return> завершает поиск. |
<Return> завершает поиск. |
823 |
|
|
824 |
>> Теперь, нажмите C-s для начала поиска. Медленно, одну букву за один раз, |
>> Теперь, нажмите C-s для начала поиска. Медленно, одну букву за один раз, |
825 |
набирайте слово 'курсор', останавливаясь после каждой введенной буквы и |
набирайте слово 'курсор', останавливаясь после каждой введенной буквы и |
826 |
замечая что происходит с курсором. |
замечая что происходит с курсором. |
827 |
Сейчас вы нашли первое вхождение слова "курсор". |
Сейчас вы нашли первое вхождение слова "курсор". |
828 |
>> Нажмите C-s снова, чтобы найти следующее вхождение слова "курсор". |
>> Нажмите C-s снова, чтобы найти следующее вхождение слова "курсор". |
829 |
>> Теперь нажмите <Delete> четыре раза и проследите за перемещениями курсора. |
>> Теперь нажмите <Delete> четыре раза и проследите за перемещениями курсора. |
846 |
что последний символ в искомой строке удалился, и поиск вернулся к предыдущему |
что последний символ в искомой строке удалился, и поиск вернулся к предыдущему |
847 |
найденному месту. Например, предположим, что вы набрали "c", поиск перейдет к |
найденному месту. Например, предположим, что вы набрали "c", поиск перейдет к |
848 |
первому вхождению символа "c". Теперь если вы наберете "u", курсор перейдет к |
первому вхождению символа "c". Теперь если вы наберете "u", курсор перейдет к |
849 |
первому вхождению "cu". Нажатие <Delete> удалит символ "u" их строки поиска, и |
первому вхождению "cu". Нажатие <Delete> удалит символ "u" их строки поиска, и |
850 |
курсор вернется к первому вхождению "c". |
курсор вернется к первому вхождению "c". |
851 |
|
|
852 |
Если вы во время поиска введете control- или meta- символ (за некоторыми |
Если вы во время поиска введете control- или meta- символ (за некоторыми |
875 |
(если у вас нет настоящей кнопки META (Alt), нажмите ESC C-v.) |
(если у вас нет настоящей кнопки META (Alt), нажмите ESC C-v.) |
876 |
|
|
877 |
>> Нажмите C-x o ("o" от слова "other" - другое) для перемещения курсора в |
>> Нажмите C-x o ("o" от слова "other" - другое) для перемещения курсора в |
878 |
нижнее окно. |
нижнее окно. |
879 |
>> Используйте C-v и M-v в нижнем окне что прокручивать его. |
>> Используйте C-v и M-v в нижнем окне что прокручивать его. |
880 |
Продолжите чтение этих инструкций в верхнем окне. |
Продолжите чтение этих инструкций в верхнем окне. |
881 |
|
|
907 |
(Если вы нажали C-x 1 в нижнем окне, то вы избавились от верхнего. Понимайте |
(Если вы нажали C-x 1 в нижнем окне, то вы избавились от верхнего. Понимайте |
908 |
эту команду как "Оставить только одно окно, то в котором я сейчас нахожусь"). |
эту команду как "Оставить только одно окно, то в котором я сейчас нахожусь"). |
909 |
|
|
910 |
Вам не нужно отображать один и тот же буфер в обоих окнах. Если вы используете |
Вам не нужно отображать один и тот же буфер в обоих окнах. Если вы используете |
911 |
C-x C-f чтобы открыть файл в одном окне, другое останется без изменения. Вы |
C-x C-f чтобы открыть файл в одном окне, другое останется без изменения. Вы |
912 |
можете открывать файлы в каждом окне независимо. |
можете открывать файлы в каждом окне независимо. |
913 |
|
|
1004 |
|
|
1005 |
C-h a Hyper Apropos. Введите ключевое слово и Emacs покажет вам |
C-h a Hyper Apropos. Введите ключевое слово и Emacs покажет вам |
1006 |
список всех функций и переменных, имена которых содержат это |
список всех функций и переменных, имена которых содержат это |
1007 |
слово. Команды, которые могут быть вызваны через Meta-x, |
слово. Команды, которые могут быть вызваны через Meta-x, |
1008 |
будут отмечены звездочкой слева. |
будут отмечены звездочкой слева. |
1009 |
|
|
1010 |
>> Наберите C-h a file<Return>. |
>> Наберите C-h a file<Return>. |
1049 |
------- |
------- |
1050 |
|
|
1051 |
Этот учебник произошел из длинной серии учебников Emacs, начатой с однажды |
Этот учебник произошел из длинной серии учебников Emacs, начатой с однажды |
1052 |
написанного by Stuart Cracraft для оригинального Emacs. |
написанного by Stuart Cracraft для оригинального Emacs. |
1053 |
|
|
1054 |
Эта версия учебника, как и GNU Emacs, защищена правами копирования |
Эта версия учебника, как и GNU Emacs, защищена правами копирования |
1055 |
(copyrighted), и приходит с ограничениями распространения копий со |
(copyrighted), и приходит с ограничениями распространения копий со |
1075 |
программное обеспечение! |
программное обеспечение! |
1076 |
|
|
1077 |
// замечания, исправления ошибок с нетерпением жду по адресу ottalex@beep.ru |
// замечания, исправления ошибок с нетерпением жду по адресу ottalex@beep.ru |
1078 |
// Alex Ott. |
// Alex Ott. |
1079 |
// Большое спасибо Владимиру Бормотову, на базе перевода которого был сделан |
// Большое спасибо Владимиру Бормотову, на базе перевода которого был сделан |
1080 |
// этот перевод |
// этот перевод |