Associação de arquivos do Windows para README, INSTALL, LICENSE e similares [duplicados]

5

Muitos arquivos originados no mundo UNIX vêm sem extensão de arquivo. Exemplos populares incluem README , INSTALL , LICENSE .

Sabemos que esses são arquivos de texto. Portanto, é um pouco decepcionante não poder clicar duas vezes no Open Explorer e vê-los no Bloco de Notas (na verdade, Notepad2 por causa das terminações de linha do UNIX que o Microsoft Notepad não renderiza corretamente).

Alguém sabe de uma maneira de criar uma associação de arquivo para, digamos, README arquivos sem extensão? Isso poderia então ser replicado para cobrir os tipos de arquivo que ocorrem com mais freqüência e, em seguida, clicar duas vezes sobre eles abriria.

Atualizar (Mais ou menos em resposta a todos os seus comentários.) Obrigado, pessoal, seus comentários e respostas me ajudaram.

@Indrek, sim, eu estava supondo que você poderia de alguma forma criar uma associação para apenas README ou Makefile e não poderia fazer isso para arquivos sem extensão. Acontece que o contrário é verdadeiro, e sim, isso é uma solução que resolve perfeitamente o problema.

Por fim, quero apenas clicar duas vezes para abrir um README ou Makefile , isso é tudo.

@Sampo, o truque SendMe também é útil, embora a usabilidade não seja tão boa quanto um clique duplo direto. (Eu sou realmente preguiçoso às vezes.)

Acontece que o seguinte truque usando ftype e ftype em um prompt do Administrador faz o clique duplo na ativação:

assoc .=no_ext
ftype no_ext=%SystemRoot%\system32\NOTEPAD.EXE %1
:: You can see it created some entries in the registry:
reg query hkcr\no_ext /s
reg query hkcr\. /s
    
por Lumi 03.09.2012 / 20:37

2 respostas

5

Você não pode criar uma associação de arquivos com base no nome do arquivo, mas pode criar um para arquivos sem extensão. Para fazer isso, salve o seguinte como um arquivo .reg e clique duas vezes nele:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.]

[HKEY_CLASSES_ROOT\.\shell]

[HKEY_CLASSES_ROOT\.\shell\open]

[HKEY_CLASSES_ROOT\.\shell\open\command]
@="Notepad.exe %1"

Substitua Notepad.exe pelo editor de texto que você deseja usar.

Você pode, claro, criar também as chaves de registro e o valor manualmente com regedit.exe .

Veja também esta questão e suas respostas.

    
por 03.09.2012 / 20:44
3

Você sempre pode criar um item de menu adicional, que abrirá o arquivo selecionado no bloco de notas, para todos os arquivos.

É extremamente simples, aqui está como fazer:

1. Abra a pasta Send To . No Windows 7, esta pasta é C:\Users\TestUser10\AppData\Roaming\Microsoft\Windows\SendTo , apenas altere TestUser10 para ser seu nome de usuário ou use All Users profile.

2. Crie um novo link de atalho para notepad.exe com a descrição '"Bloco de notas".

Agora está pronto para uso

Clique com o botão direito em qualquer arquivo e selecione "Send To" => "Notepad" e o Windows abrirá o arquivo selecionado no bloco de notas.

Observação: Isso funciona com todas as versões do Windows com a funcionalidade "Send To" , você só precisa encontrar a pasta Send To e criar um atalho codificar%. 95, 98, ME, 2000, XP, Vista, 7 ... mas o caminho da pasta pode variar.

Atualização:

Ok, eu entendi (depois de ler comentário de techie007 ).

Veja como você pode associar o programa a notepad.exe ( ou FILENAME se desejar ) usando as instruções acima como ponto de partida.

Apenas não crie atalhos como sugeri acima, mas crie novos FILENAME.EXT e aqui está o conteúdo de File Editor.cmd ( Altere os casos como quiser ):

GOTO FILE_%~n1

:FILE_NOTEPAD
START notepad.exe %1
GOTO EOF

:FILE_nicepic.jpg
START mspaint.exe %1
GOTO EOF

:FILE_config.sys
edit.com %1
GOTO EOF

:EOF

Ok, isso foi apenas um esboço rápido. Qualquer um é bem-vindo a melhorá-lo, uma sugestão é usar File Editor.cmd declarações para obter o programa de fallback padrão ( editor hexadecimal, por exemplo ) para qualquer tipo / nome de arquivo que não esteja definido. Com as instruções condicionais, também é possível usar IF ... ELSE expressões regulares para determinar o ativador por partes do nome do arquivo.

Atualização: integração com associações de arquivos

Esta parte é sobre a integração acima com a resposta do Indrek .

A ideia é bem simples, basta escrever acima do arquivo batch ( ou melhor ainda, programa real com funcionalidade similar ) mas em vez da pasta "Send To" colocar na pasta findstr ( apenas não coloque dentro de Send To ).

Depois de ter seu script / programa pronto, siga a resposta de Indrek com uma exceção: use System32 ( ou qualquer nome que você tenha chamado seu lote / programa ) em vez de file editor.cmd %1 .

Isso permite que você use os dois: selecionando o aplicativo por nome de arquivo e clicando duas vezes no Windows Explorer.

    
por 03.09.2012 / 21:02