11

В Eclipse вы можете нажать ALT-(стрелки), чтобы переместить линию вверх или вниз.

Кто-нибудь обнаружил эти функции горячих клавиш в TextWrangler?

4 ответа4

4

Для Mac OS X это Ctrl+& Uparrow; или ctrl+& downarrow; ,

Возможно, вам придется изменить настройки горячих клавиш «Управление полетом» (в Системных настройках), поскольку там предварительно заданы два нажатия клавиш.

2

Я не думаю, что TextWrangler имеет это встроенный.

Вы можете запускать applecripts в TextWrangler, так что вы можете сделать эту работу. Я даже нашел несколько яблочных сценариев, которые это сделают.

Вам нужно будет заменить BBEdit на TextWrangler в тексте. Поместите сценарии в «~/Library/Application Support/TextWrangler/Scripts/», и они появятся в меню сценариев в TextWrangler. Нажмите «Окно» -> «Палитры» -> «Сценарии», чтобы просмотреть палитру сценариев, где вы можете установить собственные сочетания клавиш.

1

Там нет ничего упомянутого в руководстве (только символы обмена и слова обмена).


Если TextWrangler поддерживает текстовую систему Какао (что я подозреваю, что нет, но все же), вы можете создать файл ~/Library/Keybindings/DefaultKeyBinding.dict и ввести следующее:

{
    "~\UF701" = (
        "moveToBeginningOfLine:",
        "deleteToEndOfLine:",
        "deleteForward:",
        "moveDown:",
        "yank:",
        "insertNewline:",
        "moveUp:"
    );
}

Это добавит ярлык Opt-DownArrow для команды подстановки строки (со строкой ниже) для каждого приложения, поддерживающего текстовую систему Какао.

0

Решение Nathangs работает довольно хорошо. Но предоставленная ссылка больше не работает. Итак, вот сценарии в виде простого текста. Просто вставьте их в "Редактор AppleScript" и сохраните их в ~/Library/Application Support/TextWrangler/Scripts/

Прекрасно работает на Mountain Lion и TextWrangler 4.

MoveLineDown.scpt:

tell application "TextWrangler"
    set x to startLine of selection
    tell text 1 of window 1
        if x = (count of lines) then return
        set myline to contents of line x
        delete line x
        if length of line x = 0 then
            make line at line x with data "
"
            make line at line (x + 1) with data myline
        else
            make line at line x with data myline

        end if
        select insertion point before line (x + 1)
    end tell
end tell

MoveLineUp.scpt:

tell application "TextWrangler"
    set x to startLine of selection
    if x = 1 then
        beep
        return
    end if
    tell text 1 of window 1
        set oldCount to count of lines
        set myline to contents of line x
        delete line x
        if x = 2 then
            if length of line 1 = 0 then
                make line at beginning with data "
"
            end if
            make line at beginning with data myline
        else
            if length of line (x - 2) = 0 then
                make line at line (x - 2) with data "
"
                make line at line (x - 1) with data myline
            else
                make line at line (x - 2) with data myline
            end if
        end if
        select insertion point before line (x - 1)
    end tell
end tell

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