วิธีการวาง TextEdit อย่างถาวรในรายการเมนูเปิดด้วย ...


25

ฉันเป็นผู้พัฒนาและมักจะจัดการกับไฟล์ประเภทที่ผิดปกติ หากฉันต้องการเปิดไฟล์ใดไฟล์หนึ่งใน TextEdit ฉันต้องเริ่มก่อนจากนั้นจึงเปิดไฟล์ด้วยหรือลากไฟล์ไปที่ไอคอน TextEdit

มีวิธีในการวาง TextEdit.app อย่างถาวรในรายการเมนูเปิดด้วย ... ไม่ว่าฉันจะดูไฟล์ประเภทใด

แน่นอนว่าขั้นตอนนี้จะเป็นประโยชน์สำหรับตัวแก้ไขข้อความที่คุณเลือกหาก TextEdit ไม่ใช่ถ้วยชาของคุณ


1
ฉันมีความปรารถนานี้เช่นกัน ปัจจุบันฉันเก็บ TextEdit ไว้ใน Dock ของฉันดังนั้นจึงสามารถลากไฟล์ไปได้ตลอดเวลา
GEdgar

คำตอบ:


19

วิธีเดียวในการทำเช่นนี้กับไฟล์ทุกประเภทคือการสร้างบริการในระบบอัตโนมัติซึ่งจริงๆแล้วควรทำให้ทุกอย่างง่ายขึ้นสำหรับคุณ

  1. เปิด Automator และเลือก "บริการ"
  2. ในเมนูแบบเลื่อนลง "บริการได้รับการเลือก ... " เปลี่ยนเป็นอ่าน "รับไฟล์และโฟลเดอร์ที่เลือกในแอปพลิเคชันใด ๆ "
  3. เลือกอรรถประโยชน์จากเมนูไลบรารีในบานหน้าต่างด้านซ้ายและดับเบิลคลิก "เรียกใช้ Shell Script"
  4. เปลี่ยนดรอปดาวน์ "Pass Input" เป็น "as arguments"
  5. ลบสคริปต์เริ่มต้นและแทนที่ด้วยสิ่งต่อไปนี้:

    if [ -f "$1" ] ; then
        open -a "TextEdit" "$1" ;
    fi
    

บันทึกไฟล์นี้เป็นสิ่งที่คุณต้องการให้แสดงในเมนูตามบริบทเช่น "เปิดด้วย TextEdit" และคุณทำเสร็จแล้วตอนนี้คุณจะมีตัวเลือกในการเปิดไฟล์ใด ๆ ที่มีการแก้ไขข้อความ

มันจะไม่เปิดในเมนูมันจะเป็นรายการแยกต่างหากในเมนูตามบริบทที่จัดกลุ่มกับบริการอื่น ๆ ที่คุณใช้งานอยู่

ในบันทึกย่อด้านข้างหากคุณกำลังพัฒนาบน mac คุณควรคิดถึงการใช้โปรแกรมแก้ไขข้อความที่ดีกว่าเช่น TextMate หรือ TextWrangler หรือ Sublime Text สิ่งเหล่านี้บางอย่างถึงกับเพิ่มบริการให้คุณเพื่อช่วยให้คุณประหยัดทุกอย่างที่กล่าวมา


1
+1 และใช่ TextEdit ไม่ใช่เครื่องมือแก้ไขข้อความธรรมดาจริง ๆ - ทำได้ แต่ไม่มีคุณสมบัติใด ๆ ที่จะทำให้ง่ายขึ้นและต้องการแก้ไขข้อความที่หลากหลาย
NReilingh

สวย! มันจะดียิ่งขึ้นถ้าเราสามารถ จำกัด การนี้เพื่อไฟล์ทั้งหมดในรูปแบบข้อความ (รวมถึงรหัสที่มาและชอบ)
วิลเลียม Jockusch

1
มีวิธีใดบ้างที่จะทำให้มันปรากฏในเมนูหลักแทนที่จะต้องค้นหาในเมนูบริการ? หรืออย่างน้อยก็เพื่อซ่อนรายการที่ไม่ได้ใช้ในเมนูบริการ ...
pqnet

@pqnet - คุณพบวิธีการทำเช่นนี้หรือไม่? ฉันกำลังมองหาสิ่งนี้เช่นกัน: apple.stackexchange.com/questions/206068/…
Chris Snow

7

คุณสามารถเพิ่มประเภทไฟล์ที่รองรับได้โดยการแก้ไข Info.plistแต่ฉันไม่รู้วิธีการดังกล่าวสำหรับไฟล์ทุกประเภท การเพิ่ม UTIs เช่น public.data หรือ public.item ให้กับ Info.plist หรือ com.apple.LaunchServices.plist ดูเหมือนจะไม่ทำงาน

ฉันใช้dutiเพื่อทำให้ TextMate เป็นแอปพลิเคชั่นเริ่มต้นสำหรับข้อความธรรมดาประเภทต่างๆ:

# plain text files without an extension
com.macromates.TextMate.preview public.plain-text all

# executable scripts
com.macromates.TextMate.preview public.unix-executable all

com.macromates.TextMate.preview .as all
com.macromates.TextMate.preview .ass all
com.macromates.TextMate.preview .bash all
com.macromates.TextMate.preview .bom all
com.macromates.TextMate.preview .c all
com.macromates.TextMate.preview .cfm all
com.macromates.TextMate.preview .cfml all
com.macromates.TextMate.preview .class all
com.macromates.TextMate.preview .coffee all
com.macromates.TextMate.preview .conf all
com.macromates.TextMate.preview .cpp all
com.macromates.TextMate.preview .css all
com.macromates.TextMate.preview .csv all
com.macromates.TextMate.preview .ctp all
com.macromates.TextMate.preview .dat all
com.macromates.TextMate.preview .data all
com.macromates.TextMate.preview .doc all
com.macromates.TextMate.preview .erb all
com.macromates.TextMate.preview .fields all
com.macromates.TextMate.preview .gemspec all
com.macromates.TextMate.preview .h all
com.macromates.TextMate.preview .haml all
com.macromates.TextMate.preview .hotkey all
com.macromates.TextMate.preview .hpp all
com.macromates.TextMate.preview .idx all
com.macromates.TextMate.preview .java all
com.macromates.TextMate.preview .js all
com.macromates.TextMate.preview .json all
com.macromates.TextMate.preview .keylayout all
com.macromates.TextMate.preview .kmlibrary all
com.macromates.TextMate.preview .less all
com.macromates.TextMate.preview .log all
com.macromates.TextMate.preview .m all
com.macromates.TextMate.preview .manifest all
com.macromates.TextMate.preview .md all
com.macromates.TextMate.preview .mm all
com.macromates.TextMate.preview .msass all
com.macromates.TextMate.preview .opml all
com.macromates.TextMate.preview .pg all
com.macromates.TextMate.preview .php all
com.macromates.TextMate.preview .pl all
com.macromates.TextMate.preview .plist all
com.macromates.TextMate.preview .plist all
com.macromates.TextMate.preview .py all
com.macromates.TextMate.preview .rb all
com.macromates.TextMate.preview .rd all
com.macromates.TextMate.preview .rdoc all
com.macromates.TextMate.preview .readme all
com.macromates.TextMate.preview .rhtml all
com.macromates.TextMate.preview .rst all
com.macromates.TextMate.preview .sb all
com.macromates.TextMate.preview .scss all
com.macromates.TextMate.preview .sh all
com.macromates.TextMate.preview .srt all
com.macromates.TextMate.preview .strings all
com.macromates.TextMate.preview .sub all
com.macromates.TextMate.preview .tex all
com.macromates.TextMate.preview .tsv all
com.macromates.TextMate.preview .utf all
com.macromates.TextMate.preview .xml all
com.macromates.TextMate.preview .yaml all

duti ไม่สนับสนุนเพียงแค่เพิ่มแอปพลิเคชั่นเพื่อเปิดด้วยเมนูโดยไม่ทำให้เป็นค่าเริ่มต้น


2

นี่คือการปรับคำตอบที่ได้รับการยอมรับของ @ JamiePatt โดยใช้การปรับปรุงของ user48595 โดยการเพิ่มเติมว่าจะทำให้ TextEdit เป็นแอปพลิเคชั่นเริ่มต้นเพื่อเปิดไฟล์ก่อนที่จะเปิดจริง ซึ่งหมายความว่าในอนาคตไฟล์สามารถเปิดได้ตามปกติ

  1. ตรวจสอบรหัสฐานสิบหกโดยเรียกใช้โดยxattr -p com.apple.LaunchServices.OpenWith <file>ที่ 'file' เป็นไฟล์ที่คุณได้ตั้งค่าให้เปิดด้วย TextEdit ด้วยตนเอง

  2. เปิด Automator และเลือกประเภท "บริการ" สำหรับเอกสารของคุณ

  3. ภายใต้เมนูแบบเลื่อนลง "บริการได้รับเลือก" ให้เลือก "ไฟล์หรือโฟลเดอร์"

  4. เพิ่มขั้นตอน "ยูทิลิตี้ -> กำหนดค่าของตัวแปร" คุณควรเห็นตัวแปรชื่อ "ที่เก็บข้อมูล"

  5. เพิ่มขั้นตอน "ยูทิลิตี้ -> เรียกใช้สคริปต์เชลล์" ภายใต้เมนูแบบเลื่อนลง "pass input" ให้เลือก "เป็นอาร์กิวเมนต์" แทนที่เนื้อหาของฟิลด์ข้อความด้วยด้านล่างตรวจสอบให้แน่ใจว่ารหัสเลขฐานสิบหกเหมือนกันกับสิ่งที่คุณได้รับจากขั้นตอนแรก

    if [ -f "$1" ] ; then
        xattr -wx com.apple.LaunchServices.OpenWith "62 70 6C 69 73 74 30 30 D3 01 02 03 04 05 06 57 76 65 72 73 69 6F 6E 54 70 61 74 68 5F 10 10 62 75 6E 64 6C 65 69 64 65 6E 74 69 66 69 65 72 10 00 5F 10 1A 2F 41 70 70 6C 69 63 61 74 69 6F 6E 73 2F 54 65 78 74 45 64 69 74 2E 61 70 70 5F 10 12 63 6F 6D 2E 61 70 70 6C 65 2E 54 65 78 74 45 64 69 74 08 0F 17 1C 2F 31 4E 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 63" "$1";
        xattr -d com.apple.quarantine "$1" || true;
    fi
    
  6. เพิ่มขั้นตอน "ยูทิลิตี้ -> รับค่าตัวแปร" คุณควรเห็นตัวแปรชื่อ "ที่เก็บข้อมูล"

  7. เพิ่มขั้นตอน "ไฟล์ & โฟลเดอร์ -> เปิดรายการค้นหา" ใต้เมนูแบบเลื่อนลง "Open with" เลือก "TextEdit"

  8. บันทึกด้วยชื่อที่น่าจดจำเช่น TextEditify

ครั้งแรกที่คุณต้องการเปิดเอกสารที่ไม่ใช่ TextEdit คุณจะต้องเลือก TextEditify จากเมนูคลิกขวา การเปิดครั้งต่อไปสามารถเกิดขึ้นได้ตามปกติ

คำอธิบายของสคริปต์:

xattrคำสั่งแรกเพิ่มแอตทริบิวต์มักจะบันทึกถ้าคุณเลือก "เปิดด้วยเสมอ" ด้วยตนเอง

xattrคำสั่งที่สองทำให้แน่ใจว่าสามารถใช้งานได้กับไฟล์ที่ดาวน์โหลดจากอินเทอร์เน็ต


1

คุณสามารถสร้างเวิร์กโฟลว์เมนูบริการตามที่อธิบายอิทธิพล อย่างไรก็ตามคุณสามารถใช้ตัวเลือก 'Open Finder Items' และเพิ่ม TextEdit เป็นแอพ

มีโพสต์ที่ดีเกี่ยวกับที่นี่ซึ่งอธิบายถึงวิธีการสร้างเวิร์กโฟลว์ในรายละเอียดเพิ่มเติม


1
รู้รอบบน Ask Different จะต้องเป็นมากกว่าแค่ลิงค์ มันไม่เป็นไรที่จะรวมลิงค์ แต่โปรดสรุปหรือตัดตอนมาในคำตอบ ความคิดคือการทำให้คำตอบยืนอยู่คนเดียว
nohillside

0
  1. เปิดแอปพลิเคชันAutomator

  2. คลิก New Document

  3. เลือก Service

    ป้อนคำอธิบายรูปภาพที่นี่

  4. เปลี่ยนเป็นServices receives selected"ไฟล์หรือโฟลเดอร์"

    ป้อนคำอธิบายรูปภาพที่นี่

  5. ค้นหาAction"Open Finder Items" และลากไปยังพื้นที่เวิร์กโฟลว์

    GIF

  6. เปลี่ยนOpen with:เป็น "TextEdit" หรือแอปพลิเคชันใด ๆ ที่คุณต้องการ (ฉันชอบ "Visual Studio Code")

  7. บันทึกบริการของคุณอย่างมีเหตุผลเช่น "เปิดด้วย TextEdit" หากคุณเลือก TextEdit

ตอนนี้คุณสามารถคลิกขวาที่รายการ Finder แล้วเลือกServices-> Open with TextEdit!

ขอบคุณ user48595 และลิงค์ที่โพสต์ในคำตอบของเขา: http://www.mactricksandtips.com/2013/05/add-open-with-textedit-or-any-other-app-to-right-click-menu-item .html


-3

เพียงใช้ตัวเลือก "-e" เพื่อเปิดด้วย TextEdit: open -e yourfile.wh ก็ตามและมันจะเปิดใน TextEdit

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.