ฉันรู้เกี่ยวกับ MacVim และในขณะที่มันดีมากฉันอยู่ในอาคารผู้โดยสารตลอดเวลา เหตุใดจึงมีสองโปรแกรมที่ทำงานเมื่อฉันสามารถอยู่ในหนึ่ง
ดังนั้นคำถามคือฉันจะทำให้ VIM (ทำงานใน iTerm2) เป็นตัวแก้ไขข้อความเริ่มต้นได้อย่างไร
ฉันรู้เกี่ยวกับ MacVim และในขณะที่มันดีมากฉันอยู่ในอาคารผู้โดยสารตลอดเวลา เหตุใดจึงมีสองโปรแกรมที่ทำงานเมื่อฉันสามารถอยู่ในหนึ่ง
ดังนั้นคำถามคือฉันจะทำให้ VIM (ทำงานใน iTerm2) เป็นตัวแก้ไขข้อความเริ่มต้นได้อย่างไร
คำตอบ:
ดูคำตอบของฉัน ที่นี่ แต่ใช้ เรียกใช้ AppleScript การดำเนินการใน Automator แทนและใช้รหัส AppleScript ต่อไปนี้:
on run {input, parameters}
if (count of input) > 0 then
tell application "System Events"
set runs to false
try
set p to application process "iTerm"
set runs to true
end try
end tell
tell application "iTerm"
activate
if (count of terminals) = 0 then
set t to (make new terminal)
else
set t to current terminal
end if
tell t
tell (make new session at the end of sessions)
exec command ("vim \"" & POSIX path of first item of input as text) & "\""
end tell
if not runs then
terminate first session
end if
end tell
end tell
end if
end run
นี่จะเปิดหน้าต่าง iTerm ใหม่หากไม่มีเลยไม่เช่นนั้นจะเป็นแท็บใหม่และเปิดไฟล์ในนั้น ผล:
นี่เป็นวิธีที่ง่ายมากในการเปิดไฟล์ใน terminal vim จากคำสั่ง iterm คลิก นอกจากนี้ยังข้ามไปยังหมายเลขบรรทัดหากระบุไว้ คุณจะต้องดาวน์โหลดหนึ่งในบิลด์ต่อคืนเพื่อรับฟีเจอร์โปรเซสร่วม
คลิกที่: การตั้งค่า - & gt; โปรไฟล์ - & gt; สูง
ภายใต้ "Semantic History" เลือก "Run coprocess .. " ในช่องข้อความใส่: echo vim \ 1 + \ 2
แหล่งที่มา: https://coderwall.com/p/5hp1yg