# Tuck "new line" inside the ($all) variable
format = """($all
)$character"""
# No new line between shell prompts
add_newline = false
# No line-break between shell prompts
[line_break]
disabled = true
This works because anything inside of ($var)is skipped if $var is empty, and luckily this includes (or does not explicitly exclude/trim) a trailing new-line.
I’m writing this post using the new block-based editor that comes packaged with the first WordPress 5.0 beta, known previously and externally as Gutenberg.
For just general writing, so far it ain’t so bad, but one thing that bugs me straight away is that the auto-save causes the UI in the upper right corner to jiggle around every few seconds. I keep thinking it’s a notification in macOS, so I stop writing to look up at it, because it’s all just outside my periphery.
I type. I pause to think. Autosave triggers. I look up and right. I forget my original thought.
In this post, I haven’t needed to add any blocks or format any text, and I haven’t needed to move any text or paragraphs around. I have a feeling this is how most people will interact with this editor most of the time, and for that, it generally gets the job done no different than the classic editor did.
I suppose it’s about time I try to insert some kind of image, so here’s a shot I took today of some concrete that got poured behind the building my office is in.
I think it’s a little weird that the default new-block buttons are: image, header, and gallery. (I think think it’s even weirder these change over time to be my most-used blocks. Consistency is gone.)
It’s weird when I hover over the “P” for paragraph button, that it changes to 2 arrows creating a circle. No other buttons change their contents on hover; what makes that one special? And it changing makes me afraid to interact with it, because I’m afraid of what it does now.
The vertical elipsis icon reminds me of Pokey the cactus from Super Mario Bros. It’s literal usage is to indicate an intentional omission of a word, so… it’s a stretch to use it here, but it’s not totally semantically inaccurate, I guess?
I also don’t like that new empty blocks don’t have the hover-bar UI thing above them. I think it would feel more natural if the new default block were just a paragraph always. This new rogue block has a “+” next to it, but clicking it doesn’t actually add anything – it reveals a menu to pick the block type from a huge accordion picker.
The more that I move the mouse to pick blocks and click on things, I’m noticing a lot of hidden UI reveal itself and then disappear in ways that don’t feel natural to me. I’m not digging this part of the experience at all. There are grey and blue hover/focus outlines on blocks, toolbars pop-up, the buttons in them have tooltips that pop-up, and there’s a grabber UI for relocating blocks that comes and goes – it’s just… a lot going on.
I’m going to try the drop cap feature on this block. It’s turned on (blue) now, but I don’t actually see a drop cap. If I save and preview the post, it’s there, but it’s not in the editor. Oddly, it’s targeting both the “I” and the apostrophe from “I’m” which doesn’t seem correct. Why wouldn’t it just target the first letter by itself?
Oh. So the drop cap is only visible when I’m not typing in the box. When I hit enter and created a new block, the drop cap became visible in the editor. That feels super weird, but it’s hard to know if that’s a bug or a feature. That’s kinda how I feel with most of this so far – it all feels like everything is very intentional, while also feeling like nothing I want it to do.
This paragraph has a green background with white text. I’m not sure why this is even an option yet. This is the kind of feature I would wait to build after the rest of the editor is working correctly.
A warning appeared that this color combination might be hard to read, but I can’t imagine that white-on-green is actually that horrible.
It’a a running joke amongst some close friends that I’m going color blind, specifically around oranges and reds. Naturally, I don’t see that as a problem. 🙄
It was nice of the editor to add some padding around it automatically, but unfortunately I found another bug with this feature. If you insert a new line without creating a new block, it looks perfect in the editor, but that new line is interpreted as a new paragraph when previewing it theme-side.
These side-by-side images went in pretty normally, but I think the gradient effect is not the greatest.
It’s odd that the “Settings” sidebar thing, under “Block”, doesn’t actually let you change the block type there. It shows what kind of block it is, but clicking it does nothing. Why isn’t that a block-picker? It has the same icon in it as the hover-bar thing, but it’s not interactive.
I also noticed in writing this that I’m not sure what the many, many UI dinguses are actually named. Inspector? Toolbar? Is a meta-box still what we call these inspector sections? Is there a glossary of terms somewhere?
And why is it when I’m focused on a block, I can’t insert a new block because the hover-bar thing is in the way? The “+” is gone, and I need to click out of the block and hover over it to make the “+” come back so I can insert something new.
I just floated that button over there, which worked OK, but now I lost it because I inserted a block ahead of it. No idea how that happened. Let me try that again. OK I think it’s back. Color picker is nice. Why no hover color or effect?
The button block had a button with an “enter” looking arrow in it that, when hovered over, popped up a tooltip that said “Apply.” I clicked it, and it didn’t do anything. I assume it applied, but what did it apply? Why is it an “enter” arrow looking thing? I’m feeling a bit overwhelmed with iconography at this point.
Let’s try a list
How’s it work?
What formatting options does it have
In the “Settings” inspector bar thing, it looks like it has no settings
The hover-bar is back. What’s it got there?
Oh, all the typical list settings are there, but they disappear when I type
Hovering over the list icon brings back the double arrows again. No like.
I can indentPressing tab does not indentI can’t get multiple indented list items to work
When I click enter, it doesn’t retain the indentation
Nested lists are totally broken and not working
This is a quote block. This theme of mine supports them. Hopefully it works!
–JJJ
Clicking enter has me locked into the citation block
I can’t get out
Looks like I need to use the arrow-down key to get out.
Phew. That was close.
This is a heading. The “Settings” inspector thing has options here. I can pick H1-6, plus text alignment. I’m gonna center it, because why the heck not.
I'm gonna write some 1337 code in this box.
Hitting enter in here also does not break me out of the block.
No matter what I do.
I guess it's arrow-down time again.
Yep. That did it. But now that I’m in this paragraph block, arrow-down doesn’t do anything. So weird.
Hitting enter got me here.
^— That’s a spacer. Why is that even a block option when basic things like lists don’t work correctly?
Let’s try columns
Hitting enter kept me in this one
Hitting tab kinda focused on this one, but I still couldn’t type in it.
Finding the parent block to adjust the number of columns is really hard.
There’s only a 1px target to click to target the parent block to make this 3rd column
Hitting enter makes a new block in this column
I needed to hit the down arrow to get out of the column block.
Mr. Paul!
Here’s me testing the “Media & Text” block. This one seems to work like I expect it to, except there is no parent-block hover-bar picker thing, and clicking the image doesn’t do anything. I expect that to pull the media library back up. How do I change that image?
Oh. I need to click the parent block for a hover-bar to appear. So, now it’s a click-bar? Huh.
I couldn’t enter out of the above block, so arrow-down again!
Hitting enter brings me to a new line in this same block.
Now, hitting enter a third time brought me here. That felt like a bug, but I’m honestly not sure how I’d duplicate it.
Had to arrow-down out of that one, too. I guess it’s just paragraphs that need entering out of, and maybe other random ones?
That button should take you to a post about bbPress 2.6 caching. Having buttons like that is a nice touch, but theme-side, it’s not even a button – it’s an anchor. 🤦♂️
On that 🎵 I think I’ve done all the testing I can do for 1 hour. ✌️
# Stop syncing a node_modules directory (via symlink)
noicloud() {
mv node_modules node_modules.nosync
ln -s node_modules.nosync/ node_modules
}
alias nocloud=noicloud
iCloud ignores files & folders with a .nosync extension, and also ignores symbolic links. This is the closest work-around I could find to prevent iCloud from having an endless recursive fit about it.
Social networks and social media are weird. I'm deleting my Facebook account, but I'm not just deactivating it – I'm going post by post, comment by comment, through my entire 10 year history and deleting each agonizing thing one at a time.
It's insane. I'm insane. And Facebook knew I was insane way before I did.
Something weird happens on modern day social networking applications and websites that I never experienced on previous generation forum type software. I'm sure this phenomenon has a name; I'm sure folks smarter than me knew about what I'm about to describe years and years ago; now that I've recognized it, I'm going to try to outline it here so that I never repeat myself.
I bet older generations had a version of this, too, but I bet it happened in person instead.
So, because applications like Facebook and Twitter are all about me seeing you, and because we've cemented our friendship with a formal request and acknowledgment, and because I choose to follow you, I think I have a relationship with you that I never really had. I see your posts, photos, and updates, and I think "this person wants me to engage with them" when, frankly, that's unlikely to ever be the case.
The reason I know this, is because I can look through every single comment and post on 10 years worth of Facebook content, see that there are people who I frequently respond to, who do not respond back. Ever.
I'm not mad that you don't like or comment. It doesn't bother me. The problem is that algorithmic platforms like Facebook and Twitter DO, and they use the patterns of our relationships (or the anti-patterns of our non-relationships) against us, without telling us exactly how.
For example: I've basically forgotten about 99% of the things I've ever said online, usually instantly after hitting publish, but Facebook will never forget. And they're able to calculate the intersection of times we've had interactions back and forth, over all of our online years, to identify that I like you more than you like me. I literally like your posts and comments more than you like mine, and Facebook has always known this.
It's fine that they know this, I guess. What's not fine is that they don't say that they know this, and that they use that knowledge to manipulate our entire interaction with their platform, by: weighting posts and comments higher or lower so that we are more or less likely to read or engage with them; by showing us ads that might make us feel better or worse based on things our friends bought or sold; by tricking us into thinking that by me saying "congratulations" to you that you'll remember that I'm still back here working towards accomplishing something that maybe you'll congratulate me back for later too. Jesus.
None of this is about privacy settings, or who stole my information, or who gave my information to what advertisers, because I gave it away for free first. The risk was mine to take, and I took it; I have no one to blame but myself, so just like I'm responsible for whatever the online version is of me that Facebook and Twitter and everyone else think you should see, I need to be responsible for taking that power away from them.
Platforms like Facebook and Twitter are our worst friends. They know us at an intimate level, at our best and at our worst, and they use everything we say and do against us…
I want to see what exactly they're using against me, and what they gain from it. Pennies? Dollars? What does it cost them to host my 600 images, and what do they gain from me allowing their advertisers to scan through those images to identify that I own several LEGO sets, an XBOX, have 2 dogs, and so on.
I want control over their narrative. I want to be able to tell them "I don't actually like my XBOX; I only play 1 game, and it's buggy as shit, so it sucks and all that mining that you did was worthless and you're wrong."
I want to be able to say "I'm only friends with this person here because I think declining their request feels unkind, so even though I'd prefer they not have access to everything, and even though I'd prefer to not have to go through the work of blocking them but still somehow being friends, they aren't actually anyone I am friends with."
Obviously you and I are friends; besties, even. I mean, you've made it this far, right? But a lot of other people read something I post, don't get what they expected from me, think that I'm crazy or whatever, and don't engage. Maybe you unfollowed me. Maybe they mute me. I'll never know.
Platforms like Facebook and Twitter are too much like real life, in all the bad ways that make us insecure, neurotic, and just a bit foolish because it's not even real life or whatever.
Lots of folks online are not my friends, but current generation social platforms are built to show us the best of what we asked to see. I actually do think it feels pretty natural to engage in conversations you find interesting from people you care about, regardless of how much they care about you back.
This is basically how folks like my mother like and repost everything that they see. Yes, it's process addiction. But it's also the best way they have available to them to use the platform everyone they care about is on in a way that enables them to "prove how much they care" a million times a day.
It's super weird, and really unhealthy, but kinda cute, I guess?
So, that shit stops now for me. I'm done commenting on stuff. I'm done liking stuff. I mean… I'll like it, but I'm just going to assume that you know I like it because you know I like you, and support you, and want to see you succeed. And if you need validation from me, or miss hanging out, I expect you'll reach out and say so.
I want to double down on work, on real life stuff, and solving bigger harder problems. No more likes or comments. Just work, results, and healthy positive reciprocating caring relationships. Hopefully, that's with you.
In a way, this all feels wrong, which I think is why it's probably right. If less is more, than nothing is most, and silence is golden. Peace, and humptiness forever.
There lots of things I really like about Gutenberg, and some things I really don't like very much yet.
There are quite a few little UI & UX quirks, enough where it's not easy to identify, verbalize, communicate, test, iterate, repeat for each individual one of them. Plus there's the self-doubt that maybe it only affects me, maybe it's that way by design, or only temporary, or whatever. It's like my internal FUD meter is saying "you can't be the first person to notice this and this and that and this and…"
To start, I don't like that control + a doesn't select everything; it only selects text in the current block. There is no way to select-all, and using shift or control alone to try another way actually highlights DOM elements in weird ways, so that's even worse.
I also don't like that it feels like stuff is happening all over the place. The "Save Draft" button keeps changing text to "Saved" and the "Publish" button goes disabled when that happens. There's all this activity in the upper-righthand corner of the screen.
That by itself isn't a problem, but Gutenberg has me typing long-form at the very bottom-left now, so my eyes are naturally in the very lower-left watching stuff animate in the upper-right. It's really distracting.
My friend Jeff has covered his experience with Gutenberg already, and I share some of his thoughts with images. Placing media isn't easier than it was before, and it's harder to undo because certain blocks can be converted into other types of blocks, but not to media, and there isn't anything in the UI that subtly hints me towards why that is.
It is possible to turn text blocks into other text blocks, but it's also possible to turn media blocks into headings. Doing this removes the image, though. Where did it go?
To better understand what blocks are available (and what makes them different for each use-case) users need to be willing to go looking. That's normal. I'm trying not to be deliberately obtuse, or play dumb, or pretend like I can't learn or adapt or whatever. There's just a lot going on in many places.
I do really like the separation between the "Document" and an individual "Block", and the way that meta-boxes have been reimagined as an inspector of sorts. I think that makes a lot of sense, and translates really well to WordPress and editing content like this.
I also like that updating posts finally happens without refreshing the page. It's such a small but amazing thing. WordPress plugins have tried to implement this in different ways over the years, but it's always been a problem for other plugins because of how they need to hook into save_post and related actions.
Writing this post has generated 211 revisions so far. I'm not sure if that's a good thing or a bad thing, but I suppose it's better to have more than less.
I've spied a few CSS issues here and there, and noticed that the way Gutenberg handles focus is a little bit different in different browsers.
And some things that are good ideas just end up looking off, like the way the current top-level admin menu aligns with the status update bar.
Lastly, I'm afraid of how mucked-up my post_content is now:
See that weird <!--stuff-->? Gutenberg uses that to understand what blocks are what, and it's before & after every block in your post now. This is not good, but a few folks think I'm a little crazy for saying so.
This is WordPress intercepting our authored content and leaving it's signature hidden around every paragraph.
WordPress is crossing a line that it can't uncross, and folks who care about the longevity and authenticity of their authored & published works will choose the platform that continues to uphold the standards that WordPress has upheld it's entire life so far.
I'm not trying to say that formats can't change, or that anyone will notice, or that they'll even care if they do. Symbolically, this marks the end of the what-you-wrote-is-what-gets-savedWYWIWGS era, and we embark down a new path where what-you-wrote-comes-surrounded-by-hidden-junkWYWCSBHJ. WYSIWYG is way easier to say; let's just stick with that? 😅
Gutenberg isn't about writing, not yet anyways. Today, it's about competing with next-generation publishing platforms, and creating a new economy of pre-programmed block-types to write the HTML that writers didn't want to learn or repeat. It's about a first-class interface for developers to build elaborate experiences around the latest and greatest <p> tags and other stuff too.
In a lot of ways, Gutenberg is not for me, yet built exactly for me. I don't write a lot of short blog posts, but I do enjoy crafting great WordPress experiences and improving WordPress itself whenever the community agrees.
If I had to sum up my very first impression of using the latest version of Gutenberg, there is too much to discover without a high enough reward for discovering it. It's kinda more of the same – instead of toggling between Visual & HTML modes, I'm toggling block-types. Instead of wondering what shortcodes do, I still wonder what most things do because I only ever use a small subset of what's available.
I can't easily undo what I did wrong, because I haven't learned what's right. I can't easily convert my mistakes into successes. I can wipe the slateblock clean and try something different. I can keep trying and learn how it all works. I canwill continue contributing to it's success however & whenever I'm able. 💙
Paul’s birthday this year wasn’t particularly eventful. Usually we try to do something special for him on his special day, but there’s been so much happening around the house and in the coming weeks that yesterday just ended up being a normal day, with some extra treats and puppies sleeping in the bed to celebrate instead.
He’ll have an eventful weekend in Ann Arbor, though, and he’ll have a week’s vacation with our friend’s dogs all next week, too.
Sorry, buddy. I promise we’ll give you a full day’s puppy-snuggles ASAP. 💜
Last week I literally had a dream about a way to improve performance in bbPress 2.6, and it worked better than I imagined. Here’s what I did, and how you might be able to do something similar.
Yesterday, the wonderful Doc Pop drew up a cartoon for Torque that made the rounds and got some attention from a few pals and ex-colleagues that work on the Jetpack plugin for WordPress.
For some reason, this comic bothered me. Well, not the actual comic itself, but my reaction to the comic bothered me, which then further bothered me enough to publish this here.
I noticed right away that the man on the right pretty closely resembles Doc Pop himself, and so it’s safe to assume it’s probably literally him having drawn a reasonable facsimile of himself that he titled “Me.”
On the left are two women having a conversation about a lack of Jetpacks in their lives, and Doc has written them to be relatable, and really… normal.
But… I’m actually worried for Doc.
My recent experience with strangers on Twitter is developing into its own type of PTSD where I’m beginning to censor myself and change my behavior to try and continuously re-prove that inclusion and diversity are important values to me, ones I prioritize.
Then someone says “no they’re not because of that we’re true you’d do this” or “you’d do that” or “I’m offended because you used this word this way.”
And so an innocent comic from a creative acquaintance made me worried that his portrayal of two women as being “not as into tech as he is” would turn out poorly for him in a way that I know he doesn’t actually believe.
This is me having been bullied, and trying to protect someone from attackers that might not ever even exist for him, and so it’s completely irrational to intervene.
I’m not offended, and I know Doc didn’t intentionally draw his comic in a way that’s demeaning towards anyone but maybe himself and what he sees as his own quirky passions, but because I could imagine a very real threat, it became really hard to not interrupt other people’s conversations to say “hey look at this potential threat I’ve identified.”
The interesting thing about this realization, is what I just laid out IS the cycle. It’s exactly the way that the abused become abusers, and the bullied becomes bullies. Someone beats me down, and now I want to prevent others from being beaten down, but that’s impossible unless I become the person who mentions something first, making me the bad guy.
It’s a really complex problem that has me seriously considering giving up engaging on social sites like Twitter and Reddit entirely. I feel like I have an intimate understanding of these types of elements of human interaction (more than most?) and am really growing tired of people assuming that “you need to learn a lesson” or “you can’t possibly understand what I’m going through” when I know that I deeply do, more than most, am more willing and able than most to help, but the offer to help actually will make things worse for everyone somehow.
For what it’s worth, I don’t think the comic is offensive because I know Doc didn’t intend for it to be. I don’t think it portrays anyone poorly. I don’t think it’s an issue. But other people might, and other people might be mad at me because I don’t feel how they feel. It’s all behavior that I don’t subscribe to, think is unhealthy, and try to avoid.
But, I wanted to write this out, and didn’t feel comfortable shouting it all over social media.