Копіювати на вибір, клацнути на середній клік на Mac OS X?


93

Чи є спосіб надати OS X звичайну поведінку X-windows, коли вибір тексту в будь-якій програмі автоматично копіює його в буфер обміну, а середня кнопка миші автоматично вставляє його?

command+ C, command+ Vтрохи дратує.


3
Ну, це працює, як очікувалося в X ... не знаю рішення в кварці.
dmckee

1
удар також для мене ... було б здорово, щоб це було
CharlesB

2
Я просто хотів задати те саме питання. Нещодавно я почав працювати над MacOS X на своєму робочому місці, і я вже давно користувач Linux, це одна пекла функція Linux, якої мені не вистачає на MacOS.
Patkos Csaba

4
Ви маєте на увазі, що хочете відмовитись від можливості замінити вибраний текст тим, що є у буфері обміну?
Spiff

1
Ще одне свідчення, що Linux є кращим mac os.
Блаженний Geek

Відповіді:


16

Про це вже йшлося (і відповіли) на apple.stackexchange.com . У цій дискусії прийнятою відповіддю було використання кращого інструменту дотику.

Однак усі ті рішення, які пропонують використовувати якийсь інструмент для картографування клацання миші на Cmd-V, не повністю імітують поведінку X, де у буфера, керованого мишею, і буфера, керованого клавіатурою, ви можете мати різний вміст (тобто ви можна вставити два різних рядка, залежно від того, клацніть або клацніть середнім клавішею CTRL-V).


24
І більш проблематичні. У ньому немає функції "виділити текст для копіювання".
Ніфле

10

Тільки для архівів: те, що ви хочете, насправді працює у Terminal , але лише у тому самому вікні терміналу:

Виберіть текст (і відпустіть кнопку миші) та використовуйте середню кнопку миші для вставки.

Крім того, при використанні трекпада або миші з двома кнопками: після вибору натисніть і перетягніть вибір лише трохи; ви побачите зміну вказівника. Тепер, коли ви відпускаєте кнопку, вибраний текст вставляється на ваш курсор. Натискання Esc під час перетягування скасовує.

перетягнути і кинути

Звичайно, Термінал - лише одна з багатьох програм. Але для мене це єдине місце, де я насправді бажаю такої поведінки, хоча б через коментар Spiff про можливість заміни вибраного тексту (миші) тим, що є в буфері обміну.


Насправді текст для копіювання / перетягування відмінно підходить для будь-якої цілі редактора (наприклад, термінал, BBEdit, поле введення тексту на цій сторінці тощо) ... Ви можете комбінувати перетягування з Exposé та CMD-вкладкою. Крім того, якщо ви хочете "скопіювати у буфер обміну", ви можете просто перетягнути на робочий стіл, і це створить текстове відсікання, яке ви зможете потім перетягувати в інші місця неодноразово (це певним чином, як візуальний буфер обміну).
r00fus

6

Якщо вам просто потрібен термінал, ви можете встановити iTerm2, який є терміналом, на якому вирізані та вставлені вікна X.


1
Як я можу скопіювати вибір через термінал <-> браузер <-> електронною поштою?
Олександр Левчук

Як я вже казав, просто для терміналу до / від чогось іншого
user151019

На жаль, iTerm відчуває себе набагато повільніше у реакції.
iltempo

2
Для запису про iTerm2 (спадкоємця iTerm) можна ознайомитись тут: iterm2.com
1212

2

Я щойно спробував термінал (OS X El Capitan, версія 10.11.5). Я використовував цей процес:

  1. Виділіть текст
  2. Тримаючи один палець, перетягніть трохи вгору (виділений текст рухається і з'являється зелений колір "+")
  3. Відпустіть і виділений текст з'явиться в командному рядку

Ідеально! Працює над моєю Сьєррою (10.12.6).
Б'ярте Брандт

1

ВІДПОВІДАЛЬНІСТЬ : Я цього не тестував, тому що у мене немає Mac. Але вміст був занадто великим, щоб розмістити його як коментар. Отже, я розміщую це як відповідь замість цього.

Я користувач Windows і реалізував таку ж функцію у Windows, використовуючи сценарій, написаний для програми під назвою Autohotkey.

Тепер, відповідно до цього питання, IronAHK запускає сценарії AHK на Mac.

Ось такий, який я використовую для Windows (Звичайно, вам доведеться багато налаштувати, щоб він працював):

    cos_mousedrag_treshold := 20 ; pixels


#IfWinNotActive ahk_class ConsoleWindowClass

~lButton::
  MouseGetPos, cos_mousedrag_x, cos_mousedrag_y
  keywait lbutton
  mousegetpos, cos_mousedrag_x2, cos_mousedrag_y2
  if (abs(cos_mousedrag_x2 - cos_mousedrag_x) > cos_mousedrag_treshold
    or abs(cos_mousedrag_y2 - cos_mousedrag_y) > cos_mousedrag_treshold)
  {
    wingetclass cos_class, A
    if (cos_class == "Emacs")
      sendinput !w
    else
      sendinput ^c
  }
  return

~mbutton::
  WinGetClass cos_class, A
  if (cos_class == "Emacs")
    SendInput ^y
  else
    SendInput ^v
  return

#IfWinNotActive


;; clipx
^mbutton::
  sendinput ^+{insert}
  return

Кредит сценарію йде на цю посаду. Спробуйте експериментувати та коментувати, якщо ви працюєте. Я спробую максимально допомогти.

Тим часом погляньте і на це . Але я не думаю, що вона є достатньо розвиненою для потрібної функції.


Це сценарій автоматичної клавіші для macOS ні?
Вільям

1

Як давно користувач Linux, я відчайдушно шукав таку функціональність в OSX. Позначити правильно - iTerm - відповідь плюс деякі налаштування в налаштуваннях X11. Завітайте сюди для отримання додаткової інформації.


1

Я також не знайшов рідного шляху. Перепробувавши різні речі, я в кінцевому рахунку використовував TotalTerminal .

Це додає додаткової функціональності додатку терміналу. Окрім копіювання при виборі, ви можете встановити глобальний ключ для підключення терміналу, коли завгодно.


1

Я використовую BetterTouchTool і налаштував його для імітації середньої кнопки миші в додатку Terminal при натисканні трьох пальців.


0

Ви можете спробувати познайомитися з налаштуваннями миші, щоб побачити, чи дозволяє драйвер призначити функцію вставки середнім клацанням миші. Якщо цього не відбувається, спробуйте перезавантажити USB .

Щодо копіювання на вибір, я не знаю жодного програмного забезпечення, яке надає вам цю функціональність, і судячи з того, що я можу знайти в Google, жодного, мабуть, не існує.


0

У мене немає mac, тому я не можу перевірити це, і вміст був занадто довгим для простого коментаря, тому я публікую його як відповідь. Можливо, це виявиться корисним для інших.

Рішення1:

Перейдіть до налаштувань X11 - виділіть "емуляцію миші з 3 кнопками".

Тепер середній клік = варіант + натисніть.

Виділення / вставка працюватиме так само, як і в Linux.

Рішення2:

Інший спосіб - встановити кращий сенсорний інструмент, це дозволяє призначити власні команди різним жестам миші / тачпада.

  • 1 палець правого крана = cmd c (копія) і
  • 2 пальчикового крана = cmd v (вставити)

Це на крок більше, ніж підсвітка = копія, але все ж краща над комбінаціями клавіш.

З назви максвіту .


-1

Я знаю, що це не зовсім так, але якщо ви виберете текст і клацніть правою кнопкою миші на ньому, у вас є можливість скопіювати. Після того, як щось з’явиться на картоні, також можна вставити правий клацання.

Я обдурив свою мега-мишу з декількома кнопками Logitech і не зміг зробити щось подібне до того, як ви описуєте, хоча одним із варіантів є кнопка "середнього клацання".

Тео

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.