Ответы:
Для Mac OS X это ctrl+ ↑или ctrl+ ↓.
Возможно, вам придется изменить настройки горячих клавиш «Управление полетом» (в Системных настройках), поскольку там предварительно заданы два нажатия клавиш.
Там нет ничего упомянуто в руководстве (только Несовпадающие и Обменные слова ).
Если TextWrangler поддерживает текстовую систему Какао (что я подозреваю, что нет, но все же), вы можете создать файл ~/Library/Keybindings/DefaultKeyBinding.dict
и ввести следующее:
{
"~\UF701" = (
"moveToBeginningOfLine:",
"deleteToEndOfLine:",
"deleteForward:",
"moveDown:",
"yank:",
"insertNewline:",
"moveUp:"
);
}
Это добавит ярлык Opt-DownArrow
для команды line-swap (со строкой ниже) в каждое приложение, поддерживающее текстовую систему Какао.
Я не думаю, что TextWrangler имеет это встроенное.
Вы можете запускать applecripts в TextWrangler, так что вы можете сделать эту работу. Я даже нашел несколько яблочных сценариев, которые это сделают.
Вам нужно будет заменить BBEdit на TextWrangler в тексте. Поместите сценарии в «~ / Library / Application Support / TextWrangler / Scripts /», и они появятся в меню сценариев в TextWrangler. Нажмите «Окно» -> «Палитры» -> «Сценарии», чтобы просмотреть палитру сценариев, где вы можете установить собственные сочетания клавиш.
Решение 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