Сайт о телевидении

Сайт о телевидении

» » Bookmarks Backup. Копирование и восстановление закладок. Букмарклеты

Bookmarks Backup. Копирование и восстановление закладок. Букмарклеты

10.5.4 Объект Bookmark

Объект Word.Bookmark, применение закладок в шаблоне, получение из объектов Bookmark объектов Selection и Range

Объект Bookmark - это просто закладка. На практике это - самый удобный способ навигации по документам, созданных при помощи шаблонов (например, отчетов). Принципиальное отличие его от объектов Selection и Range заключается в том, что все выделения и диапазоны теряются при закрытии документа (объекты Range вообще существуют только во время работы создавшей их процедуры, а закладки сохраняются вместе с документом. Если документ создан на основе шаблона, то все закладки, которые были определены в шаблоне, будут определены и в созданном на основе этого шаблона документе.

Создать закладку (меню Вставка -> Закладка ) намного проще, чем считать количество символов для объекта Range от начала документа/абзаца/предложения, или выполнять операции Move() (MoveDown(), MoveRight(), MoveNext()) для объекта Selection. Кроме того, если вы будете исправлять шаблон (а делать это на практике приходится очень часто), вам, скорее всего, не придется править код для определения объектов Selection и Range.

Функциональность объекта Bookmark невелика. Свойств и методов у этого объекта намного меньше, чем у объектов Selection и Range. Однако обычно никто и пытается использовать объект Bookmark для работы с текстом напрямую. Из объекта Bookmark очень просто получить объект Selection (при помощи метода Select()) или объект Range (при помощи свойства Range()) - и дальше можно пользоваться уже свойствами и методами этих объектов, например:

ThisDocument.Bookmarks("Bookmark1").Select

MsgBox Selection.Text

Создавать объекты Bookmark программным способом необязательно, но если есть необходимость, то можно использовать метод Add() коллекции Bookmark:

ThisDocument.Bookmarks.Add Name:="temp", Range:=Selection.Range

У этого метода - всего лишь два параметра, оба которых используются в примере.

Некоторые важные свойства объекта Bookmark:

  • Empty - если это свойство возвращает True, то это значит, что закладка указывает на точку вставки, а не та текст;
  • Name - имя закладки. Очень удобно, что найти нужную закладку в коллекции закладок можно не только при помощи индекса (номера) закладки, но и по ее имени.
  • Range - возвращает объект Range на месте этой закладки.
  • Start , End , StoryType - аналогично таким же свойствам у объекта Selection.

Методов у объекта Bookmark всего три - Copy(), Delete() и Select(). Copy() - создает закладку на основе существующей, Delete() - удаляет ее, а Select() - выделяет то, на что ссылается закладка.

ЧЕРСТВЫЙ

ЧЕРСТВЫЙ

ЧЕРСТВЫЙ, сухой, засохший, жесткий, заскорузлый, корявый. Черствый хлеб, лежалый, немягкий, несвежий. Черствая кожа, подошва. Земля черства от засухи. Мягко съел, да черство в живот дошло.

| * Грубый и бесчувственный, жестокосердый. Черствый человек, - сердце. Черствость, свойство ·по·прилаг. Чествоват хлеб, на беззубого, черственек, черствым-черствехонек (-черствешенек). Общее бедствие черствит сердца, делает людей безучастными. Черстветь, высыхая, становиться черствым. Черственье, постепенное ·сост. по гл. Хлеб зачерствел, он дочерствел донельзя. Люди очерствели (почерствели). Жерства, хрящ (песок), не черства ли? Черствина жен. что зачерствело. Ни черствинки нет, ни корочки.


Толковый словарь Даля . В.И. Даль. 1863-1866 .


Синонимы :

Антонимы :

Смотреть что такое "ЧЕРСТВЫЙ" в других словарях:

    См. жестокий … Словарь синонимов

    черствый - ЧЕРСТВЫЙ, зачерствелый, сухой … Словарь-тезаурус синонимов русской речи

    - (иноск.) противоп. мягкій; сухой, безчувственный, жестокосердый (о человѣкѣ, сердцѣ). Черствѣть сдѣлаться такимъ … Большой толково-фразеологический словарь Михельсона (оригинальная орфография)

    Чёрств, черства, чёрство, диал. чвёрстый, укр. черствий черствый, сильный, свежий, др. русск. чьрствъ твердый; сухой, черствый; безупречный; ясный; значительный, болг. чевръст, чвръст жесткий, крепкий, ловкий, бодрый, сербохорв. чвр̑ст,… … Этимологический словарь русского языка Макса Фасмера

    черствый - Общеслав. Скорее всего, суф. производное (суф. тв, ср. мертвый) от той же основы (*čьrt < kьrt), что др. рус. чьрту «черчу», лит. kertù «рублю, ударяю». Черствый буквально «такой, которым можно бить», затем «твердый, крепкий, жесткий» (это… … Этимологический словарь русского языка

    - (противоп. мягкий) иноск.: сухой, бесчувственный; жестокосердый (о человеке, сердце) Черстветь сделаться таким … Большой толково-фразеологический словарь Михельсона

    Чёрствый прил. 1. Затвердевший, засохший; несвежий (о хлебе, мучных изделиях). 2. перен. Лишённый душевной чуткости, сердечности, душевной теплоты; неотзывчивый, нечуткий. 3. перен. Свидетельствующий об отсутствии чуткости, отзывчивости. Толковый … Современный толковый словарь русского языка Ефремовой

    черствый - Древнерусское – чьрствый (твердый, крепкий, важный, сухой). Общеславянское – cьrstvъ. Индоевропейское – (s)ker (поворачивать, вить, плести). Древнерусское слово «чьрствый» известно с XI–ХII вв. в значении «твердый, крепкий, важный»; с XIII в. –… … Этимологический словарь русского языка Семенова

    черствый - Syn: см. жестокий … Тезаурус русской деловой лексики

    ЧЁРСТВЫЙ ая, ое; чёрств, а, чёрство, чёрствы и черствы. 1. Утративший мягкость, свежесть (о хлебе, мучных изделиях); зачерствелый. Ч. хлеб, пирог. Ч ая булка. 2. Лишённый душевной мягкости, чуткости; неотзывчивый, бездушный. Ч. бюрократ,… … Энциклопедический словарь

Книги

  • Герои 1812 года. От Багратиона и Барклая до Раевского и Милорадовича , Алексей Шишов. «Вам все вершины были малы / И мягок самый черствый хлеб, / О, молодые генералы / Своих судеб!» – писала о них Марина Цветаева. Неслыханно молодые по нынешним меркам, невероятно талантливые,… электронная книга
  • A Christmas Carol. The Signalman /Гимн Рождеству. Связист (аудиокнига MP3) , Чарльз Диккенс. Святочный рассказ с привидениями "A Christmas Carol" (" Гимн Рождеству") - одно из немногих английских произведений о Рождестве, гимн в прозе, наполненный светлым чувством праздника.…

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

Кто не знает, это такая штука, которую можно добавить в закладки (да, я сегодня дебютирую в роли Капитана Очевидность:) и, при нажатии на нее, произвести какой-нибудь эффект.

Примером может служить герой сегодняшней заметки, который расположен по адресу http://ulizko. com/demo/allthat/ . Инструкция по применению:

  1. Перетащите ссылку «link» на панель закладок или щелкните по ней правой кнопкой мыши и выберите пункт меню «добавить в избранное».
  2. Зайдите на какой-нибудь сайт, вроде http://twitter. com , и нажмите на эту закладку (ну или на избранное).

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

Но. Мы сегодня не об этом, а о том, как делать такие штуки в принципе.

Прежде чем перейти непосредственно к разбору кода, хотелось бы ответить на вопрос (который мне никто не задавал:), а именно, "Какие возможности дает букмарклет?". Правильный ответ - любые. Так как мы получаем возможность подгрузить любой скрипт, мы можем сделать с клиентской страничкой все, что угодно. Например - сделать «выносной» виджет, в котором на любой страничке можно будет добавить запись в блокнот или таскменджер. Или вообще сделать весь таскменеджер выносным. Что тоже важно, они будут работать практически везде - это не плагины к firefox’у и не виджеты к opera. Букмарклетам не важно (ну, почти:), какая у вас ОС или браузер. В общем, есть простор для фантазии.

Итак, как же делать эти самые букмарклеты?
Очень просто: надо создать на страничке элемент anchor с атрибутом href, содержащим javascript-код. Если перевести на русский, то надо сделать вот такую ссылку, адрес которой, по большому счету, и будет букмарклетом:

< a href ="javascript:alert("I am bookmarklet"); void 0;" > Bookmarklet

Для того, чтобы javascript код в адресе ссылки заработал, надо добавит перед ним слово javascript: . Если мне не изменяет мой склероз, это называется «указание псевдопротокола javascript». Еще одна важная деталь - если ваш код вернет какое-то значение, то браузер воспримет его в качестве адреса, по которому нужно перейти, и уйдет с текущей страницы. Чтобы избежать этого, не возвращайте значения, то есть допишите в конец скрипта void 0; , либо оберните весь код в анонимную функцию, невозвращающую значения - (function(){... ваш код мог бы быть здесь...})() .

В любом случае, все эти вопросы подробно рассмотрены у Ильи Кантора в его заметке Букмарклеты и правила их написания , к которой я вас и отсылаю за подробностями.

Единственную вещь, которую нам еще нужно знать - это то, что все браузеры ограничивают максимальную длину кода букмарклета. И, подобно тому, как скорость каравана равна скорости самого медленного верблюда, так и максимальный размер кроссбраузерного букмарклета равен ограничению, наложенному IE 6 SP2, то есть, 488 символам.

Таким образом, вряд ли мы сможем закодить какую-то комплексную логику в неполных пятистах символах, так что чаще всего букмарклеты просто создают новый тэг script, в который уже сгружают код приложения.

Так поступил и я. Вот код моего букмарклета в человекоадаптированном виде:

(function () {
// создаем новую внутреннюю переменную a (лучше в данном случае использовать короткие идентификаторы)
// и сразу же добавляем свой объект в глобальный объект window, и записываем в него данные, которые уникальны
// для каждого пользователя (ведь они сгенерированы сервером для пользователя перед тем, как он добавил этот букмарклет к себе)
var a = window.allThat = {
userId: "123345456" ,
server: "http://mysite.com/" ,
script: document .createElement("script" ), // создадим и запомним тэг скрипт,
// который сгрузит нам код нашего приложения - мы его потом удалим, если пользователь нажмет кнопку "закрыть"
css: document .createElement("link" ) // аналогично
},
/* динамически создаем и добавляем в DOM элементы: */
h = document .getElementsByTagName("head" );
a.css.rel = "stylesheet" ;
a.css.href = a.server + "css/bookmarklet.2.css" ;
h.appendChild(a.css);
a.script.src = a.server + "js/bookmarklet.7.js" ;
h.appendChild(a.script);
h=null ;
})();

* This source code was highlighted with Source Code Highlighter .

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

Если интересно, вот


Поиск

Варианты слова: БРАВАДОЙ, БРАВАДЫ, БРАВАДЕ, БРАВАД

Входимость: 2. Размер: 100кб.

Входимость: 2. Размер: 7кб.

Входимость: 2. Размер: 103кб.

Входимость: 1. Размер: 55кб.

Входимость: 1. Размер: 14кб.

Входимость: 1. Размер: 75кб.

Входимость: 1. Размер: 10кб.

Входимость: 1. Размер: 34кб.

Входимость: 1. Размер: 111кб.

Входимость: 1. Размер: 32кб.

Входимость: 1. Размер: 11кб.

Входимость: 1. Размер: 16кб.

Входимость: 1. Размер: 64кб.

Входимость: 1. Размер: 10кб.

Входимость: 1. Размер: 22кб.

Входимость: 1. Размер: 17кб.

Входимость: 1. Размер: 59кб.

Входимость: 1. Размер: 54кб.


Примерный текст на первых найденных страницах

Входимость: 2. Размер: 100кб.

Часть текста: время служил в оккультном издательстве, что определенным образом направило его фантазию, но вселило в него презрение к бредовому шарлатанству спиритов. С 1900 года он занимается литературой и публицистикой. В отличие от Стивенсона и Конрада, внешние события его жизни ничем не примечательны. На склоне лет он совершил несколько лекционных и журналистских турне по Северной Америке, Италии, Польше, Палестине, но в основном это обычная кабинетная биография английского писателя-горожанина, чья жизнь протекает то в пригородном доме, то в лондонских редакциях и вехами которой служат книги. Честертон писатель необычайно плодовитый и разнообразный. Не считая бесчисленных статей и предисловий, им напечатано около ста десяти книг, в том числе: стихи, романы, рассказы, художественные очерки, критика, биографии, публицистические и исторические сочинения, пьесы. У нас он известен главным образом как романист и автор рассказов, но сам он невысоко расценивал «эти пустяки», да и в Англии он ценится скорее как блестящий эссеист, критик импрессионистического склада и поэт. Пестрота и противоречивость взглядов Честертона особенно резко проявляются в его публицистике. По ней легче всего проследить тот длинный и извилистый путь, который далеко увел Честертона от раннего радикализма и в конце концов укрепил его на позициях мистика, поборника католицизма и крайнего реакционера. В творчестве Честертона остро сказался излом, свойственный писателям конца века, которые искали...

Входимость: 2. Размер: 7кб.

Часть текста: послевоенной Западной Германии. Как и Белль, Грасс отчетливо ощущает роковую преемственность в этой истории, историческую обусловленность прихода фашистского варварства. Грасс ненавидит фашизм, ненавидит сытое немецкое мещанство, создававшее благоприятную питательную почву для фашизма. От лица гл. персонажа, Оскара Мацерата предстает перед читателем сразу в нескольких ипостасях. Все они сходятся в 1954, когда он отмечает свое 30летие. Но празднует его в сумасшедшем доме, подозревается в убийстве, но суд признал его психически ненормальным. Выясняется, что он здоров и одиночную камеру организовал себе сам, ему осточертела жизнь в обществе, и свое заключение он использовал для того, чтобы написать воспоминания. Охватывают не только 30 лет Оскара, но и истории множествава др. лиц, судьбы кот. пересеклись с его. Автор наделяет О. уникальными способностями - начинает воспринимать мир уже в утробе матери, а в 3 года решает остановить свой рост на уровне 94 см, чтобы остаться самим собой, освободится от принуждения играть в игры взрослых. Развивает в себе обостренную наблюдательность (способен рассказывать о событиях, случившихся задолго до рождения). "Ясновидение" М. позволяет автору варьировать масштаб повествования, используя эффект микроскопа/телескопа. Грасс скрывает, что он умнее героя => нет назидательности. В 3 г. О. дарят барабан. С его помощью он научился выражать чувства и эмоции, что потом позволяет ему превратиться в виртуоза с успехом гастролировать. Оскар может еще издавать звуки разной чистоты и бить с помощью голоса предметы. Грасс использует "эффект...

Входимость: 2. Размер: 103кб.

Часть текста: удивление та же, — писал он тогда, в конце 20-х годов, — в чем-то неправдоподобная, бесконечно далекая от нас, а во многом — такая близкая, до ужаса близкая, сегодняшняя Англия, чей дух окутан плотными туманами лицемерия, благополучия, ничтожности. Уж так богата эта Англия, уж такая это могуществен-ная морская держава! А ее оптимизм, способный посрамить даже Стивенсона, а ее праведное ханжество!» Как видно, всем достается по порядку, сводятся счеты века с веком. И действительно, молодой автор продолжает: «... Диззи (Дизраэли) умер не так давно, и его романы еще не кажутся смехотворно-старомодными, какой-то нелепой пародией. Интеллигенция эстетствует и поклоняется Оскару, или эстетствует и поклоняется Берн — Моррису (то есть Эдуарду Берн-Джонсу и Уильяму Моррису. — М. У.), или проповедует утилитаризм и поклоняется Гексли с Дарвином» («Смерть героя», ч. I, 1). Ирония не щадит ничего. Олдингтон начинает свой роман, «памятуя о Джордже Муре», но — снисходительно «памятуя», как помнят мысли, когда-то казавшиеся блестками, но безнадежно приевшиеся. Пожалуй, никто из английских писателей 20-х годов не взглянул на недавно отошедшую эпоху в таком собранном фокусе и, иронизируя над литературными «скандалами» того времени, не начал свою писательскую деятельность скандалом, но более резкого свойства. Олдингтон (1892—1962) как фигура интересен для историка английской литературы «рубежа веков», потому что своей биографией и в своем творчестве по- особому соединяет два века. Исход девятнадцатого столетия, «конец века», составляет его детство, а если учесть, что не девятисотым годом обрывается прошлый век, продолжая жить и после 1901 года, то и его...

Входимость: 1. Размер: 55кб.

Часть текста: буржуазному обществу на поздней стадии его развития. Конец XIX — начало XX в. — это эпоха вступления капитализма в его высшую и последнюю стадию развития — империализм. В это время возникают мощные капиталистические монополии, устанавливается господство финансовой олигархии, происходит деление мира на сферы влияния, ведутся грабительские войны, осуществляются новые колониальные захваты, создаются крупные колониальные империи. Вместе с тем период 1871— 1917 гг. характеризуется борьбой пролетариата, созданием социал-демократических партий, распространением марксизма и возникновением ленинизма. Империализм обострил все противоречия капитализма, и это обострение явилось «самой могучей двигательной силой переходного исторического периода» 2 . Переходным характером эпохи объясняется острота и напряженность социально-политической и идеологической борьбы. Все яснее обнаруживающийся кризис буржуазной системы сопровождается все большей активизацией революционных сил. «Империализм есть канун социальной революции пролетариата» 3 . В мировую историю XX век вошел как век пролетарских и национально-освободительных революций. Уже начало столетия было ознаменовано событием, оказавшим...

Входимость: 1. Размер: 14кб.

Часть текста: страны, непрестанно меняющей свои очертания, — еще одной Римской империи, отрицаемой большинством своего населения державы, не сумевшей переварить самое себя. Знатоки скажут: гибель — судьба всех государств-монстров, не знавших удержу в своей экспансии, всех этих колоссов на глиняных ногах, всех империй-спрутов, всосавших десятки стран и народов. Но почему великая культура? Откуда? Ведь именно эта страна дала миру музыку Гайдна и Глюка, Моцарта и Шуберта, Брукнера и Брамса, Штрауса и Малера, Шёнберга и Веберна, Шрекера и Берга, поэзию Рильке, живопись Кокошки, Либермана, Коринта, Слефогта, Климта, Кубана, психологию Фрейда, философию Маха, Менгера, Брентано, Мейнонга, Витгенштейна, Шлика, Бубера, Эбнера, Шпанна, Поппера, Фейерабенда, науку Больцмана, Допплера, Менделя, Шредингера, Зюсса, Пирке. Вальтер фон дер Фогельвейде и Генрих Тейхнер, Конрад Цель-тес и Вольфганг Шмельцль, Алоис Блумауэр и Ленау, Гальма и Бек, Раймунд и Фогль, Нестрой и Кюрнберге, Бар и Альтенберг, Артур Шницлер и Гуго фон Гофмансталь, Верфель и Рот, Брох и Музиль, Цвейг и Мейринк, Краус и Базиль, Жан Поль, Штифтер, Грильпарцер, Шаукаль, Вильдганс, Эдшмит, Захер-Мазох, Винер, Браун, Додерер, Хандке, Тракл, Йонке, Гютерсло, Бернхард, «Венская группа» — Артман, Байер, Рюм, Яндль... Австрия начала XX века... «Затонувшая империя»... Легкомыслие Вены, — констатировал Кафка; «лучшие австрийцы живут за границей», — острили зубоскалы и притом — какой-то взрыв культуры, целое небо «сверхновых» первой величины, смелость и размах философской мысли, какая-то одержимость театром, музыкой, литературой. Встреча и конкуренция культур, сотни и тысячи пересекающихся точек...

Описание
Устанавливает или возвращает закладку, которая однозначно определяет текущую запись в Recordset .

Значение
Задаваемое или возвращаемое значение определяются строковым выражением или выражением типа Variant , значением которого является допустимая закладка. Типом данных является массив Variant элементов типа Byte .

Замечания
Для объекта Recordset , созданного исключительно на основе таблиц ядра базы данных Microsoft Jet , свойство Bookmarkable имеет значение True , и допускается использование свойства Bookmark для объектов Recordset . Например, не допускается использование закладок в любом объекте Recordset , созданном на основе присоединенной таблицы Paradox , в которой не определен ключ.
При создании или открытии объекта Recordset каждая из его записей получает уникальную закладку. Для того чтобы запомнить положение текущей записи, следует присвоить текущее значение свойства Bookmark переменной. Для быстрого возвращения к сохраненному в переменной указателю текущей записи в любое время после перехода на другую запись следует указать в значении свойства Bookmark объекта Recordset значение этой переменной.
Число возможных закладок в наборе записей не ограничивается. Для создания закладки, определяющей запись, отличную от текущей записи, следует перейти на нужную запись, а затем присвоить значение свойства Bookmark строковой переменной, которая будет указывать на нужную запись.
Перед использованием свойства Bookmark следует проверить значение свойства Bookmarkable объекта Recordset , которое определяет, поддерживает ли данный набор записей использование закладок. Если свойство Bookmarkable имеет значение False , объект Recordset не поддерживает закладки, и обращение к свойству Bookmark приведет к возникновению перехватываемой ошибки.
Если с помощью метода Clone создана копия объекта Recordset , то значения закладок для исходного объекта Recordset и его копии являются идентичными и допускают взаимную замену. Однако нельзя использовать подобным образом закладки из других объектов Recordset , даже если они были созданы на основе одного объекта или с помощью одинаковой инструкции SQL .
При попытке задать для свойства Bookmark значение, представляющее удаленную запись, возникает перехватываемая ошибка.
Значение свойства Bookmark не идентично номеру записи.

Пример
Следующая программа использует свойства Bookmark и Bookmarkable для запоминания позиции записи в объекте Recordset и возвращения к этой записи.