Skip to main content

Posts by sapphirecat

  1. Quilt Draw 2.0.0: Tabbed Interface

    A new Quilt Draw release has been made! To use it, go to its repository page. Possible issue: Please turn off Dark Reader for the site when using a browser that supports prefers-color-scheme, because the site already has a dark theme for that environment.

    This is a major release that restructures the entire UI into tabs. The “Block” tab retains the editor, block controls, and a mini-preview. A larger preview, and controls for the quilt as a whole, are on the “Quilt” tab. Finally, there is a “Print” tab with a print-oriented layout. It should show the block at a reasonable size, along with the whole preview, on a single page.

    Printing is meant to work reasonably well on either A4 or US Letter paper sizes with “fit width” as the scaling option. Please file an issue if there are any problems.

    The tools for the block editor have been revamped to be graphical.

    The “spin” and “flip” tools have been reworked, so that all operations are available without a right-click function available. That is, instead of a single “Flip” tool that chooses directions based entirely on the mouse button, there are distinct “↔” (horizontal flip) and “↕” (vertical flip) tools. Each one supports right-click to do the related operation, but it is no longer required.

    Minor features include:

    • The main/secondary color layout is vertical, to reduce confusion when using left-handed mouse button layout (the primary color is now above, rather than to the left of, the secondary color.)
    • The mouse cursor changes shape over the block editor, based on the currently selected tool, as an additional hint.
    • New site/app icons have been created.

    This release has been tagged in the repository as v2.0.0; going forward, each release will be given a version number, according to the Semantic Versioning standard.

    Support for Firefox 52 ESR (Windows XP/Vista) and Pale Moon has been retained. I would like to give a special salute to Mozilla for supporting operating systems longer than strictly necessary.

  2. Garden Vim Theme v1.0

    I am pleased to announce the first release of garden-vim, a dark, earthy theme primarily for GUI (gVim, neovim, and truecolor terminals.)

    Screenshots, with airline:

    Garden theme with PHP code
    Garden theme with multiple windows

    The airline theme is designed to change only the leftmost background when changing modes. Changing the entire line seemed rather distracting.

    Due to the limitations of the 256-color XTerm palette, there exists a 256-color theme, but it is not recommended. One should use :set termguicolors to activate truecolor rendering in terminal windows for the best experience. Alternatively, check if has('gui_running') to choose a different theme for the terminal in the else branch of your vimrc file:

    if has('gui_running')
      colorscheme garden
    else
      colorscheme desert
    endif
    

    Once again, the repository is github.com/sapphirecat/garden-vim.

    Happy hacking!

  3. Zora Update, Garden Vim Themes Coming

    This is a small pre-announcement; nothing is available yet.

    I have another update planned for the Zora vim theme, namely, support for airline.

    A previous update to Zora is that version 1.1.0 (renamed and) documented a config option, the g:zora_use_gui_colors variable. Internally, the theme loads only GUI colors if the GUI is running, the termguicolors option is known+set… or if the variable is set to 1. Otherwise, it falls back to checking t_Co to load the 256- or 16-color theme, depending on the terminal’s capabilities.

    I am also designing a new theme called Garden, a GUI-oriented theme in warm earthy tones with a dark green background. This theme will have airline support from the start. A serviceable 256-color variant will be provided, but the background color will be gray instead of green.

    Stay tuned for the final release!

  4. Quilt Draw: Supports Windows XP/Vista

    A new Quilt Draw release has been made! To use it, go to its repository page. Known issue: Please turn off Dark Reader for the site.

    This is a small release to add support for Firefox 52 ESR (Windows XP and Vista.) There are no new features.

    I would like to give a special salute to Mozilla for supporting operating systems longer than strictly necessary.

    Why am I doing this?

    In 2012, I bought a PC, and work bought a Late 2012 model iMac for my desk. That iMac ended up coming home for the pandemic. They finally replaced it with a System76 laptop (at my request) in 2022, because we have a large investment in VirtualBox and x86, and sometimes they want to fly me to other offices. I didn’t rate it as likely that the last Intel systems from Apple would get a full decade of support, but that’s what I’m targeting for them.

    As for my PC… I am writing this on it. It’s still running. It has had an SSD upgrade, of course, because Windows Compatibility Telemetry was such a drag on the hard disk, and it’s had an extra 4 GB of RAM put in (freed up by upgrading a different system.)

    It started life with Windows 7, just barely, then moved on through 8, 8.1, and 10. It might live to see the end of support for Windows 10… and then Microsoft thinks it should become e-waste, just like the iMac.

    But they’re both perfectly functional machines!

    What if I wanted to use hardware for 15 years? 20 years? Could I make my own code run on systems that old?

    How does it work?

    I discovered that Pickr had an ES5 build (well-supported in IE9+, and crucially, Firefox 52), so I switched to that instead. That allowed for the initial Windows XP/Vista support.

    Unreleased but fully tested, I have updated the toolchain for Quilt Draw itself. It used to directly use the Typescript 3.9 compiler. This has been replaced with Webpack and the usual suspects. The new build system supports Typescript 5.1, so now I can catch up on years of new features, and push more of the future deeper into the past.

  5. Slim4 http-interop adapter 1.0.2 / 1.1.0

    Following the reporting (and subsequent fixing) of issue #1, sapphirecat/slim4-http-interop-adapter has two new versions:

    • 1.0.2 updates the composer.json to reject Slim 4.11 and newer, while retaining compatibility with PHP 7.1
    • 1.1.0 requires Slim 4.11+ and PHP 7.4+

    Links: GitHub and Packagist.

    This is a change from the versioning policy previously listed in the CHANGELOG.md file. It previously stated that removing support for a PHP version would be a major release. However, this is not how the wider PHP ecosystem treats it, and it does not appear to be necessary under Semantic Versioning. In particular, this package has no user-facing API, and therefore, nothing is broken by this change.

    Since release, I have found that the 1.0 branch's support of PHP 7.1 is overly broad. By the time my package is useful (Slim 4.9.0), Slim itself required PHP 7.3. Nevertheless, v1.0.2 keeps all support that v1.0.0 promised.

  6. Quilt Draw: Downloads in Pale Moon

    A new Quilt Draw release has been made! To use it, go to its repository page. Known issue: Please turn off Dark Reader for the site.

    This is a small release to fix the download buttons in Pale Moon 31, and presumably, all previous versions. I will be testing the non-updated version of Pale Moon included with Fossapup64 9.5, and making any additional updates that prove to be necessary.

    I have also learned that Quilt Draw does not work in Windows XP, due to my choice of color picker library. No changes are expected in that situation, but it would have been cool if it had worked.

    Why am I doing this?

    Accessibility is important.

    I have used Pale Moon, and I understand it has a ton of shortcomings for the self-styled "modern" Web. But that makes it doubly important: clearly, the people who are using Pale Moon, need it.

    (To look at the situation from another angle, this is the logical extension of when I would write for "the version of the programming language that shipped in Debian Stable." I do not wish to unreasonably stifle users.)

    Can we truly say that we "value" something, if we have never made the slightest sacrifice for it?

  7. Quilt Draw: Dark Mode, Flip Tool, Guides

    A new Quilt Draw release has been made! To use it, go to its repository page. Known issue: Dark Reader completely destroys the UI elements. Please turn off Dark Reader for the site.

    What’s new?

    A native dark theme has been added. If the browser reports that the page should be rendered in dark mode, then an updated theme will be applied.

    A “Flip” tool has been added. Left-click (primary click) will flip a square horizontally, and right-click (secondary click) will flip it vertically. This complements the “Spin” tool, because some multi-color designs are asymmetric and can’t be spun into all configurations.

    Finally, an option for guides to be added to the block editor is available, to help visualize the individual square boundaries. If the guides are active on the page, then the download will also include them.

    What is quilt-draw?

    Quilt Draw is a quarter-square triangle designing tool. It lets you pick a set of colors, then modify a single quilt block using them. A preview of a full quilt using the block is generated in real time. There are also options for adding borders and sashing to the preview.

    Finally, there are options to download both the block itself, and the quilt preview.

    Technical Support

    There is none. This project is strictly for amusement.

  8. devproxy2 version 2.1.1 released!

    The devproxy2 2.1.1 source release has been made.

    Due to an oversight, a 2.1.0 release was also made today, although the tag has been available in the repository for some time.

    What is devproxy2?

    devproxy2 is an HTTP/HTTPS proxy server that redirects configured domains to an arbitrary destination. This allows a Web browser to use a production URL to access a development VM/container.

    In combination with an extension like Proxy Switcher and Manager, choosing production or development is fast and simple, and has a graphical status indication.

    It is also possible to use NAT port forwarding (e.g. port 8080 on the host to port 80 on the VM) to access the development code, without the development code needing to know that the browser sees it on a nonstandard port. That information is held only in the proxy and forwarding configurations.

    Release Details

    Since the 2.1.0 release, the following changes have been made:

    1. The security posture has been improved, per advice that was posted on r/netsec.
    2. The default ports for servers are applied correctly; this feature was broken in 2.1.0 with the switch to go-toml 2.x.
    3. The author is using Podman for testing instead of Docker.
    4. Dependencies have been updated.

    Please file any problems in GitHub issues.

    One Last Thing

    Please consider using Firefox and maybe even donating to Mozilla. The web needs genuine competition to remain free and open.

  9. Quilt Draw update released!

    A new quilt-draw release has been made! This may also be the world’s first announcement of its existence, outside of appearing in a GitHub repository.

    To use it, go to its repository page. Known issue: Dark Reader completely destroys the UI elements. Please turn off Dark Reader for the site.

    What is quilt-draw?

    Quilt Draw is a quarter-square triangle designing tool. It lets you pick a set of colors, then modify a single quilt block using them. A preview of a full quilt using the block is generated in real time. There are also options for adding borders and sashing to the preview.

    Finally, there are options to download both the block itself, and the quilt preview.

    What is new?

    When the width of the window exceeded 1600 pixels, there were coordinate errors. They are now fixed. It’s a hack, but it works.

    I have also updated the components (the color picker) to the latest version. The main code still targets ES6/2015, so there should be few issues, even on older computers.

    Technical Support

    There is none. This project is strictly for amusement.

sapphirecat's...