Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)T
Posts
2
Comments
57
Joined
2 yr. ago

she/her

  • Why you assume there's only one link in the line?

    They did not want external (http) links to be modified as that would break it:

    • [Example](https://example.com/#Some%20Link)
    • [Example](https://example.com/#some-link)

    I compromised by thinking that it might be unlikely enough to have an external http link AND internal link within the same line. You could probably still do it, my first thought was [^h][^t][^t][^p] but that would cause issues for #ttp and #A so i just gave up. Instead I think you'd want a different approach, like breaking each link onto their own line, do the same external/internal check before the substitution, and join the lines afterward.

    Also, you perform substitutions in the whole URL instead of the fragment component

    That requirement i missed. I just assumed the filename would be replaced the same way too Lol. Not too hard to fix tho :)

  • annotated it is working like this:

     perl
        
    # use a loop to iteratively replace the %20 with -, since doing s/%20/-/g would replace too much. we loop until it cant substitute any more
    
    # label for looping
    :loop;
    # skip the following substitute command if the line contains an http link in markdown format
    /\[[^]]*\](http/!
    # capture each part of the link, and join it together with -
    s/\(\[[^]]*\]\)\(([^)]*\)%20\([^)]*)\)/\1\2-\3/g;
    # if the substitution made a change, loop again, otherwise break
    t loop;
    
    # convert all insides to the link lowercase if the line doesnt contain an http link
    /\[[^]]*\](http/!
    # this is outside the loop rather than in the s command above because if the link doesnt contain %20 at all then it won't convert to lowercase
    s/\(\[[^]]*\]\)\(([^)]*)\)/\1\L\2/g
    
      
  • This is very close

     sh
        
    sed ':loop;/\[[^]]*\](http/! s/\(\[[^]]*\]\)\(([^)]*\)%20\([^)]*)\)/\1\2-\3/g;t loop;/\[[^]]*\](http/! s/\(\[[^]]*\]\)\(([^)]*)\)/\1\L\2/g'
    
    
      

    example file

     markdown
        
    [Some text](#Header%20Linking%20MARKDOWN.md)
    (#Should%20stay%20as%20is.md)
    Text surrounding [a link](readme.md#Other%20Page). Cool
    Multiple [links](#Links.md) in (%20) [a](#An%20A.md) SINGLE [line](#Lines.md)
    Do [NOT](https://example.com/URL%20Should%20Be%20Untouched.html) CHANGE%20 [hyperlinks](http://example.com/No%20Touchy.html)
    
    
      

    but it doesn't work if you have a http link and markdown link in the same line, and doesn't work with [escaped \] square brackets](#and-escaped-\)-parenthesis) in the link

    but!! it was fun!

  • woah, ive never heard of this one. it looks awesome. thanks for sharing!!

  • Linux, Firefox, virtualization, Blender, KDE Plasma, ffmpeg, Krita, Inkscape, yt-dlp, Godot, programming language toolchains

  • My friend found/remembered an article from 2017, which is similar, but for the CDC. It doesn't sound like it affected search though. http://archive.is/JLcc8

    The forbidden words are "vulnerable," "entitlement," "diversity," "transgender," "fetus," "evidence-based" and "science-based."

    I tried searching the terms above on NIH, and none of them, except diversity, take you back to the home page. CDC search seems unaffected currently.

  • and I'm a tuna!

  • a different comment was saying ricing has a sense of being overdone. So with this I was thinking of "overtuning." I think it fits more as a hobbyist term than a pragmatic one.

  • Very similar to mine. Although for me the ball was white and rolled right

    I thought it was interesting I could only see the arm, probably because I wouldn't be able to picture the full body

  • Something i didnt know for a long time (even though its mentioned in the book pretty sure) is that enum discriminants work like functions

     rust
        
    #[derive(Debug, PartialEq, Eq)]
    enum Foo {
        Bar(i32),
    }
    
    let x: Vec<_> = [1, 2, 3]
        .into_iter()
        .map(Foo::Bar)
        .collect();
    assert_eq!(
        x,
        vec![Foo::Bar(1), Foo::Bar(2), Foo::Bar(3)]
    );
    
      

    Not too crazy but its something that blew my mind when i first saw it

  • Arch is the only person who has been in my house for the last week and i have no clue how he is going about it and he has no clue how it is affecting him or how he feels and how it is affected me

  • Mine also starts off the exact same way?? I'm pressing the middle option

    Women are not allowed in this world anymore because of their own personal preferences or the way their body and body is designed and made and made and they have no choice to make decisions

    but right here it takes a different path:

    that make it a choice to do it and that makes them a bad person to do so they have no right of way of life or the choice that is not their right of way and that they are entitled and have to choose their choice to choose what to choose to choose to live with that choice is a right that is theirs and it's a choice and not yours

  • i'm tricking the nintendo switch into thinking my computer is a bluetooth pro controller. I'm using a crate called bluer which exposes bindings to the BlueZ stack and it's been great to use.

    I got to the point where it pairs the controller and hits B to exit. However it doesnt seem to accept any more button presses after that... :) So I have some ways to go.

    I've also needed a project where I can challenge myself with the basics of async without it being overwhelming, and I think this hits the sweet spot. It's my first time using tokio spawn, join, and select in a real project!

  • My reasons were more hardware related. When I was a bit younger my parents gave me a netbook which had 32 GB of storage, and Windows used almost all of it. I wanted to do creative projects in my free time, but I couldn't install programs or save any of my work. I would often restart to clear log files and gain a bit more working storage, which was extremely annoying because it took like 5 mins for the computer to finally settle down and be usable.

    I eventually got a 32GB flash drive which helped a lot, but it was not enough. With 4GB ram I could only have about 3 browser tabs open, and not all the programs I wanted could be run off the flash drive. It was still resource management hell.

    Somehow, some way, I learned about Linux. I got a 128GB microSD, put Mint on it. It truly set me free. I could install the software I wanted, I could make the things I wanted to make, I could open more programs at once, and I could do it all without unbearable lag. I never looked back since.

  • Yeah, thinking about it more, the similarities are kind of narrow.

    You could make a better comparison with a regular crowd, but then it wouldn't feel like much of a showerthought at that point because it's just observing that the crowd has moved online.

    Laugh tracks might be used to improve there ratings of a show, but with memes there's not really a show and no one's forcing a laugh

    I think the essence of what I was thinking of though is that just like a regular crowd, an online crowd can still influence you to think something is funnier or better than you would alone (at least for me)

  • LMAO, yeah this one didnt seem to hit did it

  • fish. I think it has most things i want out of the box, so it should be simpler and snappier than my zsh setup. it's just that zsh hasnt bothered me enough to try it yet.

    also nushell, im interested in the idea of manipulating structured data instead of unstructured text