21.5. Поддержка со стороны редакторов

21.5. Поддержка со стороны редакторов

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

Программист, пишущий на Ruby, не будет разочарован имеющимся инструментарием. Многие возможности стандартно включены в редактор, другие приходится настраивать.

Два прекрасных редактора — это SciTe (на базе виджета редактирования Scintilla) и TextMate (имеется только для Mac OS X). Оба хорошо поддерживают Ruby, но больше я о них ничего сказать не могу.

Третий редактор — jEdit, написанный на Java редактор для программистов (www.jedit.com). Роб МакКиннон дополнил его модулем для Ruby (http://rubyjedit.org/). Но в этой книге я не могу задерживаться на его описании.

Среди программистов наиболее распространены редакторы vi (или vim) и emacs. Их мы кратко рассмотрим.

Исторически для пользователей vim было создано три разных пакета. К счастью, теперь они объединены в пакет vim-ruby. Это набор конфигурационных файлов, поддерживающий синтаксическую подсветку, автоматическое формирование отступов и завершение кода. Кроме того, он позволяет вызывать интерпретатор Ruby прямо из редактора.

Если вы работаете с vim версии 7 (как и положено), то этот пакет, вероятно, уже установлен. (Если же по какой-то неуважительной причине вы все еще используете версию 6.x, то самое время провести обновление.)

Но может оказаться, что пакет не активирован (возможно, в целях обратной совместимости). Тогда нужно его активировать, добавив в файл .vimrc следующие строки:

set nocompatible

syntax on

filetype on

filetype indent on

filetype plugin on

Есть также по меньшей мере две реализации сворачивания кода для Ruby. На мои взгляд, любая методика сворачивания, которая требует вставлять в код специальные комментарии или символы, не оптимальна. Хороший механизм сворачивания должен анализировать код и распознавать в нем классы, модули, методы и т.д. Такую реализацию для vim написал Маурицио Фернандес (http://eigenclass.nrg/hiki.rb?Usable+Ruby+folding+for+Vim).

В принципе есть много причин не любить редактор vim; одна из самых основательных — язык vimscript. Хорошая новость — теперь есть возможность программировать поведение vim на Ruby! И плохая… она неважно документирована. Если хотите узнать подробнее, рекомендую для начала набрать команду :help ruby в vim. Дополнительная информация имеется на странице http://wiki.rubygarden.org/Ruby/page/show/VimRubyInterface. Наконец, загляните на сайт http://vim/org; может быть, там появилось что-то новенькое.

Еще один популярнейший в мире редактор — emacs. Вообще-то называть его редактором не вполне правильно. Это, скорее, миниатюрная операционная система, которая заодно позволяет и редактировать тексты. Одно из главных достоинств emacs — поразительная расширяемость; пользователь программирует его поведение на диалекте языка Lisp (elisp). Язык elisp мощнее, чем vimscript, но читать написанные на нем программы не менее сложно (правда, по другой причине).

Я сам не работаю с emacs, но очень уважаю тех, кто им пользуется. Не могу почти ничего сказать о поддержке Ruby в emacs; отсылаю вас на wiki-страницу RubyGarden (http://wiki.rubygarden.org/Ruby/page/show/EmacsExtensions).

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Регулярный надзор со стороны высшего руководства

Из книги Модель зрелости процессов разработки программного обеспечения автора Паулк Марк

Регулярный надзор со стороны высшего руководства Регулярные проверки проводятся высшим руководством для получения своевременной информации о производственном процессе и его понимания на соответствующем уровне абстракции. Промежутки времени между проверками должны


Регулярный и событийный надзор со стороны руководства проекта

Из книги Программирование на языке Пролог автора Клоксин У.

Регулярный и событийный надзор со стороны руководства проекта Используемая в этих ключевых практиках фраза «регулярный и событийный» призвана подчеркнуть тот факт, что на различных стадиях проекта и в зависимости от его характеристик необходимы различные виды


ПРЕДИСЛОВИЕ РЕДАКТОРОВ ПЕРЕВОДА

Из книги Linux для пользователя автора Костромин Виктор Алексеевич

ПРЕДИСЛОВИЕ РЕДАКТОРОВ ПЕРЕВОДА Язык программирования Пролог появился в 1970 г. одновременно с такими сейчас широко распространенными языками, как Паскаль и Си. Его ориентация – «нетрадиционные» применения вычислительной техники: понимание естественного языка, базы


12.4. О трех типах текстовых редакторов

Из книги Компьютер и здоровье автора Баловсяк Надежда Васильевна

12.4. О трех типах текстовых редакторов Редактирование текстовых файлов (с текстами на естественном языке, либо с текстами программ) - одна из наиболее часто выполняемых работ на любом компьютере и в любой операционной системе. Может быть, поэтому для Linux разработано уже


Информационная зависимость и перенасыщенность: две стороны медали

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

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


15.2.3. "Антирелигиозный" выбор: использование обоих редакторов

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

15.2.3. "Антирелигиозный" выбор: использование обоих редакторов Многие люди, обычно использующие оба редактора vi и Emacs, склонны применять их для различных задач и находят весьма ценными преимущества использования обоих.Вообще, vi наилучшим образом подходит для решения


15.2.3. "Антирелигиозный" выбор: использование обоих редакторов

Из книги Основы объектно-ориентированного программирования автора Мейер Бертран

15.2.3. "Антирелигиозный" выбор: использование обоих редакторов Многие люди, обычно использующие оба редактора vi и Emacs, склонны применять их для различных задач и находят весьма ценными преимущества использования обоих.Вообще, vi наилучшим образом подходит для решения


По обе стороны океана

Из книги Инфраструктуры открытых ключей автора Полянская Ольга Юрьевна

По обе стороны океана Следующий пример позволит нам промоделировать ситуацию дублируемого наследования и изучить возникающие проблемы. Пусть класс DRIVER имеет атрибуты:age: INTEGERaddress: STRINGviolation_count: INTEGER -- Число записанных нарушенийи методы:pass_birthday is do age := age + 1 endpay_fee is-- Оплата


Интеграция с данными третьей стороны

Из книги Добавьте в корзину. Ключевые принципы повышения конверсии веб-сайтов автора Айзенберг Джеффри

Интеграция с данными третьей стороны Основой модели развертывания качественной PKI является сильная аутентификация, которая, в свою очередь, зависит от интеграции с надежным источником данных. Системы PKI обычно обеспечивают доступ к ODBC- и LDAP-совместимым базам данных и


Все зависит от того, с какой стороны подойти

Из книги КОМПАС-3D для студентов и школьников. Черчение, информатика, геометрия автора Большаков Владимир

Все зависит от того, с какой стороны подойти Если вы попросите веб-аналитика дать определение сценарию, он наверняка вспомнит о «воронке продаж» и скажет, что сценарий – это последовательность шагов, которые делает клиент в процессе покупки. На каждом этапе покупатель


Глава 1 Принципы использования двумерных редакторов

Из книги QNX/UNIX [Анатомия параллелизма] автора Цилюрик Олег Иванович

Глава 1 Принципы использования двумерных редакторов С помощью двумерных редакторов CAD-систем (Computer Aided Design — конструирование, поддержанное компьютером) создается большинство графических конструкторских документов. Учитывая, что базовые двумерные средства черчения


Две стороны единого механизма

Из книги Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform автора Кёртен Роб

Две стороны единого механизма При рассмотрении базовой для QNX (собственно, для всех микроядерных ОС) техники обмена сообщениями в сравнении с технологией написания менеджеров ресурсов не покидает ощущение поразительной схожести происходящих в обоих случаях процессов.


Взгляд со стороны клиента

Из книги IT-безопасность: стоит ли рисковать корпорацией? автора Маккарти Линда

Взгляд со стороны клиента Мы уже намекнули, что ожидает клиент. Он ожидает интерфейс на основе файловых дескрипторов с применением стандартных функций POSIX.В действительности «под колпаком» происходит еще кое-что.Например, как в действительности клиент соединяется с


Взгляд со стороны администратора ресурсов

Из книги Главный рубильник. Расцвет и гибель информационных империй от радио до интернета автора Ву Тим

Взгляд со стороны администратора ресурсов Давайте теперь посмотрим на вещи с позиции администратора ресурса. Перво-наперво администратор ресурса должен сообщить администратору процессов, что он берет на себя ответственность за некоторую часть пространства имен путей


Глава 3 Поддержка со стороны руководства

Из книги автора

Глава 3 Поддержка со стороны руководства Руководители высшего звена, в том числе и директор по информационным технологиям, больше не могут, откинувшись на спинку кресла, думать, что проблемы компьютерной безопасности в полной мере решаются кем-то другим в их компаниях.


Две стороны

Из книги автора

Две стороны К концу 1990-х гг. Time Warner превратилась в еще более крупного титана, чем во времена Стивена Росса. Теперь эта империя охватывала почти все возможные каналы информации. И все же по мере приближения к рубежу веков преемник Росса Левин все больше приходил к мнению,