Skip to content

Instantly share code, notes, and snippets.

@travisbhartwell
travisbhartwell / README.md
Created February 24, 2023 05:53
My Via JSON file for my Controller Works mini42

This is my modification of the default mini42 layout with the following changes:

  • Changed Left Control to ESC. This matches how I configure "regular" keyboards, changing Caps to Escape.
  • Changed the left Space to Left Control.
  • Moved the arrow keys in the lower layer to HJKL.

I am sure I will tweak these as I get used to my new keyboard and upload my changes here.

If it wasn't obvious, I am a developer that uses vim keybindings where-ever possible.

Title: "The One with the NFTs"
Scene 1:
(The gang is sitting in Central Perk, discussing their latest finds on the internet)
Rachel: "Guys, have you heard of these things called NFTs? They're like digital collectibles or something?"
Monica: "Yeah, I've seen them on Instagram. People are paying crazy amounts of money for them."
from dialysis_data.data import TreatmentLog, make_json_converter
from visidata import VisiData, TableSheet, Column, date
@VisiData.api
def open_dialysis(vd, p):
"""Dialysis Data Format"""
return DialysisDataSheet(p.name, source=p)
from dataclasses import dataclass
from datetime import date, timedelta
from decimal import Decimal
from enum import Enum
class SolutionStrength(Enum):
YELLOW = "Yellow"
GREEN = "Green"
import iterm2
import iterm2.tmux
async def main(connection):
# This is an example of using an asyncio context manager to register a custom control
# sequence. You can send a custom control sequence by issuing this command in a
# terminal session in iTerm2 while this script is running:
#
# printf "\033]1337;Custom=id=%s:%s\a" "shared-secret" "create-window"

Flutter Development on my Pixel Slate

I watched Chrome OS: Ready for Web Development (Chrome Dev Summit 2018) last year and it's what made me realize that a Chrome OS device could work for what I needed: a replacement for my old Android tablet and a device for personal projects. When the Pixel Slate was announced, I knew it fit my needs.

Linux and Android Support

Chrome OS uses LXD containers to run the Android and desktop Linux systems. This system is called Crostini. See this page for a list of current Chrome OS devices that support Crostini.

The default container image current runs Debian stable, but you can easily create your own images. I mean to do so to run [NixOS](https:

linux-vdso.so.1 (0x00007ffd1f748000)
libtiff.so.5 => /nix/store/dlz8by9bg897fsqkjq30g6sqnycml1pb-libtiff-4.0.9/lib/libtiff.so.5 (0x00007f2e40b79000)
libjpeg.so.62 => /nix/store/3b3wf4bpxgf6dxy1v6g85rp5971mqd79-libjpeg-turbo-1.5.3/lib/libjpeg.so.62 (0x00007f2e40911000)
libpng16.so.16 => /nix/store/1n47iy8z04x07ahq8phzdp1bvmqwfmmc-libpng-apng-1.6.34/lib/libpng16.so.16 (0x00007f2e406da000)
libungif.so.4 => /nix/store/idv185fhd381y9m9kmhnp82365gfdkah-libungif-4.1.4/lib/libungif.so.4 (0x00007f2e404d1000)
libXpm.so.4 => /nix/store/3lw6aq5ns8mq7lnaf3ijdhwyxna01jdz-libXpm-3.5.12/lib/libXpm.so.4 (0x00007f2e402be000)
libgtk-3.so.0 => /nix/store/x8625yj4dfyhi498qg44am35mli0b7s4-gtk+3-3.22.29/lib/libgtk-3.so.0 (0x00007f2e3f9af000)
libgdk-3.so.0 => /nix/store/x8625yj4dfyhi498qg44am35mli0b7s4-gtk+3-3.22.29/lib/libgdk-3.so.0 (0x00007f2e3f6c5000)
libpangocairo-1.0.so.0 => /nix/store/8g10bmh965bx5gc15vlxx5s00lyf23n4-pango-1.40.14/lib/libpangocairo-1.0.so.0 (0x00007f2e3f4b7000)
libpango-1.0.so.0 => /nix/store/8g10bmh
#!/usr/local/bin/bash
EMACS_SERVER_DIR=/Users/travisbhartwell/.emacs.d/server
EMACS_SERVER_FILE=$(cd "${EMACS_SERVER_DIR}" && /usr/local/bin/realpath $(ls -t "${EMACS_SERVER_DIR}" | head -n1))
if [ -n "$(ps -ef | grep '[e]macs')" -a -e "${EMACS_SERVER_FILE}" ]; then
output="$(/usr/local/bin/emacsclient -f ${EMACS_SERVER_FILE} -e '(tbh-org-get-clock-time)' | tr -d '\"')"
if [ "${output}" ]; then
echo "Clocked In"
(defun tbh/setup-org-layout ()
"Arrange the buffers in the custom Org layout defined in the built-in layer"
(interactive)
;; Switch to the perspective
(spacemacs/custom-perspective-@Org)
;; Reset to just one window
(delete-other-windows)
(let*
;; Open worklog
((worklog-buffer (find-file (f-join org-directory "worklog.org")))

First, I started one shell:

erl -sname e1 -setcookie secretcookie

Then, in another terminal, start the second. They have to have different short names (the sname) and the same cookie:

erl -sname e2 -setcookie secretcookie