Làm cách nào để ánh xạ lại các phím tắt Ubuntu để khớp với OSX?


28

Tôi đang sử dụng Ubuntu trong VirtualBox trên Mac. Khi tôi chuyển đổi thường xuyên, tôi muốn sử dụng các phím tắt tương tự. Xin vui lòng, có ai biết làm thế nào để có các phím tắt tương tự trên Ubuntu, như chúng có trên Mac không? Cụ thể, tôi muốn Sao chép, Dán, Chọn Tất cả, ... hoạt động với Cmd + C, Cmd + V, Cmd + A, ... (ngay cả trong thiết bị đầu cuối - không có Ctrl + Shift, chỉ Ctrl).

Tôi đã cố gắng thay đổi Bố cục bàn phím thành Máy tính xách tay Apple, nhưng điều đó không có ích.


Khóa Cmd có phải là phím thay thế cho Ctrl hoặc Alt không?
Seth

Nếu tôi nhớ chính xác, Cmd bằng với ctrl.
Kaz Wolfe

2
cmd bằng với phím chức năng của windows (trong khi đó phím cmd nằm cạnh phím cách). Hầu hết thời gian giữa ctrl và alt.
Velop

Câu trả lời:


8

bạn không thể thêm các phím tắt tùy chỉnh ?? Nếu điều đó là không thể hoặc không hoạt động, bạn có thể muốn thay đổi các phím bấm của vmbox. Bạn sẽ cần phải làm như sau:

Cài đặt xbindkey

sudo apt-get install xbindkeys

Xbindkeys là một chương trình rất linh hoạt cho phép bạn sắp xếp lại các phím rất dễ dàng. Nó sử dụng một tập tin cấu hình, mặc định của tôi nằm trong thư mục chính của bạn, để thay đổi các ràng buộc chính thành các lệnh nhất định.

Để tạo một tệp cấu hình mặc định, bạn sử dụng lệnh:

xbindkeys --defaults

Mà in tập tin cấu hình mặc định. Vì vậy, nếu bạn muốn tạo tệp chứa các giá trị mặc định bạn sẽ sử dụng:

xbindkeys --defaults > $HOME/.xbindkeysrc

Mà in các giá trị mặc định thành một tệp ẩn có tên .xbindkeysrc nằm ở nhà.

Bây giờ để thực sự thay đổi các ràng buộc của các khóa, trước tiên chúng ta cần biết tên hoặc keyym của các phím đó là gì. xbindkeys cho phép chúng ta sử dụng tay cầm -k để tìm tên của tổ hợp phím hoặc khóa. Chạy:

xbindkeys -k

Bây giờ nhấn ctrl (của cmd) và kiểm tra đầu ra

Hãy thử nhấn ctrl + c (sau khi tắt lối tắt đó trong thiết bị đầu cuối bằng phần thứ hai của khám phá này)

Nó sẽ cho bạn biết tên của tổ hợp phím / khóa.

Bây giờ chúng ta cần nói với linux để gọi cmd khi nhấn ctrl.

để làm điều này, chúng ta sẽ cần thêm một phần mềm vì xbindkeys không hỗ trợ phần mềm này. Tôi biết hai chương trình mà chúng ta có thể sử dụng, xdotool và xte. Tôi thích xte vì vậy tôi sẽ sử dụng nó.

Cài đặt nó:

sudo apt-get install xautomation

(Để gọi một phím bấm: xte 'key keyName'

Để gọi một tổ hợp phím: xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName

Để biết thêm thông tin bạn có thể đọc hướng dẫn man xte )

Cho phép mở tệp cấu hình bạn đã thực hiện trước đó: (tệp bạn đã tạo xbindkeys --defaults > $HOME/.xbindkeysrc)

gedit .xbindkeysrc

Bạn sẽ nhận được một cái gì đó như thế này:

#
# A list of keys is in /usr/include/X11/keysym.h and in
# /usr/include/X11/keysymdef.h
# The XK_ is not needed.
#
# List of modifier:
#   Release, Control, Shift, Mod1 (Alt), Mod2 (NumLock),
#   Mod3 (CapsLock), Mod4, Mod5 (Scroll). 
#

# The release modifier is not a standard X modifier, but you can  
# use it if you want to catch release events instead of press events

# By defaults, xbindkeys does not pay attention with the modifiers
# NumLock, CapsLock and ScrollLock.
# Uncomment the lines above if you want to pay attention to them.

#keystate_numlock = enable
#keystate_capslock = enable
#keystate_scrolllock= enable

# Examples of commands:

Trước đó bạn đã trích xuất tổ hợp phím / khóa. bây giờ bạn đã biết lệnh mô phỏng các lần nhấn phím, bạn có thể gọi nó từ tập lệnh xbindkeys của mình, như sau:

"xte 'ctrl'" Cmd (hoặc đại loại như thế này phụ thuộc vào tên do xbindkeys đặt cho bạn)

Thêm phần này vào tập lệnh xbindkeys của bạn và lưu nó.

Bạn sẽ nhận thấy rằng nó không hoạt động (chưa). Đó là vì xbindkeys chưa chạy. bắt đầu với lệnh sau

xbindkeys

Các lệnh của bạn sẽ hoạt động ngay bây giờ. Nếu nó không hoạt động, bạn có thể muốn thử thêm các lệnh vào tổ hợp phím của mình như sao chép và dán. Nếu nó không hoạt động hoặc có một sự thay thế nhưng đó là khá nhiều văn bản. Bạn cũng có thể thử xmodmap hoặc xkeycaps.

Tôi muốn lưu ý rằng xbindkeys và xte không luôn hoạt động tốt với nhau.

Đối với các phím tắt thiết bị đầu cuối của bạn: Bạn có thể thay đổi TẤT CẢ bằng cách mở thiết bị đầu cuối của mình và nhấp vào chỉnh sửa trong thanh trên cùng. Sau đó nhấp vào phím tắt và thay đổi giá trị sao chép và dán dưới tiêu đề "chỉnh sửa" thành ctrl (hoặc trong trường hợp của bạn là cmd) + c và ctrl + v


2
đây là những giải pháp để khắc phục vấn đề của bạn TRONG Vmbox. Bạn có thể có thể trao đổi keyscodes nhất định bằng cách thiết lập một bảng trao đổi keycode trong vmbox của bạn nhưng tôi không có bất kỳ kinh nghiệm với vmboxes
Akisame

Điều này gần giống như tôi từng nhận được các ràng buộc mac trên linux. Tuy nhiên, nó dường như xte 'key Home'không hoạt động khi được liên kết với bất kỳ tổ hợp phím nào trong tệp .xbindkeysrc. Tôi đã thử nhiều loại như "Shift + i". Tôi cũng đã thấy nó hoạt động bằng cách thực hiện 'ngủ 15 && xte' key Home '"(chuyển sang gedit và xem công việc tại nhà). Phản hồi nhiều nhất tôi nhận được khi cài đặt mọi thứ với" Alt + Left "cho nhà là đèn flash của con trỏ. Có sự trợ giúp nào về điều này không? gist.github.com/Kikketer/658d89661a044121279afbba04a511fa
Chris

8

Không cần sử dụng xbindkeysđể đạt được ánh xạ bàn phím giống như OSX trên Ubuntu. Đây là một tùy chọn sẵn có:

  1. Đi vào Cài đặt Ubuntu của bạn
  2. Điều hướng đến Bàn phímCài đặt Bố cục Bàn phím
  3. thêm tiếng Anh (Macintosh)

7
Tôi không thấy Keyboard Layout Settingstrên Ubuntu 14.0.4
chovy

Điều này không hoạt động trên VirtualBox. Tất cả tôi nhận được là một cửa sổ thu nhỏ khi tôi thử sao chép / dán.
chovy

lol, sau rất nhiều thời gian thử tất cả các giải pháp khác ngoài kia, giải pháp này rất dễ dàng và hoạt động ngay lập tức. (Ubuntu 14.04.3 LTS 64 bit trong VirtualBox 5.0.4). Cảm ơn
Allisone

Điều này không làm việc cho tôi, trên hộp ảo.
Peter Brooks

3
Câu trả lời này rõ ràng không còn hoạt động cho các phiên bản Ubuntu mới hơn. Dù phiên bản mới nhất của Ubuntu là gì vào năm 2014, nó vẫn hoạt động cho điều đó.
boulder_ruby

3

Đây là câu trả lời cập nhật cho bất kỳ ai đang vật lộn với vấn đề này với các phiên bản Ubuntu mới hơn.

Tôi vừa cài đặt Ubuntu 16.04.1 qua VirtualBox và không thể cài đặt bàn phím phù hợp với MacBook của mình.

Đây là những gì tôi đã làm để khắc phục nó:

  1. Điều hướng đến Cài đặt hệ thống .
  2. Chọn Nhập văn bản (nghĩa là không phải Bàn phím ).
  3. Bên dưới danh sách với tiêu đề Nguồn đầu vào sẽ sử dụng: có dấu cộng và dấu trừ - nhấp vào dấu cộng.
  4. Trong hộp văn bản bên dưới Chọn loại nguồn đầu vào trong bố trí bàn phím mà bạn yêu cầu (trong trường hợp của tôi, tôi chọn tiếng Anh (UK, macffy).
  5. Sử dụng mũi tên lên để làm cho nó bố trí bàn phím mặc định của bạn trên Ubuntu.
  6. Loại bỏ các bố trí bàn phím khác. Mãi đến khi tôi gỡ bỏ những bố cục khác thì những thay đổi mới có hiệu lực.

1
Tác dụng của việc này là gì? Chẳng hạn, phím điều khiển trên Macintosh nằm cùng một chỗ với bàn phím thông thường. Vì ctrl-c / v vẫn là lệnh sao chép và dán mặc định của hệ thống, nên điều này sẽ không trả lời câu hỏi ban đầu về việc ánh xạ lại các loại phím tắt trên toàn hệ thống để nó bắt chước máy Mac.
Coljac

2

Tôi đang dùng Ubuntu 16.04, VirtualBox 5.1.22 và không có câu trả lời nào trong số này có hiệu quả với tôi - kể cả David Brower không may.

Đây là những gì đã làm để khóa lệnh OSX bên trái của tôi hoạt động (liên tục!):

  1. Trước tiên, bạn cần đảm bảo VirtualBox không sử dụng Left ⌘ làm khóa Máy chủ
    • Trong thanh menu trên cùng của cửa sổ VM của bạn chọn Input > Keyboard > Keyboard Settings..
    • Trong danh sách cài đặt, tìm Kết hợp khóa máy chủ và thay đổi phím tắt sang thứ khác ngoài Trái (Tôi chỉ sử dụng Phải ⌘ vì tôi không bao giờ sử dụng nó).
  2. Bây giờ bạn chắc chắn có thể sử dụng Left ⌘ trong môi trường VM, hãy ánh xạ lại các phím bằng XKB:
    • Mở và (cẩn thận) chỉnh sửa: /usr/share/X11/xkb/symbols/pc
    • Tôi chỉ đơn giản là trao đổi <LCTL><LWIN>xung quanh, vì vậy nó trông như thế này:
    • key <LCTL> { [ Super_L ] };
    • key <LWIN> { [ Control_L ] };
  3. Bây giờ xóa ánh xạ cũ khỏi bộ đệm xkb:
    • rm -rf /var/lib/xkb/*
  4. Khởi động lại Ubuntu để thay đổi có hiệu lực.

Lời cảnh báo: Tôi sẽ tránh thực hiện nhiều thay đổi cùng một lúc thông qua xkb trừ khi bạn thực sự biết những gì bạn đang làm, một vài phím được ánh xạ không chính xác cùng một lúc có thể là một vấn đề đau đầu thực sự!

Tín dụng đầy đủ cho Radu Cotescu cho các hướng dẫn ánh xạ lại xkb - chúng dành cho Ubuntu 14.04, tuy nhiên chúng hoạt động tốt cho ubfox 16.04.


Hãy chắc chắn rằng bạn chụp ảnh trước khi bạn làm điều này! Tôi may mắn đã có một mục đích khác và sau khi thực hiện điều này, Ubuntu sẽ không khởi động đúng cách. Tôi hoàn nguyên và nó bắt đầu hoạt động trở lại. Tôi đang sử dụng 18.04 cho những gì nó có giá trị.
tom

2

Tìm kiếm trong các câu hỏi khác Tôi đã tìm thấy công cụ này để ánh xạ Ctrl đến bảng phím Macbook CMD còn lại để thực hiện CMD + C hoặc CMD + V hoặc một cái gì khác:

Cài đặt ứng dụng gnome-chỉnh:

sudo apt-get install gnome-tweaks

Mở ứng dụng Applications -> Gnome Tweaksvà ánh xạ CTRL thành THẮNG (Tương tự như CMD trong Mac) thực hiện việc này:

  1. Bàn phím và chuột
  2. Tùy chọn bố trí bổ sung (siêu trái)
  3. Hành vi phím Alt / Win
  4. Ctrl được ánh xạ tới Win và các phím Ctrl thông thường`

Tận hưởng CMD + C or CMD + VVirtualBox OSX của bạn bằng cách sử dụng máy ảo ubfox-18.


Đã làm việc. <filler>
skwny

Điều này làm tôi mất khả năng sử dụng khóa Win / Apple. Thay vào đó, tôi đã làm như sau cho Bước 3 và 4 : (3) Ctrl position, (4) Swap Left Win with Left Ctrl.
Turgs

0

Tôi vẫn đang chạy Ubuntu 12.04 vì nhiều lý do, vì vậy tôi không thể nói cho các lần lặp lại sau, nhưng hãy thử điều này:

Được rồi, trước tiên, bạn có thể muốn đặt khóa máy chủ VB của mình thành một cái gì đó cụ thể như lệnh phải hoặc phím alt bên phải ... thứ gì đó bạn không sử dụng bình thường. Tôi nghĩ mặc định là phím lệnh bên trái, sẽ can thiệp vào hầu hết các hoạt động của mọi người.

Điều này có thể được thực hiện trong các tùy chọn cho chính VirtualBox (chứ không phải bên trong máy khách hoặc như bất kỳ cài đặt cụ thể nào của máy). Khi ứng dụng VB mở (không phải cửa sổ VM), chọn VirtualBox-> Preferences-> Input, sau đó chọn khóa máy chủ ở đầu danh sách ánh xạ / trường "Máy ảo".

Được rồi, sau đó, bên trong máy khách Ubuntu:

  1. Mở cài đặt hệ thống của bạn và chọn Bố trí bàn phím.
  2. Mở tab Bố cục.
  3. Bạn có thể chỉ có một mục - tiếng Anh (Mỹ) hoặc somesuch. Đánh dấu cái này và nhấp vào nút "Tùy chọn" ở phía dưới bên phải.
  4. Mở rộng bộ mở rộng "Alt / Win Key Behavior".
  5. Chọn "Điều khiển được ánh xạ tới các phím Win (và các phím Ctrl thông thường)".

Bạn sẽ thấy rằng phím lệnh Mac của bạn bây giờ hoạt động như mong muốn cho lệnh-C, lệnh-V, v.v.


0

Trong trường hợp Kubfox 18.04 với Plasma 5, điều làm việc với tôi là (Trong Cài đặt hệ thống / Thiết bị đầu vào / Bàn phím) đặt phần cứng là 'chung chung 104 phím' và bố cục là 'tiếng anh (macffy)'


-1

Điều đó sẽ phụ thuộc vào phần mềm bạn đang sử dụng để chạy máy ảo của bạn. Ví dụ, tôi sử dụng VMWare Fusion để chạy Ubuntu trên máy Mac của mình và để đạt được những gì bạn muốn, tôi đã đi đến "Cài đặt" của VMWare Fusion và thiết lập ánh xạ khóa tôi muốn trong máy ảo cụ thể đó (tôi có thể có nhiều thiết lập, một thiết lập cho mỗi VM).

Tôi chưa bao giờ sử dụng VirtualBox, nhưng tôi khá chắc chắn rằng bạn có thể làm điều đó trong Cài đặt của VirtualBox.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.