   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   SmartEd Plug-In, version 2.0
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1. Что такое SmartEd Plug-In ?

   SmartEd (Smart Editor) -- это plug-in, который позволяет автоматизировать
   написание ключевого слова (keyword) или шаблона (template) в PLSQL редакторе.
   Автоматизация сделана по принципу unix'ового shell'a BASH,в котором, 
   написав несколько первых букв слова (или команды) и нажав TAB, можно 
   автоматически дополнить это слово его окончанием, или же получить список 
   подходящих слов. С plug-in'ом SmartEd аналогичная возможность появляется 
   и в PLSQL Developer. SmartEd поддерживает автоматическое дополнение ключевых 
   слов (keywords) и выполнение шаблонов (template) PLSQL Developer'а. SmartEd 
   имеет несложный setup dialog, который позволяет назначить горячие клавиши 
   для вышеописанных действий. Также SmartEd ведет несложную статистику, 
   которая включает в себя следующие параметры:
   	- общее количество дополненных SmartEd'ом ключевых слов;
   	- общее количество выполненных SmartEd'ом шаблонов;
   	- общее количество нажатий клавиш.

   1.1 Ключевые слова

     SmartEd поддерживает ключевые слова, перечисленные в файлах sql.kwf и 
     custom.kwf (находятся в директории PLSQL Developer) и ключевые слова, 
     создаваемые Plug-in'ом "Syntax Highlighting" (www.allroundautomations.nl).
     Поддержка ключевых слов plug-in'а "Syntax Highlighting" позволяет 
     автоматизировать написание имен объектов базы данных (таблиц, триггеров и 
     т.д.). После того, как пользователь определил новые ключевые слова (при
     помощи Plug-In'а Syntax Highlighting или вручную), SmartEd'у необходимо 
     перечитать список ключевых слов (используйте пункт меню 
     "Tools/SmartEd/Reread keywords"). После того как пользователь написал часть 
     ключевого слова и нажал комбинацию клавиш для его дополнения, SmartEd 
     действует по следующему алгоритму:
     	1. Просматривает список ключевых слов и отбирает те, которые начинаются
     	   со слова, на которой стоит курсор;
     	2. Если найденное ключевое слово только одно, SmartEd дописывает его 
	   окончание к слову, на котором стоит курсор;
     	3. Если найденных слов несколько и все они имеют общую подстроку,
     	   SmartEd дописывает это подстроку к слову, на котором стоит курсор;
     	4. Если найденных слов несколько и они не имеют общей подстроки, 
     	   SmartEd выводит диалоговое окно с двумя закладками: "Keywords" и
	   "Templates". На закладке "Keywords" списком представлены все 
	   найденные ключевые слова, а на закладке "Templates" в списке
	   перечислены шаблоны PLSQL Developer, содержащие в себе написанное 
	   пользователем слово под курсором (см. пункт 1.2 "Темплейты");
     После того, как пользователь выбрал ключевое слово и нажал кнопку ОК, 
     SmartEd дописывает его к слову в редакторе, на котором стоит курсор. Чтобы
     выбрать слово из списка пользователь также может нажать одну из следующих
     клавиш: "Space", ".", ",", ";", "(", ")", "[", "]", в этом случае к 
     окончанию слова допишется также и один из вышеперечисленных символов.
     
     Если пользователь выбрал не ключевое слово, а шаблон из соответствующего 
     списка на закладке "Templates", SmartEd выполняет выбранный шаблон (см. 
     пункт 1.2 "Шаблоны").

     Пример 1.
     Если написать слово "proc" и нажать соответствующую комбинацию клавиш,
     SmartEd дополнит его до ключевого слова "procedure".

     Пример 2.
     Если написать слово "pro" и нажать соответствующую комбинацию клавиш,
     SmartEd отобразит список из слов "procedure" и "profile", так как оба эти
     слова начинаются со строки "pro".

   1.2 Шаблоны
   
     SmartEd позволяет автоматизировать выполнение шаблонов PLSQL Developer'а.
     При запуске SmartEd читает имена и содержимое шаблонов PLSQL Developer'а,
     сканируя соответствующий каталог. По нажатию комбинации "горячих клавиш" 
     (Shift-Tab по умолчанию, задаются в setup'е) SmartEd ищет в тексте 
     шаблона вхождение слова под курсором в редакторе PLSQL Developer'а. При 
     поиске SmartEd не учитывает текст комментариев и текст в квадратных 
     скобках. Имена всех найденных шаблонов отображаются пользователю в виде 
     списка. После того, как пользователь выбирает необходимый шаблон для 
     исполнения и нажимает кнопку "Execute", PLSQL Developer выполняет 
     выбранный шаблон. 
     
     Пример 1.
     Если написать ключевое слово "constant" и нажать соответствующую 
     комбинацию клавиш, SmartEd отобразит список всех шаблонов PLSQL 
     Developer'а, в которых встречается слово "constant":
	Constants \ Binary integer.tpl
	Constants \ Varchar2.tpl
	.....

2. Installing Smart-Ed Plug-In.

   Для install'a SmartEd необходимо запустить setup.exe и выполнить все
   требуемые шаги.

3. Using SmartEd Plug-In.

   Напишите первые буквы ключевого слова или SQL-оператора (select, update,
   procedure etc) и нажмите комбинацию клавиш (определяется в SmartEd setup). 
   SmartEd либо дополнит слово его окончанием, либо предложит выбрать ключевое
   слово из списка. Аналогично можно выполнить шаблон. Напишите слово, которое
   содержится в шаблоне, который нужно выполнить и нажмите комбинацию клавиш. 
   SmartEd отобразит список всех шаблонов, в которых встречается данное слово.
   Во время работы SmartEd можно включить/выключить при помощи пунктов меню 
   Tools/SmartEd/Enabled или Tools/SmartEd/Disabled. Если списки ключевых слов 
   были изменены, то перечитать их можно при помощи пункта меню 
   Tools/SmartEd/Reread Keywords. Для изменения настроек SmartEd используйте
   setup (пункт меню Tools/SmartEd/Setup).

   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Developed by Oleg Tyurin
   email: oleg_tyurin@hotmail.com
   icq:   21617143
   Kharkov, Ukraine, 12 June 2001
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   ~~~~~~~~~~~~~~~~~~
   Новое в версии 2.0
   ~~~~~~~~~~~~~~~~~~
	- Добавлена поддержка шаблонов PLSQL Developer'а;
	- Добавлена поддержка статистики выполняемых SmartEd'ом действий;
	- Изменен внешний вид окна со списком ключевых слов и шаблонов (теперь
	  размеры окна можно менять и размеры окна запоминаются);
	- Добавлен Setup Dialog с возможностью задания горячих клавиш для
	  ключевых слов и шаблонов;
	- Добавлена поддержка панели конфигурирования Plug-In'ов (пункт меню
	  Tools/Configure Plug-Ins...)

   ~~~~~~~~~~~~~~~~~~
   Новое в версии 1.1
   ~~~~~~~~~~~~~~~~~~
	- исправлена ошибка, не позволяющая нескольким плагинам типа SmartEd
	  (например Shortcuts plug-in) работать вместе;
	- исправлены мелкие неточности в алгоритме;
