Skopiuj przy zaznaczeniu, wklej na środkowym kliknięciu w Mac OS X?


93

Czy istnieje sposób, aby nadać OS X zwykłe zachowanie X-Windows, w którym zaznaczenie tekstu w dowolnej aplikacji automatycznie kopiuje go do schowka, a środkowy przycisk myszy automatycznie go wkleja?

command+ C, command+ Vjest trochę denerwujące.


3
Cóż, działa zgodnie z oczekiwaniami w X ... nie znam rozwiązania dla kwarcu.
dmckee,

1
bump też dla mnie ... byłoby wspaniale mieć to
CharlesB

2
Chciałem tylko zadać to samo pytanie. Niedawno zacząłem pracować na MacOS X w moim miejscu pracy i od dawna jestem użytkownikiem Linuksa, to jest cholernie funkcjonalność Linuksa, której mi brakuje na MacOS.
Patkos Csaba

4
Masz na myśli, że chcesz zrezygnować z możliwości zastąpienia zaznaczonego tekstu tym, co znajduje się w schowku?
Spiff

1
Kolejny dowód Linuksa jest lepszy od Mac OS.
Błogosławiony Geek

Odpowiedzi:


16

Zostało to już omówione (i udzielono odpowiedzi) na apple.stackexchange.com . Akceptowaną odpowiedzią w tej dyskusji było użycie narzędzia Better Touch Tool.

Jednak wszystkie te rozwiązania, które sugerują użycie jakiegoś narzędzia do mapowania kliknięcia myszy na Cmd-V, nie naśladują całkowicie zachowania X, gdzie możesz mieć inną zawartość w buforze sterowanym myszą i buforze sterowanym klawiaturą (tj. może wkleić dwa różne ciągi w zależności od tego, czy klikniesz środkowym przyciskiem, czy naciskasz CTRL-V).


24
I bardziej problematyczne. Nie ma funkcji „podświetl tekst do skopiowania”.
Nifle

10

Tylko dla archiwów: to, co chcesz, faktycznie działa w Terminalu , ale tylko w tym samym oknie Terminalu:

Zaznacz tekst (i zwolnij przycisk myszy) i użyj środkowego przycisku myszy, aby wkleić.

Alternatywnie, w przypadku korzystania z gładzika lub myszy z dwoma przyciskami: po wybraniu kliknij i przeciągnij zaznaczenie nieco; zobaczysz zmianę wskaźnika. Teraz, gdy puścisz przycisk, zaznaczony tekst zostanie wklejony pod kursorem. Wciśnięcie Esc podczas przeciągania anuluje.

przeciągnij i upuść

Oczywiście Terminal jest tylko jednym z wielu programów. Ale dla mnie jest to jedyne miejsce, w którym naprawdę chcę tego zachowania, choćby ze względu na komentarz Spiffa dotyczący możliwości zastąpienia (myszy) zaznaczonego tekstu tym, co znajduje się w schowku.


W rzeczywistości kopiowanie / przeciąganie tekstu działa świetnie dla mnie w dowolnym celu edytora (tj. Terminal, BBEdit, pole wprowadzania tekstu na tej stronie itp.) ... możesz połączyć przeciąganie z Exposé i CMD-tab. Ponadto, jeśli chcesz „skopiować do schowka”, możesz po prostu przeciągnąć na pulpit, a to utworzy wycinek tekstu, który możesz następnie przeciągać wielokrotnie do innych lokalizacji (jest to w pewnym sensie wizualny schowek).
r00fus


2

Właśnie wypróbowałem Terminal (OS X El Capitan, wersja 10.11.5). Zastosowałem następujący proces:

  1. Zaznaczanie tekstu
  2. Trzymając 1 palec, przeciągnij nieco w górę (podświetlony tekst przesuwa się i pojawia się zielony „+”)
  3. Zwolnij, a podświetlony tekst pojawi się w wierszu polecenia

Doskonały! Działa na mojej Sierra (10.12.6).
Bjarte Brandt,

1

ZASTRZEŻENIE : Nie testowałem tego, ponieważ nie mam komputera Mac. Ale treść była zbyt duża, aby opublikować ją jako komentarz. Zamiast tego zamieszczam to jako odpowiedź.

Jestem użytkownikiem systemu Windows i zaimplementowałem dokładnie tę samą funkcję w systemie Windows za pomocą skryptu napisanego dla programu o nazwie Autohotkey.

Teraz, zgodnie z tym pytaniem, IronAHK uruchamia skrypty AHK na Macu.

Oto ten, którego używam w systemie Windows (oczywiście, musiałbyś go wiele ulepszyć, aby działał):

    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

Kredyt skryptu trafia do tego postu. Spróbuj eksperymentować i komentować, jeśli zadziała. Postaram się pomóc w jak największym stopniu.

Tymczasem spójrz na to również. Ale nie sądzę, że jest wystarczająco zaawansowany do pożądanej funkcji.


To jest skrypt auto-klucza dla systemu macOS nie?
William,

1

Jako długoletni użytkownik Linuksa desperacko szukałem takiej funkcjonalności w osx. Mark ma rację - iTerm to odpowiedź plus niektóre ustawienia w Preferencjach X11. Odwiedź tutaj, aby uzyskać więcej informacji.


1

Nie znalazłem też natywnego sposobu. Po wypróbowaniu różnych rzeczy skorzystałem z TotalTerminal .

Dodaje dodatkowe funkcje do aplikacji terminalowej. Oprócz funkcji kopiowania przy wyborze możesz ustawić klucz globalny, aby przywoływać terminal w dowolnym momencie.


1

Korzystam z BetterTouchTool i skonfigurowałem go tak, aby emulował środkowy przycisk myszy w aplikacji Terminal po kliknięciu trzema palcami.


0

Możesz spróbować bawić się ustawieniami myszy, aby sprawdzić, czy sterownik pozwala przypisać funkcję wklejania do środkowego kliknięcia. Jeśli nie, spróbuj zajrzeć do USB Overdrive .

Jeśli chodzi o kopiowanie przy wyborze, nie znam żadnego oprogramowania, które zapewnia taką funkcjonalność, i sądząc z tego, co mogę znaleźć w Google, prawdopodobnie nie istnieje.


0

Nie mam komputera Mac, więc nie mogę tego sprawdzić, a treść była za długa na komentarz, więc zamieszczam go jako odpowiedź. Może okaże się pomocny dla innych.

Rozwiązanie 1:

Przejdź do preferencji X11 - zaznacz „emuluj 3-przyciskową mysz”.

Teraz środkowe kliknięcie = opcja + kliknięcie.

Podświetlanie / wklejanie będzie działać tak jak w Linuksie.

Rozwiązanie 2:

Innym sposobem jest zainstalowanie lepszego narzędzia dotykowego, które pozwala przypisywać własne polecenia do różnych gestów myszy / touchpada.

  • Stuknięcie 1 palcem w prawo = cmd c (kopiowanie) i
  • Stuknięcie 2 palcami = cmd v (wklej)

To o jeden krok więcej niż wyróżnienie = kopia, ale nadal jest lepsze niż skróty klawiaturowe.

Z hintforums Macworld .


-1

Wiem, że to nie jest dokładnie to samo, ale jeśli wybierzesz tekst i klikniesz go prawym przyciskiem myszy, masz opcję kopiowania. Gdy coś znajdzie się na stole, można również wkleić kliknięcie prawym przyciskiem.

Wygłupiałem się za pomocą mojej wieloprzyciskowej myszy Logitech i nie byłem w stanie zrobić dokładnie tego, co opisujesz, nawet jeśli jedną z opcji jest przycisk „środkowego kliknięcia”.

Theo

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.