View previous topic :: View next topic |
Author |
Message |
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Tue May 29, 2012 17:04 Post subject: SynWrite add-on: Find ID |
|
|
Запрос
Сделано:
http://рамсофт.рф/downloads/FindID.zip
http://рамсофт.рф/downloads/src_FindID.zip
RamSoft- можешь сделать это в виде DLL? или Exe? я буду передавать тебе а)имя файла б) номер строки-колонки с кареткой. ты будешь читать файл и возвращать а)имя файла б) номер строки-колонки с ID declaration. _________________ UniViewer - CudaText - LogViewer
Last edited by Alextp on Thu Jun 07, 2012 15:33; edited 4 times in total |
|
Back to top |
|
|
RamSoft
Joined: 04 Aug 2010 Posts: 65 Location: Москва
|
(Separately) Posted: Tue May 29, 2012 17:26 Post subject: |
|
|
Ок. Идёт, я займусь этим.
З.Ы. А слово под кореткой сможешь передавать? |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
|
Back to top |
|
|
RamSoft
Joined: 04 Aug 2010 Posts: 65 Location: Москва
|
(Separately) Posted: Wed May 30, 2012 17:59 Post subject: |
|
|
Тестовый вариант, пока ищет только по паскалу объявленные функции и процедуры в пределах текущего файла.
На вход:
"имя файла" "номер строки" "позиция каретки"
На выход:
"имя файла" "номер строки" "позиция каретки"
Через консоль думаю разберёшься.
З.Ы. С переменными чуть позже.
Скачать: http://rghost.ru/private/38375450/02d406b08641ce6b21c26b54853ca6d2 |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Wed May 30, 2012 18:37 Post subject: |
|
|
запустил на SecInfo.dpr (WDX плагин)- сработало
Просьба:
при запуске а)без пар-ров б)с неверным filename - выдавать справку (Usage: mmm.exe <filename> <line number> <column number>)
2. Сделать вывод в виде INI:
[Result]
Filename=<.....>
LineNum=<...>
ColNum=<...>
при ошибке:
[Result]
Filename=
тогда я запущу "mmm.exe .... > 1.ini" и легко спарсю ini.
3. назвать FindID.exe
Добавлено спустя 15 минут:
4. перехватить Exceptions, и выводить message ошибки
([Result] при этом не надо)
Добавлено спустя 1 час 14 минут:
5. детектить а)not FileExists(filename)
б)ошибку чтения
в)номер строки <=0 или > числа строк
г)номер колонки <=0 или > длины строки
выдавать при этом "Error: ....текст......" _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
RamSoft
Joined: 04 Aug 2010 Posts: 65 Location: Москва
|
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Wed May 30, 2012 22:18 Post subject: |
|
|
сразу ошибки.
1- запуск без пар-ров выдает не Usage info, а что-то на кирилице (в FAR непонятно что)
2- запуск с колонкой=330 выдал И ошибку И репорт
(Note- колонку надо проверять после чтения строки)
3- запуск FindId ddddddd -> опять кирилица
Можешь взять строки
Error: bad number (%s) //для плохого номера стр/кол
Error: wrong line number (%d)
Error: wrong column number (%d for line %d)
Error: file not found
Error: file read error
Error: invalid command line options
Добавлено спустя 3 минуты:
Usage: FindID <filename> <ID_line_num> <ID_column_num>
[ /paths=path1;path2;... ] _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
RamSoft
Joined: 04 Aug 2010 Posts: 65 Location: Москва
|
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Thu May 31, 2012 13:42 Post subject: |
|
|
мал. ошибка- не тот номер в ошибке
Code: | findid.exe C:\Prog\SecInfo\SecInfo.dpr 3 33
Error: wrong column number (33 for line 16)
|
Code: | {$E wdx}
library SecInfo;
{$R *.RES}
uses
..
|
Ждем рабочую версию c Uses, c пар-ром /paths=path1;path2 _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
RamSoft
Joined: 04 Aug 2010 Posts: 65 Location: Москва
|
(Separately) Posted: Thu May 31, 2012 13:56 Post subject: |
|
|
Ок.
А что ты хочешь передавать в /paths?
Содержимое Syn.ini [setup].paths ? Я и сам в силах это прочесть. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Thu May 31, 2012 17:14 Post subject: |
|
|
да, пути поиска. Сам -не надо, твоя утилита недолжна зависеть от Syn.ini. Не забудь про подд-ку * в путях. _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
RamSoft
Joined: 04 Aug 2010 Posts: 65 Location: Москва
|
(Separately) Posted: Thu May 31, 2012 17:38 Post subject: |
|
|
Alextp wrote: | да, пути поиска. Сам -не надо, твоя утилита недолжна зависеть от Syn.ini. Не забудь про подд-ку * в путях. |
Про "*" я помню и уже учёл это. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
|
Back to top |
|
|
RamSoft
Joined: 04 Aug 2010 Posts: 65 Location: Москва
|
(Separately) Posted: Fri Jun 01, 2012 12:10 Post subject: |
|
|
Alextp, Исходник будет.
ВОПРОС! : Ты обворачиваешь пути в «" "» ?
Posted after 2 hours 11 minutes:
!Update.
+ Add searh in Uses
+ Param "/paths"
http://рамсофт.рф/downloads/FindID.zip |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
|
Back to top |
|
|
|