Điều khó chịu nhất một người dùng Unix cảm thấy khi sử dụng Plan 9 có lẽ là việc họ phải dùng đến con chuột nhiều hơn.
Họ thường phàn nàn rằng dùng con chuột là chậm hơn so với việc dịch con trỏ bằng các phím mũi tên hay phím hjkl (của vi). Điều này không đúng. Dùng con chuột có vẻ chậm nhưng thực ra lại nhanh hơn dùng các phím:
(tóm tắt: người dùng bàn phím cứ tưởng mình nhanh nhưng bấm giờ lại cho thấy là chậm hoặc không nhanh hơn, điều hướng con trỏ bằng bàn phím sẽ rơi vào trạng thái "mất trí nhớ" hay thôi miên, mất luôn nhận thức về thời gian ^_^)
Nói ngắn gọn, dịch chuyển con trỏ cần sự tập trung cao độ để dịch chuyển con trỏ đúng theo ý muốn; điều đó khiến cho ta bị mất nhận thức về sự trôi qua của thời gian -- hãy nghĩ đến việc bạn đang say mê làm việc và ngạc nhiên khi nhìn đồng hồ -- trong khi việc sử dụng con chuột diễn ra theo bản năng, để đầu óc có chỗ suy nghĩ về những việc cao siêu hơn, như là phàn nàn về con chuột chẳng hạn.
Một suy nghĩ phổ biến là việc đưa tay từ bàn phím tới con chuột và rồi đưa về sẽ mất thời gian và làm gián đoạn việc đánh máy. Đúng, nhưng nó không mất thời gian như bạn nghĩ đâu. Và nếu bạn dùng bàn phím không có hàng phím số, con chuột sẽ ở gần hơn. Kể cả có hay không có hàng phím số, bạn sẽ nhanh làm quen và không cần phải tìm con chuột. Tay bạn sẽ tự đặt con chuột ở một vị trí và tự động sang đúng vị trí đó, thường là để chuẩn bị cho một thao tác chuột trong khi tay kia đang đánh máy.
Đúng là dùng chuột sẽ chậm hơn cho một số việc kiểu như xóa ký tự tab ở đầu mỗi dòng so với việc sử dụng bàn phím và gõ "^xjxjxjxjxjxjxjxjxjxjxjxjxj" nếu bạn dùng vi. Nhưng trường hợp này bạn đang lập trình trong trình soạn thảo văn bản (bằng một vòng lặp for được thực hiện thủ công) hơn là việc soạn thảo văn bản.
Khi con chuột được tối ưu, chúng tôi thấy rằng việc chọn một dòng và nhập Edit s/^<tab>//g trong acme hay s/^<tab>//g trong sam sau đó chạy sẽ nhanh hơn. Thao tác này phổ biến nên acme cung cấp hai mã kịch bản dòng lệnh để bạn có thể nhập |unind và |ind trong thanh trên của cửa sổ và bấm vào mỗi khi bạn cần.
Hãy so sánh việc thực hiện các lệnh chỉnh sửa như tìm kiếm và thay thế khi sử dụng acme hoặc sam và vi. Trong acme bạn có thể chọn đoạn mà bạn muốn, nhập lệnh là xong. Trong vi, bạn phải dịch con trỏ về một đầu, đánh dấu vị trí, dịch con trỏ sang đầu kia, lại đánh dấu, rồi mới nhập lệnh. Việc dịch chuyển con trỏ mất nhiều thời gian hơn dùng con chuột. Bạn có thể tự bấm giờ.
Với nhiều người dùng Plan 9, sau khi sử dụng con chuột trong Plan 9 trong một thời gian dài, rồi sử dụng vi trên Unix khiến họ nhận ra mình đã tốn bao nhiêu thời gian để nhìn vào màn hình trong lúc đang dịch con trỏ bằng hjkl. Sau khi thoát khỏi trạng thái thôi miên mà Tog miêu tả, tôi cảm thấy vô cùn bực bội. Đúng là tôi đang tập trung nhìn con trỏ dịch chuyển, nên tất cả những gì tôi có thể nghĩ là "cáu thật, nếu mình có thể bấm chuột vào chỗ mình muốn đến thì giờ mình đã đến được rồi".
Một điểm tốt của con chuột là nó trực quan hơn. Hãy xem cách mà thanh cuộn hoạt động trong Plan 9: bấm chuột trái hay chuột phải để cuộn sẽ di chuyển lên xuống dựa trên vị trí của bạn trong thanh cuộn. Trong một hệ thống dựa trên con trỏ sẽ khó làm hơn. Cắt và dán bằng hai ba thao tác chuột liên tiếp trong acme và rio nhanh hơn khi làm điều đó trong những hệ thống dùng con trỏ, đặc biệt khi bạn đang di chuyển một đoạn văn bản không được căn dòng. Bạn có thể tự bấm giờ.
Tất nhiên là bạn cần có một con chuột tốt. Nó cần có ba nút bấm, không phải hai nút với một con lăn ở giữa. Plan 9 sử dụng chuột giữa nhiều lắm. Bạn sẽ bị đau ở bất kỳ ngón tay nào bạn dùng để bấm con lăn.
Điều quan trọng là bạn cần sử dụng con chuột trong vòng một đến hai tuần trước khi phàn nàn về nó. Rồi bạn sẽ đồng ý với chúng tôi.
Bạn cảm thấy mình làm việc hiệu quả hơn trong emacs và những trình soạn thảo văn bản tương tự vì bạn luôn phải động não trong việc chỉnh sửa, còn trong acme và sam bạn cảm thấy chậm hơn vì bạn làm theo bản năng, nhưng thực tế bạn lại đang làm nhanh hơn.
Khi bạn gõ sai chuỗi cần tìm kiếm, trong emacs bạn dùng ctl-S và ctl-R, việc sửa lỗi rất vất vả; trong acme, lệnh "Look" cho phép bạn chỉ việc sửa đổi thanh trên và thực hiện lại việc tìm kiếm.
Dear author of this article: unknown
Bình luận