Apakah ada cara untuk menyimpan makro keyboard di bash?

11

Saya ingin menyimpan makro keyboard secara permanen yang telah saya rekam menggunakan C-x (dan C-x ). Apakah ada cara mudah untuk "melihat sumber" untuk makro saya yang baru direkam sehingga saya dapat mengikatnya ke pintasan keyboard di ~ / .inputrc?

Saya pikir dump-macrosakan melakukannya, tetapi sepertinya tidak ...

mgalg
sumber
Yah, aku akan terkutuk. Saya tidak tahu tentang fitur ini.
Charlie Martin
Saya menggunakan gnome-terminal dan gconf-editor untuk mengkonfigurasi pintasan keyboard.
saeedgnu

Jawaban:

3

Ternyata itu benar-benar tidak mungkin, yaitu, itu tidak mungkin sampai malam ini!

Karena saya penasaran untuk menggali kode sumber bash lagian saya pergi ke depan dan menambahkan fitur ini :). Kami akan melihat apakah pengelola bash menerapkan tambalan saya .

mgalg
sumber
1

Yang terbaik yang bisa saya pikirkan adalah mencoba:

echo >>.inputrc '<ctrl-x e>'

Atau jika makro memiliki beberapa baris coba:

echo >>.inputrc <<EOF
<ctrl-x e>
EOF

Jika Anda telah menggunakan karakter kontrol, Anda mungkin ingin menempatkan sed di sana untuk menggantinya dengan kode escape yang tepat untuk inputrc.

Lalu masuk dan edit baris terakhir untuk memiliki awalan dan akhiran yang tepat untuk apa yang ingin Anda capai ...

Dobes Vandermeer
sumber
simpan langkah, edit .inputrc, posisikan ke mana pun Anda ingin makro dan Cx e untuk 'mengetikkannya'. Tapi ya, saya akan mengatakan ini adalah cara terbaik, tentu saja, Anda bisa meletakkannya di mana saja yang Anda inginkan, itu hanya sekelompok penekanan tombol. Jika Anda tidak berada di 'mode / tempat / program' yang benar, Anda mungkin akan mendapatkan input yang salah dipahami. Tetapi orang akan berharap bahwa jika Anda tidak menggunakan makro di tempat yang tepat, bukan?
lornix
0

Tambahkan baris ini ke .inputrc:

alias macro
JATUH
sumber
oh, terima kasih sudah memperbaiki itu,
salahku
0

Tampaknya .inputrc memungkinkan Anda untuk hanya mengedit perintah Anda. Saya mencoba menggunakan dump-macrosjuga tetapi tidak bisa berfungsi juga tidak ada banyak dokumentasi tentang hal itu. Mungkin itu tidak berfungsi atau sudah usang.

Jika ada perintah seperti xevuntuk binding emacs, itu akan sangat membantu. Bagaimanapun, saya pikir taruhan terbaik Anda adalah mengedit inputrc menggunakan pedoman pada tautan pertama di bawah di bagian bawah halaman. Ini cukup mudah dilakukan.

Tautan kedua adalah contoh file inputrc untuk bantuan mencari tahu cara mengatur makro.

Selain itu, ada juga perintah keren yang disebut bind -Pyang akan mencantumkan semua makro Anda.

http://www.gnu.org/software/bash/manual/html_node/Miscellaneous-Commands.html#Miscellaneous-Commands

Berikut ini contoh file inputrc:

http://www.gnu.org/software/bash/manual/html_node/Sample-Init-File.html#Sample-Init-File

Dennis
sumber
Ya, intinya adalah tidak harus menulis makro dengan tangan, tetapi mencetak yang baru saja saya rekam ...
mgalgs
ternyata dump-macroshanya mencetak apa yang akan didefinisikan oleh makro Anda saat ini.
mgalgs