我是一名高中計算機科學老師,並且想使用emacs向我的學生展示程序。我希望能夠一次一行地顯示程序,甚至是短程序,而不是從一開始就將整個程序顯示在emacs緩衝區中。Emacs如何僅顯示文件中光標或之前的行
因此,我希望emacs隱藏當前行下面的所有行,並在將光標向下移動到該行時顯示每行。
我是一名高中計算機科學老師,並且想使用emacs向我的學生展示程序。我希望能夠一次一行地顯示程序,甚至是短程序,而不是從一開始就將整個程序顯示在emacs緩衝區中。Emacs如何僅顯示文件中光標或之前的行
因此,我希望emacs隱藏當前行下面的所有行,並在將光標向下移動到該行時顯示每行。
受您的問題啓發,我將庫reveal-next.el
添加到EmacsWiki。我認爲它做到了你想要的。
試試這個:
(defun narrow-next-line()
(interactive)
(widen)
(call-interactively 'move-end-of-line)
(forward-char)
(call-interactively 'move-end-of-line)
(narrow-to-region 1 (point)))
(global-set-key (kbd "C-x n i") 'narrow-next-line)
選擇你自己的熱鍵命令。另請參閱http://www.gnu.org/software/emacs/manual/html_node/emacs/Narrowing.html
+1使用窄化。 –
把下面的內容放在我的init.el中,我也能夠添加當前行的突出顯示。謝謝。 (負載文件 「〜/ .emacs.d /揭示-next.el」) (defun定義隱藏-以下代碼() (交互) (HL-線模式t) (reveal-下一個模式t)) (全局設置密鑰(kbd「C-」)'hide-following-code) –
rainerpm
這只是突出顯示的最後一行,不是?順便說一句,你有沒有注意到,如果你將'reveal-next-char-level'設置爲t,那麼你一次可以隱藏/顯示小於或大於一行的東西。例如,你可以用'C-M-f'向前移動sexp,揭示它等等。無論如何,HTH。 – Drew