Skip to content

Instantly share code, notes, and snippets.

Dan Allen mojavelinux

View GitHub Profile
@mojavelinux
mojavelinux / syntax-highlighter-rouge.rb
Last active Mar 22, 2019
Prototype of the Rouge syntax highighter integration for Asciidoctor. Now bundled with Asciidoctor. See https://github.com/asciidoctor/asciidoctor/blob/master/lib/asciidoctor/syntax_highlighter/rouge.rb
View syntax-highlighter-rouge.rb
class RougeSyntaxHighlighter < Asciidoctor::SyntaxHighlighter::Base
register_for 'rouge'
def initialize *args
super
@requires_stylesheet = nil
@style = nil
end
def highlight?
@mojavelinux
mojavelinux / syntax-highlighter-prism.rb
Last active Feb 4, 2019
Prototype of the Prism syntax highighter integration for Asciidoctor
View syntax-highlighter-prism.rb
class PrismSyntaxHighlighter < Asciidoctor::SyntaxHighlighter::Base
register_for 'prism'
def format node, lang, opts
opts[:transform] = proc do |pre, code|
if node.attr? 'linenums', nil, false
pre['class'] += ' line-numbers'
if (start = node.attr 'start', nil, false)
pre['data-start'] = start
end
@mojavelinux
mojavelinux / server-in-thread-multiple-clients.rb
Last active Jan 8, 2019
Running an HTTP server in a background thread in Ruby (for use in tests, for example)
View server-in-thread-multiple-clients.rb
# serve multiple clients at once
require 'socket'
require 'net/http'
server = TCPServer.new 4040
server_thread = Thread.start do
loop do
Thread.start server.accept do |socket|
/^GET (\S+) HTTP\/1\.1$/ =~ socket.gets.chomp
path = $1
@mojavelinux
mojavelinux / nodegit-private-clone-test.js
Created May 21, 2018
Clone a private repository using nodegit
View nodegit-private-clone-test.js
const git = require('nodegit')
const fs = require('fs-extra')
const { URL } = require('url')
const REPO_URL = 'git@github.com:org/path.git'
const CLONE_DIR = '/tmp/private-repo-clone-test'
;(async () => {
await fs.emptyDir(CLONE_DIR)
let authAttempted = false
await git.Clone.clone(REPO_URL, CLONE_DIR, {
@mojavelinux
mojavelinux / asciidoctor-browser-include-spec.adoc
Last active Mar 15, 2018
Asciidoctor browser include spec: Specifies how Asciidoctor resolves the target of an include directive in the browser environment.
View asciidoctor-browser-include-spec.adoc

Include directive processing in the browser

This document describes how the include directive is processed in the browser environment (xmlhttprequest IO module). This handling has slightly different rules than when a file-based document. The rules are listed in the order in which they are applied.

In these definitions, there are several commonly occurring terms that pertain to the include directive:

  • target - the target of the include directive as specified in the document

  • include path - the resolved path of the include; usually an absolute path or URL

@mojavelinux
mojavelinux / echo-template-literal.js
Created Jan 2, 2018
A simple JavaScript template literal function that echos the string, populating all interpolated values.
View echo-template-literal.js
/**
* Usage:
* const name = 'World'
* const place = '2018'
* console.log(echo`Hello, ${name}. Welcome to ${place}.`)
*/
function echo (literals, ...values) {
return literals.length > 1
? values.reduce((accum, value, idx) => accum + value + literals[idx + 1], literals[0])
: literals[0]
@mojavelinux
mojavelinux / twitter.css
Last active Jun 17, 2017
User style to make Twitter square (and less bold) again; domain: twitter.com (for use with https://chrome.google.com/webstore/detail/stylist/pabfempgigicdjjlccdgnbmeggkbjdhd)
View twitter.css
/*.content-main {
width: 600px;
}
.dashboard {
width: 285px;
}
.DashboardProfileCard-bg {
height: 94px;
@mojavelinux
mojavelinux / jekyll-asciidoctor-diagram.adoc
Last active Feb 25, 2018
How to configure Asciidoctor Diagram in a Jekyll site
View jekyll-asciidoctor-diagram.adoc

How to configure Asciidoctor Diagram in a Jekyll site

Generate site

$ cd /tmp
$ mkdir jekyll-site-creator
@mojavelinux
mojavelinux / gitlab-readable.css
Last active May 12, 2017
Readable user style for GitLab Issues; match: ^https://gitlab\.com/.*/issues/.*$
View gitlab-readable.css
.md, .wiki {
font-family: "Droid Serif";
font-size: 1.2em;
line-height: 1.6;
}
ul.notes .note .note-body .note-text p, .wiki p {
margin-top: 0.75em;
}
@mojavelinux
mojavelinux / writers-write-bof-notes.adoc
Created Apr 28, 2017
Writers Write BOF Notes: Devoxx 2016
View writers-write-bof-notes.adoc

Writers Write BOF at Devoxx BE, 2016

Dan Allen, the lead moderator, welcomed everyone and encouraged everyone to participate We’re here to talk about writing, primarily technical documentation but beyond that too. Team organisation Technical challenges

Introductions. A broad cross-section of roles, interests, and tools:

  • Developers

You can’t perform that action at this time.