Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
wiki:joe [2010/07/30 21:31] |
wiki:joe [2021/01/06 01:36] (текущий) заменён тег Редакторы_текста на Текстовый_редактор |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ======Текстовый редактор joe ====== | + | ======Редактор joe ====== |
+ | <style right> | ||
//Автор: Алексей Федорчук | //Автор: Алексей Федорчук | ||
2001-2002 гг // | 2001-2002 гг // | ||
+ | </style> | ||
+ | |||
+ | {{:wiki:joe.png?350 }} | ||
+ | |||
Эта статья была написана достаточно давно, по данным для joe версий 2.8.X-2.9.X. До недавнего времени ее нельзя было считать устаревшей, так как проект joe практически не развивался. Однако последнее время в нем наметилась определенная активность, ознаменовавшаяся выходом версий серии 3.X. Которые привнесли, кроме нескольких мелких усовершенствований, два кардинальных новшества - подсветку синтаксиса и возможность работы с кодировкой UTF-8. В результате чего исходно хороший редактор стал еще лучше... | Эта статья была написана достаточно давно, по данным для joe версий 2.8.X-2.9.X. До недавнего времени ее нельзя было считать устаревшей, так как проект joe практически не развивался. Однако последнее время в нем наметилась определенная активность, ознаменовавшаяся выходом версий серии 3.X. Которые привнесли, кроме нескольких мелких усовершенствований, два кардинальных новшества - подсветку синтаксиса и возможность работы с кодировкой UTF-8. В результате чего исходно хороший редактор стал еще лучше... | ||
**Текстовый редактор joe** - типичный представитель консольных редакторов командного стиля, то есть ориентированных не на действие через меню, а на управление с помощью прямых директив. Название его можно перевести примерно как "редактор дядюшки Джо". Он создан Джозефом Алленом (Joseph H. Allen) при участии Ларри Форда (Larry Foard) и Гари Грея (Gary Gray). Это - открытая и бесплатная программа, доступная в исходниках на http://joe.sourceforge.net. Она реализована для всех, насколько я знаю, Unix- и Unix-подобных систем. А некоторые конкретные врсии были собраны для Windows всякого рода и даже для DOS. | **Текстовый редактор joe** - типичный представитель консольных редакторов командного стиля, то есть ориентированных не на действие через меню, а на управление с помощью прямых директив. Название его можно перевести примерно как "редактор дядюшки Джо". Он создан Джозефом Алленом (Joseph H. Allen) при участии Ларри Форда (Larry Foard) и Гари Грея (Gary Gray). Это - открытая и бесплатная программа, доступная в исходниках на http://joe.sourceforge.net. Она реализована для всех, насколько я знаю, Unix- и Unix-подобных систем. А некоторые конкретные врсии были собраны для Windows всякого рода и даже для DOS. | ||
Строка 39: | Строка 44: | ||
Полный список встроенных команд и привязанных к ним клавишных комбинаций дан в заключительном разделе этой статьи. | Полный список встроенных команд и привязанных к ним клавишных комбинаций дан в заключительном разделе этой статьи. | ||
- | Здесь же я приведу только основные примеры. | + | Здесь же я приведу только основные примеры. Комбинация |
- | * **Комбинация Control+B** (от backward) перемещает курсор на один знак влево, | + | * **Control+B** (от backward) перемещает курсор на один знак влево, |
* **Control+F** (от forward) - на один знак вправо, | * **Control+F** (от forward) - на один знак вправо, | ||
* **Control+Z** - переход к предыдущему слову, | * **Control+Z** - переход к предыдущему слову, | ||
Строка 55: | Строка 60: | ||
Для более сложных или редких действий используются трехклавишные комбинации. Это почти исключительно одновременно нажатые **Control+K**, после чего нажимается литерная клавиша. Так, операции с блоками осуществляются следующим образом: | Для более сложных или редких действий используются трехклавишные комбинации. Это почти исключительно одновременно нажатые **Control+K**, после чего нажимается литерная клавиша. Так, операции с блоками осуществляются следующим образом: | ||
- | **Control+K - B отмечает начало выделяемого блока, | + | * **Control+K** - B отмечает начало выделяемого блока, |
+ | * **Control+K** - K - его конец, | ||
+ | * **Control+K** - C - копирует, | ||
+ | * **Control+K** - M - перемещает выделенный блок в позицию курсора | ||
- | Control+K - K - его конец, | + | и так далее. Трехклавишные комбинации также не чувствительны к регистру. И работают также и при кириллической раскладке клавиатуры. В этом случае только необходимо нажимать вторую литерную клавишу вместе с той же клавишей Control: то есть запись текущего файла при включении кириллической раскладки потребует комбинации **Control+K - Control+D**, вызов нового файла - **Control+K - Control+E**, и так далее. |
- | + | ||
- | Control+K - C - копирует, | + | |
- | + | ||
- | Control+K - M - перемещает выделенный блок в позицию курсора, ** | + | |
- | + | ||
- | и так далее. Трехклавишные комбинации также не чувствительны к регистру. И работают также и при кириллической раскладке клавиатуры. В этом случае только необходимо нажимать вторую литерную клавишу вместе с той же клавишей Control: то есть запись текущего файла при включении кириллической раскладки потребует комбинации Control+K - Control+D, вызов нового файла - Control+K - Control+E, и так далее. | + | |
В joe нет отдельной функции для переименования файла. Но при любой записи текущего документа следует запрос на подтверждение имени файла, изменить которое при этом никто не запрещает. Следует только помнить, что дальнейшая работа происходит с исходным, а не | В joe нет отдельной функции для переименования файла. Но при любой записи текущего документа следует запрос на подтверждение имени файла, изменить которое при этом никто не запрещает. Следует только помнить, что дальнейшая работа происходит с исходным, а не | ||
переименованным файлом. | переименованным файлом. | ||
Кроме того, в joe доступны еще некоторые действия с файлами. Так, комбинация | Кроме того, в joe доступны еще некоторые действия с файлами. Так, комбинация | ||
- | **Control+K - R вставляет текст из существующего файла в позицию курсора, | + | * **Control+K - R** вставляет текст из существующего файла в позицию курсора, |
- | Control+K - W - записывает выделенный блок в виде нового файла (разумеется, запросив предварительно его имя). | + | * **Control+K - W** - записывает выделенный блок в виде нового файла (разумеется, запросив предварительно его имя). |
- | С помощью комбинации Control+K - E можно открыть для редактирования другой существующий файл. ** | + | * **Control+K - E** можно открыть для редактирования другой существующий файл. |
При этом следует предложение ввести путь и имя, причем и для того, и для другого работает режим дополнения клавишей табуляции, как в командных средах bash или tcsh. | При этом следует предложение ввести путь и имя, причем и для того, и для другого работает режим дополнения клавишей табуляции, как в командных средах bash или tcsh. | ||
Между одновременно открытыми файлами возможен обмен данными: или с помощью команд joe (то есть выделением блока в первом файле и его копированием или перемещением во второй), или с помощью мыши - стандартным выделением и вставкой щелчком средней ее клавиши. Второй способ, естественно, может применяться и для обмена между разными копиями joe, запущенными на отдельных виртуальных консолях. | Между одновременно открытыми файлами возможен обмен данными: или с помощью команд joe (то есть выделением блока в первом файле и его копированием или перемещением во второй), или с помощью мыши - стандартным выделением и вставкой щелчком средней ее клавиши. Второй способ, естественно, может применяться и для обмена между разными копиями joe, запущенными на отдельных виртуальных консолях. | ||
- | Одновременно открытые файлы могут быть представлены как в полноэкранном виде, так и каждый в своем окне. Для переключения между однооконным и многооконным режимами служит комбинация **Control+K - I**. Размер каждого из выведенных окон может быть увеличен или уменьшен **(Control+K - G и Control+K - T, соответственно), правда, только с шагом в одну экранную строку. Переключение между открытыми документами, вне зависимости от режима, осуществляется комбинациями Control+K - N (вперед или вниз) и Control+K - P (назад или вверх).** | + | Одновременно открытые файлы могут быть представлены как в полноэкранном виде, так и каждый в своем окне. Для переключения между однооконным и многооконным режимами служит комбинация **Control+K - I**. Размер каждого из выведенных окон может быть увеличен или уменьшен **(Control+K - G** и **Control+K - T**, соответственно), правда, только с шагом в одну экранную строку. Переключение между открытыми документами, вне зависимости от режима, осуществляется комбинациями **Control+K - N** (вперед или вниз) и **Control+K - P** (назад или вверх). |
К слову сказать, в joe возможен и независимый просмотр разных частей документа в отдельных окнах, для чего предназначена функция расщепления окна (Control+K - O). Ну и, конечно же, фрагменты из одной части файла могут быть легко перенесены в другую. | К слову сказать, в joe возможен и независимый просмотр разных частей документа в отдельных окнах, для чего предназначена функция расщепления окна (Control+K - O). Ну и, конечно же, фрагменты из одной части файла могут быть легко перенесены в другую. | ||
- | ====Универсальной комбинацией для окончания любой операции в joe является | + | Универсальной комбинацией для окончания любой операции в joe является |
- | Control+C. С ее помощью закрывается окно с текущим документом; если он был единственным в данном сеансе, одновременно происходит и выход из редактора. В обоих случаях следует запрос на сохранение изменений, буде таковые имелись. Отказаться от выхода или закрытия файла можно повторным нажатием той же комбинации Control+C. Она же используется для прекращения любой длящейся во времени (спеллинг, поиск) или требующей подтверждения операции. | + | **Control+C**. С ее помощью закрывается окно с текущим документом; если он был единственным в данном сеансе, одновременно происходит и выход из редактора. В обоих случаях следует запрос на сохранение изменений, буде таковые имелись. Отказаться от выхода или закрытия файла можно повторным нажатием той же комбинации Control+C. Она же используется для прекращения любой длящейся во времени (спеллинг, поиск) или требующей подтверждения операции. |
Кроме этого, непосредственно из joe, без выхода, можно обращаться к командам оболочки (shell), причем - различными способами. Так, комбинация **Control+K - Z** обеспечивает временный выход в оболочку, где можно вводить любые ее команды. А по завершении операций - вернуться в среду joe можно комбинацией fg. То есть в данном случае мы имеем дело с обычной приостановкой текущей задачи. | Кроме этого, непосредственно из joe, без выхода, можно обращаться к командам оболочки (shell), причем - различными способами. Так, комбинация **Control+K - Z** обеспечивает временный выход в оболочку, где можно вводить любые ее команды. А по завершении операций - вернуться в среду joe можно комбинацией fg. То есть в данном случае мы имеем дело с обычной приостановкой текущей задачи. | ||
Кроме этого, есть и более интересная возможность: открытие внутри joe, посредством комбинации **Control+K - '** (апостроф), самостоятельного окна с собственной командной оболочкой. Здесь можно выполнять любые команды с выводом их результатов на экран. После чего стандартной командой exit осуществляется выход из среды, а все результаты сохраняются обычным для joe образом в виде текстового файла: возможность неоценимая при создании и редактировании всякого рода скриптов. | Кроме этого, есть и более интересная возможность: открытие внутри joe, посредством комбинации **Control+K - '** (апостроф), самостоятельного окна с собственной командной оболочкой. Здесь можно выполнять любые команды с выводом их результатов на экран. После чего стандартной командой exit осуществляется выход из среды, а все результаты сохраняются обычным для joe образом в виде текстового файла: возможность неоценимая при создании и редактировании всякого рода скриптов. | ||
Строка 394: | Строка 396: | ||
* Meta+M ввод регулярного выражения; | * Meta+M ввод регулярного выражения; | ||
* Meta+H отправка сообщения (нечто вроде команды write, но на одном и том же терминале). | * Meta+H отправка сообщения (нечто вроде команды write, но на одном и том же терминале). | ||
+ | |||
+ | {{tag>howto Консоль Система Текстовый_редактор}} |