Di OS X, bagaimana Anda mengubah "Jenis" file?


16

Pada OS X saya ingin mengubah label "Jenis" yang terkait dengan file. Banyak file saya muncul sebagai "File Teks Biasa" ketika mereka benar-benar javascript, php, css, dan jenis file lainnya.

Saya tidak punya masalah untuk membukanya dengan aplikasi yang saya inginkan, mudah dilakukan - ada banyak utas tentang hal ini.

Hal yang mengganggu saya adalah ketika saya memiliki folder besar dengan banyak file di dalamnya, saya ingin dapat mengurutkan berdasarkan Jenis dan memiliki semua css, semua php, dan semua file js bersama-sama.

masukkan deskripsi gambar di sini

Saya melihat tipe file yang mogok di OSX, dan saya melihat quickchange tapi saya tidak yakin apakah itu yang benar-benar saya butuhkan.

Mungkin orang lain pernah menangani ini sebelumnya dan tahu bagaimana cara memperbaikinya?


Menarik. Itu tidak tampaknya terkait dengan utilitas baris perintah benar file.
dmckee --- ex-moderator kitten

Tentunya Anda bisa mengatur sesuatu seperti TextWrangler sebagai penangan file default untuk file JS, PHP dan CSS? Maka itu akan mendaftar mereka sebagai file TextWrangler.

Saya pikir masalahnya mungkin dengan coda. Daniel Beck membantu menyelesaikannya di bawah ini. Namun, pertanyaan lanjutan: Jadi untuk apa utilitas quickchange yang saya temukan (di atas) digunakan? Memiliki sesuatu untuk "huruf" 4 huruf dan "pembuat" 4 huruf ...?
cwd

Jawaban:


8

File jenis ini biasanya diatur oleh aplikasi yang menangani jenis file dalam Luncurkan Layanan. Bagi sebagian besar dari mereka, ini adalah aplikasi yang membuka jenis file secara default, dalam kasus Anda, Coda.

Aplikasi menentukan jenis file dalam Contents/Info.plistfile mereka . Anda dapat melihat dan mengeditnya dengan mengklik kanan bundel aplikasi dan memilih Tampilkan Isi Paket .

Sepertinya orang-orang Panic mengacaukan sesuatu. Semua jenis file yang mereka definisikan adalah PlainTextType:

masukkan deskripsi gambar di sini

Anda dapat mengubah nama tipe file dengan mengedit semua Document Type Nameentri di Editor Daftar Properti , atau semua CFBundleTypeNameentri saat mengedit file dalam editor teks normal. Ganti saja apa yang ingin Anda tampilkan sebagai deskripsi.

masukkan deskripsi gambar di sini

Edit, simpan, dan pastikan pemberitahuan Layanan Luncurkan (mulai ulang, keluar, atau cukup pindahkan aplikasi ke folder yang berbeda dan kembali lagi), dan hasilnya terlihat seperti ini:

masukkan deskripsi gambar di sini


Anda harus mengulang ini setiap kali ada pembaruan ke aplikasi, karena itu mengganti Info.plistfile yang Anda edit. Terbaik untuk melaporkan bug ke pengembang di Panic.


dan orang-orang di Panic akan (mungkin) melaporkan bahwa file .php, .js, atau .css masih berupa file teks biasa. semantiknya, dan itu bukan tujuan dari ISK. ini bukan debat baru; ISK telah disalahpahami dan disalahgunakan sejak permulaannya, sebagian karena masalah ini, yang apel, dalam kebijaksanaan mereka yang tak terbatas, belum melakukan apa pun untuk diatasi.
peelman

@peelman Apple tidak melakukannya seperti ini di TextEdit Info.plist. Mereka sebenarnya mampu memberikan Nama Jenis Dokumen yang tepat. Dan pengguna lebih peduli tentang kolom Jenis Penemu daripada aspek teknis ISK.
Daniel Beck

@db - apakah PListEdit Pro sama dengan Editor Daftar Properti? Saya memiliki yang pertama dan layar saya terlihat sedikit berbeda. Terima kasih atas jawaban yang agak komprehensif :)
cwd

nm, baru saja menemukan Editor Daftar Properti di /Developer/Applications/Utilitiesfolder. Saya tidak punya QS yang membuat katalog folder itu. oops.
cwd

Saya sedang mencari sesuatu di baris itu tetapi apakah mungkin untuk mengubah cara finder mengelola penyortiran, seperti yang dibahas di sini ?
Konrad

2

Saya mengalami hal ini ketika saya memutakhirkan ke Office 2016 dan menghapus Office 2011 - Finder memutuskan bahwa .dotfile (template MS Word 97-2004) adalah file GraphViz DOT, meskipun saya tidak menginstal GraphViz, dan memutuskan bahwa Nisus Writer harus aplikasi default.

Saya berhasil memperbaiki aplikasi default dengan cara mudah di Finder (Dapatkan Info / Buka Dengan: / Ubah Semua ...), tetapi jenis file masih salah. Per jawaban Daniel Beck saya memeriksa Info.plistsWord 2016 dan Nisus Writer, tetapi mereka berdua benar.

Saya akhirnya harus membangun kembali registri Layanan Peluncuran dengan

/System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -kill -r -domain local -domain system -domain user

(dari Terminal) dan akhirnya memperbaikinya.


1

tergantung pada program penyimpanan untuk mengatur UTI (pengenal tipe seragam) untuk file yang diberikan. jika Anda berhasil mengubahnya, kemudian edit file di program apa pun yang Anda buat di set itu sebagai teks biasa, mereka kemungkinan akan dikembalikan ke teks biasa saat Anda menyimpan kembali.

secara teknis file-file tersebut ADALAH teks biasa, mereka dapat dibuka oleh editor mana pun yang mendukung UTI teks biasa, yang merupakan tujuan yang dilayani UTI, jadi ini bukan ketidakakuratan, ini adalah latihan semantik. saya pribadi menghindari masalah seperti itu dengan meletakkan gambar, stylesheet, dan file javascript saya di subfolder.

terlepas dari itu, Anda mungkin perlu menjelajahi editor yang Anda pilih dan melihat apakah itu mendukung cara untuk mendefinisikan hubungan ekstensi file ISK>, atau cara untuk menentukan apa file ISK yang dibuat.


1

Deskripsi Tipe Inti OS X dapat diubah dengan mengedit InfoPlist.strings dalam CoreTypes.bundle.

Daftar properti adalah biner yang dikompilasi , jadi untuk berjaga-jaga membuat cadangan sebelum mengeditnya. Pembaruan sistem mungkin akan menimpanya, jadi simpan salinannya atau (yang saya sarankan) tautkan versi yang telah diedit ke lokasi asli - dengan asumsi bahwa salinan Anda adalah bernama InfoPlist.strings.customdan dalam direktori yang sama dengan aslinya:

cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj

cp InfoPlist.strings InfoPlist.strings.custom - salinan khusus Anda

mv InfoPlist.strings InfoPlist.strings.backup - Bergerak asli

buka InfoPlist.strings.customdengan TextMate karena mem-parsing daftar properti biner dengan baik, dengan asumsi Anda telah matemenginstal:

mate /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings.custom

setelah Anda selesai mengedit, tautkan file asli di tempatnya:

sudo ln -s /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings.custom /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings

dan luncurkan ulang Finder dengan killall Finder- Anda akan melihat perubahan pada finder setelah itu.

misalnya saya berubah "Portable Document Format (PDF)" = "Portable Document Format (PDF)";menjadi "Portable Document Format (PDF)" = "PDF";dan ... mengucapkan selamat tinggal pada string "Jenis" yang panjang di Finder :-)

Sebelum Setelahmasukkan deskripsi gambar di sini masukkan deskripsi gambar di sini

CATATAN: Saya menggunakan bahasa Inggris sebagai bahasa sistem - jika Anda memiliki set bahasa lain, Anda perlu mengubah nama dir ke bahasa yang sesuai:

cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Jerman.lproj/ <- misalnya, katakanlah Jerman

Perbarui 1 (temukan tentang plutil):

Anda dapat menggunakan plutiluntuk mengkonversi dari format biner ke XML atau JSON

sudo plutil -convert json InfoPlist.strings -o InfoPlist.strings.json

setelah mengedit .json, konversikan (kompilasi?) kembali ke format biner:

sudo plutil -convert binary1 InfoPlist.strings.json -o InfoPlist.strings

PEMBARUAN 2

ingin mencari tahu di mana string 'Jenis' yang mengganggu ini?

sudo find ./ -name '*.plist' -o -name '*.strings' -exec plutil -p {} \; | grep"annoying"di mana annoyingadalah hal yang mengganggu s ** t dari hari


0

Lihatlah duti

Alat baris perintah untuk memilih aplikasi default untuk tipe file, pada OS X

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.