No OS X, como você altera o tipo de arquivo?


15

No OS X, gostaria de alterar o rótulo "Kind" associado aos arquivos. Muitos dos meus arquivos estão aparecendo como "Arquivo de texto sem formatação" quando são realmente javascript, php, css e outros tipos de arquivo.

Não tenho problemas para abrir com o aplicativo que quero, é fácil - existem muitos tópicos sobre isso.

O que me incomoda é que, quando tenho uma grande pasta com muitos arquivos, gostaria de poder classificar por Tipo e ter todos os arquivos css, php e js juntos.

insira a descrição da imagem aqui

Vi o tipo de arquivo que trava no OSX e a troca rápida, mas não tenho certeza se é isso realmente o que preciso.

Talvez alguém tenha lidado com isso antes e sabe como consertar isso?


Interessante. Ele não parece estar relacionado com o utilitário de linha de comando verdadeira file.
dmckee --- ex-moderador gatinho

Certamente você pode definir algo como TextWrangler como o manipulador de arquivos padrão para arquivos JS, PHP e CSS? Em seguida, listá-los como arquivos TextWrangler.

Eu acho que o problema pode ter sido com coda. Daniel Beck ajudou a resolvê-lo abaixo. Porém, uma pergunta de acompanhamento: Então, para que o utilitário de troca rápida que eu encontrei (acima) é usado? Tem algo para um "tipo" de 4 letras e um "criador" de 4 letras ...?
Cwd 28/03

Respostas:


8

O tipo de arquivo geralmente é definido pelo aplicativo que lida com esse tipo no Launch Services. Para a maioria deles, esse é o aplicativo que abre um tipo de arquivo por padrão, no seu caso, Coda.

Os aplicativos especificam tipos de arquivos em seus Contents/Info.plistarquivos. Você pode vê-lo e editá-lo clicando com o botão direito do mouse no pacote do aplicativo e selecionando Mostrar Conteúdo do Pacote .

Parece que o pessoal do Panic bagunçou alguma coisa. Todos os tipos de arquivos que eles definem são PlainTextType:

insira a descrição da imagem aqui

Você pode alterar o nome do tipo de arquivo editando todas as Document Type Nameentradas no Editor de listas de propriedades ou todas as CFBundleTypeNameentradas ao editar o arquivo em um editor de texto normal. Basta substituir o que você deseja que apareça como descrição.

insira a descrição da imagem aqui

Edite, salve e verifique se o Launch Services avisa (reinicie, efetue logout ou mova o aplicativo para uma pasta diferente e volte novamente), e o resultado será o seguinte:

insira a descrição da imagem aqui


Você precisa repetir isso sempre que houver uma atualização no aplicativo, pois eles substituem o Info.plistarquivo que você editou. É melhor relatar um bug para os desenvolvedores do Panic.


e o pessoal do Panic (provavelmente) reportará que um arquivo .php, .js ou .css ainda é um arquivo de texto sem formatação. semântica, e esse não é o objetivo das UTIs. este não é um novo debate; As UTIs foram mal compreendidas e mal utilizadas desde o seu início, em parte por esse mesmo problema, que a maçã, em sua infinita sabedoria, ainda não fez nada para resolver.
peelman

@peelman A Apple não faz isso no TextEdit Info.plist. Eles são realmente capazes de fornecer nomes de tipo de documento adequados. E os usuários se preocupam mais com a coluna Tipo do localizador do que com os aspectos técnicos das UTIs.
Daniel Beck

@db - PListEdit Pro é a mesma coisa que o Property List Editor? Eu tenho o primeiro e minha tela parece um pouco diferente. Obrigado por uma resposta bastante abrangente:) #
314 cwd

nm, encontrei o Editor de lista de propriedades na /Developer/Applications/Utilitiespasta Eu não tinha QS catalogando essa pasta. oops.
Cwd 28/03

Eu estava procurando algo nessas linhas, mas é possível mudar a maneira como o localizador gerencia a classificação, conforme discutido aqui ?
Konrad

1

depende do programa de salvamento definir a UTI (identificador de tipo uniforme) para um determinado arquivo. se você conseguir alterá-los, edite o arquivo em qualquer programa que você os criou e os defina como texto sem formatação, eles provavelmente serão revertidos para texto sem formatação quando você salvar novamente.

tecnicamente, esses arquivos são texto sem formatação, eles podem ser abertos por qualquer editor que suporte a UTI com texto sem formatação, que é o objetivo que as UTIs servem, portanto, isso não é uma imprecisão, é um exercício semântico. eu pessoalmente evito esses problemas colocando minhas imagens, folhas de estilo e arquivos javascript em subpastas.

independentemente, você provavelmente precisará vasculhar o editor escolhido e ver se ele suporta uma maneira de definir relações de extensão de arquivo UTI-> ou uma maneira de definir com que UTI um arquivo é salvo.


1

Isso aconteceu quando eu atualizei para o Office 2016 e removi o Office 2011 - o Finder decidiu que os .dotarquivos (modelos do MS Word 97-2004) eram arquivos GraphViz DOT, mesmo que eu não tivesse o GraphViz instalado, e decidiu que o Nisus Writer deveria ser o aplicativo padrão.

Consegui corrigir o aplicativo padrão da maneira mais fácil no Finder (Obter informações / Abrir com: / Alterar tudo ...), mas o tipo de arquivo ainda estava errado. De acordo com a resposta de Daniel Beck, verifiquei o Info.plistsWord 2016 e o ​​Nisus Writer, mas ambos estavam corretos.

Acabei tendo que reconstruir o registro do Launch Services com

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

(do Terminal) e que finalmente o consertou.


1

As descrições dos Tipos Principais do OS X podem ser alteradas editando InfoPlist.strings no CoreTypes.bundle.

A lista de propriedades é um binário compilado , portanto, apenas faça um backup antes de editá-lo. As atualizações do sistema provavelmente o substituirão, portanto, mantenha uma cópia ou (o que eu recomendo) vincule sua versão editada ao local do original - supondo que sua cópia seja nomeado InfoPlist.strings.custome está no mesmo diretório que o original:

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

cp InfoPlist.strings InfoPlist.strings.custom - sua cópia personalizada

mv InfoPlist.strings InfoPlist.strings.backup - original em movimento

abra InfoPlist.strings.customcom o TextMate, pois ele analisa bem as listas de propriedades binárias, assumindo que você foi mateinstalado:

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

Depois de concluir as edições, vincule o arquivo original no local:

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

e reinicie o Finder com killall Finder- você deverá ver as alterações no localizador depois disso.

por exemplo, mudei "Portable Document Format (PDF)" = "Portable Document Format (PDF)";para "Portable Document Format (PDF)" = "PDF";e ... diga adeus às longas e irritantes seqüências "Kind" no Finder :-)

Antes Depoisinsira a descrição da imagem aqui insira a descrição da imagem aqui

NOTA: Eu uso o inglês como idioma do sistema - se você tiver outro idioma definido, precisará alterar o nome do dir para o idioma apropriado:

cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Alemão.lproj/ <- por exemplo, digamos alemão

Atualização 1 (descoberta sobre o plutil):

você pode usar plutilpara converter do formato binário para XML ou JSON

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

depois de editar o .json, converta (compile?) de volta para um formato binário:

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

ATUALIZAÇÃO 2

quer descobrir onde esta irritante 'Kind' cordas é?

sudo find ./ -name '*.plist' -o -name '*.strings' -exec plutil -p {} \; | grep"annoying"onde annoyingestá a coisa que incomoda o dia todo


0

Dê uma olhada no duti

Uma ferramenta de linha de comando para selecionar aplicativos padrão para tipos de arquivo, no OS X

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.