Specify what you want urlview to open your links with in ~/.urlview after COMMAND. I.e. the line below will make urlview open all urls in Firefox.
COMMAND firefox
| // GitHub: git clone someone else's repository & git push to your own repository | |
| // Create a new repository at github.com. (this is your repository) | |
| // Give it the same name as the other repository. | |
| // Don't initialize it with a README, .gitignore, or license. | |
| // Clone the other repository to your local machine. (if you haven't done so already) | |
| // git clone https://github.com/other-account/other-repository.git | |
| // Rename the local repository's current 'origin' to 'upstream'. |
| const drawille = require('drawille') | |
| const bunny = require('bunny') | |
| const glmatrix = require('gl-matrix') | |
| const width = 200 | |
| const height = 200 | |
| const canvas = new drawille(width, height) | |
| const mat4 = glmatrix.mat4 | |
| const vec3 = glmatrix.vec3 | |
| let points = [] |
| {"title": "Mission control, elaborate", | |
| "rules":[ | |
| { "description": "Mission control, elaborate; requires Ctrl, Shft & arrows. Was created to make movements in Mission Control 'key-able', but works in all apps.", | |
| "manipulators": [ | |
| { "from": { | |
| "key_code": "right_arrow", | |
| "modifiers": { | |
| "mandatory": ["control", | |
| "shift"] } }, | |
| "to": [ |
| // Unmap undesired defaults | |
| const unmaps = [ | |
| "sb", "sw", "ob", | |
| "ow", "cp", ";cp", | |
| ";ap", "spa", "spb", | |
| "spd", "sps", "spc", | |
| "spi", "sfr", "zQ", | |
| "zz", "zR", "ab", | |
| "Q", "q", "ag", | |
| "af", ";s", "yp", |
| # Modified from https://github.com/alyssais configuration. | |
| # | |
| # The following configuration heavily leverages modal keymaps to minimize the | |
| # pollution of global keybindings. In addition, the modal keymaps facilitate | |
| # the consistent use of the same keybindings across different modes. For | |
| # example, this configuration uses 'h', 'l', 'j', and 'k' to represent west, | |
| # east, south, and north when: changing focus, warping windows, resizing | |
| # windows, swapping windows, and moving floating windows. Those four keys are | |
| # mapped differently depending on the current mode to provide a consistent user | |
| # experience. |
| /* | |
| Requirements: | |
| * iTerm | |
| * nvim | |
| * nvr | |
| Install: | |
| 1. New application in Automator | |
| 2. Add Run JavaScript action |
| // Helper function to convert node lists returned by querySelectorAll to an array | |
| // so that we can used methods like map and filter. | |
| function toArray(nodeList) { | |
| let array = [] | |
| nodeList.forEach(node => array.push(node)) | |
| return array | |
| } | |
| // Returns a text (like markdown) representation of a trello board. | |
| function trelloBoardAsText() { |
| async function nextFrame() { | |
| return new Promise((resolve) => { | |
| requestAnimationFrame(resolve) | |
| }) | |
| } | |
| async function randomDelay(min, max) { | |
| const delay = Math.random() * (max - min) + min; | |
| const startTime = performance.now() | |
| while (performance.now() - startTime < delay) { |
| (function () { | |
| 'use strict'; | |
| // OSX JavaScript for Applications lacks the persistent 'properties' | |
| // of AppleScript (in which global variables and properties persist between script runs) | |
| // but we can, of course, serialise to JSON or plist at the end of a script | |
| // parsing it at the start of the next run. | |
| // Here is one approach to persistence between script runs | |
| // using JSON.stringify() and JSON.parse() |