Tôi thuộc lớp nào hoặc phương thức hoặc chức năng nào?


7

Khi điều hướng một tệp nguồn với tìm kiếm gia tăng, tôi thường thấy mình nhảy vào một số bối cảnh cao hơn cửa sổ. Điều này đặt ra câu hỏi: "Tôi đang học lớp nào?". Hoặc, nếu nhà phát triển trước có xu hướng viết các phương thức cao: "Tôi đang ở lớp nào và phương thức nào?"

Tôi hiện đang trả lời những câu hỏi này bằng cách làm gián đoạn tìm kiếm của tôi để bắt đầu tìm kiếm regex mới theo hướng ngược lại, sau đó hủy tìm kiếm này C g, sau đó làm bất cứ điều gì (thường tiếp tục tìm kiếm). Nhưng, điều này xảy ra với tôi rất thường xuyên, tôi cảm thấy mình nên có một lệnh duy nhất để chỉ in bối cảnh lớp / phương thức trong bộ thu nhỏ. Hoặc, thậm chí tốt hơn, nếu bối cảnh đó luôn luôn được nhìn thấy. (Tôi sẽ từ bỏ một dòng cửa sổ cho điều đó.)

Có một số tiện ích Emacs đã gãi ngứa này? Hoặc, tôi chỉ đang đi về điều này theo cách hoàn toàn sai? Nếu có vấn đề, tôi tình cờ làm việc với Python và Java.

Câu trả lời:


9

which-function-mode hiển thị tên phương thức hiện tại.

Cấu hình sau đây, mà tôi nhận được từ Emacs Redux , hiển thị tiêu đề phương thức / function / orgmode hiện tại trong dòng tiêu đề hàng đầu thay vì dòng chế độ:

;; Show the current function name in the header line
(which-function-mode)
(setq-default header-line-format
              '((which-func-mode ("" which-func-format " "))))
(setq mode-line-misc-info
            ;; We remove Which Function Mode from the mode line, because it's mostly
            ;; invisible here anyway.
            (assq-delete-all 'which-func-mode mode-line-misc-info))

Hãy kiểm tra các bài viết được liên kết để giải thích đầy đủ which-function-mode.


Cảm ơn bạn. Tôi đã bật which-function-mode, nhưng tôi không thấy gì trong Python hay Java. Tuy nhiên, tôi thấy một cái gì đó cho C ++. (Có lẽ Emacs của tôi quá cũ.)
davidrmcharles

which-function-modekhông hoạt động trong chế độ Jython. Nhưng, thoát khỏi chế độ Jython và vào chế độ Python không đơn giản như vậy.
davidrmcharles
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.