All writing

  • Ignoring local changes to lines in Git

    As a special snowflake, one tends to want to make modification to tool configuration without messing with colleagues or make those changes a part of the project.

    For example, let’s say you have a pyrightconfig.json file in your project, slurped up by your editor’s Python Language Server Protocol (LSP):

    Code copied!
    {
        "typeCheckingMode": "strict"
    }

    When what you need for your environment looks like:

    Code copied!
    {
        "venvPath": ".",
        "venv": ".venv",
        "typeCheckingMode": "strict"
    }
    Read more »
  • Parsing Zsh options

    Whilst re-instating rsync in my blog publishing script (static IP! Hurray!), I came across the well named zparseopts that, surprise, simplifies script options parsing in Zsh.

    Immensely.

    Check it:

    Code copied!
    zparseopts -D -E -F -- \
      {M,-message}::=message \
      {S,-sync}=sync
    
    MESSAGE=${${${message#-M}#--message}:-"default"}
    SYNC_ENABLED=${#sync}
    Read more »
  • Blog rebuild V2.1.56

    Yes yes. I know, I know.

    Did the previous blog design need anything? Was any of it that bad?

    Well just like a marriage, familiarity breeds contempt and the rough edges started to grate. Although unlike a marriage I have complete control to fix all the things without negotiation!

    Let’s dive in.

    Read more »
  • Fave new shortcut: tab to new window

    When working with web apps (boo) such as Confluence and Jira one occasionally wants to grab a tab and have that side by side with another tab. Yes you can drag it free with a mouse (yuck) but that can be fiddly when you have a window manager running. It can throw a wobbly and do a weird flicky thing.

    Read more »