True Template

Здесь можно обсудить ваш любимый плагин.
Kildor
Posts: 1515
Joined: Wed 16 Mar, 2005 06:26
Location: Новосибирск
Contact:

Post by Kildor » Tue 04 Apr, 2006 18:09

Latest post of the previous page:

4ekucT
http://kildor.gorodok.net/templates.7z
поправил ошибки, рассортировал шаблоны…
PS: 2All: кому интересно, по этой ссылке лежат мои шаблоны для php, html, xml, js, css, trueTemplate разной степени полноты и настроенности.
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.

xmpp:kildor@jabber.ru

User avatar
4ekucT
Posts: 507
Joined: Tue 05 Apr, 2005 23:44
Location: Беларусь, Минск

Post by 4ekucT » Tue 04 Apr, 2006 20:14

Так тестовая версия пока без новых шаблонов, зато с блочными комментариями (спецом для Тима протестить).
Новые шаблоны надо привести в порядок так что чутка подождите.
Attachments
TrueTemplate.zip
TT 2.0.5 testing
(231.2 KiB) Downloaded 376 times

Kildor
Posts: 1515
Joined: Wed 16 Mar, 2005 06:26
Location: Новосибирск
Contact:

Post by Kildor » Wed 05 Apr, 2006 05:15

вопрос-пожелание
хотелось бы иметь возможность разрывать To на несколько строк (как минимум в меню), типа такого:

Code: Select all

    <Expand Name="Doctypes  »" Pattern="__dtype" To="\~dxst=XHTML 1.0 Strict
    	\~dxtransit=XHTML 1.0 Transitional"/>
однако этот шаблон раскрывается в меню показывая \r\n, что выглядит не сильно красиво.
хотелось бы либо трансформации \r\n в \20 (внутри \~), что не должно привести к порче чего-либо,
либо возможность заэкранировать перевод строк, тогда бы шаблон выглядел как

Code: Select all

    <Expand Name="Doctypes  »" Pattern="__dtype" To="\~dxst=XHTML 1.0 Strict\
    	\~dxtransit=XHTML 1.0 Transitional"/>
PS: экранирование перевода строки было бы вообще очень полезной фичей. ;)
PPS: xml вроде разрешает переносы строк в значениях атрибутов.

UPD: ещё хочется обработки цифровых entities, вида &#\d+;, разворота их в символ с соответствующим десятичным кодом.
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.

xmpp:kildor@jabber.ru

Kildor
Posts: 1515
Joined: Wed 16 Mar, 2005 06:26
Location: Новосибирск
Contact:

Post by Kildor » Wed 12 Apr, 2006 05:13

Ещё одно пожелание
Сделать меню динамическим:
Скрывать пункт меню «Комментарии», если в для данного типа файлов не определено BlockComment
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.

xmpp:kildor@jabber.ru

User avatar
4ekucT
Posts: 507
Joined: Tue 05 Apr, 2005 23:44
Location: Беларусь, Минск

Post by 4ekucT » Wed 12 Apr, 2006 08:02

Вот я против динамического меню. Потому как если повесить коментарии на макрос то будет лажа.

Kildor
Posts: 1515
Joined: Wed 16 Mar, 2005 06:26
Location: Новосибирск
Contact:

Post by Kildor » Wed 12 Apr, 2006 08:24

4ekucT
хм ;-)
А я наоборот, хочу повесить комментарий на макрос, и поэтому хочу динамическое меню ;)
ЗЫЖ

Code: Select all

F11 t $if(checkhotkey("C")) C $else Esc $end
PPS:
если выделить вертикальный блок, и попытаться его закомментировать, получается лажа;) (знаки комментария вставляются не в начало строки, а в начало блока в первой строке и в начало блока+1 символ на всех последующих строках
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.

xmpp:kildor@jabber.ru

User avatar
DJ-Andrey-sXe
Posts: 50
Joined: Wed 21 Sep, 2005 10:33
Location: Тольятти
Contact:

Post by DJ-Andrey-sXe » Fri 14 Apr, 2006 16:00

Kildor wrote: А я наоборот, хочу повесить комментарий на макрос, и поэтому хочу динамическое меню ;)
PPS:
если выделить вертикальный блок, и попытаться его закомментировать, получается лажа;) (знаки комментария вставляются не в начало строки, а в начало блока в первой строке и в начало блока+1 символ на всех последующих строках
а плагин "remarques" пробовал?
меня лично устраивает: есть и комментирование и раскомментирование блоков. намакросить можно.
в конфиге можно добавить любые комменты для любых расширений

User avatar
Tim Sobolev
Posts: 703
Joined: Fri 01 Apr, 2005 14:46
Location: Украина
Has thanked: 1 time

Post by Tim Sobolev » Fri 14 Apr, 2006 21:05

Kildor wrote:4ekucT
если выделить вертикальный блок, и попытаться его закомментировать, получается лажа;) (знаки комментария вставляются не в начало строки, а в начало блока в первой строке и в начало блока+1 символ на всех последующих строках
Так и задумывалось изначально -- в строчном блоке комменты сначала, в блочном -- в начале блока

Volodya
Posts: 239
Joined: Thu 31 Mar, 2005 19:41
Has thanked: 2 times

Post by Volodya » Wed 10 May, 2006 07:41

Вставляем в шаблон для нового файла @@DATE@@. Получаем дату в формате ДД.ММ. ГГГГ, что не совпадает с настройками Windows. Я понимаю, что можно задать формат в явном виде. Но то, что не совпадает вставленное значение и значение по умолчанию - это баг или фича или я что-то делаю не так?

User avatar
Tim Sobolev
Posts: 703
Joined: Fri 01 Apr, 2005 14:46
Location: Украина
Has thanked: 1 time

Post by Tim Sobolev » Thu 11 May, 2006 12:22

Volodya

по дефолту задано:

const char fmtTime[]="HH:mm:ss";
const char fmtDate[]="dd.MM.yyyy";
const char fmtDateTime[]="HH:mm:ss dd.MM.yyyy";

Volodya
Posts: 239
Joined: Thu 31 Mar, 2005 19:41
Has thanked: 2 times

Post by Volodya » Thu 11 May, 2006 15:36

=Tim Sobolev=
Так и я про это. нельзя ли по дефолту брать Windows-овские настройки

User avatar
Tim Sobolev
Posts: 703
Joined: Fri 01 Apr, 2005 14:46
Location: Украина
Has thanked: 1 time

Post by Tim Sobolev » Thu 11 May, 2006 19:02

Volodya

К 4ekucTy -- у меня щас полных последних сырцов нету, мержил он ...

VoDmAl
Posts: 5
Joined: Wed 16 Mar, 2005 07:12
Contact:

Post by VoDmAl » Fri 19 May, 2006 23:47

Предлагаю немного реструктуризировать конфигурационные файлы, что бы сделать более безболезненной процедуру настройки шаблонов под себя и совмещение с обновленными файлами из новых версий. (Всем известно, насколько тяжела процедура обновления конифгов из новой версии после того, как они были тщательно переработаны под свои нужды. Обычно это заканчиваетя тем, что из новой версии просто копируется dll-файл).

Что я сделал:

1. Вынес определения "Разделителей", "Парные шаблоны" в файл true-global.xml тем самым избежал дублирование этих двух блоков в нескольких файлах (я насчитал 3 штуки).

2. В определении "Разделителей" добавил "Символические имена" commentaryStart, commentaryEnd. Благодаря чему, указав в файлах true-source-c#.xml, true-source-c++.xml и т.д. языккозависимые символы для открытия комментария и его закрытия, получил единый набор "Разделителей" в который подставляется правильный символ для комментариев!

3. Файловые шаблоны переместил в отдельный каталог и рассортировал их по типу, что бы они не путались под ногами и было понятно что к чему.

Предложенные изменения не решают, конечно, озвученной проблемы, но чуточку приближают нас к этому.

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

Ну что скажете насчет такой реструктуризации? :oops:

PS: В архив включены описания для asp, php. Пока это почти копия из старой версии (создавал для TrueTemplate 1.28), но я веду работы по приведению их к новому формату (Submenu и вообще концептуально). Когда завершу, выложу обязательно. :roll:
Attachments
templates.by.VoDmAl.zip
Архив с моими шаблонами
(111.97 KiB) Downloaded 411 times

User avatar
DJ-Andrey-sXe
Posts: 50
Joined: Wed 21 Sep, 2005 10:33
Location: Тольятти
Contact:

Post by DJ-Andrey-sXe » Thu 21 Sep, 2006 10:30

4ekucT wrote:Шаблон perl забрал, появиться в ближайшее время в релизе.
(давно заметил, да руки не доходили написать) если написать, скажем, param, нажать пробел, оно допишется до param(''). а если написать тот же param вот тут (там где подчёркивание): if ( _ ), то не дописывает. И так же с другими вещями. Корочё: если есть что-то кроме табов или пробелов, то не дописывает. Обидно, что некоторые фичи часто не используются из-за ошибки. Пофиксить бы. Я попытаюсь насколько сумею, но если кто-то пофиксит быстрее - будет прекрасно :) адрес шаблона на пред. странице

User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 1 time

Post by Centaur » Sun 31 Dec, 2006 12:19

Вот ещё одна штука.

Баг: при обработке @@EXEC:…@@ некорректно обрабатываются конвейеры.

Воспроизведение:

Code: Select all

//: pipe-test.txt
@@EXEC:cmd /c dir|sort@@
//# pipe-test.txt

//: true-text-txt.xml
<Expand Name="Pipe test" At="&AnyWhere;" To="\i'$\templates\text\pipe-test.txt'"/>
//# true-text-txt.xml
  • Создать новый файл (Shift+F4) test.txt
  • Применить шаблон (F11 "True Template" "List of templates" "Pipe test")
Ожидается:
  • В файл, открытый в редакторе, добавляется отсортированный листинг текущего каталога
Наблюдается:
  • Открывается новая консоль 1.
  • В новую консоль 1 выводится листинг каталога.
  • Новая консоль 1 закрывается.
  • Открывается новая консоль 2.
  • Текст, введённый в новую консоль 2, сортируется и выводится в той же консоли.
  • Новая консоль 2 закрывается.
  • В файл, открытый в редакторе, ничего не добавляется.
Обход:
Следующий патч вроде бы решает эту конкретную проблему. Кто-нибудь может объяснить, чем грозит отсутствие флага DETACHED_PROCESS?

Code: Select all

--- D:\Program Files\Far\Plugins\Editor\TrueTemplate\source\true-tpl.cpp	Thu Dec 15 19:38:16 2005
+++ true-tpl.cpp	Sun Dec 31 16:52:48 2006
@@ -2280,7 +2280,7 @@
  si.hStdOutput=GetStdHandle(STD_OUTPUT_HANDLE);
  si.hStdInput=GetStdHandle(STD_INPUT_HANDLE);
  si.hStdError=GetStdHandle(STD_ERROR_HANDLE);
- if (CreateProcess(NULL,pf,NULL,NULL,TRUE,DETACHED_PROCESS|NORMAL_PRIORITY_CLASS,NULL,NULL,&si,&pi)==TRUE)
+ if (CreateProcess(NULL,pf,NULL,NULL,TRUE,/*DETACHED_PROCESS|*/NORMAL_PRIORITY_CLASS,NULL,NULL,&si,&pi)==TRUE)
  {
   RunFlag=true;
   WaitForSingleObject(pi.hProcess,INFINITE);

Alexey Lubkin
Posts: 106
Joined: Sun 23 Oct, 2005 10:02
Location: Томск
Has thanked: 1 time
Contact:

Post by Alexey Lubkin » Mon 28 May, 2007 15:34

Странное дело с отступами.

.C
Хочу чтобы отступ представлял из себя 2 пробела.
Возможно ли такое?
Ничего кроме неотрицательного числа tab'ов сделать не получается. :(

Вот такая штука:

Code: Select all

  <Bracket Pattern="\{"               Match="\}(;?)|(\s*while\s*\(.*\);)" Shift="1" Relative="{"   ImmOpen="{" ImmClose="}"/>
понимает Shift только в tab'ах. Можно ли её заставить работать с пробелами?

Upd: Видимо единственным решением будет в настройках редактора:
1. Установить "Преобразовывать табуляцию" в "Преобразовывать новые символы табуляции в пробелы"
2. "Размер табуляции" установить =2.

maxdrfl
Posts: 484
Joined: Mon 04 Apr, 2005 14:36
Location: Иркутск

Post by maxdrfl » Wed 05 Sep, 2007 08:44

предложение (прошу прощение если повторю кого-нибудь):
при навигации, предлагать создавать файл, если он не существует.
- Возможно + диалог запроса расширения.

Post Reply

Return to “Обсуждение плагинов”