1. Resumo
Não entendo, por que preciso da regra de bashate E010 .
2. Detalhes
Eu uso o bashate para linting de .sh
arquivos. Regra E010:
fazer não na mesma linha para
for
bashate:
Corrigir:
#!/bin/bash for f in bash/*.sh; do sashacommand "$f" done
Erro:
#!/bin/bash for f in bash/*.sh do sashacommand "$f" done
Existe algum argumento válido, por que eu preciso for
e do
na mesma linha?
3. Não é útil
Não consigo encontrar uma resposta para minha pergunta em:
- Artigos sobre as melhores práticas de codificação ( exemplo )
documentação de base . Eu acho apenas :
Um conjunto de regras que ajudam a manter as coisas consistentes nos blocos de controle. Eles são ignorados em longas filas que têm uma continuação, porque desenrolar isso é meio "interessante"
bashate
é um verificador de estilo . Os estilos são inerentemente subjetivos. Não use se você não gosta do estilo de biblioteca de arte que ele impõe. Em vez disso, você deve considerar um verificador de sintaxe / erros como o shellcheck .
E010
- única estilo regra ou , em alguns casos que eu preciso para e fazer na mesma linha, não só por razões de estilo.
do
. É como recuar a chave de abertura de um if
e adicionar código nessa mesma linha em uma linguagem como C. Outro exemplo, se o python permitir, seria colocar :
um de um if
recuo na próxima linha e adicionar código nessa mesma linha. Vai fazer a diferença com linhas adicionais no corpo.
do
é definitivamente um pouco incomum, masfor ... \ndo\n<indent>body...
é extremamente comum e eu ainda estimaria mais do que issofor ... ; do
. Ele também reclama disso?