Saya mencoba melompat kembali ke shell dari mc (menggunakan co) dan kemudian fasd:
$ z 32
fasd:4: unknown file attribute: _
Saya mengalami masalah yang sama. Dari beberapa alasan, ada fungsi fasd() yang didefinisikan di terminal MC. Saya tidak tahu bagaimana itu sampai di sana.
% which fasd
fasd () {
pwd 7 kill -STOP precmd_functions+=(_mc_precmd)
}
Menghapus fungsi memperbaiki masalah:
% unset -f fasd
% which fasd
/usr/bin/fasd
% z tmp <tab>
/tmp /home/fcelda/tmp
Tampaknya kait _fasd_preexec
bertentangan dengan kait _mc_precmd
. Saya dapat menemukan solusi.
Ini adalah kait fasd saat ini:
% which _fasd_preexec
_fasd_preexec () {
{
eval "fasd --proc $(fasd --sanitize $1)"
} >> "/dev/null" 2>&1
}
Dan ini adalah pengait MC:
% which _mc_precmd
_mc_precmd () {
pwd >&7
kill -STOP $$
}
Saya membuatnya bekerja dengan menghilangkan debugging di _fasd_preexec
:
% which _fasd_preexec
_fasd_preexec () {
fasd --proc "$(fasd --sanitize "$1")"
}
Saya tidak yakin bagaimana cara memperbaiki masalah ini dengan benar. Mengganti kurung kurawal dengan tanda kurung juga berhasil, tetapi saya tidak yakin apakah diinginkan untuk menjalankan sub-kulit.
Baru saja mengalami masalah yang sama. Mencoba mendefinisikan ulang _fasd_preexec
tanpa hasil.
Saya menyelesaikan ini dengan redefinisi _fasd_preexec (). Salam @fcelda
di .zshrc . Anda
if ps $PPID |grep -q mc; then
_fasd_preexec () {
fasd --proc "$(fasd --sanitize "$1")"
}
endif
Anda juga dapat memperbaiki sebagian jika Anda mendefinisikan ulang fasd_cd
dengan path lengkap ke fasd
yang dapat dieksekusi. Jadi Anda hanya akan memiliki fungsi fasd yang rusak. Dan semua alias Anda seperti z
, zz
akan berfungsi.
PS Apakah kami memerlukan info ini di README.md?
@ezh Saya pikir akan menyenangkan memiliki ini di ReadMe .
kesalahan ini menyambut saya di setiap platform yang memungkinkan, jadi saya mulai menghindari penyelesaian. itu harus ditambahkan di Readme. Senang memiliki perbaikan.
Komentar yang paling membantu
Saya menyelesaikan ini dengan redefinisi _fasd_preexec (). Salam @fcelda
di .zshrc . Anda
Anda juga dapat memperbaiki sebagian jika Anda mendefinisikan ulang
fasd_cd
dengan path lengkap kefasd
yang dapat dieksekusi. Jadi Anda hanya akan memiliki fungsi fasd yang rusak. Dan semua alias Anda sepertiz
,zz
akan berfungsi.PS Apakah kami memerlukan info ini di README.md?