Чистый буфер

5 мая 2014, 16:11

Иногда очень раздражает форматирование буфера обмена. Хочешь, например, вставить из терминала в письмо что-нибудь, а получаешь что-то несуразное:

Некоторые программы вроде Эверноута поддерживают возможность вставки без форматирования, но на уровне системы такой штуки нет.

Раньше приходилось выдумывать костыли вроде вставить в блокнот и скопировать снова. Позже был придуман алиас для терминала, который чистил буфер:

alias clean="pbpaste | pbcopy"


Но это было неудобно. Однажды лень перевесила, полез разбираться с Автоматором.

Задача: сделать службу, которая должна вставлять неотформатированный текст. За основу я решил использовать связку pbpaste и pbcopy, так как мне всё равно хотелось кроме вставки неотформатированного текста ещё и загнать его обратно в буфер.

Поэтому добавляем действие «Запустить shell-скрипт», вставляем код:

pbpaste | pbcopy


Буфер чист.

Далее нужно его просто в документ. Досадой оказалось что это сделать стандартными действиями нельзя, нужно исхитряться и симулировать нажатие cmd+v. Поэтому добавляем «Запустить AppleScript» и вставляем следующий код:

on run {input, parameters}
	tell application "System Events" to keystroke "v" using {command down}
	return input
end run

Далее выключаем входные данные службы и сохраняем.


Теперь в настройках клавиатуры в сочетаниях клавиш появится новая служба, на которую можно повесить любой удобный хоткей. Работает универсально во всей системе.



Дом в облаках       Ctrl       Так что же с GPS?

2 комментария

Угу

Cmd + Alt + Shift + V же есть

Владимир Перекладов

Не универсально. Не работает в мейл.апп, скайпе, заметках. Много где.

Дмитрий Неявных

А ты попробуй в английской раскладке это сочетание нажать.

Владимир Перекладов

Оу.

Ваш комментарий

адрес не будет опубликован

ХТМЛ не работает


Ctrl + Enter