2010-03-17 34 views
20

Tôi đang tìm các đề xuất cho nền tảng macro/tự động hóa GUI dễ sử dụng cho Linux.
Nếu bạn đã quen với AutoHotkey hoặc AutoIT trên Windows, thì bạn biết chính xác loại tính năng tôi cần, với mức độ phức tạp. Nếu bạn không quen thuộc, thì đây là một đoạn mã nhỏ như thế nào dễ dàng là sử dụng AHK:Dễ sử dụng các tùy chọn AutoHotkey/AutoIT cho Linux

InputBox, varInput, Please enter some random text... 
Run, notepad.exe 
WinWaitActive, Untitled - Notepad 
SendInput, %varInput% 
SendInput, !f{Up}{Enter}{Enter} 
WinWaitActive, Save 
SendInput, SomeRandomFile{Enter} 
MsgBox, Your text`, %varInput% has been saved using notepad! 

#n::Run, notepad.exe 

Bây giờ ví dụ trên, mặc dù một chút vô nghĩa, là một bản demo của các loại chức năng và đơn giản tôi đang tìm kiếm. Dưới đây là một lời giải thích cho những người không nói AHK:

---- Bắt đầu Giải thích của Bộ luật ----

  • yêu cầu người dùng nhập vào một số văn bản và lưu trữ nó trong varInput
  • Chạy notepad.exe
  • Waits đến cửa sổ tồn tại và đang hoạt động
  • Gửi nội dung của varInput như một loạt các tổ hợp phím
  • Gửi tổ hợp phím để vào file -> Exit
  • Waits cho đến khi cửa sổ "Save" đang hoạt động
  • Gửi vài tổ hợp phím hơn
  • Hiển thị hộp thông báo với một số văn bản và nội dung của một biến

  • Thanh ghi một hotkey, Win + N, mà khi ép thực thi notepad.exe

---- Kết thúc Giải thích ----

vì vậy, khi bạn có thể hiểu, các tính năng này là khá rõ ràng: Khả năng dễ dàng mô phỏng chức năng bàn phím và chuột, đọc đầu vào, xử lý và hiển thị đầu ra, thực thi chương trình, thao tác cửa sổ, đăng ký phím nóng, v.v. tất cả đang được thực hiện mà không yêu cầu bất kỳ #includes, dấu ngoặc đơn không cần thiết, khai báo lớp ... Tóm lại: Đơn giản.

Bây giờ tôi đã chơi xung quanh một chút với Perl và Python, nhưng chắc chắn không có AHK. Chúng tuyệt vời cho những công cụ tiên tiến hơn, nhưng chắc chắn, phải có một số công cụ trên mạng để dễ dàng tự động hóa GUI?

PS: Tôi đã thử chạy AHK với Wine nhưng việc gửi tổ hợp phím và phím nóng không hoạt động.

+0

tôi nghĩ rằng Syngergy + thực hiện điều này cho hầu hết các nền tảng bao gồm cả cửa sổ và Linux, cũng như một số thứ khác – plod

+0

Chỉnh sửa: Chỉ cần làm rõ, tôi không thích sử dụng ngôn ngữ có cú pháp được xác định rõ. (Tôi có nghĩa là, tôi biết làm thế nào AHK thường được kết hợp với người mới/noob/không lập trình, nhưng FYI tôi khá thoải mái lập trình trong C/C++ và Java) – Xeddy

+0

@plod: Từ trang web: "Synergy + (synergy- Plus) cho phép bạn dễ dàng chia sẻ một con chuột và bàn phím giữa nhiều máy tính với các hệ điều hành khác nhau mà không cần phần cứng đặc biệt. giống như có một máy tính để bàn thứ 2 hoặc thứ ba ... " Đây có phải là cùng Synergy + bạn đang nói hoặc có nhiều thứ hơn mô tả đó không? Bởi vì điều đó không có vẻ gì giống như những gì tôi cần ... – Xeddy

Trả lời

8

IronAHK đang được phát triển như là một hương vị đa nền tảng của AutoHotkey có thể được sử dụng trên Linux, nhưng nó không phải là một sản phẩm thịt ra.

+5

Cũng giống như một lưu ý cho những người chỉ ngại về điều này, IronAHK không còn (như của tôi viết) đang được làm việc, nhưng có thể tìm thấy nguồn mở [trên git] (https://github.com/polyethene/IronAHK). – Poik

1

Bạn nên xem Experitest, tôi đang sử dụng phiên bản cửa sổ nhưng dựa trên Java và tôi nghĩ nó cũng hỗ trợ Linux.

5

Sikuli cho phép bạn tự động hóa giao diện của mình bằng ảnh chụp màn hình. Chạy trên bất kỳ nền tảng Java nào là nền tảng chéo.

9

Tôi đề xuất trang web, alternativeto.net để tìm các chương trình thay thế.

Nó hiển thị 3 lựa chọn thay thế để tự động: AutoKey, Sikuli và Silktest. AutoKey dường như có hiệu quả.

Các vấn đề liên quan