1. The forums will be archived and moved to a read only mode in about 2 weeks (mid march).

[SOLVED] Break in YAML Config

Discussion in 'Development' started by Deeonix, Dec 29, 2016.

  1. Deeonix

    Deeonix Spider Jockey

    Messages:
    29
    How do i make a break in a YAML Config File?
     
  2. Thunder33345

    Thunder33345 Moderator Staff Member

    Messages:
    2,137
    GitHub:
    Thunder33345
    please kindly describe the "break" you meant in a config file
     
  3. Muqsit

    Muqsit Chicken

    Messages:
    1,548
    GitHub:
    muqsit
    What do you mean by a 'break'?
     
  4. Deeonix

    Deeonix Spider Jockey

    Messages:
    29
    Not

    1: 1
    2: 2
    3: 3
    4: 4

    But

    1: 1
    2: 2

    3: 3
    4: 4
     
  5. Muqsit

    Muqsit Chicken

    Messages:
    1,548
    GitHub:
    muqsit
    That's exactly what you input in your YAML file. The empty lines are skipped.
     
  6. Thunder33345

    Thunder33345 Moderator Staff Member

    Messages:
    2,137
    GitHub:
    Thunder33345
    i dont think you can add space easily on an YMAL
     
  7. Deeonix

    Deeonix Spider Jockey

    Messages:
    29
    But how do I automatically generate it?
     
  8. Muqsit

    Muqsit Chicken

    Messages:
    1,548
    GitHub:
    muqsit
    Hmm, good question, never tried that!
    This could work, if it does, I doubt if it will break YAML parsing.
    PHP:
    /** @var Config $config */
    $config->set(" ""\n");
    $config->save();
     
  9. robske_110 (Tim)

    robske_110 (Tim) Wither Skeleton Poggit Reviewer

    Messages:
    1,342
    GitHub:
    robske110
    No, that's not how you do it and i think \n would show up as \n
    This would work
    (Line count starts from 1)
    PHP:
    addLineBreakToFile(string $pathtoyourfileint $line){
        
    $content file_get_contents($pathtoyourfile);
        
    $lines explode($content"\n");
        
    $lines[$line 1] .= "\n";
        
    $content implode($lines);
        
    file_put_contents($pathtoyourfile$content);
    }
     
    Last edited: Dec 29, 2016
    Muqsit likes this.
  10. Deeonix

    Deeonix Spider Jockey

    Messages:
    29
    Nope
    Code:
    ---
    JoinMessage: $name hat die Welt betreten!
    JoinMessageColor: GREEN
    ' ': |2+
    
    QuitMessage: $name hat die Welt verlassen!
    QuitMessageColor: RED
    DeathMessage: $name ist gestorben!
    DeathMessageColor: DARK_RED
    ...
    
     
  11. robske_110 (Tim)

    robske_110 (Tim) Wither Skeleton Poggit Reviewer

    Messages:
    1,342
    GitHub:
    robske110
    Nope to what? I don't think that is what my code produces
     
  12. Primus

    Primus Zombie Pigman

    Messages:
    749
    Why don't you write the default config file while manually adding new lines and then copy it from resources to data folder?
     
    Muqsit, Sandertv and HimbeersaftLP like this.
  13. robske_110 (Tim)

    robske_110 (Tim) Wither Skeleton Poggit Reviewer

    Messages:
    1,342
    GitHub:
    robske110
    Too boring :p
    And I already posted an answer on how to do it programatically/dynamically.
     
  14. Deeonix

    Deeonix Spider Jockey

    Messages:
    29
    Nope to Muqsits theory ;)
     
  15. robske_110 (Tim)

    robske_110 (Tim) Wither Skeleton Poggit Reviewer

    Messages:
    1,342
    GitHub:
    robske110
    Then try out mine
    Massive :facepalm: Thanks!
     
    Primus likes this.
  16. Deeonix

    Deeonix Spider Jockey

    Messages:
    29
    What is $line?
     
  17. Deeonix

    Deeonix Spider Jockey

    Messages:
    29
    I mean: Is it a String or an Int or something else?
     
  18. robske_110 (Tim)

    robske_110 (Tim) Wither Skeleton Poggit Reviewer

    Messages:
    1,342
    GitHub:
    robske110
    The line number where your line break should occur.
    Example:
    Screen Shot 2016-12-29 at 20.41.49.png
    becomes
    Screen Shot 2016-12-29 at 20.42.02.png
    with the call addLineBreakToFile($filepath, 4);

    It's type hinted already. (INT!)
     
  19. Deeonix

    Deeonix Spider Jockey

    Messages:
    29
    It says "Notice: Undefined offset: 3 in line '$lines[$line - 1] .= "\n";'"
     
  20. robske_110 (Tim)

    robske_110 (Tim) Wither Skeleton Poggit Reviewer

    Messages:
    1,342
    GitHub:
    robske110
    Massive :facepalm: again, sorry
    I messed up the args of explode()
    PHP:
    addLineBreakToFile(string $pathtoyourfileint $line){
        
    $content file_get_contents($pathtoyourfile);
        
    $lines explode("\n"$content);
        
    $lines[$line 1] .= "\n";
        
    $content implode($lines"\n");
        
    file_put_contents($pathtoyourfile$content);
    }
    Please try that, I actually tested that now and it works.
    (While testing I also noticed I forgot to readd \n's another massive :facepalm: - Fixed)
     
    Last edited: Dec 29, 2016
    Deeonix likes this.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.