ฉันจะเชื่อมโยงส่วนขยายไฟล์กับประเภทเนื้อหาได้อย่างไร


9

ฉันมีไฟล์ที่มี "module" ส่วนขยายและ "inc" ซึ่งเป็นไฟล์ PHP เมื่อฉันพยายามเปิดพวกเขารายการแอปพลิเคชันที่สามารถเปิดได้จะแสดงเฉพาะแอปพลิเคชันที่ฉันได้ตั้งค่าเป็นแอปพลิเคชันเริ่มต้นถึงแม้ว่าจะมีตัวแก้ไขข้อความอื่นที่สามารถเปิดไฟล์ PHP ได้ เพื่อเน้นเป็นไฟล์ PHP

ภาพหน้าจอ

หากฉันเปิดกล่องโต้ตอบ "รับข้อมูล" ให้เลือกแอปพลิเคชันอื่นใน "เปิดด้วย" แล้วคลิกที่ "เปลี่ยนทั้งหมด ... " สิ่งที่ฉันได้รับมีดังต่อไปนี้

ภาพหน้าจอ

ภาพหน้าจอ

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

ภาพหน้าจอ

มีวิธีเชื่อมโยงส่วนขยายเหล่านั้นกับประเภทเนื้อหาที่ใช้สำหรับไฟล์ PHP หรือไม่?
หรือฉันจะแสดงได้อย่างไรในรายการแอปพลิเคชันที่แสดงใต้เมนู "เปิดด้วย" แอปพลิเคชันทั้งหมดที่สามารถเปิดไฟล์ PHP ได้เมื่อ Finder ไม่ได้ทำเช่นนั้น

ฉันจะอธิบายสิ่งที่ฉันต้องการได้รับโดยใช้ภาพหน้าจอของ RCDefaultApp

ภาพหน้าจอ

ไฟล์ที่ใช้ "module" เป็นส่วนขยายเป็นไฟล์ PHP ในกรณีของฉัน (เป็นโมดูล Drupal); สิ่งที่ฉันต้องการคือการเพิ่มส่วนขยายนั้นให้กับส่วนขยายที่รายงานสำหรับ UTI "public.php-script"


ฉันอยากรู้สิ่งนี้เช่นกัน - สิ่งที่ใกล้เคียงที่สุดที่ฉันได้รับเกี่ยวกับUTI และ Launch Servicesบน SuperUser ...
bmike

ฉันคิดว่าการใช้ RCDefaultApp เป็นคำตอบของ Kungi เป็นวิธี แต่ถ้าคุณคิดว่าควรมีการแมปส่วนขยายเฉพาะกับประเภทเนื้อหาเหล่านี้คุณสามารถลองเขียนถึงผู้สร้างแอปเพื่อเสนอรวมถึง
Agos

คำตอบ:


3

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

วิธีที่ดีที่สุดในการแก้ไขปัญหานี้คือขอให้นักพัฒนาซอฟต์แวร์เพิ่มการสนับสนุนสำหรับส่วนขยายของไฟล์ในแอปพลิเคชั่นเวอร์ชันอนาคต

ด้วยที่กล่าวว่าคุณได้พบวิธีเดียวที่มีเอกสารที่ Apple เสนอเพื่อแทนที่ edicts ของฐานข้อมูล Launch Services หากคุณต้องการขุดให้ลึกและใช้ถนนให้น้อยลงเดินทาง สนับสนุนที่นี่เป็นตัวชี้ไม่กี่

มีไฟล์. plist ที่ควบคุมส่วนของ Launch Services ที่อยู่ที่: ~ / Library / Preferences / com.apple.LaunchServices.plist

Apple บันทึกว่าการลบโปรแกรมนี้ออกสามารถล้างตัวเลือกเปิดด้วยบริบทตามที่ต้องการ แต่นั่นคือสิ่งที่ตรงกันข้ามกับสิ่งที่คุณหลังจาก

มันเป็นไบนารี .plist แต่คุณสามารถแปลงเป็นเวอร์ชัน xmlและทดลองเล็กน้อยเพื่อดูว่าคุณสามารถหาสูตรเพื่อให้ได้สิ่งที่คุณต้องการ ไม่แนะนำให้เลือกซึ่งอาจก่อให้เกิดอันตรายและมีแนวโน้มที่จะถูกเขียนทับโดยระบบปฏิบัติการในบางจุด

นอกจากนี้ยังมีเครื่องมือที่ซ่อนอยู่ลึกลงไปอีกเล็กน้อยในระบบปฏิบัติการที่เรียกว่าlsregisterซึ่งอาจเป็นประโยชน์ในการสำรวจระบบประปาของ Launch Services นี่คือประโยชน์คำอธิบาย lsregister และตัวเลือกของ


3

ทางเลือกในการแก้ไขปัญหาที่กล่าวถึงโดย Gerry คือบานหน้าต่างการตั้งค่าRCDefaultApp ฟรีและให้คุณตั้งค่าการเชื่อมต่อ Application-> Content Type, Application-> URL ทั้งหมดในระบบของคุณ

ในบานหน้าต่าง "แอพ" ของ RCDefaultApp คุณสามารถตั้งค่าประเภทไฟล์ที่รองรับเฉพาะแอปพลิเคชันเมื่อคุณตรวจสอบ "php" ด้วยเครื่องมือแก้ไขของคุณมันจะแสดงในเมนู "เปิดด้วย"


ไม่อนุญาตให้เพิ่มส่วนขยายไปยังส่วนที่เกี่ยวข้องกับ UTI หรือประเภทเนื้อหา อนุญาตให้เปลี่ยนแอปพลิเคชั่นเริ่มต้นที่เปิดไฟล์ซึ่งเป็นสิ่งที่ Finder อนุญาตอยู่แล้ว ความแตกต่างคือกับ RCDefaultApp คุณเปลี่ยนจากที่เดียวกัน (แผงการตั้งค่า)
kiamlaluno

@ kiamlaluno - แต่คุณสามารถสร้างmoduleส่วนขยายใหม่แล้วเชื่อมโยงกับแอปของคุณ หรือมีปัญหาอะไรกับเรื่องนี้ ??
Rene Larsen

ปัญหาไม่ได้เชื่อมโยงส่วนขยายกับแอปพลิเคชันซึ่งจะกลายเป็นแอปพลิเคชันเริ่มต้นสำหรับส่วนขยายนั้น ปัญหาคือการมีรายการแอปพลิเคชันใน "เปิดด้วย" โดยอัตโนมัติ หากคุณเห็นภาพหน้าจอที่สามที่ฉันใช้ในคำถาม Xcode, Dashcode และคอนโซลจะแสดงสำหรับส่วนขยาย ".inc" แต่ฉันไม่ได้เชื่อมโยงแอปพลิเคชันเหล่านั้นกับส่วนขยาย
kiamlaluno

0

ในเมนูบริบทเลือกรับข้อมูลเลือกโปรแกรมที่จะใช้ในบานหน้าต่าง "เปิดด้วย:" แล้วคลิก "เปลี่ยนทั้งหมด ... "


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