OpenMathLib / OpenMathLib/OpenBLAS

Mixture of tabs and spaces can make reading code difficult in some configurations (e.g. browsing on GitHub)

Aperta
#5,834 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
C
Stelle
7.6k
Fork
1.7k
Merge medio
1g 3h
PR unite (30g)
42

Descrizione

Consider how this code, which mixes tabs and spaces for indentation, is displayed by GitHub: https://github.com/OpenMathLib/OpenBLAS/blob/a033631ee8486c245967465c2b43b0a3eb9a1b61/driver/others/blas_server_omp.c#L354-L357

The nesting is confusing; whoever edited that file had tabs set to 8 spaces, but GitHub's embedded display is using a different number of spaces per tab.

And if you click through, indentation looks different, though still confusing! Seems like GitHub uses inconsistent spaces per tab across different parts of its code rendering:

Image

I fixed it locally with a .editorconfig file, which it's at least possible GitHub's code browser supports, and in general has wide-spread editor support:

[*.{c,h}]
tab_width = 8

I don't know if that setting is correct for all files though.

Another option is to standardize on either tabs or spaces and reformat the code to match.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia da driver/others/blas_server_omp.c intorno alle righe 354-357 e analizza le convenzioni di indentazione esistenti del repository per C e gli header. Valuta se un'impostazione di .editorconfig o una politica coerente per tabulazioni/spazi sia adatta ai file coinvolti; il lavoro è completato quando il codice interessato presenta un'annidamento non ambiguo e la convenzione scelta è documentata o applicata in modo coerente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
c
Ambito
tooling
Tipo di issue
Refactoring
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
38/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.