ฉันต้องการเขียนสคริปต์และให้ MacVim เรียกคำสั่ง bash บางคำ ฉันมีนามแฝงบางคนและต้องการให้กลุ่มเรียกพวกเขาดังนั้นฉันรู้ว่าฉันต้องการเชลล์การเข้าสู่ระบบเพียงแค่ไม่รู้วิธีการใช้กลุ่มอย่างมีประสิทธิภาพ
ฉันอ่านสิ่งนี้: https://stackoverflow.com/questions/4642822/vim-is-not-obeying-command-aliases (ซึ่งใช้ไม่ได้กับ MacVim ของฉัน); และสิ่งนี้: https://stackoverflow.com/questions/4642822/vim-is-not-obeying-command-aliasesซึ่งดูเหมือนว่าเป็นความคิดที่ดี
ดังนั้นฉันจึงเปิด. vimrc ของฉันและใส่สิ่งนี้ลงใน: set shell=/bin/bash\ -l
.
ตอนนี้มีอะไรบางอย่างแปลก ๆ เกิดขึ้น: ฉันมีนามแฝงอยู่ในตัวฉัน.bash_profile
:
alias mytest='echo "TEST!!"'
.bashrc
แหล่งที่มาของฉัน.bash_profile
ดังนั้นฉันรู้ว่าไม่ควรเป็นเรื่องของการตั้งชื่อแทน ถ้าฉันเข้าไปในกลุ่มและเรียกใช้::! alias mytest
ฉันเห็นสิ่งนี้:
alias mytest='echo "TEST!!"'
Press ENTER or type command to continue
ถ้าฉันวิ่ง:! mytest
แม้ว่านี่คือสิ่งที่ฉันได้รับ:
/bin/bash: mytest: command not found
shell returned 127
Press ENTER or type command to continue
ดังนั้นฉันจึงหมดความคิดเกี่ยวกับสิ่งที่เกิดขึ้น ทำไมเมื่อฉันเรียกใช้ "นามแฝง" นามแฝงอยู่ที่นั่น แต่เมื่อฉันเรียกใช้นามแฝงเองทุบตีไม่รู้จักมัน?
ฉันขอขอบคุณข้อมูลเชิงลึกที่ทุกคนสามารถให้ฉันในเรื่องนี้
ขอบคุณ.
UPDATE:
ตอนนี้ฉันพยายามเปลี่ยน.vimrc
สายของฉันเป็น:
set shell=/bin/bash\ -li
เพื่อที่จะทำให้เชลล์มีการโต้ตอบเช่นเดียวกับการเข้าสู่ระบบเชลล์และมันทำงาน
ดังนั้นฉันจึงเปลี่ยนคำถามเล็กน้อย: ทำไมเรื่องนี้ถึงสมเหตุสมผล? ตามที่ฉันเข้าใจเชลล์ล็อกอินจะเรียกใช้ของฉัน.bash_profile
และโหลดชื่อแทนของฉัน ทำไมมันไม่เพียงพอ