Each of these commands will run an ad hoc http static server in your current (or specified) directory, available at http://localhost:8000. Use this power wisely.
$ python -m SimpleHTTPServer 8000| -- Based on: https://devforum.zoom.us/t/easiest-way-to-get-mute-status/18462/7 | |
| tell application "System Events" | |
| if exists window 1 of process "zoom.us" then | |
| tell application process "zoom.us" | |
| if exists (menu 1 of menu bar item "Meeting" of menu bar 1) then | |
| set meetingMenu to menu 1 of menu bar item "Meeting" of menu bar 1 | |
| set canMute to exists menu item "Mute audio" of meetingMenu | |
| set canUnmute to exists menu item "Unmute audio" of meetingMenu |
| -- Manipulate and get the status of Zoom mute/unmute, and show that status using the app AnyBar | |
| -- Uses AnyBar to show zoom audio status (https://github.com/tonsky/AnyBar) | |
| -- | |
| -- Takes one argument: | |
| -- - toggle_zoom: Toggles the mute status and updates AnyBar red/green to reflect new status | |
| -- - update_bar: Grabs the current mute status and updates AnyBar | |
| -- | |
| -- Anybar colors: | |
| -- - Green: mic on | |
| -- - Red: mic muted |
| // mock file | |
| function MockFile() { }; | |
| MockFile.prototype.create = function (name, size, mimeType) { | |
| name = name || "mock.txt"; | |
| size = size || 1024; | |
| mimeType = mimeType || 'plain/txt'; | |
| function range(count) { | |
| var output = ""; |
| function mapValues(obj, fn) { | |
| return Object.keys(obj).reduce((result, key) => { | |
| result[key] = fn(obj[key], key); | |
| return result; | |
| }, {}); | |
| } | |
| function pick(obj, fn) { | |
| return Object.keys(obj).reduce((result, key) => { | |
| if (fn(obj[key])) { |
| var gulp = require('gulp'), | |
| gutil = require('gulp-util'), | |
| sass = require('gulp-sass'), | |
| csso = require('gulp-csso'), | |
| uglify = require('gulp-uglify'), | |
| jade = require('gulp-jade'), | |
| concat = require('gulp-concat'), | |
| livereload = require('gulp-livereload'), // Livereload plugin needed: https://chrome.google.com/webstore/detail/livereload/jnihajbhpnppcggbcgedagnkighmdlei | |
| tinylr = require('tiny-lr'), | |
| express = require('express'), |
Each of these commands will run an ad hoc http static server in your current (or specified) directory, available at http://localhost:8000. Use this power wisely.
$ python -m SimpleHTTPServer 8000⇐ back to the gist-blog at jrw.fi
Or, 16 cool things you may not have known your stylesheets could do. I'd rather have kept it to a nice round number like 10, but they just kept coming. Sorry.
I've been using SCSS/SASS for most of my styling work since 2009, and I'm a huge fan of Compass (by the great @chriseppstein). It really helped many of us through the darkest cross-browser crap. Even though browsers are increasingly playing nice with CSS, another problem has become very topical: managing the complexity in stylesheets as our in-browser apps get larger and larger. SCSS is an indispensable tool for dealing with this.
This isn't an introduction to the language by a long shot; many things probably won't make sense unless you have some SCSS under your belt already. That said, if you're not yet comfy with the basics, check out the aweso
| @include keyframe(fadeout) { | |
| 0% { | |
| opacity: 1; | |
| } | |
| 100% { | |
| opacity: 0; | |
| } | |
| } |
| # config/initializers/redcarpet.rb | |
| module ActionView | |
| module Template::Handlers | |
| class Markdown | |
| class_attribute :default_format | |
| self.default_format = Mime::HTML | |
| def call(template) | |
| markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML, :autolink => true, :space_after_headers => true) | |
| markdown.render(template.source).html_safe.inspect |
This guide enables you to install (ruby-build) and use (rbenv) multiple versions of ruby, isolate project gems (gemsets and/or bundler), and automatically use appropriate combinations of rubies and gems.
# Ensure system is in ship-shape.
aptitude install git zsh libssl-dev zlib1g-dev libreadline-dev libyaml-dev