Skip to content

Instantly share code, notes, and snippets.

"guard against sourcing the script twice
if exists("g:loaded_nerdtree_start_shell_mapping")
finish
endif
let g:loaded_nerdtree_start_shell_mapping = 1
"bind 'S' to NERDTreeStartShell()
call NERDTreeAddKeyMap({
\ 'key': 'S',
\ 'callback': 'NERDTreeStartShell',
@darcyparker
darcyparker / BostonVimMeetup_12_05_2011_talknotes.txt
Created December 7, 2011 03:30
Boston Vim Meetup December 5, 2011 Talk Notes
Boston Vim Meetup December 5, 2011
----------------------------------
Title : Harmonizing your text editing and shell work in vim
Speaker : Darcy Parker
github : @darcyparker
gmail : darcyparker at gmail.com
( Friendly reminder for new users when reading this in Vim:
:help fold-commands
:set foldmethod=marker
@darcyparker
darcyparker / GetThisCommandsDir.bat
Created March 28, 2013 21:41
Tools written in a scripting language like node.js, ruby, python, etc... often wrap the script in a batch file that uses %~dp0 to identify the root folder of the command being called. In most scenarios %~dp0 gives the expected result. But sometimes they give the wrong result and cause the tool/script to fail. For example, some applications (such…
@echo off
REM Using %~dp0 is common in batch files to identify the root folder of the batch file
REM But sometimes %~dp0 does not work as expected.
REM
REM This batch file illustrates where %~dp0 fails to return desired root folder where this
REM batch file is located.
REM
REM To setup the demonstration:
REM - save this batch file to a location such as d:\bin\GetThisCommandsDir
REM - Go to a different folder to execute the test cases
@darcyparker
darcyparker / set_jdk_JAVA_HOME.bat
Last active February 29, 2016 07:32
Searches for latest JDK installed and sets %JAVA_HOME% to it. Useful for tools like ant which expect %JAVA_HOME% to be set to a JDK. This saves me time in having to reset %JAVA_HOME% after I update my JDK install.
@echo off
REM https://gist.github.com/darcyparker/7121448
REM Searches for latest JDK and sets JAVA_HOME
REM Look up current version
for /f "usebackq tokens=2*" %%i in (`reg query "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit" /s ^| "%WINDIR%\system32\find.exe" "CurrentVersion"`) do set _jdkcurrentver=%%j
REM Look up JavaHome for current version
for /f "usebackq tokens=2*" %%i in (`reg query "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\%_jdkcurrentver%" /s ^| "%WINDIR%\system32\find.exe" "JavaHome"`) do set JAVA_HOME=%%j
echo JAVA_HOME=%JAVA_HOME%
set _jdkcurrentver=
setx JAVA_HOME "%JAVA_HOME%"
@darcyparker
darcyparker / gitgrepall
Last active June 6, 2018 17:47
git grep for a git repo and its submodules
#!/usr/bin/env bash
# Author: darcyparker@gmail.com
# Repo: https://gist.github.com/darcyparker/d5b9168ada88d0527564a11d9d9899c4
# Description:
# * git grep for the repo and its submodules.
# * greps into submodules recrusively
# * Output includes full relative path from the top level repo to files with matches
# * Output is formatted with line number, and column number of matched
# Usage:
# gitgrep "some string"
@darcyparker
darcyparker / vim64Bit_CompiledWithMSVC.md
Created May 14, 2013 21:49
Compiling 64 bit Vim using free MS Visual Studio 2012 Express

#Compiling 64 bit Vim using free MS Visual Studio 2012 Express

I needed vim with Python support on Win7. The following are my notes.

##Background on why At first this sounds simple... but challenges included:

@darcyparker
darcyparker / installAcer720CTouchPadDriver.sh
Last active March 20, 2020 01:08
Install ChromiumOS touchpad driver for linux chroot (crouton) on Acer C720C chromebook. This makes the touchpad behave and respond like it does in ChromeOS.
#!/usr/bin/env bash
#Install ChromiumOS touchpad driver for linux chroot (crouton) on Acer C720P (Peppy) Chromebook.
#This makes the touchpad behave and respond like it does in ChromeOS.
#See: https://github.com/hugegreenbug/xf86-input-cmt/issues/6
#I posted a note about this script in: https://groups.google.com/forum/#!topic/crouton-central/claM9XZxsz0
#and https://github.com/dnschneid/crouton/wiki/Acer-C720-C720P#touchpad
#After creating/installing this driver, look at:
#https://github.com/hugegreenbug/xf86-input-cmt#notes
@darcyparker
darcyparker / pdfsearch.sh
Last active November 25, 2020 20:05
Search PDFs from command line
#!/usr/bin/env bash
#Search pdfs: a wrapper for pdfgrep and pdftotext
#http://github.com/darcyparker
_usage(){
local _filename=${0##*/}
cat << END_USAGE
Usage: $_filename
Search current directory:
$_filename <search pattern>
@darcyparker
darcyparker / set_jdk_JAVA_HOME.sh
Last active November 25, 2020 20:52
Set $JAVA_HOME to installed JDK.
if [ -x "$(command -v java)" ]; then
case "$(uname)" in
CYGWIN*)
#Assumes %JAVA_HOME% was set in Windows
#Convert $JAVA_HOME to unix-like path
JAVA_HOME=$(cygpath --unix "$JAVA_HOME")
;;
Darwin*)
if [ -z "$JAVA_HOME" ]; then
if [ -x "/usr/libexec/java_home" ]; then
@darcyparker
darcyparker / jsctags.cmd
Last active May 10, 2021 18:31
Windows batch file to run jsctags
@echo off
REM Windows batch file to run jsctags
REM
REM Assumes node.exe is in your %PATH%.
REM git clone --recursive git://github.com/mozilla/doctorjs.git d:\opt\doctorjs
REM Note: Currently, the latest jsctags only works with older versions of node
REM To manage multiple versions of node on the same machine, use `n`.
REM `npm install -g n`
REM
REM Alternatively: