Como Usar Emacs para Tocar Música com EMMS

Emacs Music 00 Featured Image

Emacs é um programa brilhante que pode fazer muitas coisas, incluindo manipular arquivos. Com o pacote Emacs Multimedia System (EMMS), você também pode gerenciar sua música no Emacs. Você pode facilmente navegar por diretórios de música, criar playlists de músicas e até exibir letras. Aqui, vamos mostrar como tocar música no Emacs.

Índice

  • O que é EMMS e como funciona?
  • Instalando EMMS
  • Configurando EMMS
  • Iniciando uma sessão básica do EMMS
  • Scrobbling de música no Emacs com GNU FM
  • Perguntas frequentes

Leia também: 5 Recursos Ocultos que Você Pode Usar para Melhorar o Emacs

O que é EMMS e como funciona?

EMMS é um cliente front-end Elisp para vários players multimídia. Isso significa que, ao contrário dos players de música tradicionais, o EMMS apenas lida com a exibição de arquivos e usa programas externos para decodificar esses arquivos.

Emacs Music 03 Sample Emms Session

EMMS consiste em três partes distintas: o núcleo, o player e a fonte.

  • O núcleo – controla como os arquivos em um buffer EMMS devem se comportar. Além disso, também fornece uma maneira para outros módulos EMMS lerem e manipularem esses arquivos.
  • O player – lida com a interface entre o Emacs e os players de música externos.
  • A fonte – trata de como o Emacs descobre e lê esses arquivos. Em seguida, coloca-os em um buffer de texto editável que a parte central pode ler.

Como resultado, essa abordagem permite que você trate cada arquivo de mídia como texto que pode ser facilmente copiado para outros buffers do Emacs. Por exemplo, você pode pegar uma playlist do EMMS e exportá-la para um diário Org ou um post para USENET através do Gnus.

Emacs Music 04 Emms Text Copied To Buffer

Leia também: Como Usar Email dentro do Emacs

Instalando EMMS

Com isso, instalar o EMMS é incrivelmente fácil. O EMMS já está disponível no repositório GNU ELPA, então você pode instalá-lo rapidamente:

  1. Pressione Alt + X e digite package-install no seu cliente Emacs.
  2. Isso abrirá um pequeno prompt onde você pode digitar o nome do pacote que deseja instalar. Neste caso, você precisa digitar emms e pressionar Enter.

Emacs Music 06 Emms Run

Leia também: 5 Pacotes Úteis do Emacs para Melhorar a Produtividade

Configurando EMMS

Com isso feito, você deve criar um script de configuração simples para o EMMS. Fazer isso permitirá que o EMMS saiba quais configurações do Emacs ativar, bem como os programas externos e os caminhos de arquivos que ele deve procurar.

  1. Você pode começar a configurar o EMMS indo para o arquivo “init.el” do seu Emacs. Para fazer isso, pressione Ctrl + X, depois Ctrl + F.
  2. Isso abrirá um prompt onde você pode fornecer o caminho do arquivo que deseja editar. Neste caso, você precisa fornecer o caminho: “/home/$USER/.emacs.d/init.el”.

Emacs Music 07 Open Emacs Config

  1. Com isso feito, você precisa escrever as seguintes linhas de Lisp no seu arquivo “init.el”:
(require 'emms-setup)  
(emms-all)
  1. Esta função específica diz ao EMMS para definir e ativar todas as configurações padrão, o que permite que você toque qualquer mídia com o player.

Leia também: 9 das Melhores Distros Linux para Usuários do Windows

Adicionando um Player de Música Externo

Por padrão, o EMMS não fornece nenhum player de mídia para reprodução, a próxima coisa que você precisa fazer é informar ao EMMS qual player de mídia ele pode usar para tocar o áudio que indexa.

Assim, você precisará primeiro instalar um player de mídia adequado se quiser tocar arquivos FLAC ou MP3.

  1. No nosso caso, estamos instalando o mpv, pois ele pode tocar arquivos de áudio e vídeo. Aqui está como fazer isso.
sudo apt install mpv

Emacs Music 08 Ubuntu Install Mpv

  1. Agora, tudo o que você precisa fazer é escrever o seguinte código Lisp no seu arquivo “init.el”:
(setq emms-player-list '(emms-player-mpv))

setq – função do Emacs que permite que você defina o valor de uma variável específica. Neste caso, você está modificando o valor da lista de players emms-player-list.

emms-player-list – uma função do EMMS que define a lista de players de mídia que ele pode usar.

emms-player-mpv – uma função específica que vincula o mpv e o Emacs. Isso permite que o EMMS toque sua música dentro do Emacs.

Leia também: Como Instalar o Zoom no Linux

Adicionando um Diretório de Música Padrão

A partir daí, a próxima coisa que você precisa fazer é definir o diretório padrão onde o EMMS procurará arquivos de mídia. Semelhante às outras configurações acima, isso também requer que você edite seu arquivo “init.el”.

Emacs Music 09 Emms Dired Music Files 1

  1. Tudo o que você precisa fazer é adicionar o seguinte código Lisp:
(setq emms-source-file-default-directory "/path/to/directory")
  1. Uma vez que isso esteja resolvido, reinicie sua instalação do Emacs para aplicar suas novas configurações.

Iniciando uma Sessão Básica do EMMS

  1. Agora você pode iniciar o EMMS pressionando Alt + X e digitando “emms”.
  2. Fazer isso abrirá um prompt onde o EMMS pedirá o caminho raiz da mídia que você deseja tocar.
  3. Por exemplo, forneceremos o caminho “/home/ramces/tmp/emacs-music” para informar ao EMMS que queremos tocar os arquivos dentro de “emacs-music”.

Emacs Music 10 Emms Open Folder

  1. A partir daí, o EMMS criará e exibirá uma playlist simples que contém todos os arquivos de mídia reproduzíveis dentro daquela pasta.

Leia também: O que é Doom Emacs e como Instalá-lo

Usando a Playlist do EMMS para Tocar Música no Emacs

  1. Você pode pressionar Enter para começar a tocar a primeira faixa da sua playlist.
  2. Quando você tiver o suficiente, pare essa reprodução pressionando Shift + P ou S.

Emacs Music 11 Emms Playing Track

  1. Não só isso, é possível alternar entre faixas adjacentes na playlist pressionando P ou N. Isso pode ser útil se você quiser pular a faixa que está tocando atualmente.

Emacs Music 12 Emms Skip Track

  1. O EMMS também permite que você reorganize a ordem das faixas na sua playlist. A maneira como funciona é que você pode manipular todo texto em uma playlist do EMMS, semelhante a um buffer de texto do Emacs. Você pode pressionar Ctrl + Espaço, depois Ctrl + W para remover uma faixa da sua playlist atual.
  2. A partir daí, você pode rolar para baixo e pressionar Ctrl + Y para adicionar a linha de volta à lista.

Emacs Music 13 Highlight And Copy Buffer

  1. Também é possível limpar a playlist atual de qualquer faixa. Isso pode ser especialmente útil se você quiser limpar a lista ou criar e salvar uma nova playlist. Para fazer isso, tudo o que você precisa fazer é pressionar Shift + C.

Emacs Music 14 Clean Buffer

Criando uma Nova Playlist no Emacs

O EMMS também permite que você crie playlists personalizadas de dentro do Emacs. Isso significa que, semelhante aos players de música tradicionais, você pode salvar uma lista específica de arquivos de música que deseja tocar em sequência.

Emacs Music 15 Sample Playlist

  1. Para fazer isso, você precisa primeiro pressionar Alt + X e digitar “emms-playlist-new”.
  2. Fazer isso abrirá uma playlist EMMS vazia onde você pode adicionar novas faixas.

Emacs Music 16 New Playlist

  1. A partir daqui, você precisa definir a playlist em branco como a atual. Isso permitirá que você adicione novas faixas de música à playlist em branco. Para fazer isso, pressione B enquanto estiver dentro do buffer EMMS em branco. Isso abrirá um pequeno prompt onde você pode pressionar Enter para confirmar a alteração.

Emacs Music 17 Switch Current Playlist To New

  1. Finalmente, abra o navegador EMMS para adicionar o arquivo de música à sua nova playlist. Para isso, você precisa pressionar Alt + X novamente e digitar “emms-browser”.

Emacs Music 18 Emms Music Browser

  1. Agora, você pode selecionar o álbum ou faixa que deseja adicionar pressionando Enter.
  2. Uma vez feito isso, você pode voltar à sua nova lista e pressionar Ctrl + X, depois Ctrl + S para salvá-la em um arquivo.

Leia também: Como Gerenciar suas Finanças com o Modo Ledger no Emacs

Scrobbling de Música no Emacs com GNU FM

Além de tocar música, também é possível personalizar o EMMS e estender suas funcionalidades além de um simples player de mídia. Por exemplo, você pode usar uma função que permite enviar informações sobre faixas para um scrobbler de música como o libre.fm.

Emacs Music 19 Gnu Fm Website

  1. Para habilitar esse recurso, você precisa primeiro abrir seu arquivo “init.el”.
  2. A partir daí, você precisa adicionar o seguinte código Lisp após sua configuração do EMMS:
(require 'emms-librefm-scrobbler)  
(setq emms-librefm-scrobbler-username "seu-usuario-libre-fm"  
      emms-librefm-scrobbler-password "sua-senha-libre-fm")

A primeira função – diz explicitamente ao Emacs para carregar o scrobbler GNU FM para o EMMS. Isso permite que o EMMS se conecte ao libre.fm e envie informações sobre faixas para seu banco de dados.

A segunda função – contém suas informações de conta que o EMMS usa para acessar o libre.fm.

  1. A última coisa que você precisa fazer é voltar ao EMMS. Lá, você precisa pressionar Alt + X e digitar “emms-librefm-scrobbler-enable”.
  2. Isso habilitará o plugin scrobbler para esta sessão e enviará quaisquer faixas que você terminar.

Emacs Music 20 Scrobbled Music

Leia também: Como Usar Emacs Como um Leitor USENET Com Gnus

Perguntas Frequentes

É possível usar MPD com EMMS?

Sim! É possível usar o EMMS como um cliente front-end para MPD. Tudo o que você precisa fazer é alterar o valor da variável “emms-player-list” no seu arquivo “init.el”.

É possível tocar arquivos de música pela rede no Emacs?

Infelizmente, não. Embora o Emacs suporte montagem de arquivos de rede, o EMMS não pode usar esse recurso específico. Isso ocorre porque o EMMS é construído apenas para lidar com arquivos locais. Assim, não há uma maneira nativa de tocar música localizada em outra máquina através do EMMS. Uma maneira de contornar essa limitação é criar uma montagem de rede fora do Emacs. Por exemplo, você pode executar o seguinte comando que usa SSHFS para criar uma montagem de rede para seu diretório pessoal:

sshfs remoteuser@remotemachine:/path/to/music /home/$USER/

Além de montagens de rede externas, o EMMS também suporta streams de rádio pela rede. Para habilitar isso, tudo o que você precisa fazer é pressionar Alt + X e digitar “emms-streams”.

É possível pesquisar através do navegador EMMS?

Sim! É possível pesquisar em todos os arquivos presentes no seu navegador EMMS. Para fazer isso, você precisa pressionar S, depois T enquanto estiver dentro do buffer do navegador. Isso abrirá um pequeno prompt onde você pode fornecer a faixa que deseja tocar. Além disso, o EMMS também permite que você pesquise em seu banco de dados usando outros valores de metadados. Por exemplo, você pode pressionar S e depois A para pesquisar usando o nome do artista.

Créditos da imagem: Unsplash Todas as capturas de tela por Ramces Red