Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

render template that it is contains one '\r\n' string will return more than one

Aperta
#1,087 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
48/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
java
Ambito
backend

Direzione di ricerca

Inizia con l'invocazione di rendering di Jinjava e la configurazione withLstripBlocks(true)/withTrimBlocks(true) mostrate nel report. Riproduci il template CRLF con tutte e tre le variabili impostate, quindi traccia come la rimozione degli spazi dei blocchi gestisce '\r\n'; aggiungi un test di regressione per la spaziatura prevista tra le righe renderizzate.

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

Descrizione

render method with config withLstripBlocks(true).withTrimBlocks(true)


public static String render(String template, Map<String,Object> params) {
        final JinjavaConfig config = JinjavaConfig
                .newBuilder()
                .withLstripBlocks(true).withTrimBlocks(true).build();
        final Jinjava jinjava = new Jinjava(config);
        final JinjavaInterpreter jinjavaInterpreter = jinjava.newInterpreter();
        jinjavaInterpreter.getContext().putAll(params);
        final String renderStr = jinjavaInterpreter.render(jinjavaInterpreter.parse(template));
        return renderStr;
 }

test code:

  
         String template = "{% if bootefiDev %}\r\n" +
                "part /boot/efi --fstype=\"efi\" --size=500 --ondisk={{ bootefiDev }}\r\n" +
                "{% endif %}\r\n" +
                "{% if bootDev %}\r\n" +
                "part /boot --fstype ext4 --size=2048 --ondisk={{ bootDev }}\r\n" +
                "{% endif %}\r\n" +
                "{% if rootDev %}\r\n" +
                "part / --fstype ext4 --size=1 --grow  --ondisk={{ rootDev }}\r\n" +
                "{% endif %}\r\n";
        Map<String,Object> param = new HashMap<>();
        param.put("bootefiDev","sda");
        param.put("bootDev","sda");
        param.put("rootDev","sda");
        System.out.println(render(template,param));
 

and then i will get a render result below:

part /boot/efi --fstype="efi" --size=500 --ondisk=sda


part /boot --fstype ext4 --size=2048 --ondisk=sda


part / --fstype ext4 --size=1 --grow  --ondisk=sda

Lingua principale
Java
Stelle
785
Fork
184
Merge medio
6g 22h
PR unite (30g)
1

Guida per i contributori

Apri la guida per i contributori

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.

Altre issue di HubSpot/jinjava

Tutte le issue di HubSpot/jinjava

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.