Runs Previous Command with Replace
For some reason most of my typos happen within iTerm, which is kind of funny when you consider most commands are super short. gut push doesn't do what I want, nor does hg ammend or any other command spelled wrong. Then you have to either retype the whole thing or press the up key, place the cursor in the right spot, then update the bad text. Blah.
I recently learned a cool trick for executing the previous command but with a text replacement shortcut:
# `gut push` -- Oooops!
^gut^git # Replaces "gut" with "git" and executes previous command!
# `hg ammend` -- Oooops!
^ammend^amend
No need to retype and no need to fix the text within the entire command. Neat way to save time and get things done!
![5 Ways that CSS and JavaScript Interact That You May Not Know About]()
CSS and JavaScript: the lines seemingly get blurred by each browser release. They have always done a very different job but in the end they are both front-end technologies so they need do need to work closely. We have our .js files and our .css, but...
![fetch API]()
One of the worst kept secrets about AJAX on the web is that the underlying API for it, XMLHttpRequest, wasn't really made for what we've been using it for. We've done well to create elegant APIs around XHR but we know we can do better. Our effort to...
![CSS Ellipsis Beginning of String]()
I was incredibly happy when CSS text-overflow: ellipsis (married with fixed width and overflow: hidden was introduced to the CSS spec and browsers; the feature allowed us to stop trying to marry JavaScript width calculation with string width calculation and truncation. CSS ellipsis was also very friendly to...
![HTML5 Datalist]()
One of the most used JavaScript widgets over the past decade has been the text box autocomplete widget. Every JavaScript framework has their own autocomplete widget and many of them have become quite advanced. Much like the placeholder attribute's introduction to markup, a frequently used...
Really cool trick, David! Hadn’t come across this one yet. I’m the curious type so I just had to know what this is called, and any other details… It looks like after a little research that this is a Bash feature, and it’s called “quick substitution”. Its documented under the “Event Designators” section of Bash documentation:
http://www.gnu.org/software/bash/manual/bashref.html#Event-Designators
The documentation specifies the usage as:
But I just tried it out myself and it looks like it works just fine without the trailing caret character. By the way, it’s probably worth noting that this will only replace the first instance of “string1” in the command, so if you misspelled something twice in the command (seems unlikely, I know) you would have to use:
This works with Zsh too.
Thanks Rose Hosting, good catch!
http://zsh.sourceforge.net/Doc/Release/Expansion.html#Overview
If you use zsh, you can enable auto-correction, so if you type
then it will say
This is a great tip.
P.S. Lately, most of my php/css/js related google searches have been showing your site near the top. I have picked up a lot of new things from your site. Whatever you are doing with SEO and content, it is amazing.
All the best.
PPS. I hope one day your have email newsletters.