Saya dalam mode terminal di Ubuntu, dan saya menjalankan emacs dengan 2 buffer terbuka, satu adalah file ruby, dan yang lainnya adalah shell (dibuka dengan mengetikkan Mx shell), dan ketika saya beralih ke buffer shell, saya ingin untuk menjalankan perintah yang sama yang saya jalankan sebelumnya. Saya biasanya hanya menekan panah atas di jendela terminal, tetapi di emacs, itu hanya menempatkan kursor ke atas satu baris.
Adakah yang tahu tentang keystroke untuk menjalankan perintah shell sebelumnya dari dalam shell emacs?
Selain itu M-p, Anda juga dapat menggunakan C-up, yang menurut saya lebih disukai. Kunci pelengkap M-natau C-downakan memberi Anda perintah berikutnya dalam sejarah.
sumber
C-up
dipetakan keexpose
. DanM-p
terasa lebih alami bagi saya.Anda juga dapat menambahkan ini ke file inac emacs Anda:
sumber
solusi thiagowfx lebih disukai bagi saya, karena saya biasanya mencoba untuk menghindari ketergantungan konteks. Namun, agar berfungsi, saya harus menambahkan mode pemuatan comint terlebih dahulu:
sumber
Jawaban DeLorean88 bekerja untuk saya, tetapi hanya dengan braket penutup kedua pada baris "progn":
sumber