Autohotkey tương đương?


48

Có một sản phẩm / phương pháp tương đương cho AutoHotkey. Đối với những người không biết, đây là sản phẩm cho phép bạn lập trình chuyển động chuột và bàn phím. Điều này cho phép tôi "macro" một số chức năng nhất định trên các chương trình thay vì phải thực hiện thủ công. Ngày xưa họ thường gọi chúng là đồ nhồi bàn phím. Nhưng đó chỉ là một nửa giải pháp vì tôi cũng cần một máy nhồi "chuột di chuyển".

Có một con thú như vậy?

Câu trả lời:


31

Có một cảng AutoHotkey sang Linux gọi IronAHK và một công cụ tương tự gọi là Autokey . Tôi cũng không sử dụng, tôi không biết chúng hoạt động tốt như thế nào.

Khác với các chương trình như vậy, bạn sẽ không tìm thấy chính xác cùng loại công cụ tự động hóa. Công cụ tự động hóa người dùng cơ bản trên các hệ thống unix là shell. Shell là chất keo kết hợp các công cụ khác: nó có thể khởi chạy các chương trình bên ngoài và kiểm soát cách chúng trao đổi dữ liệu. Bản thân shell không bao gồm bất cứ thứ gì để thao tác các khái niệm GUI như windows và con trỏ chuột¹. Những gì bạn làm là gọi các công cụ chuyên dụng trong tập lệnh shell, đặc biệt là xdotool để thao tác với các cửa sổ và tiêm tổ hợp phímcác sự kiện chuột .

Ví dụ: tập lệnh sau nhấp vào vị trí (40,20) trong cửa sổ Myapp.

#!/bin/sh
xdotool search --class Myapp \
        mousemove --window %1 40 20 \
        click 1

¹ Trừ dtksh , nhưng tôi chưa bao giờ thấy một cổng Linux của nó.


Tóm tắt hay, đáng tiếc là dự án đã hết hạn 4 năm và các tệp nhị phân đều là 404, sẽ cho xdotool thử. Cảm ơn đã dành thời gian.
Meer Borg

đã thử xdotool, hoạt động như một bùa mê nhưng bạn chắc chắn nên đọc tài liệu của họ trước khi bắt đầu
ConstantineK

1
AFAIK, IronAHK không bao giờ được thực hiện đầy đủ và đã bị bỏ rơi.
Joe

2

Bạn có thể sử dụng xautomation trong Linux. Tôi sử dụng nó trên màn hình hiển thị Raspberry Pi, để gửi làm mới trang F5 và tổ hợp phím 'Return' (enter) để đăng nhập.


2

Sử dụng AutohotkeyX, đây là cổng WINE gần đây của autohotkey, theo thử nghiệm của Winehq, thực hiện mọi thứ mà Autohokey có thể thực hiện trên windows. Đó dễ dàng là câu trả lời tốt nhất và đơn giản nhất.

https://appdb.winehq.org/objectManager.php?sClass=version&iId=17738

Cá nhân tôi chưa thử nghiệm điều này, nhưng kết quả của WINEHQ có xu hướng


1

Tải xuống Autohotkey trên Linux. Tạo một tệp Autohotkey (example.ahk). Sử dụng rượu vang để chạy Ahk2Exe.exe từ thư mục Autohotkey. Biên dịch tệp example.ahk của bạn sang example.exe Sử dụng rượu vang để chạy example.exe


2
Đó không phải là một lựa chọn tốt. Hiện tại, chức năng của Autohotkey chạy qua rượu rất hạn chế: appdb.winehq.org/iêu .
banan3'14

1

Có một số dự án giải quyết điều này. Hai hầu hết những người hoạt động, AFAIK, là sikuliAutoKey (một dự án tôi giúp đỡ hỗ trợ.)

Tôi chưa sử dụng sikuli, nhưng dường như nó dựa trên việc tìm các mẫu trên màn hình và kích hoạt các hành động dựa trên chúng.

AutoKey cho phép người dùng xác định cụm từ kích hoạt và phím nóng mở rộng cụm từ (tương tự tính năng tự động sửa lỗi rất mạnh) hoặc chạy các tập lệnh được viết bằng Python3 chỉ bị giới hạn bởi các kỹ năng lập trình của người dùng. Nó cung cấp một API để tạo sự kiện bàn phím và chuột. Nó cũng tích hợp với Xautomation cho phép bạn tìm một hình ảnh nhỏ trên màn hình và di chuyển con trỏ chuột đến nó.

Tôi đã sử dụng AutoKey trong nhiều năm và hỗ trợ nó trong danh sách của chúng tôi . Nó giống như một số công cụ năng suất: bạn có thể có được mà không cần nó, nhưng một khi bạn bắt đầu sử dụng nó, bạn sẽ tự hỏi làm thế nào bạn đã làm mà không có nó.

Một số chi tiết cụ thể:

AutoKey không hoạt động với các định nghĩa và tập lệnh AutoHotKey. Họ sẽ phải viết lại.

Tôi đã viết một bằng chứng về kịch bản bash khái niệm (có sẵn theo yêu cầu) dịch các cụm từ AutoHotKey thành các cụm từ AutoKey, nhưng nó chỉ là điểm khởi đầu và bỏ qua hầu hết các tùy chọn của AutoHotKey.

Vì các tập lệnh AutoKey được viết bằng Python3, nên cũng có thể gọi ra các công cụ như xdotool và wmctrl từ trong tập lệnh để cung cấp chức năng bổ sung, nhưng điều này thường không cần thiết. Mặc dù các tập lệnh AutoKey được viết bằng Python, khá nhiều thứ có thể được thực hiện với kiến ​​thức rất hạn chế về Python. Bạn không cần phải là một lập trình viên thông thạo Python cho hầu hết các mục đích.

Nếu bạn sử dụng bản phân phối dựa trên Debian, vui lòng không cài đặt phiên bản AutoKey do bản phân phối của bạn cung cấp. Gói AutoKey của họ không rõ ràng và rất cũ. Nhận một phiên bản hiện tại từ chúng tôi .


0

... lập trình chuyển động chuột và bàn phím của bạn. Điều này cho phép tôi "macro" một số chức năng nhất định trên các chương trình thay vì phải thực hiện thủ công.

Kantu là một công cụ tự động hóa máy tính để bàn đa nền tảng hoạt động rất tốt trên Ubuntu (Tôi chưa thử nghiệm nó trên các hương vị khác)

Công cụ tự động hóa người dùng cơ bản trên các hệ thống unix là shell.

Vâng. Nhưng AHK và Kantu cho phép người dùng tự động hóa tác vụ bên trong một ứng dụng bằng cách mô phỏng các lần nhấp chuột và đột quỵ bàn phím. Vỏ không thể làm điều này. Tôi sử dụng nó cho các bài kiểm tra tự động cộng với một vài hack năng suất.

Tất nhiên, bạn có thể kết hợp kantu với python hoặc bắt đầu trực tiếp từ vỏ.


2
Jim, nếu bạn được liên kết với một trong những sản phẩm mà bạn liên kết đến, xin lưu ý rằng Trung tâm trợ giúp của trang web này có hướng dẫn về Hành vi được mong đợi liên quan đến việc tiết lộ liên kết của bạn trong câu trả lời của bạn. Câu trả lời không bao gồm điều này có thể bị xóa. Cảm ơn bạn!
Jeff Schaller

0

Chỉ cần sử dụng XEV và XMODMAP. ĐƠN GIẢN và tốt hơn các chương trình chuyên dụng hoặc giả lập các ứng dụng Windows nhảm nhí. Tất cả nội dung LINUX của tôi sử dụng tập lệnh để xác định lại các phím và thay đổi chế độ màn hình và sau đó, khi chương trình hoàn tất và thoát, hãy đặt mọi thứ trở lại bình thường. Thật dễ dàng để sử dụng XMODMAP và tạo một tập lệnh giống như tạo một tập lệnh AHK, nhưng với phần thưởng bổ sung là không phải chạy một ứng dụng Windows giả lập. Và đối với những người nói rằng bạn không thể làm điều này hoặc điều đó ... SAU. Bạn có thể làm nhiều hơn từ Linux shell hơn bất kỳ HĐH nào khác và bạn có thể làm mọi thứ chúng ta đang nói đến, bao gồm di chuyển các cửa sổ xung quanh và vẫn đang sử dụng các lệnh hệ thống thân thiện với hệ thống được tích hợp!


3
Câu trả lời này có thể, đối với tất cả những gì tôi biết, là chính xác và chính xác 100%. Tuy nhiên, nó sẽ  hữu ích hơn rất nhiều nếu nó bao gồm một số ví dụ và / hoặc hướng dẫn, hoặc thậm chí liên kết đến tài liệu khác.
Scott

0

Tôi muốn nhận xét rằng tất cả các giải pháp được nhận xét ở trên chỉ hoạt động trên các hệ thống X11. Không có bất kỳ giải pháp nào (hoặc, ít nhất, tôi chưa tìm thấy ai) hoạt động trên Wayland.

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.