Deferring JS Until Script Load
Matthew Weierophinney
by Matthew Weier O'Phinney
1w ago
A common recommendation when using JavaScript is to put your <script> elements at the end of your HTML, including those that reference a JS file on your site. One issue, however, is that if you then have a script that references a function from another script, how do you ensure the other script is loaded already? Deferring JS Until Script Load was originally published 9 April 2024 on https://mwop.net by Matthew Weier O'Phinney ..read more
Visit website
Addressing AWS S3 Sync Folder Issues
Matthew Weierophinney
by Matthew Weier O'Phinney
2w ago
I have used S3 and S3-compatible storage for a long time now, and have used both s3cmd and the AWS CLI tooling to sync, either between buckets or with a local filesystem. It generally "just works". Except that when it doesn't, it's really hard to debug. Addressing AWS S3 Sync Folder Issues was originally published 6 April 2024 on https://mwop.net by Matthew Weier O'Phinney ..read more
Visit website
Fixing Audio Choppiness in OBS Studio on Linux
Matthew Weierophinney
by Matthew Weier O'Phinney
3M ago
I occasionally record screencasts for work — some of these are used for the website as demos/training material, and sometimes they're used internally by our various technical teams. When I record, I use OBS Studio, which works brilliantly. However, since the last time I recorded, I've upgrade my operating system, as well as switched over to Wayland, and I discovered after doing a recording session that my audio was super choppy. This is how I fixed it. The root cause I typically setup a PulseAudio input capture channel when recording. PulseAudio allows me to change my default capture device(s ..read more
Visit website
Advent 2023: tmux
Matthew Weierophinney
by Matthew Weier O'Phinney
4M ago
I use terminal-based programs a lot. It should be obvious to anyone following my blog that I use editors in the vim family. But there are a slew of other tools I use from the CLI: docker, phpunit, phpcs, psalm, pandoc, ssh, ngrok, and more. Often, I'll be editing a file, and need to run another program, and reference what I'm editing: running unit tests, linters, or static analysis often fall in this category. Sure, I could use a tabbed terminal, but then I can't have the results of running the program right next to the editor. So for this, I use a terminal multiplexer; specifically, I use tmu ..read more
Visit website
Advent 2023: Pandoc
Matthew Weierophinney
by Matthew Weier O'Phinney
4M ago
Being a fan of Markdown and text formats in general, but living and working in a society where other formats are more often used, it's convenient to be able to convert my files to formats others can use. And there's really only one tool for that: Pandoc. What is Pandoc? Pandoc allows conversion between different document formats. Most are bi-directional, though a few can only go in one direction (for instance, you can convert to PDF, but cannot convert PDF documents to other formats). What's more, it works with unix input and output streams and redirection, which allows you to work with it in ..read more
Visit website
Advent 2023: (n)vim Plugins: vim-markdown
Matthew Weierophinney
by Matthew Weier O'Phinney
4M ago
I'm a huge fan of Markdown. There's something elegant in using textual sigils to provide contextual information. I've used it for taking notes, creating RSS feed content, producing my blog, and even in emails (I soooo wish there were a way to convert markdown within Outlook for the web and GMail!) So it should come as no surprise that I use a variety of tools to help me when writing markdown in (n)vim. What are the tools? The aareman/vim-markdown plugin provides the core functionality, and features syntax highlighting. What's great is that in a terminal that supports it, you'll actually see th ..read more
Visit website
Advent 2023: (n)vim Plugins: vim-fugitive
Matthew Weierophinney
by Matthew Weier O'Phinney
4M ago
Because I've spent most of my professional life coding, I've also spent a lot of time using source control. I've been using specifically git for many years (even pre-dating the Zend Framework migration from Subversion). While I typically use a terminal multiplexer (for me, that's tmux; for others, that might be screen), and can move to another pane or create one quickly in order to run source control commands, doing so interrupts flow. That's where vim-fugitive comes into play. What does it solve? Fugitive integrates with git, plain and simple. It exposes a number of commands and functions tha ..read more
Visit website
Advent 2023: (n)vim Plugins: coc.nvim
Matthew Weierophinney
by Matthew Weier O'Phinney
4M ago
I've used vim and variants since 2001. In 2019, a friend introduced me to coc.nvim, which turned out to be my initial gateway to nvim, which I adopted a year or two later. What is coc.nvim? The plugin name is an acronym for "Conquer of Completion", and its goal is to "Make your Vim/Neovim as smart as VS Code". While it can be used with either vim or neovim, it has some optimizations under the hood to allow usage with neovim's language server protocol support, which allows it to expose more features and perform better when using that editor. The language server protocol exposes features like (p ..read more
Visit website
Advent 2023: (n)vim Plugins: tabular
Matthew Weierophinney
by Matthew Weier O'Phinney
4M ago
Yesterday, I discussed vim-surround. Today I'm going to discuss another plugin I've used a ton: tabular. What problem does it solve? Let's say you have a PHP associative array declaration: [ "name" => "Matthew", "status" => "online", "url" => "https://mwop.net" ] Now, for some folks, this declaration is fine. However, I tend to prefer aligning the declarations, as it helps me visually parse the block more easily. Now, I could go to each line, and insert space before the => assignment operators. This works, and for a short declaration like in this example, it's relativ ..read more
Visit website
Advent 2023: (n)vim Plugins: vim-surround
Matthew Weierophinney
by Matthew Weier O'Phinney
4M ago
I've blogged about vim a number of times. I've been using vim or its descendents for 22 years now; I switched to neovim a few years back, but it's compatible with the existing vim ecosystem. (The primary differences, to my mind, are that it has a more optimized engine which is more performant, and that you can now configure and extend it using Lua if you want. Otherwise... it's just vim.) I used to "collect" plugins, but at this point, particularly since switching over to neovim, I've reduced my plugins quite a bit, to only those I use on a regular basis. So, I figured today, I'd start a mini ..read more
Visit website

Follow Matthew Weierophinney on FeedSpot

Continue with Google
Continue with Apple
OR