Depois que o comando 'script' fornece um arquivo, no vim eu uso ': set isprint = 1-225' para remover caracteres não imprimíveis, mas não consigo salvar o arquivo neste formato

0

Quando no vim eu executo este comando :set isprint=1-225 todos os caracteres não imprimíveis são condensados / removidos. Agora, como posso salvar esse arquivo ou converter o formato desse arquivo para que, por padrão, esse arquivo seja aberto com esse formato. Ou se eu fizer o upload para o github, os caracteres não imprimíveis serão condensados?

Minha pergunta foi rejeitada no Stack Overflow por não ser relacionada a programação ou desenvolvimento, então pensei em adicionar mais detalhes aqui. Eu não poderia encaixar tudo isso no título, mas basicamente eu posso resumir minhas adições com esta linha: Eu estou usando o comando script para registrar minha sessão, enquanto o comando script fornece um arquivo com muitos 'não imprimíveis' 'personagens, eu posso condensar caracteres não imprimíveis no vim com :set isprint=1-225 como eu posso salvar o arquivo neste formato?

Outras opções que conheço e experimentei foram escrever uma função perl para remover o caractere de controle (melhor alternativa, embora eu precise verificar se todos os caracteres não imprimíveis foram removidos) e a combinação de dos2unix & col -bp comandos do prompt do bash.

Este parecia promissor, mas antes que eu pudesse experimentá-lo vi que, em downloads para o Ubuntu, está desatualizado - devo ainda tentar instalá-lo com o arquivo .tar.bz2 ?

P.S. Nessa postagem, Kyle Barbour's me pergunta se há uma maneira de usar tr utilitário para fazer o que set: isprint=1-225 fazendo a partir da linha de comando do vim.

    
por Shér 23.09.2017 / 19:58

2 respostas

0

Configurar a opção 'isprint' não modifica o arquivo, afeta apenas como o Vim exibe o arquivo. Você pode, no entanto, executar um comando substituto depois de definir essa opção:

:%s/[^[:print:]]//g

Em seguida, escreva o arquivo.

    
por 23.09.2017 / 20:40
0

[RESOLVIDO] Desde que eu estou usando o tmux, para meus propósitos eu decidi usar o comando tmux capture-pane -S <# off lines> .

Então, depois de capturar E / S de uma sessão com o comando script em um arquivo xyz.txt, no prompt do terminal, posso emitir cat xyz.txt para exibir o arquivo sem caracteres não imprimíveis. No tmux, verifique quantas linhas estão no meu arquivo xyz.txt com o modo de cópia. Finalmente, do buffer de comando do tmux, emita o comando capther-pane -S <# of lines> e salve-o em um arquivo zyx.txt com :save-buffer zyx.txt .

Obrigado a todos.

    
por 24.09.2017 / 05:37