[JFWRus] Re[4]: закладки
Здравствуйте, Михаил.
По словам: Control+стрелка вправо и влево...
С уважением, Анатолий.
***
Это сообщение No1825
было разослано для 227 участников дискуссионного листа
[JFWRus] Re[4]: закладки
← Июль 2005 → | ||||||
3
|
||||||
---|---|---|---|---|---|---|
4
|
5
|
6
|
7
|
9
|
||
За последние 60 дней ни разу не выходила
Открыт:
27-07-2004
Пре-модерация: Нет
Адрес для писем в лист: comp.soft.others.jfwrus-list@subscribe.ru
Здравствуйте, Михаил.
По словам: Control+стрелка вправо и влево...
С уважением, Анатолий.
***
Это сообщение No1825
было разослано для 227 участников дискуссионного листа
[JFWRus] Re[4]: закладки
Здравствуйте, Михаил.
Поправьте на всякий случай
const
BOOKMARK = "$$$"
Все остальные симптомы у меня отсутствуют: скрипт находит указанную последовательность,
встает в нужную строку, из сообщения
выходит нормально.
Сообщение "Финиш..." появляется тогда, когда скрипт доходит до конца документа.
Скорее всего, дело в определении текущей строки. Возможно, что информация в статусбаре
выводится у вас не так, как у меня. Чтобы
проверить, раскомментируйте строку, которая сообщает номер строки и послушайте,
что сообщает джоз. Должен идти перебор строк.
Кроме того, вы можете JAWS-курсором просмотреть статусбар и написать, как у вас
там расположена информация. Используйте
Control+стрелка влево, чтобы двигаться по словам. Первое слово располагается
в самом начале статусбар ( у меня эта позиция
пустая).
С уважением, Анатолий.
***
Это сообщение No1824
было разослано для 227 участников дискуссионного листа
[JFWRus] Re[4]: закладки
Здравствуйте, Андрей.
>>> TypeString (Bookmark)
> i> У меня такой способ не проходит ни в одном редакторе...
> А что он говорит??
Ничего...
> i> BOOKMARK "$$$"
> А знак присваивания? :-))
А зачем:))) У меня работает и со знаком и без...
> i> JAWSHome ()
> А это разве работает при активном PC-курсоре?
Да, работает. JawsHome(), JawsPageUp(),... и т.д. работают с активным курсором,
так же как NextLine(), NextWord(), ...
> Поясните, пожалуйста. Что значит "ExMessageBox не равно шести"?
ExMessageBox() это почти полноценный MessageBox из WinAPI, в котором можно определить
более, чем одну кнопку. В данном случае
определяются две кнопки "Да" и "Нет". При нажатии "Да" возвращается 6.
У меня скрипт не зацикливается. Но если тексты небольшие то контрольную величину
можно уменьшить: while(i<1000)...
С уважением, Анатолий.
***
Это сообщение No1823
было разослано для 227 участников дискуссионного листа
[JFWRus] Re[4]: закладки
Здравствуйте, i_chay.
Вы писали 26 июля 2005 г., 9:25:53:
> Это будет относительно медленный скрипт, в
> чем можно убедиться, поместив следующий
> код в файл скриптов для Bred 2 (с другими
> редакторами скрипт может не работать,
> потому что для определения текущей строки
> используется информация из StatusBar).
Я сейчас испробовал ваш скрипт, В общем к скорости притензий нет, но вот какая
незадача - окошко с диалогом никак закрываться не хочет. Что на "да" жми, что
на "нет" - один результат - поиск продолжается дальше. Причём если судить по
содержимому окна диалога, он находит такие строки, где указанной комбинации и
в помине нет.
Может я неправильно восстановил разбиение на строки... Хотя сейчас проверил -
вроде всё, как надо.
Ещё раз повнимательнее протестировал скрипт, обнаружил, что при нажатии "да",
фокус переходит на следующую строку, а при "нет" - остаётся на текущей. По непонятой
закономерности иногда появляется диалог со словом "финиш", и тогда диалог можно
закрыть кнопкой "нет".
В общем, скрипт ведёт себя довольно таки капризно и непредсказуемо.
Здравствуйте, Анатолий!
Вы писали:
>>> TypeString (Bookmark)
i> У меня такой способ не проходит ни в одном редакторе...
А что он говорит??
i> Да, Сергей прав, скрипт поиска будет работать исключительно с окном.
Я этого больше всего боялся... :-(
i> Перемещаться по документу можно в режиме PCCursor()
i> NexLine()
i> let curStr = GetLine()
i> Это будет относительно медленный скрипт, в чем можно убедиться, поместив следующий
i> код в файл скриптов для Bred 2 (с другими
i> редакторами скрипт может не работать, потому что для определения текущей строки
i> используется информация из StatusBar). Скрипт
i> начинает поиск от начала текущей строки и останавливается в начале той строки,
i> где стоит закладка.
i> Include "hjconst.jsh"
i> const
i> BOOKMARK "$$$"
А знак присваивания? :-))
i> JAWSHome ()
А это разве работает при активном PC-курсоре?
i> while(i<10000)
Ууууу, цикл!.. :-(( Если честно, почему-то не люблю циклы именно в
скриптах JAWS. Никогда у меня не получалось ничего толкового из этого,
а если и получалось, то работало крайне медленно... :-(
i> if (StringContains (curStr, BOOKMARK ) &&
i> ExMessageBox ("Строка: "+ StringLeft (curStr, 35)+ "...\nПродолжить поиск?",
i> "Закладки", MB_YESNO|MB_ICONINFORMATION) != 6 )
Поясните, пожалуйста. Что значит "ExMessageBox не равно шести"?
i> let i = 10001
А оно не повиснет? Ведь цикл-то от единицы до 10000...
Здравствуйте, Анатолий!
Вы писали:
i> backy -- у меня нет такой программы.
Имелась в виду Becky! internet mail.
Здравствуйте, Олег.
Вы писали 26 июля 2005 г., 9:15:41:
> А по чему не нравиться читать из под Word,
> может компьютер слабоват?
Даже не знаю почему, но ворд у меня хоть и немного, но притормаживает при работе,
особенно если двигаешься по строкам, словам и пр. Как-то он громоздковат для
простого чтения. В общем-то bred2r предоставляет мне практически все инструменты
для чтения и конспектирования текстов. Не хватает именно только закладок и блочного
выделения. При этом он практически не доставляет проблем с кодировками, а в ворде
иногда нужно помучиться, прежде чем открыть книгу в кодировке oem, например.
Кроме того, представьте, вам нужно просмотреть сотню-другую книг, собирая материал
для чего-нибудь или в поисках нужной информации. Мне что-то даже думать не хочется,
насколько дольше этот процесс займёт в ворде. Ворд я использую только для редактирования
и то лишь в том случае, если нужно воспользоваться именно теми возможностями,
которых нет в простых редакторах.
Компьютер вроде ничего должен быть - в январе собирали. Думаю, основная проблема
в связке джоз+мышь. Но тут уж ничего не поделаешь.
> Чтото подобное начал делать и для простых
> текстовых редакторов, типа Akel pad,
С нетерпением буду ждать, когда закончите работу.
Здравствуйте, Владислав.
>> а если упростить задачу до двух програм: explorer и backy?
backy -- у меня нет такой программы.
Explorer -- а какой ProgressBar там нужно озвучивать. Если тот, что при копировании
файлов, то там есть время (которое
осталось...).
Кроме того, не все, что похоже на ProgressBar, им является...
С уважением, Анатолий.
***
Это сообщение No1818
было разослано для 227 участников дискуссионного листа
[JFWRus] Re[5]: progras bar
Здравствуйте, участники рассылки.
Здравствуйте, Михаил и Андрей.
Андрей пишет:
>> TypeString (Bookmark)
У меня такой способ не проходит ни в одном редакторе... Поэтому использую
...
CopyToClipboard(Bookmark)
{Ctrl+V}
Pause()
...
Да, Сергей прав, скрипт поиска будет работать исключительно с окном.
Перемещаться по документу можно в режиме PCCursor()
NexLine()
let curStr = GetLine()
Это будет относительно медленный скрипт, в чем можно убедиться, поместив следующий
код в файл скриптов для Bred 2 (с другими
редакторами скрипт может не работать, потому что для определения текущей строки
используется информация из StatusBar). Скрипт
начинает поиск от начала текущей строки и останавливается в начале той строки,
где стоит закладка.
Include "hjconst.jsh"
const
BOOKMARK "$$$"
Script SearchBookmark ()
var
int i,
int curLine,
string curStr
PCCursor ()
JAWSHome ()
let i=1
let curLine =1
while(i<10000)
let curStr = GetLine ()
if (StringContains (curStr, BOOKMARK ) &&
ExMessageBox ("Строка: "+ StringLeft (curStr, 35)+ "...\nПродолжить поиск?",
"Закладки", MB_YESNO|MB_ICONINFORMATION) != 6 )
Then
let i = 10001
Else
NextLine()
let i= i+1
RouteInvisibleToPc ()
InvisibleCursor ()
JAWSPageDown ()
JAWSHome ()
NextWord()
let curLine = StringToInt(StringSegment (GetWord(), ":", 2))
PCCursor ()
; озвучиваем номер сттроки
;Sayinteger(curLine)
if (i> curLine) Then
if ExMessageBox("Финиш. Продолжить с первой строки?", "Закладки", MB_YESNO|64)
!=6 Then
let i = 10001
Else
let i =1
let curLine=1
JAWSTopOfFile ()
EndIf
endIf
EndIf
EndWhile
PCCursor()
EndScript
Скрипт тестировался под 5.00 + Bred 2.18.
Вроде бы, противопоказаний для работы под 4.51 нет.
Возможные проблемы: в случае, если текст не переносится по правой границе окна,
то могут быть ошибки...
С уважением, Анатолий.
***
Это сообщение No1817
было разослано для 227 участников дискуссионного листа
[JFWRus] Re[2]: закладки
Привет, Михаил!
Вы писали 25 июля 2005 г., 16:50:54:
МД> Когда я читаю какую-нибудь книгу и нужно запомнить, на каком месте я остановился,
МД> то я обычно вставляю на место остановки какую-нибудь уникальную последовательность
МД> символов, например, "$$$".
А по чему не нравиться читать из под Word, может компьютер слабоват?
Я ведь сделал надстройку для Word..
Так в ней реализовано сохранение последней позиции чтения, закладки, и работа
с блоками.
Чтото подобное начал делать и для простых текстовых редакторов, типа Akel pad,
bred, notepat.
Впринципе сделал.
Но надо доделать.
Доброе утро, Francophile.
F> Не факт, что в
F> этом случае оно
F> будет искать
F> текст по всему
F> документу
Действительно, по-мойму будет искать только в указанном окне, а это
немного не то...
--
С уважением, Sergey.
***
Это сообщение No1815
было разослано для 227 участников дискуссионного листа
[JFWRus] Re[2]: закладки
Доброе утро, Francophile.
МД>> В идеале - чтоб скрипт циклически переключался между всеми закладками документа.
F> В идеале так и будет :-). Только я не знаю, как реализовать фишку,
F> чтобы, дойдя до нижней закладки, он перемещался к верхней... :-)
В идеале нужно заюзать TOM (Text Object Model), ведь в бреде вроде
RichEdit, который предоставляет этот обйект.
Тогда можно было бы сделать вообще круто, как например в IE:-)
--
С уважением, Sergey.
***
Это сообщение No1814
было разослано для 227 участников дискуссионного листа
[JFWRus] Re[4]: закладки
bonjour Михаил.
Вы писали:
МД> В идеале - чтоб скрипт циклически переключался между всеми закладками документа.
В идеале так и будет :-). Только я не знаю, как реализовать фишку,
чтобы, дойдя до нижней закладки, он перемещался к верхней... :-)
Здравствуйте, nail.
Вы писали 25 июля 2005 г., 18:34:23:
> ээ а зачем вообще это делать если можно
> поставить какую нибуждь говорилкуи
> она запомнитместо на которомвы
> остаовились.
Потому что ниодна говорилка не предоставляет те возможности, которые предоставляет
джоз. мне же это нужно не для чтения беллетристики. А если нужно несколько закладок?
В идеале - чтоб скрипт циклически переключался между всеми закладками документа.
P.S. Спасибо Франкофилу, как испробую, сообщу результаты.