Page 7 of 19

Posted: Tue 11 Oct, 2005 10:05
by Kildor

Latest post of the previous page:

ключевое слово тут — „случилась”
Идея мне понравилась, разве что неудобно между ними переключаться, но то как эта фича проявляется — мне не понятно…

PS: Сейчас всё вроде работает, но долго ли это будет продолжаться — не представляю… ;)

Posted: Mon 17 Oct, 2005 22:32
by Centaur
Однако, ещё бага репорт.

Summary:
\l неправильно работает в кодировках, отличных от OEM.

Version:
Windows XP SP2 5.1.2600
FAR 1.70.b5/1634
True Template 2.00 (с моими патчами; до 2.01 ещё не успел проапгрейдить, но, судя по анонсу, помочь не должно)

To reproduce:
  • Пусть есть правило примерно такого вида:

    Code: Select all

    <Expand Key="CtrlB" At="&AnyWhere;" To="<strong>\s\l\p\e</strong>" />
  • Открыть в редакторе новый текстовый файл.
  • Клавишей F8 переключить редактор в режим Windows.
  • Написать в нём:

    Code: Select all

    баг
  • Выделить блоком слово «баг».
  • Нажатием клавиши Ctrl+B применить правило.
Expected behavior:

Code: Select all

<strong>баг</strong>
Observed behavior:

Code: Select all

<strong>сру</strong>
Cause:
Очевидно, где-то что-то пишется в одной кодировке, а потом интерпретируется в другой. В исходниках ещё не копался.

Posted: Sun 23 Oct, 2005 08:51
by Centaur
Centaur wrote:Summary:
\l неправильно работает в кодировках, отличных от OEM.
Versions:
Как и ожидалось, в 2.01 тоже.

Cause:
ECTL_GETSTRING выдаёт текст как есть, а ECTL_INSERTTEXT интерпретирует передаваемый текст как OEM. Соответственно, если редактор работает не в OEM-кодировке, то происходит перекодировка.

Proposed solution:
Заменить вставку текста через ECTL_INSERTTEXT на аналогичную через ECTL_SETSTRING.

Posted: Sun 23 Oct, 2005 15:56
by 4ekucT
Пропатчил

Posted: Fri 04 Nov, 2005 13:52
by maxdrfl
раньше можно было задавать двойные команды типа
com1 && com2
и они выполнялись
теперь это не работает. Есть ли другая возможность выполнить последовательно несколько команд?

Posted: Fri 04 Nov, 2005 17:20
by 4ekucT
все работает, посмотри в примерах для компилера с++

Code: Select all

    
<Exec Title="&C compile release .exe [VCC]"           Command="=?'Compiler options:'e'/O2 /Ox /Gs /Gy'?=?'Link libraries:'e'kernel32.lib user32.lib gdi32.lib shell32.lib advapi32.lib comdlg32.lib'?cl /TC =0 =P /link =1 *.res /release /map:=N.map /mapinfo:lines & del /f =N.obj"
                                                                          Jump="Menu" Compiler="VCC"/>
Вот как надо ---> asd & asd

Posted: Fri 04 Nov, 2005 18:32
by maxdrfl
спасибо

Posted: Wed 09 Nov, 2005 16:22
by maxdrfl
есть ли возможность при запуске команды выводить номер текущей строки редактора как парамертр?

так же есть предложение добавить функицю поиска разделов файла (аля S&R).

Posted: Wed 09 Nov, 2005 21:19
by 4ekucT
maxdrfl wrote:есть ли возможность при запуске команды выводить номер текущей строки редактора как парамертр?
Покажи как ты это видишь =))
maxdrfl wrote: так же есть предложение добавить функицю поиска разделов файла (аля S&R).
Покажи как ты это видишь =))

Posted: Thu 10 Nov, 2005 03:06
by maxdrfl
Вывод строки, ну допустим ключ =l для команды exec
Command="latex.exe --src -interaction==nonstopmode =F && start yap -1 -s =l=F =M=oN.dvi"

Поиск разделов
<list Mask="/\\section\{(.*)\}/" ExceptMask="" Pos="1"/>
при запуске открывается окошко со всеми найденными вариантами.

Posted: Thu 10 Nov, 2005 11:51
by 4ekucT
maxdrfl wrote:Вывод строки, ну допустим ключ =l для команды exec
Command="latex.exe --src -interaction==nonstopmode =F && start yap -1 -s =l=F =M=oN.dvi"
Это я могу сделать, можно будет выводить номер текущей строки, позицию в эту строке, и саму строку
maxdrfl wrote: Поиск разделов
<list Mask="/\\section\{(.*)\}/" ExceptMask="" Pos="1"/>
при запуске открывается окошко со всеми найденными вариантами.
Все равно не понял

Posted: Thu 10 Nov, 2005 13:22
by maxdrfl
извиняюсь за кривое объяснение. Я просто ожидал что ты пользовался списком разделов в S&R.

Смысл прост. Для конкретного типа файла задается строка для поиска. Например в описании truetemplate каждый раздел начинается строкой
^\s*\xB3\s*(\d*\..*)\xB3

этой строкой задается маска для поиска разделов. Потом при вызове этой функции плагин ищет в файле все вхождения строки поиска и отображает меню
Номер строки| Название
Для названия указывается номер скобочки, или если надо комбинация (в этом случае просто $1). И позволяет перейти на выбранный раздел.
Так же при желании можно ввести маску исключения.

Вся прелесть этой вещи в том, что она задается раздельно для каждого файла и для нее не надо в ручную вводить строку поиска.

Т.к. плагин уже умеет строить navigation list, я и подумал, что можно туда добавить и просто список разделов.

ЗЫ. посмотреть это можно в том же S&R. Там, в общем есть уже забитые строки для разных типов файлов.

Posted: Thu 10 Nov, 2005 13:54
by Centaur
Что до списка разделов, то этим уже занимается colorer. Смотреть команду Function list. Я себе её намакросил на Apps и радуюсь.

Posted: Thu 10 Nov, 2005 14:21
by maxdrfl
точно.
я чесно говоря и не смотрел в его меню до этого :)
просто truetemplate на первый взгляд, больше подходит что бы этим заниматься.
спасибо.

Posted: Thu 10 Nov, 2005 19:51
by Kildor
однако…
Про колорер не замечал… получается, что часть плагинов он может взять на себя…
Есть ещё удобный плагин PHP function list. строит список функций в коде…

Posted: Wed 30 Nov, 2005 14:12
by cleg
Может я туплю - тогда просто подскажите. Есть ли для TrueTemplate готовые шаблоны для Пскаля, Бейсика, и т.д.?