4

Можно ли сделать индекс в документе IWork Pages?

Под индексом я подразумеваю маркировку слов как достойную индексации, и в конце документа имеется алфавитный список тех слов и страниц, на которых они упоминаются. Как и любая компьютерная книга.

3 ответа3

1

Я полагаю, что это возможно, хотя и не тривиально с Applescript, используя Pages, встроенные в словарь Applescript. Это зависит от того, какая именно функциональность / форматирование и т.д. Вам нужно.

Следующий скрипт может быть хорошей отправной точкой. В этом случае он ищет страницы со словом "член", но вы можете изменить это на диалог, список или что-то, что вы нашли полезным. Код немного сырой и не очень быстрый, но он работает.

set theSearchText to "member"
copy theSearchText to theOutputText
set theOutputText to theOutputText & "   "
set theCurrentPage to 0

tell application "Pages"
    tell document 1
        repeat with i from 1 to count of words
            set theText to text of word i
            if item 1 of theText is equal to "member" then
                set thePageNumber to the page number of the containing page of word i
                if thePageNumber is not equal to theCurrentPage then
                    copy thePageNumber to theCurrentPage
                    set theOutputText to theOutputText & ", " & thePageNumber as string
                end if
            end if
        end repeat
        return theOutputText
    end tell
end tell
0

К сожалению, согласно Руководству пользователя Pages 09 и другому сайту, оглавление собирает только стили абзацев. Это означает, что вы не можете сгенерировать запись для текста в середине абзаца, на что ссылается большинство записей указателя. Вы можете теоретически пометить нужные элементы индекса - например, белыми {фигурными скобками}, заменить квадратные скобки на абзацы в стиле, который входит в оглавление, создать оглавление, которое выглядит как индекс, сохранить его, и вернуться.

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

Все, что нам нужно пользователям текстовых процессоров и электронных таблиц, - это чтобы Apple разработала интерфейс, а Microsoft - для разработки функциональности.

0

Я никогда не пробовал, но так как index связан со стилем, вы можете создать стиль под названием "word", который будет идентичен стилю вашего основного содержимого. Тогда вам просто нужно создать индекс, который перечисляет весь "словесный" контент, и все.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .