1

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

Все мои аббревиатуры состоят из (точнее: начинаются с) двух или более символов в верхнем регистре. Примеры включают: IO, EU, ICC, UNHCR и VCLT-IO. Таким образом, я могу выбрать их с помощью поиска "Найти все", используя опцию "Учитывать регистр" и следующий RegEx:

\b(?:[A-Z]){2,}

Таким образом, выделив все сокращения в документе, я могу сделать Ctrl+C, чтобы скопировать их. Однако, если я попытаюсь вставить аббревиатуры, например, в новый документ Writer, получится следующее:

EULEXCFSPOJCFSPOJCFSPOJEULEXEULEXEUEU

Вместо того, чтобы каждая аббревиатура была в новой строке, как я бы предпочел:

Эулекс

ОВПБ

OJ

ОВПБ

OJ

ОВПБ

OJ

Эулекс

Эулекс

Евросоюз

Евросоюз

Мой вопрос таков: есть ли способ скопировать и вставить аббревиатуры, чтобы каждый экземпляр был новой строкой / абзацем / ячейкой в другом документе? (Я бы предпочел иметь возможность вставлять, например, в calc, так как это упростило бы сортировку списка и удаление дубликатов.)

1 ответ1

1

Вот макрос, который может это сделать:

Sub CopySelectionsToNewDocument
    oDoc = ThisComponent
    oNewDoc = StarDesktop.LoadComponentFromUrl(_
        "private:factory/swriter", "_blank" , 0, Array())
    oNewText = oNewDoc.Text
    oNewViewCursor = oNewDoc.CurrentController.getViewCursor()
    oSels = oDoc.getCurrentController().getSelection()
    If oSels.supportsService("com.sun.star.text.TextRanges") Then
        For i = 0 To oSels.getCount() - 1
            oSel = oSels.getByIndex(i)
            If oSel.supportsService("com.sun.star.text.TextRange") Then
                oNewText.insertString(oNewViewCursor, oSel.getString() & CHR$(13), 0)
            End If
        Next
    End If
End Sub

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

Новый документ находится в Writer, но его можно легко скопировать и вставить в Calc.

Для чего-то более мощного, надстройка LingTools имеет компонент под названием «Список сокращений». Он был разработан для лингвистических рецензий, но также может подойти и для вашей диссертации. Надстройка помогает найти несоответствия и создает уникальный список.

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